用于处理和/或转发包的方法和设备的制造方法_6

文档序号:9710756阅读:来源:国知局
[0219]典型地,当包被封装以获得封装的包时,包的整个内容被保留。封装的包通常具有其自己的报头,该报头用于转发封装的包。根据封装的一个定义,封装为把被用于转发封装的包的新字段添加到包报头的处理。比如,可以通过把TRILL报头添加到包来封装包,其中该TRILL报头随后被用于通过网络来路由包。纯粹修改VLAN标签不是封装,这是因为没有添加新字段到报头,而且因为原始VLAN标签并未被保留。
[0220]图17A示出了使用根据本发明一些实施例的封装的远程端口镜像系统。
[0221 ]假设具有VLAN标识符1718的包1706从客户C3在地点S1的网络中的VLAN 112中的源节点发送到客户C3在地点S5的网络中的VLAN 112中的目的节点。
[0222]当包1706在路由桥102的端口 P3上被接收时,可以用TRILL报头1710封装包1706以获得封装包1708。封装包1708随后可以通过TRILL网络100被路由到路由桥110。路由桥110随后可以从封装包1708提取包1706,并且将包1706转发到客户C3在地点S5的网络中的VLAN112中的目的节点。注意,在上述示例中,包1706为以太网包(具有或不具有一个或多个VLAN标签),并且封装包1708为TRILL包。
[0223]本发明的一些实施例可以在任意粒度水平执行远程端口镜像,并且可以使用任意复杂的准则来确定镜像哪些包。特别地,对于在t特定端口上被接收或发送的包,具有特定VLAN标签的包,源于特定源节点的包,目的地是特定目的节点的包,或者匹配这些准则的组合的包,可以使得能够进行远程端口镜像。通常,系统可以使用任意复杂的逻辑功能(例如,访问控制列表)来识别需要被镜像的包。
[0224]让我们假设已经在路由桥102的端口P3使得能够进行远程端口镜像,并且包1706已经被识别为需要被镜像的包。这种情况下,路由桥102可以创建包的副本1706,并且使用TRILL报头1714来封装包的副本1706以获得封装包1712。封装包1712随后可以通过TRILL网络100被路由到路由桥106。注意,TRILL报头1714不同于TRILL报头1710。特别地,TRILL报头1710使得包1708被路由到路由桥110,而TRILL报头1714使得封装包1712被路由到路由桥106。路由桥106随后可以从封装包1712提取包1706的副本(在图17A中示为包1716),并且将包1706的副本转发到可以属于VLAN1704的网络分析器1702JLAN 1704可能已经特别地创建以用于分析网络业务。被发送到网络分析器的包可以包括该包为镜像包的某种指示。比如,如果镜像包具有特定VLAN标识符(例如如图17A所示的VLAN 1704),随后VLAN标识符可以用于指示该包为镜像包。
[0225]注意,VLAN标识符没有被修改,S卩,包1716中的VLAN标识符与包1706中的VLAN标识符相同。以此方式,本发明的一些实施例通过在远程端口镜像期间保留VLAN标识符信息来促进对网络的调试。
[0226]还可以在位于TRILL网络内部的端口上使得能够进行远程端口镜像。在这些实施例中,附加TRILL报头可以被添加以保留原始TRILL报头。
[0227]图17B说明使用依据本发明一些实施例的封装的远程端口镜像系统。
[0228]如前文那样,路由桥102可以用TRILL报头1710封装包1706以获得封装包1708。封装包1708随后可以通过TRILL网络100被路由到路由桥110。路由桥110随后可以从封装包1708提取包1706,并且将包1706转发到客户C3在地点S5的网络中的VLAN 112中的目的节点。
[0229]让我们假设在将路由桥102与路由桥106耦合的路由桥102上的端口上已经使得能够进行远程端口镜像,并且包1708已经被识别为需要被镜像的包。在这种情况下,路由桥102可以创建包1708的副本,并且使用TRILL报头1722封装包1708的副本以获得封装包1720。接着,封装包1720可以通过TRILL网络100被路由到路由桥106。注意,TRILL报头1722不同于TRILL报头1710。特别地,TRILL报头1710使得包1708被路由到路由桥110,而TRILL报头1722使得封装包1720被路由到路由桥106。路由桥106随后可以从封装包1720提取包1708的副本(在图17B中示为包1724),并且将包1708的副本转发到可以属于VLAN 1704的网络分析器1702。注意,在上述示例中,封装包1708和1720为TRILL包。
[0230]图18说明依据本发明一些实施例的交换机。
[0231]交换机1800可以包括可以经由例如总线的通信信道而彼此通信的多个机制。交换机1800可以使用一个或多个集成电路来实现。在一些实施例中,交换机1800为路由桥(例如路由桥102),其包括拷贝机制1802、封装机制1804和转发机制1806。
[0232]交换机1800可以接收目的地可以是目的地址D1的包(例如,包报头信息的可以包括目的地址D1)。复制机制1802可以配置成创建包的副本。在一些实施例中,复制机制1802可以配置成首先识别哪些包需要被镜像,并且随后创建所识别的包的副本。正被镜像的包可以为以太网包(具有或不具有一个或多个VLAN标签)或TRILL包。
[0233]封装机制1804可以配置成封装包的副本以获得目的地为目的地址D2的封装包(例如,封装包的报头信息可以包括目的地址D2)。在一些实施例中,封装包为TRILL包。目的地址D2可以与目的地址D1相同或也可不同。目的地址可以是单播、组播或广播地址。特别地,在一些实施例中,第一包为单播包或者为组播包,并且第二包为被发送到网络分析器的单播包或者为被发送到与包括网络分析器的组播群组关联的组播地址的组播包。注意,封装包的副本以获得封装包保留了原始包的报头信息(例如VLAN标识符、TRILL报头等)。
[0234]转发机制1806可以配置成根据地址D1来转发原始包,并且根据地址D2来转发封装包。比如,转发机制1806可以首先针对地址D1和D2执行转发查找(例如,通过在三级上下文可寻址存储器中执行查找),从而确定用于这两个包的输出端口。接着,转发机制1806可以对将通过适当输出端口被发送的包进行排队。
[0235]注意,图18仅仅用于说明的目的,并且并非意图将本发明限制于所公开的形式。特别地,在一些实施例中,交换机1800可以不是路由桥,和/或可以包括比图18所示更少或更多的机制。
[0236]图19给出的流程图示出根据本发明一些实施例的用于执行远程端口镜像的处理。
[0237]该处理可以由例如路由桥102的交换机执行。该交换机可以接收例如包1706的第一包。交换机随后可以确定第一包是否将被镜像。如果第一包将被镜像,交换机可以形成第一包的副本。
[0238]接着,交换机可以将第一包的副本封装在例如包1712的第二包中(操作1902)。注意,第一包和第二包的目的地可以是不同地址。第一包和第二包可以是单播、组播或广播包。特别地,在一些实施例中,第一包为单播包或者为组播包,并且第二包为被发送到网络分析器的单播包或者为被发送到与包括网络分析器的组播群组关联的组播地址的组播包。
[0239]交换机随后可以使用第一包的报头信息转发第一包(操作1904),以及使用第二包的报头信息转发第二包(操作1906)。注意,操作1904和1906可以按顺序(按任何次序)执行或者同时执行。
[0240]图20示出根据本发明一些实施例的系统。
[0241 ] 系统2000可以包括处理器2002(例如网络处理器)和存储器2004。处理器2002可以能够访问和执行存储器2004中存储的指令。比如,处理器2002和存储器2004可以通过总线耦合。存储器2004可以存储指令,所述指令由处理器2002执行时使得系统2000执行在此公开内容中明确或隐含地公开的一个或多个处理。
[0242]在一些实施例中,存储器2004可以存储指令,所述指令用于基于包在其上被接收的端口和/或包的报头中的一个或多个字段来确定包的内部虚拟网络标识符和/或内部策略标识符,用于通过添加TRILL报头而将包封装在TRILL包中,用于基于内部虚拟网络标识符来转发包,和/或用于基于内部策略标识符来处理该包。
[0243]在一些实施例中,存储器2004可以存储指令,所述指令用于接收组播包,基于与组播包关联的源地址、组播地址和组播树标识符字段,来确定组播包的内部组播群组标识符,以及基于内部组播群组标识符来转发组播包。另外,存储器2004可以可选地存储用于封装和/或解封装的指令。
[0244]在一些实施例中,组播包可以包括网络层组播地址,并且它可以在与第一虚拟网络关联的第一组播树上被接收。存储器2004可以存储指令,所述指令用于基于网络层组播地址来确定与组播包将在其上被转发的第二虚拟网络关联的第二组播树。在这些实施例中,存储器2004还可以存储指令,所述指令用于在与第一虚拟网络关联的第一组播树上转发组播包,以及在与第二虚拟网络关联的第二组播树上转发组播包的副本。
[0245]在一些实施例中,存储器2004可以存储指令,所述指令用于基于包的报头中的一个或多个字段来执行转发查找操作,如果查找操作失败,基于包的报头中的虚拟网络标识符来确定一组出口端口,以及在该组出口端口上洪泛包。
[0246]在一些实施例中,存储器2004可以存储指令,所述指令用于将包中的第一QoS比特组映射到第二QoS比特组,以在封装第一包的TRILL包中使用,其中第一QoS比特组不同于第二 QoS比特组。
[0247]在一些实施例中,存储器2004可以存储用于将第一包的副本封装在第二包中的指令,用于使用第一包的报头信息转发第一包的指令,以及用于使用第二包的报头信息转发第二包的指令。
[0248]在此公开内容中描述的数据结构和代码可以部分或完全存储在非临时的计算机可读存储介质和/或硬件模块和/或硬件设备中。计算机可读存储介质包括但不限于易失性存储器,非易失性存储器,诸如磁盘驱动器、磁带、CD(紧凑盘)、DVD(数字多功能盘或数字视频盘)的磁性和光学存储装置,或者现在已知或以后发展的能够存储代码和/或数据的其它非临时介质。在此公开内容中描述的硬件模块或设备包括但不限于专用集成电路(ASIC)、现场可编程门阵列(FPGA)、专用或共用处理器和/或现在已知或以后发展的其它硬件模块或设备。特别地,方法和/或过程可以以硬件描述语言(HDL)被描述,所述硬件描述语言可以被编译,从而综合可以执行该方法和/或过程的寄存器传送逻辑(RTL)电路。
[0249]在此公开内容中描述的方法和处理可以部分或完全实施为存储于计算机可读存储介质或装置中的代码和/或数据,以使得当计算机系统读取和/或执行该代码和/或数据时,计算机系统执行关联的方法和处理。该方法和处理还可以部分或完全实施于硬件模块或设备中,使得当硬件模块或设备被激活时,它们执行关联的方法和处理。另外,该方法和处理可以使用代码、数据和硬件模块或设备的组合来实施。
[0250]对本发明的各实施例的前述描述仅仅是出于说明和描述的目的而给出的。它们并非意图是穷举性的或者将本发明限制于所公开的形式。因此,对于本领域普通技术人员,许多调整和变动将是显见的。此外,以上公开内容并非意图限制本发明。本发明的范围由所附权利要求书定义。
【主权项】
1.一种交换机,包括: 确定机制,其可被配置成基于与组播包关联的源地址、组播地址和组播树标识符字段来确定内部组播群组标识符;以及 转发机制,其可被配置成基于所述内部组播群组标识符来为所述组播包确定一个或多个转发端口。2.根据权利要求1所述的交换机,其中所述确定机制可被配置成: 基于所述组播包的所述源地址和所述组播地址来确定第一比特组; 基于所述组播包的所述组播树标识符字段来确定第二比特组;以及 组合所述第一比特组和所述第二比特组。3.根据权利要求2所述的交换机,其中所述确定机制可被配置成通过串接所述第一比特组和所述第二比特组来组合所述第一比特组和所述第二比特组。4.根据权利要求1所述的交换机,其中所述转发机制可被配置成: 基于所述内部组播群组标识符来确定出口端口组;以及 通过所述出口端口组中的每个端口来发送所述组播包的至少一个副本。5.根据权利要求1所述的交换机,其中所述组播树标识符字段包括与所述交换机关联的别名。6.根据权利要求1所述的交换机,其中所述源地址和所述组播地址为以太网介质访问控制(MAC)地址。7.根据权利要求1所述的交换机,其中所述源地址和所述组播地址为互联网协议(IP)地址。8.—种处理和/或转发包的系统,包括: 处理器;以及 存储指令的存储器,所述指令在由所述处理器执行时使得所述系统执行一种方法,该方法包括: 基于与组播包关联的源地址、组播地址和组播树标识符字段来确定内部组播群组标识符;以及 基于所述内部组播群组标识符来为所述组播包确定一个或多个转发端口。9.根据权利要求8所述的系统,其中确定所述内部组播群组标识符包括: 基于所述组播包的所述源地址和所述组播地址来确定第一比特组; 基于所述组播包的所述组播树标识符字段来确定第二比特组;以及 组合所述第一比特组和所述第二比特组。10.根据权利要求9所述的系统,其中组合所述第一比特组和所述第二比特组包括串接所述第一比特组和所述第二比特组。11.根据权利要求8所述的系统,其中所述方法还包括: 基于所述内部组播群组标识符来确定出口端口组;以及 通过所述出口端口组中的每个端口来发送所述组播包的至少一个副本。12.—种处理和/或转发包的方法,包括: 基于与组播包关联的源地址、组播地址和组播树标识符字段来确定内部组播群组标识符;以及 基于所述内部组播群组标识符来为所述组播包确定一个或多个转发端口。13.根据权利要求12所述的方法,其中确定所述内部组播群组标识符包括: 基于所述组播包的所述源地址和所述组播地址来确定第一比特组; 基于所述组播包的所述组播树标识符字段来确定第二比特组;以及 组合所述第一比特组和所述第二比特组。14.根据权利要求13所述的方法,其中组合所述第一比特组和所述第二比特组包括串接所述第一比特组和所述第二比特组。15.根据权利要求12所述的方法,还包括: 基于所述内部组播群组标识符来确定出口端口组;以及 通过所述出口端口组中的每个端口来发送所述组播包的至少一个副本。
【专利摘要】一些实施例可以基于包在其上被接收的端口和/或所述包中的一个或多个字段,来确定该包的内部虚拟网络标识符和/或内部策略标识符。该系统随后可以基于所述内部虚拟网络标识符和/或所述内部策略标识符来处理和/或转发该包。一些实施例可以执行远程端口镜像。一些实施例可以将包中的第一QoS比特组映射到第二组QoS比特组,以用于在封装该包的多链接透明互连(TRILL)包中使用。一些实施例可以有效地支持多个组播树并且用于在TRILL网络中执行网络层组播。一些实施例可以基于每个虚拟网络洪泛所述包。
【IPC分类】H04L12/761, H04L12/721
【公开号】CN105471729
【申请号】CN201510768023
【发明人】虞顺佳, A·格汉瓦尼, P·科根蒂, M·拉曼, R·克里施纳默西, J·M·特里, N·文卡特森, W·切昂, J·J-E·程, D·查瓦尼, S·P·瓦拉纳斯
【申请人】博科通讯系统有限公司
【公开日】2016年4月6日
【申请日】2011年6月6日
【公告号】CN102986179A, CN102986179B, EP2580894A1, WO2011156256A1
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1