CN1311664C - 在分布式网络交换系统中实现的端口捆绑方法 - Google Patents

在分布式网络交换系统中实现的端口捆绑方法 Download PDF

Info

Publication number
CN1311664C
CN1311664C CNB031192165A CN03119216A CN1311664C CN 1311664 C CN1311664 C CN 1311664C CN B031192165 A CNB031192165 A CN B031192165A CN 03119216 A CN03119216 A CN 03119216A CN 1311664 C CN1311664 C CN 1311664C
Authority
CN
China
Prior art keywords
port
message
master
bindingbundling
exchange system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB031192165A
Other languages
English (en)
Other versions
CN1527548A (zh
Inventor
申纪伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031192165A priority Critical patent/CN1311664C/zh
Publication of CN1527548A publication Critical patent/CN1527548A/zh
Application granted granted Critical
Publication of CN1311664C publication Critical patent/CN1311664C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种适用于分布式网络交换系统的端口捆绑方法,它包括以下步骤:1)在网络交换系统的端口捆绑表中增加一个自定义端口字段:“主端口”,并从逻辑上用该主端口标识捆绑组;2)当来自发送端的上行报文进入所述端口捆绑组后,将所述报文的源端口替换为由所述主端口字段表示的端口,并通过所述网络交换系统的网板将经过所述替换的报文发送至对端;3)当对端对所述报文做出回应时,将回应报文发送到由所述主端口代表的端口上。该方法通过提供多种标识数据流的方式进行端口捆绑的流量均衡,从而更好地实现了流量的均匀分布和对多种业务的支持;另外,采用2层转发通过MAC学习到“主端口”的方式也有效地规避了MAC学习地址震荡的问题。

Description

