二层网络数据传送方法及网络节点的制作方法
【专利摘要】本发明涉及一种二层网络数据传送方法及网络节点。该方法包括:根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口;网络节点从接收接口接收报文;所述网络节点向所述接收接口所在均衡组之外的接口转发报文。本发明方法和网络节点因预先根据网络架构以避免广播风暴为原则为网络节点配置均衡组,进行报文转发时,根据预置的均衡组向接收接口所在的均衡组以外的所有其他接口转发报文即可有效避免广播风暴。
【专利说明】二层网络数据传送方法及网络节点
【技术领域】
[0001]本发明涉及网络通信技术,更具体的说,是一种二层网络数据传送方法及网络节点。
【背景技术】
[0002]随着互联网应用的日益广泛,数据中心的应用也日益广泛。在相关的标准组织中,各种与数据中心相关的技术标准也在积极推进中。为了能够在数据中心网络中实现比较方便的虚拟机动态迁移,要求数据中心网络为大二层网络成为构建数据中心的基本要求。
[0003]在二层网络中,为了提高网络连接的可靠性和健壮性,通常在组网上存在冗余,以便发生故障时,流量能切换到备份链路上。但是,冗余链路的存在导致在网络中天然存在着环路,进而导致网络中出现广播风暴,造成流量拥塞等各种问题。STP(SpanningTree Protocol,生成树协议)及其后续改进协议可以在网络节点之间通过改变设备节点的端口状态来避免环路的出现,同时在链路出现故障时,通过改变设备端口状态使数据转发通过其它的可达链路进行转发,保证网络数据传送的继续。但STP及其后续改进协议在数据中心应用中有着其致命弱点,就是带宽利用率严重不足,大量链路因为端口被该协议阻塞而无法使用。为此,业界提出了若干种相关的技术来实现无STP的大二层网络,目前讨论比较多的分别是IRF(Intelligent Resilient Framework,智能弹性架构)、VSS (Virtual Switching System,虚拟交换系统)、VPC(virtualPort_Channel,虚通道技术)、TRILL (Transparent Interconnection of Lots ofLinks,多链路透明互联)技术和SPB (Shortest Path Bridg ing,最短路径桥接)技术。
[0004]IRF技术、VSS和VPC技术,均为堆叠类技术实现方案。IRF技术是一种应用在中低端交换机设备上的虚拟化技术。它可以将多台中低端交换机设备(成员设备)虚拟为一台高端交换机设备(虚拟设备)。同时,各个成员设备的物理端口被捆绑在一起,作为一个逻辑端口使用,在配置和组网使用上与单个实际物理设备相类似,由此可实现跨设备链路聚合功能,这样也避免了环路的发生,同时增加了链路的健壮性。从数据中心的组网图上来看,使用IRF聚合后的网络结构相当于一个树形结构,环路发生的条件不再存在。IRF技术需要在被虚拟的成员设备上启用IRF控制协议,并在各虚拟成员设备之间交互协议报文。
[0005]TRILL技术与SPB技术,均为实现数据转发方面多路径的技术。TRILL技术是由IETF提出的一种“以太帧多路径转发”技术方案,该技术的提出颠覆了传统以太帧的转发方式。因为多路径技术从来就是三层IP才有的技术。TRILL将此技术应用在二层交换机设备上,能够实现此功能的交换机称为“路由桥(Routing Bridge,简称RBridge) ”。RBridge间通过类似 IS-1S(IntermediateSystem to Intermediate System Routing Protocol,中间系统到中间系统的路由选择协议)路由协议的链路状态控制协议TRILL (TransparentInterconnectionof Lots of Links,多链接半透明互联)IS-1S实现相互间最短路径和等价多路径的计算。TRILL IS-1S只计算RBridge间的拓扑,而不关心网络中两台主机间的拓扑。在转发以太帧的时候,Ingress RBridge (入口路由桥)在以太帧上加封装源RBridge标识和目的RBridge标识,再加封装外层VLAN标识,外层下一跳RBridge标识,这样逐跳转发到Egress RBridge (出口路由桥)节点,Egress RBridge将TRILL头剥掉,还原出传统的以太帧,进行传统的以太帧转发。通过使用具有此种技术特性的交换机设备构建数据中心网络,实现了没有环路没有STP的大二层网络。但通过此种技术实现大二层网络,要求所使用的交换机设备必须能够支持此种技术,且原有交换机不能通过简单的软件升级来支持。
【发明内容】
[0006]本发明要解决的技术问题是提供一种二层网络数据传送方法及网络节点,以解决二层网络中容易出现广播风暴的问题。
[0007]为解决上述技术问题,本发明提供了一种二层网络数据传送方法,该方法包括:
[0008]根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口;
[0009]网络节点从接收接口接收报文;
[0010]所述网络节点向所述接收接口所在均衡组之外的接口转发报文。
[0011]为解决上述技术问题,本发明提供了一种网络节点,该网络节点包括:
[0012]若干个接口 ;
[0013]均衡组配置单元,用于根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口 ;以及
[0014]报文转发控制模块,从接收接口接收报文时,用于向所述接收接口所在均衡组之外的接口转发报文。
[0015]本发明方法和网络节点因预先根据网络架构以避免广播风暴为原则为网络节点配置均衡组,进行报文转发时,根据预置的均衡组向接收接口所在的均衡组以外的所有其他接口转发报文即可有效避免广播风暴,本发明方案只需要进行设置,对节点设备的要求较低,且容易实现。另外,在需要进行MAC地址学习和更新时,同一均衡组的接口根据均衡策略实现了 MAC地址学习的分担,提高了系统的性能。
【专利附图】
【附图说明】
[0016]图1是本发明二层网络数据传送方法实施例1的示意图;
[0017]图2是本发明均衡组配置的示意图;
[0018]图3是本发明二层网络数据传送方法实施例2的示意图;
[0019]图4是本发明进行MAC处理的示意图;
[0020]图5是进行MAC学习的具体流程示意图;
[0021]图6-8是本发明网络节点实施例的模块结构示意图;
[0022]图9-11是本发明应用实例的示意图;其中,图9是本发明在标准胖树结构下转发及MAC学习示意图;图10是本发明的非标准胖树结构下转发及MAC学习示意图;图11是本发明在一种组播情况下转发及MAC学习示意图。
【具体实施方式】
[0023]下面结合附 图和具体实施例对本发明所述技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组
口 O
[0024]实施例1
[0025]本发明二层网络数据传送方法实施例1,如图1所示,该方法包括:
[0026]步骤101:根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口;
[0027]本发明所说的网络节点可以是网络接入设备及聚合设备或网络核心设备,为更好的描述本
【发明内容】
,本文引入以下概念定义:
[0028]上行接口:数据中心网络结构中,与上层网络节点交互的接口,为该层网络节点的上行接口。
[0029]下行接口:数据中心网络结构中,与下层网络节点交互的接口,为该层网络节点的下行接口。
[0030]本发明中,均衡组内的接口均为用于与上层网络设备交互的上行接口或均为用于与下层网络节点交互的下 行接口。
[0031]均衡组:也可称为接口组或端口组,以避免广播风暴为原则将相同类型的接口(上行接口或者下行接口或者上行接口或下行接口的一部分接口),捆绑到一起,阻止组内接口收到的流量向组内别的接口转发,同时进行MAC地址学习的分担或者流量分担,以及进行流量保护。类似链路捆绑,但是不需要协议协商,且是本地单独存在,不需要和对端有相同的均衡组。
[0032]其中,流量分担是通过在均衡组的端口上均匀的学习对端MAC,后续从均衡组往外部转发时,自然查表,业务MAC基本均衡,可以认为体现了流量分担。
[0033]对于一个确定的以太网多链路环境中的网络节点,它的接口或为上行接口,或为下行接口,上行接口使用U-P表示,下行接口使用D-P表示;
[0034]在上行接口或下行接口中,可以根据需要配置均衡组。如图2所示,均衡组包括了全部的上行接口或包括了全部的下行接口,在实际的组网中,均衡组可以只包括一部分上行接口或只包括一部分下行接口。其中,若网络节点为网络接入设备及聚合设备,则可配置上行接口为一个均衡组;若网络节点为网络核心设备,则根据该网路核心设备所连接的聚合设备的拓扑情况配置均衡组。
[0035]步骤102:网络节点从接收接口接收报文;
[0036]本发明所说的报文主要是需要洪泛的报文,如广播报文、协议报文或未知广播报文。对于单播报文,则需要查找转发表,向对应的端口转发,不会向所有的端口转发。
[0037]步骤103:所述网络节点向所述接收接口所在均衡组之外的接口转发报文。
[0038]该实施例1中,同一均衡组接口收到的报文,不再向该接收接口所在均衡组内别的接口转发,若一个均衡组包括了所有的上行接口,则从上行接口接收的广播/组播或未知单播报文,不再向另外的上行接口转发。因预先根据网络架构以避免广播风暴为原则为网络节点配置均衡组,进行报文转发时,根据预置的均衡组向接收接口所在的均衡组以外的所有其他接口转发报文即可有效避免环路产生,也即避免了广播风暴,本发明方案只需要进行设置,对节点设备的要求较低,且容易实现。[0039]实施例2
[0040]本发明二层网络数据传送方法实施例2,如图3所示,该方法包括:
[0041]步骤301:根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口;
[0042]所述均衡组内的接口均为用于与上层网络节点交互的上行接口或均为用于与下层网络节点交互的下行接口。
[0043]步骤302:网络节点从接收接口接收报文;
[0044]步骤303:网络节点根据报文中的MAC (Media Access Control,介质访问控制)信息进行MAC处理;
[0045]具体地,如图4所示,MAC处理包括:
[0046]步骤401:所述网络节点根据报文中携带的MAC信息查询本地MAC地址表;
[0047]步骤402:如未查到匹配的地址表项,则所述网络节点进行MAC地址学习;
[0048]所述MAC地址学习的步骤包括:判断所述接收接口所在的均衡组是否还有其他接Π ;
[0049]若没有其他接口,则所述接收接口执行MAC地址学习;
[0050]若有其他接口,则根据负载均衡策略选择所述接收接口所在的均衡组内的接口执行所述MAC地址学习。
[0051]步骤403:如查到匹配的地址表项,则所述网络节点判断是否符合MAC地址更新条件;
[0052]所述MAC地址更新的条件包括:
[0053]条件A:匹配的地址表项中的接口是与所述接收接口位于同一均衡组;
[0054]条件B:匹配的地址表项中的接口与所述接收接口位于不同的均衡组且不是同一类型的接口 ;或
[0055]条件C,匹配的地址表项中的接口与所述接收接口位于不同的均衡组,但属于同一类型的接口,且所述网络节点支持虚拟机迁移。
[0056]步骤404:判断符合MAC地址更新条件时,所述网络节点进行MAC地址更新。
[0057]满足MAC地址更新条件A时,所述网络节点根据负载均衡策略选择所述接收接口所在的均衡组内的接口执行MAC地址更新;满足MAC地址更新条件B、C时,所述网络节点的接收接口执行MAC地址更新(即接收报文的接口后学习的MAC地址生效,同时删除原有接口学习的MAC地址)
[0058]步骤304:所述网络节点向所述接收接口所在均衡组之外的其他接口转发报文。
[0059]在以上实施例2中,网络节点的接口及所配置的均衡组遵守以下规则:
[0060]A、同一均衡组接口收到的报文,不再向该接收接口所在均衡组内别的接口转发,若一个均衡组包括了所有的上行接口,则从上行接口接收的广播/组播或未知单播报文,不再向另外的上行接口转发。
[0061]B如已有与接收报文的接口相同类型接口学习到的MAC地址,且所在网络节点不支持虚拟机迁移,那么接口 报文的接口不再进行MAC地址学习。
[0062]C、如已有与接收报文的接口同一均衡组接口学习到的MAC地址,可以根据均衡策略来让合适的接口(比如负载少的接口)学习。[0063]E、已有不同类型接口学习到的MAC,接收报文的接口后学的MAC地址生效,同时删除原有接口学习的MAC地址。
[0064]因预先根据网络架构以避免广播风暴为原则为网络节点配置均衡组,进行报文转发时,根据预置的均衡组向接收接口所在的均衡组以外的所有其他接口转发报文即可有效避免环路产生,也即避免了广播风暴,本发明方案只需要进行设置,对节点设备的要求较低,且容易实现。另外,在需要进行MAC地址学习和更新时,同一均衡组的接口根据均衡策略实现了 MAC地址学习的分担,提高了系统的性能。
[0065]在以上实施例1和2中,某接口故障(如断链),可以将此接口的MAC表转移到与故障接口同一均衡组的其他接口。
[0066]基于本发明方案,当一个网络节点接收到以太报文,根据所述报文携带的MAC (Media Access Control,介质访问控制)信息,进行MAC查找和MAC学习;
[0067]所述节点首先根据所述报文的MAC信息查找本地MAC表是否已有所述MAC信息,查找所在均衡组是否有其他接口,查找均衡组内是否已有接口学到所述MAC信息;
[0068]若所在均衡组没有其他接口,则接收报文的接口根据MAC学习规则进行MAC学习或更新;若所在均衡组有其他接口,根据均衡组配置策略进行MAC学习或处理;
[0069]另外,不同类型接口学习到的MAC,则后学习的MAC生效,同时删除原有接口的学习的MAC。
[0070]在网络节点中的进行MAC学习的具体流程如图5所示,本流程是上述规则的具体体现,其步骤说明如下:
[0071]步骤501:网络节点接收到以太报文;
[0072]步骤502:所述节点分析所接收到的报文,获取其MAC地址以及接收所述报文的接
口信息;
[0073]步骤503:所述节点查询本节点的MAC表信息;
[0074]步骤504:根据所查询的MAC表信息结果,判断是否已有对应报文中MAC的地址表项;若无,继续处理;否则,转步骤508 ;
[0075]步骤505:所述节点的MAC表中没有对应所述MAC的地址表项,分析接收报文的接口是否所在的均衡组是否还有其他接口 ;若无,则执行步骤506 ;否则,转步骤507 ;
[0076]步骤506:所述节点的接收报文的接口学习报文所携带的MAC地址,加入MAC地址表项,流程结束;
[0077]步骤507:根据负载均衡策略选择所述接收接口所在的均衡组内的接口学习报文所携带的MAC地址;学习完毕流程结束;
[0078]步骤508:分析比较已有MAC地址条目中接口信息与接收报文的接口是否处于同一个均衡组中;若相同,则执行步骤509 ;否则,转步骤511 ;
[0079]步骤509:判断两个接口是否属于相同类型的接口,若不是相同类型的接口,则转执行步骤511,否则执行步骤510 ;
[0080]步骤510:判断所属网络节点是否支持虚拟机迁移技术,若支持,则执行步骤511,否则因原接口中已存在所述MAC信息,新接口不再学习,流程结束;
[0081]步骤511:根据负载均衡策略选择所述接收接口所在的均衡组内的接口更新MAC地址表中相关信息。[0082]为了实现上述方法实施例,本发明还提供了一种网络节点,如图6所示,该网络节点包括:
[0083] 若干个接口 ;
[0084]均衡组配置单元,用于根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口 ;以及
[0085]所述均衡组内的接口均为用于与上层网络设备交互的上行接口或均为用于与下层网络设备交互的下行接口。
[0086]报文转发控制模块,从接收接口接收报文时,用于向所述接收接口所在均衡组之外的其他接口转发报文。
[0087]对应于实施例2,如图7所示,所述网络节点还包括:
[0088]MAC地址查询单元,用于根据报文中携带的MAC信息查询本地MAC地址表;
[0089]MAC地址管理单元,用于在未查到匹配的地址表项时,控制相应接口进行MAC地址学习,以及在判断符合MAC地址更新条件时,控制相应接口进行MAC地址更新;
[0090]MAC地址更新判断单元,用于在查到匹配的地址表项,则判断是否符合MAC地址更新条件。
[0091]可选地,如图8所示,所述网络节点还包括均衡组策略控制单元,用于根据所述均衡组配置单元配置的均衡组基于负载均衡策略对均衡组内的接口进行控制,所述MAC地址管理单元判断所述接收接口所在的均衡组是否还有其他接口,若没有其他接口,则控制所述接收接口执行MAC地址学习;否则控制所述均衡组策略控制单元选择的接口的执行MAC地址学习,从而由不同接口执行MAC地址学习,实现流量分担的效果,达到各个接口上流量的相对均衡的目的。
[0092]如上文所述,所述MAC地址更新的条件包括:
[0093]条件A:匹配的地址表项中的接口是与所述接收接口位于同一均衡组;
[0094]条件B:匹配的地址表项中的接口与所述接收接口位于不同的均衡组且不是同一类型的接口 ;或
[0095]条件C,匹配的地址表项中的接口与所述接收接口位于不同的均衡组,但属于同一类型的接口,且所述网络节点持虚拟机迁移。
[0096]具体地,满足MAC地址更新条件A时,所述MAC地址管理管理单元控制所述均衡组策略控制单元选择的所述接收接口所在的均衡组内的接口执行MAC地址更新;满足MAC地址更新条件B、C时,所述MAC地址管理管理单元控制所述接收接口执行MAC地址更新。
[0097]如图8所示,所述网络节点还包括均衡组故障处理单元,用于根据所述均衡组配置单元配置的均衡组检测均衡组中的接口,以及在均衡组中的接口出现故障时,通知MAC地址管理单元该故障接口的MAC地址表转移到所述接收接口所在均衡组的其他接口。若均衡组内各接口出现流量明显分化情况,则由均衡组策略控制单元处理。
[0098]与现有技术相比较,本发明引入了上行接口、下行接口和均衡组,使网络节点完成对MAC的优化学习及报文的转发处理,这样,一方面保证了报文处理的高速高效,另一方面本发明不需要在网络交换设备上统一运行控制协议和交互控制报文,保留了二层的特性,降低了配置的复杂度和提高了系统的健壮性,提高了系统设计的灵活性。
[0099]以下结合应用实例,对本发明方法进行说明。[0100]应用实例I
[0101]图9所示为应用实例1,主要说明本发明在标准胖树结构下,进行报文转发及MAC学习的详细过程;
[0102]如图9所示,这是本发明在标准胖树(Fat-Tree)结构下转发及MAC学习过程图,其MAC学习和流程如下:
[0103]步骤901:acl节点接收来自其所直连服务器发出的ARP请求报文,接收该报文的接口为D-Pl (下行接口中第一个接口,以下类同);
[0104]步骤902:acl节点分析所接收报文携带的源MAC信息和目的MAC信息,及接收报文的接口号D-Pl ;
[0105]步骤903:acI节点学习源MAC信息和接口 D-Pl的信息,写入MAC表;该应用实例中,D-Pl接口学习了该MAC地址;
[0106]步骤904:acl节点D-Pl接口所在的均衡组没有其他接口,acl节点向所有其它接口(U-PI和U-P2)转发该ARP请求报文;
[0107]步骤905:agl节点和ag2节点分别通过其接口 D-Pl接收到来自acl节点的报文;
[0108]步骤906:agl节点分析所接收报文携带的源MAC信息和目的MAC信息,及接收报文的接口号D-Pl ;
[0109]步骤907:agl节点学习源MAC信息和接口 D-Pl的信息,写入MAC表;该应用实例中,D-Pl接口学习了该MAC地址;
[0110]步骤908:ag2节点按同样的流程在其D-Pl接口上学习该ARP报文所携带的MAC地址;
[0111]步骤909:因为D-Pl接口所在的均衡组没有其他接口,那么agl节点向所有其他接口(D-P2、U-Pl和U-P2)转发该报文。Corel、Core2和ac2节点接收所转发的ARP请求报文;
[0112]步骤910:ac2节点接收到该ARP请求报文后,分析其MAC信息和接收报文的接口
信息;
[0113]步骤911:由于ac2节点上U-Pl接口为上行接口 ;按照网络节点学习MAC流程进行MAC学习处理,在本应用实例中由U-Pl接口学习;
[0114]步骤912:由于U-P2与U-Pl同属同一个均衡组,ac2节点不再向其它上行接口U-P2转发。
[0115]可理解地,如ac2节点还有下行接口则还需向下行接口转发报文。
[0116]步骤913 =Corel节点D-Pl接口接收到ARP请求报文后,由于该接口所在的均衡组没有其他接口,其学习过程与acl和agl节点相似,不再赘述;
[0117]步骤914:重复前述步骤,ARP请求报文到达目的服务器B,各个网络节点完成对源服务器A的MAC的学习;目的服务器B响应A的请求,从而形成一条A-B间的二层转发路径。
[0118]应用实例2
[0119]图10所示为应用实例2,主要说明本发明在非标准胖树结构下,进行报文转发及MAC学习的详细过程;
[0120]如 图10所示,这是本发明在非标准胖树结构下转发及MAC学习过程图,其MAC学习和流程如下:
[0121]步骤1001 =ACl节点接收来自其所直连服务器中虚拟机VMl发送的免费ARP报文,接收该报文的接口为D-Pl ;
[0122]步骤1002:AC1节点分析获取所接收报文携带的源MAC信息,及接收报文的接口号D-Pl ;
[0123]步骤1003 =ACl节点学习源MAC信息和接口 D-Pl的信息,写入MAC表;该应用实例中,D-Pl接口学习了该MAC地址;
[0124]步骤1004 =ACl节点D-Pl接口所在的均衡组没有其他接口,ACl节点向所有其它接口(υ-Pl、U-P2和U-P3)转发该免费ARP报文;
[0125]步骤1005 =Aggl节点、Agg 2节点和Agg 3节点分别通过其接口 D-P1接收到来自ACl节点的报文;
[0126]步骤1006 =Aggl节点分析获取所接收报文携带的源MAC信息,及接收报文的接口号 D-Pl ;
[0127]步骤1007 =Aggl节点学习源MAC信息和接口 D-P1的信息,写入MAC表;该应用实例中,D-Pl接口学习了该MAC地址;
[0128]步骤1008 :Agg2节点和Agg3节点按同样的流程在其D-Pl接口上学习该MAC地址;
[0129]步骤1009:因为Aggl节点D-Pl接口所在的均衡组没有其他接口,那么Aggl节点向其除D-Pl接口外的所有接口(D-P2、D-P3、U-P1和U-P2)转发该报文。C1、C2、AC2和AC3节点接收所转发的免费ARP报文;
[0130]步骤1010:AC2节点接收到该免费ARP报文后,分析其MAC信息和接收报文的接口
信息;
[0131]步骤1011:AC2节点按照网络节点MAC学习流程进行MAC学习处理,在本应用实例中,AC2节点上U-P2学习到MAC地址,U-Pl接口未学习该MAC地址。
[0132]步骤1012:由于U-P2、U_P3与U-Pl属同一个均衡组,同为上行接口的U-P2和U-P3不参与转发。
[0133]步骤1013:C1节点D-Pl接口接收到免费ARP报文后,由于该接口配置有均衡组。则根据均衡组策略让均衡组中某一个接口学习报文所携带的ARP地址,在本实施例中,仍由D-Pl学习该MAC地址;
[0134]步骤1014:由于Cl节点配置有多个不同的均衡组,Cl节点将该ARP报文向接收所述ARP报文的接口所在的均衡组之外的所有接口转发。在本应用实例中,需要向U-P4、U-P5和U-P6接口转发;
[0135]步骤1015:Agg4、Agg5和Agg6节点接收到由Cl节点转发的免费ARP报文,并分析获取报文所携带信息及接收接口信息;按照前述步骤处理并依次转发;
[0136]步骤1016:免费ARP报文转发到全网所有网络节点,各个网络节点完成对源服务器上虚拟机VMl的MAC的学习,从而各个节点都拥有了转发目的MAC为VMl的MAC地址的MAC转发表项。
[0137]应用实例3
[0138]图11所示为应用实例3,主要说明本发明在组播业务情况下,进行报文转发及MAC学习的详细过程;
[0139]如图11所示,这是本发明在一种组播情况下建树转发及MAC学习过程图,其中Router节点为控制网络组播的路由器,其MAC学习和流程如下:
[0140]步骤1101 =Router节点向它的所有接口发送组播查询报文;报文类型为广播报文;
[0141]步骤1102 =CoreU Core2、Core3和Core4网络节点收到组播查询报文后,按照前述MAC学习流程学习MAC ;以下流程以Corel网络节点为例进行描述;
[0142]步骤1103 =Corel接收所述组播查询报文的接口为U_P1,所述U-Pl接口所在的均衡组没有其他接口,则Corel将组播查询报文向除U-Pl接口外所有接口转发;
[0143]步骤1104:agl、ag3和ag5网络节点收到Corel节点转发的组播查询报文;以agl网络节点为例进行描述;
[0144]步骤1105:agl网络节点获取所接收组播查询报文信息及接收该报文的接口为U-Pl ;
[0145]步骤1106:agl网络节点根据网络节点MAC学习流程进行MAC学习处理,在本实施例中,由U-Pl接口学习;并向U-Pl所在的均衡组之外的所有接口转发;
[0146]步骤1107:acl和ac2网络节点收到由agl网络节点转发的报文;以acl网络节点为例进行描述;
[0147]步骤1108:acl网络节点学习MAC和转发流程与agl相似,流程类同步骤1105-步骤1106,不再描述;
[0148]步骤1109:服务器A收到来自acl网络节点的组播查询报文,服务器A响应该组播查询报文;于是,形成一条组播分支路径;其它组播分支路径的形成过程与此类同,不再描述;
[0149]步骤1110:当所有服务器响应完毕,组播路径形成。
[0150]相较于现有技术,本发明方法和网络节点因预先根据网络架构以避免广播风暴为原则为网络节点配置均衡组,进行报文转发时,根据预置的均衡组向接收接口所在的均衡组以外的所有其他接口转发报文即可有效避免广播风暴,本发明方案只需要进行设置,对节点设备的要求较低,且容易实现。另外,在需要进行MAC地址学习和更新时,同一均衡组的接口根据均衡策略实现了 MAC地址学习的分担,提高了系统的性能。
[0151]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
[0152]本发明实施例中所描述的系统/装置/设备中的模块仅是根据其功能进行划分的一种示例,可理解地,在系统/装置/设备实现相同功能的情况下,本领域技术人员可给出一种或多种其他功能划分方式,在具体应用时可将其中任意一个或多个功能模块采用一个功能实体装置或单元实现,不可否认地,以上变换方式均在本申请保护范围之内。
[0153]显然,所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本 发明保护的范围。
【权利要求】
1.一种二层网络数据传送方法,其特征在于,该方法包括: 根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口 ; 网络节点从接收接口接收报文; 所述网络节点向所述接收接口所在均衡组之外的接口转发报文。
2.如权利要求1所述的方法,其特征在于:所述均衡组内的接口均为用于与上层网络设备交互的上行接口或均为用于与下层网络设备交互的下行接口。
3.如权利要求1所述的方法,其特征在于:所述网络节点接收报文后,该方法还包括: 所述网络节点根据报文中携带的MAC信息查询本地MAC地址表; 如未查到匹配的地址表项,则所述网络节点进行MAC地址学习; 如查到匹配的地址表项,则所述网络节点判断是否符合MAC地址更新条件; 判断符合MAC地址更新条件时,所述网络节点进行MAC地址更新。
4.如权利要求3所述的方法,其特征在于:所述MAC地址学习的步骤包括:判断所述接收接口所在的均衡组是否还有其他接口; 若没有其他接口,则所述接收接口执行MAC地址学习; 若有其他接口,则根据负载均衡策略选择所述接收接口所在的均衡组内的接口执行所述MAC地址学习。
5.如权利要求4所述的方法,其特征在于:所述MAC地址更新的条件包括: 条件A:匹配的地址表项中的接口是与所述接收接口位于同一均衡组; 条件B:匹配的地址表项中的接口与所述接收接口位于不同的均衡组且不是同一类型的接口 ;或 条件C,匹配的地址表项中的接口与所述接收接口位于不同的均衡组,但属于同一类型的接口,且所述网络节点支持虚拟机迁移。
6.如权利要求5所述的方法,其特征在于,满足MAC地址更新条件A时,所述网络节点根据负载均衡策略选择所述接收接口所在的均衡组内的接口执行MAC地址更新;满足MAC地址更新条件B、C时,所述网络节点的接收接口执行MAC地址更新。
7.如权利要求1所述的方法,其特征在于:当网络节点的接口故障时,所述网络节点根据负载均衡策略将该故障接口的MAC地址表转移到所述故障接口所在均衡组的接口。
8.—种网络节点,其特征在于,该网络节点包括: 若干个接口; 均衡组配置单元,用于根据网络架构以避免广播风暴为原则为网络节点配置均衡组,一个均衡组包括一个或多个接口 ;以及 报文转发控制模块,从接收接口接收报文时,用于向所述接收接口所在均衡组之外的接口转发报文。
9.如权利要求8所述的网络节点,其特征在于:所述均衡组内的接口均为用于与上层网络设备交互的上行接口或均为用于与下层网络设备交互的下行接口。
10.如权利要求8所述的网络节点,其特征在于:所述网络节点还包括: MAC地址查询单元,用于根据报文中携带的MAC信息查询本地MAC地址表; MAC地址管理单元,用于在未查到匹配的地址表项时,控制相应接口进行MAC地址学习,以及在判断符合MAC地址更新条件时,控制相应接口进行MAC地址更新; MAC地址更新判断单元,用于在查到匹配的地址表项,则判断是否符合MAC地址更新条件。
11.如权利要求10所述的网络节点,其特征在于:所述网络节点还包括均衡组策略控制单元,用于根据所述均衡组配置单元配置的均衡组基于负载均衡策略对均衡组内的接口进行控制,所述MAC地址管理单元判断所述接收接口所在的均衡组是否还有其他接口,若没有其他接口,则控制所述接收接口执行MAC地址学习;否则控制所述均衡组策略控制单元选择的接口的执行MAC地址学习。
12.如权利要求11所述的网络节点,其特征在于:所述MAC地址更新的条件包括: 条件A:匹配的地址表项中的接口是与所述接收接口位于同一均衡组; 条件B:匹配的地址表项中的接口与所述接收接口位于不同的均衡组且不是同一类型的接口 ;或 条件C,匹配的地址表项中的接口与所述接收接口位于不同的均衡组,但属于同一类型的接口,且所述网络节点支持虚拟机迁移。
13.如权利要求12所述的网络节点,其特征在于,满足MAC地址更新条件A时,所述MAC地址管理管理单元控制所 述均衡组策略控制单元选择的所述接收接口所在的均衡组内的接口执行MAC地址更新;满足MAC地址更新条件B、C时,所述MAC地址管理管理单元控制所述接收接口执行MAC地址更新。
14.如权利要求8所述的网络节点,其特征在于:所述网络节点还包括均衡组故障处理单元,用于根据所述均衡组配置单元配置的均衡组检测均衡组中的接口,以及在均衡组中的接口出现故障时,通知MAC地址管理单元将该故障接口的MAC地址表转移到所述接收接口所在均衡组的其他接口。
【文档编号】H04L12/741GK103905325SQ201210574336
【公开日】2014年7月2日 申请日期:2012年12月26日 优先权日:2012年12月26日
【发明者】喻敬海, 付振涛, 韩辉 申请人:中兴通讯股份有限公司