一种扩展网桥系统以及报文转发方法及装置与流程

文档序号:13391434阅读:322来源:国知局
一种扩展网桥系统以及报文转发方法及装置与流程

本发明涉及通信技术领域,具体地讲涉及一种扩展网桥系统以及报文转发方法及装置。



背景技术:

扩展网桥(extendedbridge)由控制网桥(cb,controllingbridge)和端口扩展器(pe,portextender)构成。控制网桥可以是单个设备或多个设备构成的作为一台设备运行的堆叠设备。

图1所示的一种扩展网桥中,每个端口扩展器的一个上行端口(upstreamport)与控制网桥的一个级联端口(cascadeport)对应连接,端口扩展器的一个扩展端口(extendedport)与终端(endstation)的一个端口连接。

端口扩展器通过扩展端口收到上行报文时,添加etag(extensionvlantag,扩展虚拟局域网标签),根据收到的报文的扩展端口的etag的ecid用于指示报文的入端口(ingressport),并通过上行端口发送添加了etag的报文。

端口扩展器通过上行端口收到带有etag的下行报文时,通过ecid指示的出端口(egressport)发送剥除etag的报文。



技术实现要素:

本发明的目的在于提供一种扩展网桥系统以及报文转发方法和装置,使扩展网桥的端口扩展器通过端口扩展器的扩展端口构成的聚合端口负载分担接收来自终端的单播报文。

为实现上述目的,本发明提供了一种报文转发方法,该方法包括通过第一级联端口接收具有扩展虚拟局域网标签的第一上行单播报文;识别第一上行单播报文的扩展虚拟局域网标签的入端口信息携带第一端口扩展器的第一扩展端口的标识;通过第二级联端口接收具有扩展虚拟局域网标签的第二上行单播报文;识别第二上行单播报文的扩展虚拟局域网标签的入端口信息携带第二端口扩展器的第二扩展端口的标识;其中,第一扩展端口和第二扩展端口构成聚合端口。

本发明还提供了一种报文转发装置,该装置包括:7.一种报文转发装置,其特征在于,装置包括接收单元,通过第一级联端口接收具有扩展虚拟局域网标签的第一上行单播报文;通过第二级联端口接收具有扩展虚拟局域网标签的第二上行单播报文;识别单元,识别第一上行单播报文的扩展虚拟局域网标签的入端口信息携带第一端口扩展器的第一扩展端口的标识;识别第二上行单播报文的扩展虚拟局域网标签的入端口信息携带第二端口扩展器的第二扩展端口的标识;其中,第一扩展端口和第二扩展端口构成聚合端口。

通过上述方法和装置实现了使扩展网桥的端口扩展器通过端口扩展器的扩展端口构成的聚合端口负载分担接收来自终端的单播报文。

附图说明

图1所示为已有扩展网桥的结构示意图。

图2a-2b为本发明实施例的扩展网桥的示意图。

图3为包含图2a-2b所示扩展网桥的网络示意图。

图4a-4d是图3所示网络中单播报文转发示意图。

图5a-5d是图3所示网络中广播报文转发示意图。

图6是应用于图2a-2b中控制网桥的报文转发装置的示意图。

具体实施方式

图2a示出了本发明实例提供的扩展网桥26。设备23和24通过堆叠链路连接,构成一台堆叠设备作为控制网桥25。端口扩展器21的上行端口211和212分别连接设备23的端口231和设备24的端口241;端口扩展器22的上行端口221和222分别连接设备23的端口232和设备24的端口242。控制网桥25以及端口扩展器21和22构成了扩展网桥26;端口扩展器21的扩展端口213与端口扩展器22的扩展端口223构成聚合端口200,该聚合端口200通过链路201以及202构成的链路聚合组(lag,linkaggregationgroup)连接(endstation)终端27。

如2b所示,控制网桥25具有级联端口251、级联端口252以及级联端口253。级联端口251包含端口231和241且级联端口251连接端口扩展器21的两个上行端口。级联端口252包含端口232和242且连接端口扩展器22的两个上行端口。级联端口253包含端口231,241,232以及242且连接聚合端口200所在的端口扩展器21和22的四个上行端口。