在分布式网络交换系统中实现的端口捆绑方法
技术领域
本发明涉及网络通信技术,特别涉及一种在采用网络处理器的分布式系统中实现端口捆绑的方法。
背景技术
在网络通信中,端口捆绑功能是交换机、路由器的一个重要功能,它能够将多个以太链路聚合成一个逻辑链路,从而提供更宽的链路带宽。
在采用端口捆绑的情况下,当报文经过捆绑端口发出时,系统需要从捆绑组内选择一个端口,选择的结果应该满足以下的2点要求:(1)同一个流(特定源和特定目的间的特定应用数据报文)应该从同一个端口发出,从而保证同一个流数据帧的次序(这在2层交换机的局域网情况下是必须的,因为局域网通信程序一般是不考虑数据帧乱序的)。(2)应该保证捆绑组内各个端口流量的均衡,即,根据当前的端口数,将数据流均匀的分布各个端口上。
上述第(1)点要求可以通过将标识数据帧的特征值进行哈希操作映射到一个唯一的值上得到实现。而对于上述第(2)点来说,情况则比较复杂,可以采用不同的算法实现。
下面将以分布式三层交换为例对现有技术中存在的问题进行说明。
首先对分布式三层交换过程中的地址学习进行简单说明。在分布式3层交换系统(分布式系统一般由主控板,网板和多个接口板构成,主控板负责系统的配置,处理路由协议,分发配置信息到接口板;接口板具有独立的CPU,负责独立进行转发;网板在各接口板间交换数据)中,通常由各个单板(本文中特指接口板)负责维护各自的MAC表。当2层报文进入系统后,各单板将执行MAC表项的搜索工作,如果查到MAC表项,则根据MAC表项中的(目标板,目标端口)将报文上送到网板;在报文被传送至目标板(即,目的接口板)并从目标端口发送出去的同时,各单板还自行检查是否源MAC已经存在于本板的MAC表中,如果没有,则以源MAC为关键字将报文的(源板,源端口)存入MAC表,即MAC学习功能。当报文上行查找出端口失败时,报文将被广播发送给各个目标板,以使各目标板进行源MAC地址的学习。
在采用端口捆绑技术后,交换过程中的地址学习一般采用MAC学习欺骗的技术方案。图1是在端口捆绑情况下现有技术所采用的MAC学习欺骗方案。如图1所示,报文处理流程分为上行和下行两个阶段,在上行阶段中,报文从入端口到达网板;在下行阶段中,报文从网板到达出端口。该方案的基本过程是:报文上行进行源端口的替换;下行直接出端口,以下将做详细说明。
(1)报文经捆绑端口进入,假设从端口0(源端口SP)进入,经过捆绑算法计算(以源MAC为输入),计算出回应报文应走的端口2。捆绑算法通过对回应端口的计算保证流量均衡,回应端口和源端口可能相等,也可能不相等。
(2)报文将新的SP=2带到下行,以供单板进行MAC地址学习,报文(从0端口进入)的源MAC表项对应的端口为2。
(3)下行不做任何特殊处理,将报文发出。
(4)当对端发送回应报文时,通过单板查找目的MAC表项,发现对应的出端口是2,于是将报文发到端口2。
但是,图1所示的现有技术方案中存在以下的缺陷:(1)由于它采用MAC地址学习欺骗的方式,所以只能根据源MAC进行捆绑计算。如果根据目的MAC进行捆绑,由于同一个源主机发送的数据报文可能具有不同的目的MAC,则捆绑算法计算出的结果也会不同,从而造成MAC学习的震荡(即,MAC表项不停的变换);(2)它只能根据源MAC进行端口捆绑计算,使得端口流量的均衡效果不佳;(3)由于它基于MAC地址的方案,所以只能支持2层流量的分担,对于3层流量无法实现分担,更难以支持新的业务;(4)它只在上行进行捆绑计算,下行直接出端口,当捆绑组中有端口down(失效)时,下行无法察觉,流量切换需要MAC地址的重新学习,或等待MAC表的删除/老化,会造成流量较长的中断。
发明内容
因此,针对现有技术中存在的上述问题,本发明的目的在于提供一种适用于分布式网络交换系统的端口捆绑方法,该方法通过使用一种新颖的捆绑方式,从而有效地实现了端口捆绑功能。
为了实现上述目的,本发明提供了一种适用于分布式网络交换系统的端口捆绑方法,该方法包括以下步骤:1)在网络交换系统的端口捆绑表中增加一个自定义端口字段:“主端口”,并从逻辑上用该主端口标识捆绑组;2)当来自发送端的上行报文进入所述端口捆绑组后,将所述报文的源端口替换为由所述主端口字段表示的端口,并通过所述网络交换系统的网板将经过所述替换的报文发送至对端;3)当对端对所述报文做出回应时,将回应报文发送到由所述主端口代表的端口上。
上述方法中还包括根据所述报文的源端口的属相判断该端口是否为捆绑端口的步骤。
上述步骤3)中进一步包括以下步骤:根据出端口(此处就是主端口)的属性进行报文是否发向捆绑端口的判断,查找端口捆绑表,得到端口成员列表,通过流量均分算法选出其中一个端口,并用该端口替换所述主端口以将报文发出。
在上述方法中,所述主端口是属于所述捆绑组的物理端口。
在上述方法中,所述自定义端口字段“主端口”在上层配置时被指定。
在上述方法中,所述自定义端口字段“主端口”在所述捆绑组的生存周期内不发生改变,并且实际物理端口是否正常工作不会对所述“主端口”产生影响。
本发明提供的这个方案克服了MAC学习欺骗方案的不足。而且更因为流量分担算法不依赖于源MAC,所以本发明可提供多种标识数据流的方式:源MAC、目的MAC及其组合,源IP、目的IP及其组合,MPLS标签栈等进行端口捆绑的流量均衡,从而更好地实现了流量的均匀分布和对多种业务的支持;另外,采用2层转发通过MAC学习到“主端口”的方式也有效地规避了MAC学习地址震荡的问题。
附图说明
下面将结合附图对本发明的具体实施方式进行详细说明,其中:
图1是在端口捆绑情况下现有技术所采用的MAC学习欺骗方案的示意图;
图2是根据本发明实施例所述的采用“主端口”的捆绑方案的示意图;
图3是根据本发明实施例所述的采用“主端口”的捆绑方案的方法流程示意图。
具体实施方式
下面将以分布式三层交换为例对本发明的实施例进行具体说明。
在本发明的具体实施例中采用了一种“主端口”的端口捆绑方案。图2是根据本发明实施例所述的采用“主端口”的捆绑方案的示意图。与图1相类似,图2也分为上行和下行两个阶段(以图中的虚线为界),这两个阶段分别代表报文从捆绑组发出至网板以及报文从网板发送至捆绑组出端口的流程。后面将分别对这两个部分的流程进行具体说明。
在通过捆绑端口发送报文之前,首先在端口捆绑列表中增加一个“主端口”字段,该字段代表一个物理端口,属于端口捆绑组,它在上层配置时指定,以华为公司制造的Quidway路由交换机系列为例,其配置命令为:
link-aggregation ethernet 5/0/0 to 5/0/7 master 5/0/0
该命令的涵义是:将八个100M带宽的以太端口5/0/0到5/0/7端口捆绑,master后面的端口5/0/0就是主端口。
上述“主端口”在本捆绑组的生存周期内不会改变,而且物理端口的up和down对主端口没有影响。这里,up是指端口正常工作;down是指端口不能工作,它包括:端口物理失效(例如未插网线,网线坏,等等)和用户命令禁止两种情况。另外,所述端口捆绑列表中的端口状态都是up的。
在“主端口”被建立之后,该“主端口”就从逻辑上代表或标识出了捆绑组。也就是说,以后捆绑组的属性只能在主端口上进行配置,捆绑组内的子端口会自动复制此主端口的属性(如支持的路由协议,支持的vlan个数,等等)。而且以后所有的MAC、ARP表项都将学习到主端口,系统转发表项中不会有子端口出现。另外,如果要删除捆绑组,则只需删除该主端口即可。同样以华为公司制造的Quidway路由交换机系列为例,当删除主端口时,其配置命令为:
undo link-aggregation ethernet master 5/0/0
该命令的涵义是:撤销端口5/0/0,其中,端口5/0/0就是主端口。
图3是根据本发明实施例所述的采用“主端口”的捆绑方案的方法流程示意图。如图3所示,当报文从捆绑组中的某个端口进入后,在SB源接口板通过目的MAC地址查找MAC表得到出端口TB/TP(目标板/目标端口),同时根据SP(源端口,即报文进入的物理端口)的端口属性判断该端口是否为捆绑端口,如果是,则查找端口捆绑表得到主端口,并用主端口替换掉报文的SP。经过其他功能的处理后,报文经过网板被发送到目标板TB。当报文到达TB后,该板读取上行带来的信息,将报文发送到目标端口TP,并在发送前进行源MAC地址的学习。在MAC地址学习中,TB以源MAC地址为key值(关键值),将报文的SB/SP(源板/源端口)存入MAC表。
这样所有的从捆绑组进入的报文都将SP学习到主端口上。
当对方回应报文时,上行查找MAC表得到出端口TB/TP。注意,此时TP就是主端口。报文经网板到达捆绑组所在的单板TB,TB根据TP端口的属性表得知TP是捆绑端口,查找端口捆绑表,得到端口成员列表。通过流量均分算法选中其中一个端口,用该端口替换TP将报文发送出去。
需要注意的是,图3中的下行的MAC地址学习并不是一定要进行的。当要学习的表项已经存在于MAC表中,并且内容和要学习的表项完全相同时,不需要学习;当表项存在但内容不同时,进行表项的更新即可。
在上述过程中,流量均分算法可以任意选择,常见的算法是用标识数据流的关键值,如源MAC、目的MAC、源IP、目的IP、协议号或它们的组合进行哈希运算,得到一个唯一的值,对该数值用捆绑端口数进行取模操作。用取模后的余数作为索引就可从捆绑组端口列表中查找到TP。
本领域的普通技术人员应该明白,虽然以上对本发明的说明是参考其具体实施例来进行的,但它并不意味着是对本发明的限制。本发明的范围是由附带的权利要求来定义的。

