分布式链路聚合组的聚合链路选择/去选择的方法及装置的制作方法

文档序号:7904484
专利名称:分布式链路聚合组的聚合链路选择/去选择的方法及装置的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种分布式链路聚合组的聚合链路选择/ 去选择的方法及装置。
背景技术
随着宽带业务的飞速发展,网络与网络之间的互连使用得越来越多,承载了更多的业务。网络内部根据其所采用的技术,均可有多种方法对链路,及其上的节点实现保护。 随着对流量的保护需求越来越强烈,要求越来越高,有运营商也提出了需要在网络互连接口处的保护的需求。目前在IEEE标准组织中正在讨论通过采用端口聚合的方式来实现网络接口的保护。目前IEEE已有现有标准802.1AX-链路聚合能够实现多条链路的保护,但仅限于支持的是一个节点上的端口聚合,因此仅能用于链路保护上,但是在网络边缘接口上若要对节点保护在采用当前的链路聚合技术中就无法实现。因此IEEE802.1工作组对一种分布式的链路聚合技术进行了立项,即由一个或多个节点组成一个逻辑节点来进行链路聚合,将多个节点上的多条链路聚合为一个聚合组中,从而实现了链路和节点的双冗余的网络互连保护。
如图1所示,两个网络的边缘节点之间互连,将这些节点互连的多条链路聚合为一个链路聚合组LAG。在正常情况下,网络A的a、b节点上的链路和网络C上的a、b、c节点上的链路聚合为一个LAG,这些链路互相保护,通过同一网络侧的节点之间也是可以互相保护。从网络C侧看来,网络A的a、b节点是一个逻辑节点。但是这里有一个前提,就是a、 b之间存在一条内部的通信路径,用于a、b节点之间交互各自的信息 ,从而将他们各自的链路聚合为一个聚合组,并且使其工作为一个逻辑节点。
一旦节点之间内部路径发生故障,则这些节点无法再聚合为一个逻辑节点,如图2 所示,这时需要将其中一个节点从聚合组中隔离出来。对于网络A侧,a、b节点之间的内连路径故障,a、b无法再聚合了,这时需要节点a、b做出决策,是其中一个节点,或者a节点、 或者b节点从原聚合组中隔离出来。
现有技术的方法是在指定其中一个节点在感知发生故障后,修改其自身的LACP 参数,从而实现该节点从聚合组中隔离出来的目的。这时无需判断是链路故障还是节点故障,只需判断有故障,则其中一个节点修改其系统参数,但同时也携带原来统一的那个系统参数。对端如果收到了两种不同的系统参数LACP rou,则将于与原来统一的那个系统参数不同的链路从聚合组中隔离出来。
但是,上述的方法存在以下不足对于一侧节点有2个及以上节点的情况,这种指定容易产生混乱,尤其容易出现不该隔离的节点从聚合组中隔离出来,从而导致聚合组中不再有节点的情况。发明内容
本发明的主要目的在于提供一种分布式链路聚合组的聚合链路去选择的方法及装置,以至少解决上述现有技术中由于指定隔离节点所导致的不该隔离的节点从聚合组中隔离出来的问题。
根据本发明的一个方面,提供了一种分布式链路聚合组的聚合链路去选择的方法,包括分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化;如果是,则将受变化影响的聚合链路从链路聚合组中去选择。
优选地,节点连接关系的变化至少包括以下之一链路故障、节点故障、节点的移除。
优选地,分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化之前,还包括=Actor端的每个节点将各自的节点属性信息和相邻连接信息通告给相邻节点,并根据所有相邻节点通告过来的节点属性信息和相邻连接信息生成节点连接关系信息。
优选地,Actor端的每个节点通告给相邻节点的相邻连接信息为该节点与除被通告的相邻节点外的其它相邻节点的连接信息。
优选地,节点属性信息包括节点标识ID和节点性能属性。
优选地,节点性能属性包括节点优先级和/或节点带宽能力。
优选地,将受变化影响的聚合链路从链路聚合组中去选择,包括当Actor端出现链路故障时,故障链路两端的节点进行节点性能属性的比较;根据比较结果将第一节点从 Actor端隔离出来,其中第一节点为故障链路两端的节点中的一个。
优选地,将第一节点从Actor端隔离出来,包括第一节点修改其发送至链路聚合组的Partner端的LACP报文中的系统参数;Partner端将接收到系统参数发生改变的LACP 报文的链路/端口从链路聚合组中去选择。
优选地,将受变化影响的聚合链路从链路聚合组中去选择之后,还包括当链路故障恢复时,第一节点将LACP报文中的系统参数恢复到原有的系统参数;Partner端将接收到系统参数恢复的LACP报文的链路/端口重新选择到链路聚合组中。
优选地,将受变化影响的聚合链路从链路聚合组中去选择,包括当Actor端出现节点故障或有节点被移除时,Partner端将不再收到LACP报文的端口 /链路从链路聚合组中去选择。
优选地,Actor端的所有节点组成链路聚合组的一个逻辑节点。
优选地,Actor端内的相邻节点之间通过LACP或LLDP协议交互各自的节点属性信息和相邻连接信息。
优选地,分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化,包括=Actor端的节点根据节点连接关系信息判断出有节点信息丢失,则认为所丢失的节点出现节点故障或已从Actor端中移除。
根据本发明的另一个方面,提供了一种分布式链路聚合组的聚合链路选择的方法,包括分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到Actor端中;如果是,则将与新的节点相连的链路聚合选择到聚合链路组中。
优选地,分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到Ac tor端中,包括当Ac tor端的每个节点根据节点连接关系信息判断出有节点信息加入,则认为有新的节点加入到Actor端中。
优选地,新的节点包括:Actor端中的故障恢复节点或新加入到Actor端中的节
优选地,将与新的节点相连的链路聚合选择到聚合链路组中,包括聚合链路组的 Partner端将收到与聚合链路组的LACP系统参数相同的LACP报文的端口 /链路选择到链路聚合组中。
根据本发明的又一个方面,提供了一种分布式链路聚合组的聚合链路去选择的装置,包括第一判断模块,用于使分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化;去选择模块,用于在 Actor端内的节点连接关系发生变化的情况下,将受变化影响的聚合链路从链路聚合组中去选择。
优选地,去选择的装置还包括通告模块,用于使Actor端的每个节点将各自的节点属性信息和相邻连接信息通告给相邻节点,并根据所有相邻节点通告过来的节点属性信息和相邻连接信息生成节点连接关系信息。
优选地,去选择模块包括第一去选择子模块,用于当Actor端出现链路故障时, 使故障链路两端的节点进行节点性能属性的比较;并根据比较结果将第一节点从Actor端隔离出来,其中第一 节点为故障链路两端的节点中的一个。
优选地,去选择的装置还包括第一选择模块,用于当链路故障恢复时,通过第一节点将LACP报文中的系统参数恢复到原有的系统参数;并通过Partner端将接收到系统参数恢复的LACP报文的链路/端口重新选择到链路聚合组中。
优选地,去选择模块包括第二去选择子模块,用于当Actor端出现节点故障或有节点被移除时,通过Partner端将不再收到LACP报文的端口 /链路从链路聚合组中去选择。
根据本发明的再一个方面,提供了一种分布式链路聚合组的聚合链路选择的装置,包括第二判断模块,用于使分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到Actor端中;选择模块,用于在有新的节点加入到Actor端的情况下,将与新的节点相连的链路聚合选择到聚合链路组中。
在本发明中,通过每个节点都参与连接关系是否发生变化的判断,可准确确定出应该隔离的节点,从而解决了现有技术中由于指定隔离节点所导致的不该隔离的节点从聚合组中隔离出来的问题,进而实现了链路和节点的双冗余的网络互连保护的效果。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中
图1是根据相关技术的分布式弹性网络接口示意图2是根据相关技术的分布式弹性网络接口内故障导致节点分裂示意图3是根据本发明实施例一的聚合链路去选择方法流程图4A是根据本发明实施例二的节点连接示意图4B是根据本发明实施例二的链路发生故障时的示意图4C是根据本发明实施例二的节点发生故障时的示意图5A是根据本发明实施例三的节点连接示意图5B是根据本发明实施例三的链路发生故障时的示意图5C是根据本发明实施例三的节点发生故障时的示意图是根据本发明实施例三的前后两个链路故障时的示意图
图6A是根据本发明实施例四的节点连接示意图6B是根据本发明实施例四的链路发生故障时的示意图6C是根据本发明实施例四的节点发生 故障时的示意图7是根据本发明实施例五的聚合链路去选择装置结构框图8是根据本发明实施例六的聚合链路去选择装置结构框图9是根据本发明实施例七的聚合链路选择方法流程图10是根据本发明实施例八的聚合链路选择装置结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实例例中同一端内部的节点之间的连接方式可以是物理的直连链路,也可以是一条隧道,但不仅限于此。
实施例一
图3是根据本发明实施例一的聚合链路去选择方法流程图,如图3所示,包括以下步骤
步骤S302,分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化。
步骤S304,如果是,则将受变化影响的聚合链路从链路聚合组中去选择。
在本实施例中,通过每个节点都参与连接关系是否发生变化的判断,可准确确定出应该隔离的节点,从而解决了现有技术中由于指定隔离节点所导致的不该隔离的节点从聚合组中隔离出来的问题,进而实现了链路和节点的双冗余的网络互连保护的效果。
在上述步骤S302之前还包括每个节点将自身以及其所连接节点的情况通告给对端节点,每个节点将对端节点通告过来的各条节点连接信息保存下来。
在上述步骤S302中,当发生故障,各个节点所保存的节点连接信息将发生变化, 节点将根据节点连接信息的变化情况,采取以下不同的动作
若变化后的连接信息显示路径故障,则根据该路径所连节点的优先级和本节点优先级比较结果或者双方的带宽比较来决策需要从该聚合组中隔离出来的节点。
若变化后的连接信息显示有节点信息丢失,说明是节点故障,则可认为故障节点从聚合组中隔离了,其他节点无需再采取相关的动作。
若一个节点感知不到任何节点的连接,说明该节点失去了与其他节点的连接,则该节点需要从聚合组中隔离出来。
在上述步骤S304中,将链路从聚合组中去选择主要是通过隔离节点修改其自身系统参数的方式来实现的。
实施例二
在本实施例是通过节点优先级来进行隔离节点的决策,但实际用于决策的因素可以很多,比如各个节点的所提供带宽,或者静态配置等。
图4A是根据本发明实施例二的节点连接示意图。如图4A所示,在本实施例中,一端的逻辑节点是由2个物理节点A、B组成。A、B的3条链路形成聚合组,其中有2条属于 A节点,I条属于B节点。对于该聚合组A节点贡献的带宽多余B节点贡献的带宽。A将其在该聚合组的情况通告给B,同样地,B也将其在该聚合组的情况通告给A。带宽信息可以作为节点决策的一项因素,除此之外还可以通过设置优先级等方式来帮助节点进行决策。本发明的下文的各实施例均是采用了节点优先级的方式来帮助节点进行决策。
A、B之间可以通过一特定的协议来实现信息的交互,该协议可以是一种新定义的协议,也可以是基于一个现有协议,如LACP、LLDP等。节点及其其所连接的其他节点情况的信息可以通过TLV携带在协议中。例如表一所示的TLV格式
表一
类型长度本节点的本节点的其它节点的其它节点的node—idnode—Pirioritynode—idnode—Piriority
在本实施例中,最初始状态时,节点A、B还没有获取其他节点信息,因此只是将各自的节点发往对端节点,此时A发往其他节点的TLV如表二所示
表二
类型长度A节点的node jdA 节点的 node Piriority
当各个节点获取了其所连接的节点信息时,在给对端发送节点信息时,会将其所连接的其他节点信息也携带在该TLV中,由于该实施例中只有2个节点,A除B之外,没有连接其他节点,因此,此时A发给B的节点信息仍然是本节点信息,如表三所示
表三
类型长度A节点的node jdA 节点的 node Piriority
通过A、B节点的节点信息交换,最后A、B均获取了其各自连接的节点信息,如图 4A所示,节点A感知其连接了节点B,节点B感知其连接了节点A。
图4B是根据本发明实施例二的链路发生故障时的示意图。如图4B所示,当A、B 之间的链路故障,则A、B均感知该故障,并各自做出决策。本例中,A的优先级高于B的优先级,A、B感知失去了与对端的连接,则A、B分别判断自身与对端的优先级,由于B的优先级略低,因此节点B将修改其系统参数system_id,但在B发往C、D节点的LACP报文中仍然携带了其原来的system_id:old_system_id。C、D节点收到来自A、B的LACP报文,发现B的system_id发生了变化,A没有变化,因此从聚合组中隔离出和B连接的链路,从而将B 从聚合组中隔离。
图4C是根据本发明实施例二的节点发生故障时的示意图。如图4C所示,当A节点故障,B节点失去了 A点的信息,B决策自己的优先级低,应该修改其系统参数system_id, 但在B发往C、D节点的LACP报文中仍然携带了其原来的system_id:old_system_id。
此时,由于A节点故障,因此没有从A节点的LACP报文发往C、D节点,C、D节点均收到了来自B节点的LACP报文,虽然该LACP报文中的system_id参数发生变化,但其 old_system_id仍然是该聚合组的sytem_id,并且C、D没有再收到其他system_id = old_ system_id的LACP报文,因此C、D不会将和B连接的链路从聚合组中隔离出来,继续B节点的聚合。
当节点A恢复,或者A-B链路故障恢复,则B感知后恢复其原系统参数,即SyStem_ id = old_system_id。此时又能实现和对端的再次聚合。
实施例三
图5A是根据本发明实施例三的节点连接示意图。如图5A所示,一端的逻辑节点是由3个物理节点A、B、C组成,A、B、C节点互连。A将其节点信息通告给聚合组本端的其他节点。这里节点之间可以通过一特定的协议来实现信息的交互,该协议可以是一种新定义的协议,也可以是基于一个现有协议,如LACP、LLDP等。节点及其所连接的其他节点情况的信息可以通过TLV携带在协议中,例如下表四的TLV格式所示
表四
·
权利要求
1.一种分布式链路聚合组的聚合链路去选择的方法,其特征在于,包括 所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断所述Actor端内的节点连接关系是否发生变化; 如果是,则将受所述变化影响的聚合链路从所述链路聚合组中去选择。
2.根据权利要求2所述的方法,其特征在于,所述节点连接关系的变化至少包括以下之一链路故障、节点故障、节点的移除。
3.根据权利要求1或2所述的方法,其特征在于,所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断所述Actor端内的节点连接关系是否发生变化之前,还包括 所述Actor端的每个节点将各自的节点属性信息和相邻连接信息通告给相邻节点,并根据所有相邻节点通告过来的节点属性信息和相邻连接信息生成所述节点连接关系信息。
4.根据权利要求3所述的方法,其特征在于,所述Actor端的每个节点通告给相邻节点的所述相邻连接信息为该节点与除被通告的相邻节点外的其它相邻节点的连接信息。
5.根据权利要求3所述的方法,其特征在于,所述节点属性信息包括节点标识ID和节点性能属性。
6.根据权利要求5所述的方法,其特征在于,所述节点性能属性包括节点优先级和/或节点带宽能力。
7.根据权利要求2所述的方法,其特征在于,将受所述变化影响的聚合链路从所述链路聚合组中去选择,包括 当所述Actor端出现链路故障时,故障链路两端的节点进行节点性能属性的比较;根据比较结果将第一节点从所述Actor端隔离出来,其中所述第一节点为故障链路两端的节点中的一个。
8.根据权利要求7所述的方法,其特征在于,将第一节点从所述Actor端隔离出来,包括 所述第一节点修改其发送至所述链路聚合组的Partner端的LACP报文中的系统参数; 所述Partner端将接收到系统参数发生改变的所述LACP报文的链路/端口从所述链路聚合组中去选择。
9.根据权利要求8所述的方法,其特征在于,将受所述变化影响的聚合链路从所述链路聚合组中去选择之后,还包括 当所述链路故障恢复时,所述第一节点将所述LACP报文中的系统参数恢复到原有的系统参数; 所述Partner端将接收到系统参数恢复的所述LACP报文的链路/端口重新选择到所述链路聚合组中。
10.根据权利要求2所述的方法,其特征在于,将受所述变化影响的聚合链路从所述链路聚合组中去选择,包括 当所述Actor端出现节点故障或有节点被移除时,所述Partner端将不再收到LACP报文的端口/链路从所述链路聚合组中去选择。
11.根据权利要求1所述的方法,其特征在于,所述Actor端的所有节点组成所述链路聚合组的一个逻辑节点。
12.根据权利要求3所述的方法,其特征在于,所述Actor端内的相邻节点之间通过LACP或LLDP协议交互各自的节点属性信息和相邻连接信息。
13.根据权利要求2所述的方法,其特征在于,所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断所述Actor端内的节点连接关系是否发生变化,包括 所述Actor端的节点根据所述节点连接关系信息判断出有节点信息丢失,则认为所丢失的节点出现节点故障或已从所述Actor端中移除。
14.一种分布式链路聚合组的聚合链路选择的方法,其特征在于,包括 所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到所述Actor端中; 如果是,则将与所述新的节点相连的链路聚合选择到所述聚合链路组中。
15.根据权利要求14所述的方法,其特征在于,所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到所述Actor端中,包括 当所述Actor端的每个节点根据所述节点连接关系信息判断出有节点信息加入,则认为有新的节点加入到所述Actor端中。
16.根据权利要求15所述的方法,其特征在于,所述新的节点包括所述Actor端中的故障恢复节点或新加入到所述Ac tor端中的节点。
17.根据权利要求14至16任一项所述的方法,其特征在于,将与所述新的节点相连的链路聚合选择到所述聚合链路组中,包括 所述聚合链路组的Partner端将收到与所述聚合链路组的LACP系统参数相同的LACP报文的端口/链路选择到所述链路聚合组中。
18.—种分布式链路聚合组的聚合链路去选择的装置,其特征在于,包括 第一判断模块,用于使所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断所述Actor端内的节点连接关系是否发生变化; 去选择模块,用于在所述Actor端内的节点连接关系发生变化的情况下,将受所述变化影响的聚合链路从所述链路聚合组中去选择。
19.根据权利要求18所述的装置,其特征在于,所述装置还包括 通告模块,用于使所述Actor端的每个节点将各自的节点属性信息和相邻连接信息通告给相邻节点,并根据所有相邻节点通告过来的节点属性信息和相邻连接信息生成所述节点连接关系信息。
20.根据权利要求18所述的装置,其特征在于,所述去选择模块包括 第一去选择子模块,用于当所述Actor端出现链路故障时,使故障链路两端的节点进行节点性能属性的比较;并根据比较结果将第一节点从所述Actor端隔离出来,其中所述第一节点为故障链路两端的节点中的一个。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括 第一选择模块,用于当所述链路故障恢复时,通过所述第一节点将所述LACP报文中的系统参数恢复到原有的系统参数;并通过所述Partner端将接收到系统参数恢复的所述LACP报文的链路/端口重新选择到所述链路聚合组中。
22.根据权利要求18所述的装置,其特征在于,所述去选择模块包括 第二去选择子模块,用于当所述Actor端出现节点故障或有节点被移除时,通过所述Partner端将不再收到LACP报文的端口 /链路从所述链路聚合组中去选择。
23.—种分布式链路聚合组的聚合链路选择的装置,其特征在于,包括 第二判断模块,用于使所述分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断是否有新的节点加入到所述Actor端中; 选择模块,用于在有新的节点加入到所述Actor端的情况下,将与所述新的节点相连的链路聚合选择到所述聚合链路组中。
全文摘要
本发明提供了一种分布式链路聚合组的聚合链路选择/去选择的方法及装置,该去选择的方法包括分布式链路聚合组的Actor端的每个节点根据自身所保存的节点连接关系信息判断Actor端内的节点连接关系是否发生变化;如果是,则将受变化影响的聚合链路从链路聚合组中去选择。在本发明中,通过每个节点都参与连接关系是否发生变化的判断,可准确确定出应该隔离的节点,从而解决了现有技术中由于指定隔离节点所导致的不该隔离的节点从聚合组中隔离出来的问题,进而实现了链路和节点的双冗余的网络互连保护的效果。
文档编号H04L12/801GK103001781SQ201110265928
公开日2013年3月27日 申请日期2011年9月8日 优先权日2011年9月8日
发明者敖婷 申请人:中兴通讯股份有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1