控制网桥25设置扩展端口213的虚拟端口(vp,virtualport)261(图中未示),分配e-213作为指示虚拟端口261与扩展端口213间的e-channel的ecid。控制网桥25设置扩展端口223的虚拟端口262(图中未示),分配e-223作为指示虚拟端口262与扩展端口223间的e-channel的ecid。控制网桥25设置聚合端口200的虚拟端口263(图中未示),分配e-200作为指示虚拟端口263与聚合端口200间e-channel的ecid。

控制网桥25分配的e-213,e-223以及e-200属于全局命名空间且属于点到点e-channel的范围。

控制网桥25将e-213和级联端口251关联于虚拟端口263;将e-223和级联端口252关联于虚拟端口263;将虚拟端口263关联于e-200和级联端口253。

图3所示的网络中,控制网桥25通过二层网络(图中未示)连接终端28,端口扩展器22的扩展端口224通过链路204连接终端29。譬如,终端27、28以及29接收同一vlan的广播报文时,控制网桥25可以为扩展端口213、223以及224分配广播ecid,用于指示控制网桥25上的一个虚拟端口与扩展端口213、223以及224间的e-channel。端口扩展器21和22通过上行端口收到具有etag的以太网广播报文,识别etag的ecid包括扩展端口213、223、224的标识。譬如,终端27、28以及29接收同一组播组的组播报文时,控制网桥25可以为扩展端口213、223以及224分配组播ecid,用于指示控制网桥25上的一个虚拟端口与扩展端口213、223以及224间的e-channel。扩口扩展器21和22通过上行端口收到具有etag的组播报文,识别etag的ecid包括扩展端口213、223、224的标识。控制网桥25可以基于802.1br协议以及相关的网络应用分配该广播ecid或组播ecid,本发明不再赘述。

基于图3所示的网络以及图4a-4d,描述扩展网桥26处理单播报文的过程。

上行单播报文处理

图4a中,终端27生成以太网单播报文40,其中,源mac地址和目的mac地址分别是终端27的mac地址和终端28的mac地址。终端27可以从端口271和272中选择端口272发送以太网单播报文。

端口扩展器22通过扩展端口223收到以太网单播报文40,基于扩展端口223的e-223添加etag,在上行端口221和222中选择上行端口222发送。如图4a所示,端口扩展器22发出的单播报文41的etag的ecid属性为e-223,指示了聚合端口200的扩展端口223是入端口。

控制网桥25通过级联端口252的端口242收到单播报文41,未查找到单播报文41的vlanid和源mac地址匹配的mac地址表项,根据单播报文41的虚拟局域网标识(vlanid)、源mac地址以及虚拟端口263学习mac地址表项。控制网桥25可根据级联端口252和e-223与虚拟端口263的关联关系,识别通过虚拟端口263收到单播报文41,因而基于虚拟端口263执行mac表项学习。

控制网桥25查找到单播报文41的vlanid和目的mac地址匹配的mac地址表项,确定出端口是非扩展端口,移除etag,通过查找到的mac地址表项的出端口发送。如图4a所示,控制网桥25移除单播报文41的etag后,得到以太网单播报文40。这样,以太网单播报文40通过二层网络(图3中未示)被发送至终端28。

图4b中,终端27生成以太网单播报文42,其中,源mac地址和目的mac地址分别是终端27的mac地址和终端28的mac地址。终端27可以从端口271和272中选择端口271,发送以太网单播报文42。

端口扩展器21通过扩展端口213收到以太网单播报文42,基于扩展端口213的e-213添加etag,在上行端口211和212中选择上行端口212发送。如图4b所示,端口扩展器21发出的单播报文43的etag的ecid属性为e-223,用以指示聚合端口200的扩展端口213是入端口。

控制网桥25通过级联端口251的端口241收到单播报文43,查找到vlanid和源mac地址匹配的mac地址表项的出端口是虚拟端口263,则不执行mac地址学习。控制网桥25可根据级联端口252和e-223与虚拟端口263的关联关系,识别通过虚拟端口263收到单播报文43。控制网桥25根据单播报文43查找到的mac表项的出端口没边,因此不执行mac地址学习。

控制网桥25查找到单播报文43的vlanid和目的mac地址匹配的mac地址表项,移除etag,通过查找的mac地址表项的出端口发送。如图4b所示,控制网桥25移除单播报文43的etag,得到以太网单播报文42。这样以太网单播报文42通过二层网络被发送到终端28。