Claims (5)

1.一种适用于分布式网络交换系统的端口捆绑方法,其特征在于所述方法包括以下步骤:
1)在网络交换系统的端口捆绑表中增加一个自定义端口字段:“主端口”,并从逻辑上用该主端口标识捆绑组;
2)当来自发送端的上行报文进入所述端口捆绑组后,将所述报文的源端口替换为由所述主端口字段表示的端口,查找MAC表得到出端口目标板/目标端口,并通过所述网络交换系统的网板将经过所述替换的报文发送至所述出端口目标板/目标端口;
3)当所述出端口目标板/目标端口对所述报文做出回应时,回应报文到达所述端口捆绑组所在单板后,查找所述端口捆绑表,得到端口成员列表,通过流量均分算法选出其中一个端口,并用该端口替换所述主端口将报文发出。
2.根据权利要求1中的任何一项所述的方法,其特征在于,所述主端口是属于所述捆绑组的物理端口。
3.根据权利要求2所述的方法,其特征在于,所述自定义端口字段“主端口”在上层配置时被指定。
4.根据权利要求3所述的方法,其特征在于,所述自定义端口字段“主端口”在所述捆绑组的生存周期内不发生改变。
5.根据权利要求4所述的方法,其特征在于,所述网络交换系统中实际物理端口是否正常工作不会对所述“主端口”产生影响。
CNB031192165A 2003-03-05 2003-03-05 在分布式网络交换系统中实现的端口捆绑方法 Expired - Fee Related CN1311664C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031192165A CN1311664C (zh) 2003-03-05 2003-03-05 在分布式网络交换系统中实现的端口捆绑方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031192165A CN1311664C (zh) 2003-03-05 2003-03-05 在分布式网络交换系统中实现的端口捆绑方法

Publications (2)

Publication Number Publication Date
CN1527548A CN1527548A (zh) 2004-09-08
CN1311664C true CN1311664C (zh) 2007-04-18

Family

ID=34285017

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031192165A Expired - Fee Related CN1311664C (zh) 2003-03-05 2003-03-05 在分布式网络交换系统中实现的端口捆绑方法

Country Status (1)

Country Link
CN (1) CN1311664C (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170512B (zh) * 2007-11-21 2010-04-21 中兴通讯股份有限公司 报文业务处理方法
CN101741921B (zh) * 2008-11-26 2012-11-14 中兴通讯股份有限公司 Mac地址处理方法和装置
CN102437962B (zh) * 2011-12-29 2014-06-18 汉柏科技有限公司 三层网络处理实现方法
CN109286564B (zh) * 2017-07-20 2022-06-07 迈普通信技术股份有限公司 一种报文转发方法及装置
CN112019432B (zh) * 2020-07-31 2022-02-01 深圳市风云实业有限公司 一种基于多端口捆绑的上行输入报文转发系统
CN115941500A (zh) * 2022-12-07 2023-04-07 深圳市厚石网络科技有限公司 一种基于erps的上行链路组网方法及可读介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1369991A (zh) * 2002-04-01 2002-09-18 北京港湾网络有限公司 交换机捆绑端口分流方法及交换机芯片
EP1259886A1 (en) * 2000-03-03 2002-11-27 Nexland, Inc. Network address translation gateway for local area networks using local ip addresses and non-translatable port addresses

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1259886A1 (en) * 2000-03-03 2002-11-27 Nexland, Inc. Network address translation gateway for local area networks using local ip addresses and non-translatable port addresses
CN1369991A (zh) * 2002-04-01 2002-09-18 北京港湾网络有限公司 交换机捆绑端口分流方法及交换机芯片

Also Published As

Publication number Publication date
CN1527548A (zh) 2004-09-08

Similar Documents

Publication Publication Date Title
CN101843045B (zh) 链路聚合组上的固定和保护
EP1019833B1 (en) Mechanism for packet field replacement in a multi-layered switched network element
CN1914867B (zh) 虚拟网络设备中的接口束
CN1939004B (zh) 虚拟网络设备中的分布式转发
CN103098424B (zh) 用于多机架链路聚集的系统和方法
US8867555B2 (en) Method and system for transparent LAN services in a packet network
US6973082B2 (en) Forwarding packets to aggregated links using distributed ingress card processing
JP3714238B2 (ja) ネットワーク転送システム及び転送方法
US6934292B1 (en) Method and system for emulating a single router in a switch stack
CN100337450C (zh) 一种虚拟局域网之间的通信方法
EP1722520A1 (en) A method for implementing multicast based on multiple service transmission plate
CN100337457C (zh) 以太网交换机跨虚拟局域网的二层组播数据传输方法
US20190253345A1 (en) Adaptive Routing in a Box
US20180069715A1 (en) Multicasting within distributed control plane of a switch
US7693169B2 (en) Transmission apparatus and frame transmission method
CN100566299C (zh) 多协议标签交换业务分类处理方法及网络设备
CN101155109A (zh) 一种以太网交换系统及设备
CN1848814A (zh) 在交换机的输入端口处过滤帧
US20110299551A1 (en) Method and Apparatus for Transferring Data Packets Between a First Network and a Second Network
GB2350530A (en) Port mirroring across a trunked stack of multi-port devices
CN1787489A (zh) 将接口流量在多个网络处理器引擎中均担的方法
CN101355519A (zh) 一种实现业务流负载分担的方法和装置
US8699485B2 (en) Multicast over lag and IRB in a routing device
CN1311664C (zh) 在分布式网络交换系统中实现的端口捆绑方法
CN108737274B (zh) 一种报文转发方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070418

Termination date: 20170305

CF01 Termination of patent right due to non-payment of annual fee