在图4a和图4b所示的例子中,如果控制网桥25根据单播报文41或者43的目的mac地址匹配的mac表项确定执行三层转发,则移除etag,根据目的ip地址封装执行转发。

下行单播报文转发

图4c中,终端28生成以太网单播报文44,其中,源mac地址和目的mac地址分别是终端28的mac地址和终端27的mac地址。

控制网桥25通过二层网络收到以太网单播报文44,查找到vlanid和目的mac地址匹配的mac地址表项且出端口是虚拟端口263,根据聚合端口200的e-200添加etag,通过级联端口253发送。如图4c所示,控制网桥25发出的单播报文45的ecid属性为e-200,指示了聚合端口200是出端口。控制网桥25可以从级联端口253的四个端口选择一个端口发送单播报文45。当控制网桥25选择端口231或241时,单播报文45被发送到端口扩展器21。

端口扩展器21通过上行端口211或212收到单播报文45,基于ecid属性e-200识别聚合端口200是出端口,移除etag,通过聚合端口200的扩展端口213发送。如图4c所示,端口扩展器21发送以太网单播报文44。这样,以太网单播报文44通过图3所示的链路201被发送终端27。

图4d中,终端28生成以太网单播报文46;其中,源mac地址和目的mac地址分别是终端28的mac地址和终端27的mac地址。

控制网桥25通过二层网络收到以太网单播报文46,查找vlanid和目的mac地址匹配的mac地址表项且出端口是虚拟端口263,基于聚合端口200的e-200添加etag,通过级联端口253发送。如图4d所示,控制网桥25发出的单播报文47的ecid属性为e-200,指示聚合端口是出端口。当控制网桥25可以从级联端口253的四个端口选择端口232或242时,单播报文47被发送到端口扩展器22。

端口扩展器22通过上行端口221或222收到单播报文47,基于ecid属性e-200识别聚合端口200是出端口,移除etag,通过聚合端口200的扩展端口223发送。图4d所示,端口扩展器22发送以太网单播报文46到至终端27。

广播报文转发

基于图3所示的网络以及图4a-4d,描述扩展网桥26处理广播报文的过程。

图5a中,终端27生成以太网广播报文50,从端口271和272中选择端口272发送以太网广播报文50。

端口扩展器22通过扩展端口223收到以太网广播报文50,基于扩展端口223的e-223添加etag,在上行端口221和222中选择上行端口221发送。如图5a所示,端口扩展器22发出的广播报文51的etag的ecid属性为e-223,指示聚合端口200的扩展端口223是入端口。

控制网桥25通过级联端口252的端口242收到广播报文51,按照端口扩展器21和22的数目复制两份广播报文,将每份复制广播报文的ecid设为广播ecid,将ingressecid设为e-223,得到两份广播报文(如图5a所示的广播报文52)。控制网桥25可以从级联端口251的两个端口选择一个,向端口扩展器21发送一份广播报文52。控制网桥25可以从级联端口252的两个端口选择一个,向端口扩展器22发送另一份广播报文52。如图5a所示,控制网桥25分别选择端口241和端口242发送两份广播报文52。

控制网桥25将收到的广播报文51的etag移除,得到以太网广播报文50,按照设置了相同vlan的端口数目复制多份以太网广播报文,通过每个设置了相同vlan的端口发送一份以太网单播报文50。如图5a所示,一份以太网广播报文50通过二层网络被发送到终端28。

端口扩展器21通过上行端口212收到广播报文52,基于广播ecid识别扩展端口213是出端口,基于ingressecid属性e-223识别扩展端口223是入端口,确定入端口和出端口属于聚合端口200,源过滤失败。端口扩展器21不通过源过滤失败的扩展端口213将来自终端的27的以太网广播报文50再发回终端27。

端口扩展器22通过上行端口222收到另一份广播报文52;基于广播ecid识别扩展端口223和224是出端口;基于ingressecid属性e-223识别扩展端口223是入端口;确定作为出端口之一的扩展端口223就是入端口,源过滤检查失败;确定作为另一出端口的扩展端口224不同于入端口且不属于聚合端口200,源过滤检查成功,移除etag,通过扩展端口224发送。如图5a所示,端口扩展器22通过扩展端口224将来自终端27的以太网广播报文50发送到终端29,并且避免来自终端的27的以太网广播报文50再发回终端27。

图5b中,终端27生成以太网广播报文53,从端口271和272中选择端口271发送以太网广播报文53。

端口扩展器21通过扩展端口213收到以太网广播报文53,基于扩展端口213的e-213添加etag,在上行端口211和212中选择上行端口211发送。如图5b所示,端口扩展器22发送的广播报文54的etag的ecid属性为e-213,指示聚合端口200的扩展端口213是入端口。

控制网桥25通过级联端口251的端口241收到广播报文54,按照端口扩展器21和22的数目复制两份广播报文,将每份广播报文指示出端口的ecid设为广播ecid,将每份复制的广播报文的ingressecid设为e-213,得到两份广播报文,如图5b所示的广播报文55。如图5b所示,控制网桥25选择级联端口251的端口231发送一份广播报文55,选择级联端口252的端口232发送另一份广播报文55。

控制网桥25将收到的广播报文54的etag移除,得到以太网广播报文53,按照设置了相同vlan的端口数目复制多份以太网广播报文,通过每个设置了相同vlan的端口发送一份以太网单播报文53。如图5b所示,一份以太网广播报文53通过二层网络被发送到终端28。

端口扩展器21通过上行端口211收到广播报文55;基于广播ecid识别扩展端口213是出端口;基于ingressecid属性e-213识别扩展端口213是入端口;确定入端口和出端口相同,源过滤检查失败。端口扩展器21不通过源过滤失败的扩展端口213将来自终端的27的以太网广播报文53再发回终端27。

端口扩展器22通过上行端口212收到另一份广播报文55,基于广播ecid识别扩展端口223和224是出端口;基于ingressecid属性e-213识别扩展端口213是入端口;确定作为出端口之一的扩展端口223与入端口属于聚合端口200,源过滤检查失败;确定作为另一出端口的扩展端224口不同于入端口且不属于聚合端口200,源过滤检查成功,移除etag,通过扩展端口224发送。如图5b所示,端口扩展器22通过扩展端口224将来自终端27的以太网广播报文53发送到终端29,并且避免来自终端的27的以太网广播报文53再发回终端27。

如图5c所示,终端28生成以太网广播报文56。控制网桥25按照端口扩展器21和22的数目复制以太网广播报文56,基于广播ecid为每份以太网广播报文56添加etag,选择级联端口251的端口241发送一份携带广播ecid的广播报文57,选择级联端口252的端口242发送一份携带广播ecid的广播报文57。

端口扩展器21通过上行端口212收到广播报文57;基于广播ecid识别出端口是扩展端口213,确定入端口与出端口之不同且不属于扩展端口200,源过滤检查通过;对广播报文57进行hash计算,确定hash值与扩展端口213允许通过的hash值匹配;移除etag,通过扩展端口213发送以太网广播报文56。

端口扩展器22通过上行端口222收到广播报文57;基于广播ecid识别出端口是扩展端口223和224;确定入端口与出端口之一的扩展端口223不同且不属于扩展端口200,源过滤检查通过;对广播报文57进行hash计算,确定hash值与扩展端口223允许通过的hash值不匹配,不通过扩展端口223发送;确定入端口和作为另一出端口的扩展端口224不同且不属于聚合端口220,源过滤检查成功;移除广播报文57的etag,通过扩展端口223发送以太网广播报文56。图5c所示,扩展网桥26通过聚合端口200只将一份来自终端28的以太网广播报文发送到终端27。

如图5d所示,终端28生成以太网广播报文58。控制网桥25按照端口扩展器21和22的数目复制以太网广播报文58,基于广播ecid为每份以太网广播报文58添加etag,选择级联端口251的端口231发送一份携带广播ecid的广播报文59,选择级联端口252的端口232发送一份携带广播ecid的广播报文59。

端口扩展器21通过上行端口211收到广播报文59;基于广播ecid识别出端口是扩展端口213,确定入端口与出端口不同且不属于扩展端口200,源过滤检查通过;对广播报文59进行hash计算,确定hash值与扩展端口213允许通过的hash值不匹配,不通过扩展端口213发送。

端口扩展器22通过上行端口221收到广播报文59;基于广播ecid识别出端口是扩展端口223和224,确定入端口与出端口之一的扩展端口223不同且不属于扩展端口200,源过滤检查通过;对广播报文59进行hash计算,确定hash值与扩展端口223允许通过的hash值匹配;确定出端口和作为另一出端口的扩展端口224不同且不属于聚合端口200,源过滤检查成功。端口扩展器22移除etag,复制两份以太网广播报文28,通过扩展端口223发送一份以太网广播报文58,通过扩展端口224发送一份以太网广播报文58。这样,来自终端28的以太网广播报文58通过扩展网桥26的聚合端口200和扩展端口224分别发送到终端27和终端29。

在图4a-4d和图5a-图5d所示的例子中,分配给扩展端口的ecid用于指示上行单播报文的入端口以及非单播报文的源过滤检查,分配给聚合端口的ecid指示下行单播报文的出端口。

图5c-5d中,端口扩展器21和22根据广播报文59的三元组或五元组或七元组或其他参数计算得到一个数值,将计算得到的数值按照聚合端口200的成员的数目进行取模,得到hash值。端口扩展器21和22通过匹配hash值的扩展端口发送移除etag的以太网广播报文,对聚合端口200发往终端27的以太网广播报文进行负载分担。

本发明实施中,当端口扩展器21和22各自从上行端口收到的组播报文的etag带有组播ecid,端口扩展器21和22根据组播ecid识别出端口之后,扩展端口的源过滤检查和转发处理,聚合端口200负载分担处理与图5a-图5d中扩展端口发送广播报文时处理机制相同。

由于图2a-2b所示的扩展网桥26中,控制网桥25根据全局命名空间为各扩展端口和扩展端口构成聚合端口分配ecid。控制网桥25通过连接各端口扩展器的级联端口收到带有etag的上行非单播报文时,将上行非单播报文的ecid的属性设置发往各端口扩展器的下行非单播报文的ingressecid属性。控制网桥25通过二层网络端口收到非广播报文,将发往各端口扩展器的下行非单播报文的ingressecid设置为一个特定值,譬如0,指示了入端口不是扩展网桥26的扩展端口;这样各端口扩展器从上行端口收到下行非单播报文时,根据ingressecid可知下行非单播报文的入端口和ecid对应的出端口不同且不属于相同聚合端口。

图6所示为本发明提供的报文转发装置600,可应用于图2a-2b的扩展网桥26的控制网桥。该报文转发装置600包括:接收单元610、识别单元620、表项单元630、查找单元640以及发送单元650.

接收单元610,通过第一级联端口接收具有扩展虚拟局域网标签的第一上行单播报文;通过第二级联端口接收具有扩展虚拟局域网标签的第二上行单播报文。识别单元620,识别第一上行单播报文的扩展虚拟局域网标签的入端口信息携带第一端口扩展器的第一扩展端口的标识;识别第二上行单播报文的扩展虚拟局域网标签的入端口信息携带第二端口扩展器的第二扩展端口的标识;其中,第一扩展端口和第二扩展端口构成聚合端口。

识别单元620,识别收到具有扩展虚拟局域网标签的第一上行单播报文的第一级联端口以及第一扩展端口的标识关联于聚合端口的虚拟端口;识别收到具有扩展虚拟局域网标签的第二上行单播报文的第二级联端口以及第二扩展端口的标识关联于聚合端口的虚拟端口。表项单元630,根据第一上行单播报文的源地址和虚拟端口学习转发表项;或者,根据第二上行单播报文的源地址和虚拟端口学习转发表项。

接收单元610,接收下行单播报文查找单元640,确定下行单播报文的目的地址对应的出接口是虚拟端口。识别单元620,识别虚拟端口对应第三级联端口和聚合端口的标识;其中第三级联端口连接聚合端口所在的第一端口扩展器和第二端口扩展器。发送单元650,基于聚合端口的标识为下行单播报文添加扩展虚拟局域网标签;通过第三级联端口发送添加了扩展虚拟局域网标签的下行单播报文;其中,下行单播报文的扩展虚拟局域网标签的出端口信息携带聚合端口的标识。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1