聚合链路负载分担方法和装置的制作方法

文档序号:7556249阅读:183来源:国知局
专利名称:聚合链路负载分担方法和装置的制作方法
技术领域
本申请涉及网络通信技术,特别涉及聚合链路负载分担方法和装置。
背景技术
在集群中的任一设备在通过聚合链路转发数据流时,都是采用本地优先的原则进行的,即集群中的设备接收到通过聚合链路转发的数据流时,优先选择本设备上属于该聚合链路的成员链路进行数据流的转发。如图1所示,主设备(Master)和备设备(Standby)通过堆叠链路比如智能弹性架构(IRF !Intelligent Resilient Framework)链路互联形成集群,其中,集群中的Master、Standby与汇聚设备之间的链路聚合在一起形成聚合链路。对于Master,如果收到需要通过聚合链路转发的下行数据流,则Master在本地存在属于该聚合链路的成员链路时,即使Standby上也存在属于该聚合链路中的成员链路,Master也只会通过本设备上属于该聚合链路的成员链路发送该下行数据流到下行方向的汇聚设备,具体如图1所示。同样,对于Standby,其收到需要通过聚合链路转发的下行数据流时,也会优先选择本设备上属于该聚合链路的成员链路转发该下行数据流到下行方向的汇聚设备。而当集群中的设备比如Master或者Standby收到需要通过聚合链路转发的下行数据流时,如果本设备本地存在属于该聚合链路的成员链路、但该成员链路中有部分不可用(DOWN),则基于本地优先原则,本设备会集中通过属于该聚合链路的正常成员链路转发下行数据流,这会出现成员链路拥塞的现象。以Master收到需要通过聚合链路转发的下行数据流为例,如图2所示,Master本地属于该聚合链路的成员链路中有两条成员链路比如链路I和链路2D0WN不可用,而其他两条成员链·路比如链路3和链路4可用,且每条可用的成员链路允许的流量带宽为10M,则如果下行数据流超过20M,就会出现可用成员链路拥塞的现象。

发明内容
本申请提供了聚合链路负载分担方法和装置,以避免链路拥塞,实现集群中聚合链路的负载分担。本申请提供的技术方案包括:—种聚合链路负载分担方法,所述聚合链路包含集群中不同成员设备连接至汇聚设备的成员链路,所述集群中相邻成员设备之间通过堆叠链路连接,所述集群中的成员设备细分为主设备Master和至少一个备设备Standby,所述方法包括:所述集群中的Master每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率;所述各个设备本地可用聚合成员链路为各个设备本地属于所述聚合链路的可用成员链路;所述Master每隔所述设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率,所述各个设备本地可用堆叠成员链路为各个设备本地属于堆叠链路的可用成员链路;所述Master利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件;如果是,所述Master从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。。优选地,所述聚合链路失衡条件包括:所述集群中存在满足设定重载条件的重载设备;所述集群中与所述重载设备相邻的至少一个设备满足设定轻载条件;

所述集群中重载设备与相邻的一个轻载设备的本地可用聚合成员链路数量之差满足设定偏差阈值;所述集群中从所述重载设备至所述重载设备相邻的一个轻载设备的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。优选地,所述满足设定重载条件的重载设备为:本地各个可用聚合成员链路的出方向利用率均大于等于设定的聚合成员链路出方向利用率上限阈值的设备;所述满足设定轻载条件的轻载设备为:本地各个可用聚合成员链路的出方向利用率均小于等于设定的聚合成员链路出方向利用率下限阈值的设备。优选地,Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发包括:Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流。优选地,Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表包括:Master从所述重载设备本地至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值;Master比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的
数量;如果M+X〈=L,选择识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表;如果M+X>L,从识别出的所有可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。优选地,该方法进一步包括:所述Master实时检测所述重载设备本地是否新增加了可用聚合成员链路,当Master检测出所述重载设备本地未增加可用聚合成员链路时,检测所述重载设备本地是否存在满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路;当Master检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率下限阈值,如果是,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路;其中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值。一种聚合链路负载分担装置,所述聚合链路包含集群中不同成员设备本地连接至汇聚设备的成员链路,所述集群中相邻成员设备之间通过堆叠链路连接,所述集群中的成员设备细分为主设备Master和至少一个备设备Standby,所述装置为所述集群中的Master,包括:收集单元,用于每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率,所述各个设备本地可用聚合成员链路为各个设备本地属于所述聚合链路的可用成员链路;以及用于每隔所述设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率,所述各个设备本地可用堆叠成员链路为各个设备本地属于堆叠链路的可用成员链路;验证单元,用于利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件;处理单元,用于在所述验证单元的验证结果为是时,从所述集群中识别出满足设定重载条件的重载设 备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。优选地,所述聚合链路失衡条件包括:所述集群中存在满足设定重载条件的重载设备;所述集群中与所述重载设备相邻的至少一个设备满足设定轻载条件;所述集群中重载设备与相邻的一个轻载设备的本地可用聚合成员链路数量之差满足设定偏差阈值;所述集群中从所述重载设备至所述重载设备相邻的一个轻载设备的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。优选地,所述满足设定重载条件的重载设备为:本地各个可用聚合成员链路的出方向利用率均大于等于设定的聚合成员链路出方向利用率上限阈值的设备;所述满足设定轻载条件的轻载设备为:本地各个可用聚合成员链路的出方向利用率均小于等于设定的聚合成员链路出方向利用率下限阈值的设备。优选地,所述处理单元选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发包括:选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流;其中,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表包括:从所述重载设备本地至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值;比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的数量;如果M+X〈=L,选择识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表;如果M+X>L,从识别出的所有可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。优选地,该装置进一步包括:检测单元,用于实时检测所述重载设备本地是否新增加了可用聚合成员链路,当检测出所述重载设备本地未增加可用聚合成员链路时,检测所述重载设备本地是否存在满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,通知重载设备在本地聚合链路表中删除可用堆叠成员链路;当检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率下限阈值,如果是,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路;其中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值。由以上技术方案可以看出,本发明中,Master通过利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、可用堆叠成员链路出方向利用率验证所述聚合链路满足设定的聚合链路失衡条件时,选择所述集群中满足设定重载条件的重载设备至所述重载设备相邻的、且满足设定轻载条件的轻载设备的至少一条堆叠链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发,这样就能避免集群中设备在部分成员链路DOWN时基于本地优先原则转发数据流引起的成员链路拥塞的现象。


图1为集群中聚合链路本地优先转发数据流示意图;图2为集群中聚合链路中部分成员链路故障数据流转发示意图;图3为本发明实施例提供的方法流程图;图4为本发明实施例应用的集群结构示意图;图5为本发明实施例提供的聚合链路负载分担示意
图6为本发明实施例提供的装置结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。为避免集群中的设备比如Master或者Standby在本地属于聚合链路的部分成员链路DOWN时该设备基于本地优先原则转发数据流引起的成员链路拥塞的现象,本发明需要提前发现聚合链路失衡,充分利用集群中设备之间的堆叠链路带宽,以智能地达到聚合链路负载分担的目的。下面对本发明提供的方法进行描述:参见图3,图3为本发明实施例提供的聚合链路负载分担方法流程图。在该方法中,聚合链路包含集群中不同成员设备本地连接至汇聚设备的成员链路,这里,集群中的成员设备基于担任的角色细分为Master和至少一个Standby。如图3所示,该流程可包括以下步骤:步骤301,Master每隔设定收集周期收集所述集群中各个设备本地的可用聚合成员链路的出方向利用率。这里,可用聚合成员链路是指聚合链路中无故障的成员链路。以如图1所示的集群为例,在图1所示的集群中仅包含如下两个设备:设备I和设备2,其中,设备I为Master,设备2为Standby,则基于步骤301,作为Master的设备I每隔设定收集周期在集群中收集本设备I本地可用聚合成员链路比如图1中的链路1、链路2、链路3、链路4的出方向利用率、以及收集设备2本地可用聚合成员链路的出方向利用率。

而以如图4所示的集群为例,在图4所示的集群中包含以下三个设备:设备1、设备2、设备3,其中,设备I为Master,设备2、设备3均为Standby,则基于步骤301,作为Master的设备I每隔设定收集周期在集群中收集本设备I本地可用聚合成员链路,比如图1中的链路1、链路2、链路3、链路4的出方向利用率、收集设备2本地可用聚合成员链路的出方向利用率、以及收集设备3本地可用聚合成员链路的出方向利用率。本发明仅以图1、图4所示集群为例,其他结构的集群原理类似,这里不再一一赘述。在本发明中,设定收集周期可预先设置,其在设置时需要考虑尽可能保证数据流转发的不中断,具体可依据经验设置,比如设置60秒等。需要说明的是,在集群中,作为Master的设备可能会因故障而与作为Standby的设备进行主备切换,针对这种情况,则原作为Standby的设备在新切换为Master后会按照步骤301执行。步骤302,Master每隔设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率。这里,可用堆叠成员链路是指堆叠链路中未DOWN的成员链路。以如图1所示的集群为例,在图1所示的集群中仅包含如下两个设备:设备I和设备2,其中,设备I和设备2之间通过堆叠链路连接,设备I为Master,设备2为Standby,则基于步骤302,作为Master的设备I每隔设定收集周期在集群中收集设备I本地属于从设备I连接至设备2的堆叠链路的可用堆叠成员链路,比如图1中从设备I连接至设备2的链路a、b、c、d出方向利用率,同时,也收集设备2本地属于从设备2连接至设备I的堆叠链路的可用堆叠成员链路,比如图1中从设备2连接至设备I的链路a、b、c、d的出方向利用率。以如图4所示的集群为例,在图4所示的集群中包含如下三个设备:设备1、设备
2、设备3,其中,设备I为Master,设备2、设备3均为Standby,设备1、设备2之间通过堆叠链路连接,设备2、设备3之间通过堆叠链路连接;则基于步骤302,作为Master的设备I每隔设定收集周期收集集群中设备I本地属于从设备I连接至设备2的堆叠链路的可用堆叠成员链路比如图4中从设备I连接至设备2的链路al、bl、cl、dl出方向利用率、收集设备2本地属于从设备2连接至设备I的堆叠链路的可用堆叠成员链路比如图4中从设备2连接至设备I的链路al、bl、cl、dl出方向利用率、收集设备2本地属于从设备2连接至设备3的堆叠链路的可用堆叠成员链路比如图4中从设备2连接至设备3的链路a2、b2、c2、d2出方向利用率、以及收集设备3本地属于从设备3连接至设备2的堆叠链路的可用堆叠成员链路比如图4中从设备3连接至设备2的链路a2、b2、c2、d2出方向利用率。本发明仅以图1、图4所示集群为例,其他结构的集群原理类似,这里不再一一赘述。从步骤302可以看出,步骤302中Master收集可用堆叠成员链路出方向利用率的周期与步骤301中Master收集可用聚合成员链路出方向利用率的周期相同,这能够保证一旦发现聚合链路失衡及时利用集群中设备之间的堆叠链路,具体见下述步骤304,这里暂不赘述。
·
作为本发明一个实施例,本发明中,Master收集所述集群中各个设备本地可用聚合成员链路的出方向利用率和可用堆叠成员链路的出方向利用率可通过软件设计实现。其中,在具体实现时,需要所述集群中各个设备在本地启动一个定时器比如I秒定时器,以固定时间比如I秒为间隔统计本地各个可用聚合成员链路、以及本地各个可用堆叠成员链路上的数据流量。基于此,上述步骤301中,Master每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率具体为:Master在当前到达设定收集周期(假如该周期为时间点tl至时间点t2之间的一段时间)时,从所述集群中的各个设备获取时间点tl和t2时该各个设备本地可用聚合成员链路转发的数据流量;Master按照以下公式I计算所述集群中各个设备本地可用聚合成员链路的出方向利用率为:V1=(U12 _U11)/(L1X (t2 - tl))。(公式 I)其中,Vl为Master收集的所述集群中一设备本地任一可用聚合成员链路(为便于描述,这里以可用聚合成员链路I为例描述)的出方向利用率,U12为在时间点t2时统计的经由该可用聚合成员链路I转发的数据流量,Ull为在时间点tl时统计的经由该可用聚合成员链路I转发的数据流量,LI为可用聚合成员链路I被预定义的流量带宽。同样,上述步骤302中,Master每隔设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率具体为:Master在当前到达设定收集周期(假如该周期为时间点tl至时间点t2之间的一段时间)时,从所述集群中的各个设备获取时间点tl和t2时该各个设备本地可用堆叠成员链路转发的数据流量;Master按照以下公式2收集所述集群中每一设备本地可用堆叠成员链路的出方向利用率为:V2=(U22 _U21)/(L2X (t2 - tl))。(公式 2)其中,V2为Master收集的所述集群中一设备本地任一可用堆叠成员链路(为便于描述,这里以可用堆叠成员链路I为例描述)的出方向利用率,U22为在时间点t2时统计的经由该可用堆叠成员链路I转发的数据流量,U21为在时间点tl时统计的经由该可用堆叠成员链路I转发的数据流量,L2为可用堆叠成员链路I被预先定义的流量带宽。。以上简单描述了Master如何收集所述集群中各个设备本地可用聚合成员链路的出方向利用率和可用堆叠成员链路的出方向利用率。需要说明的是,上面的描述只是对Master收集所述集群中各个设备本地可用聚合成员链路的出方向利用率和可用堆叠成员链路的出方向利用率的一种举例,并非限定本发明,在不改进本发明思想的前提下,还可采用其他方式实现Master收集所述集群中各个设备本地可用聚合成员链路的出方向利用率和可用堆叠成员链路的出方向利用率。

步骤303,Master利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及各个设备本地的可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件,如果是,执行步骤304。这里,设定的聚合链路失衡条件可根据实际情况设置。作为本发明的一个优选实施例,设定的聚合链路失衡条件可包括以下4个条件:条件1:集群中存在满足设定重载条件的设备。这里,设定重载条件的设备是指本地各个可用聚合成员链路的出方向利用率均大于等于设定的聚合成员链路出方向利用率上限阈值的设备,在本发明中将满足设定重载条件的设备简称重载设备,以下均以重载设备进行描述。条件2:集群中与所述重载设备相邻的至少一个设备满足设定轻载条件。这里,满足设定轻载条件的设备是指本地各个可用聚合成员链路的出方向利用率均小于等于设定的聚合成员链路出方向利用率下限阈值的设备。在本发明中,设定的聚合成员链路出方向利用率上限阈值大于设定的聚合成员链路出方向利用率下限阈值,比如设定的成员链路出方向利用率上限阈值为90%,而设定的成员链路出方向利用率下限阈值为50%。需要说明的是,在本发明中将满足设定轻载条件的设备简称轻载设备,以下均以轻载设备进行描述。条件3:集群中所述重载设备本地的可用聚合成员链路数量与相邻的轻载设备本地的可用聚合成员链路数量之差满足设定偏差阈值;条件4:集群中从所述重载设备至所述重载设备相邻的一个轻载设备之间的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。以上对聚合链路失衡条件进行了描述。需要说明的是,在本发明中,上述针对聚合链路失衡条件的限定仅是一种举例,并非用于限定本发明,本发明在实现时还可仅包括条件1、条件2、条件4。或者其他实现形式,这里不再一一举例描述。还需要说明的是,在本发明中,当步骤303的验证结果为否时,作为本发明的一个实施例,本发明可不执行任何操作,仍按现有技术中设备的本地链路优先原则进行数据流的转发。步骤304,Master从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。本发明中,针对集群中的每一设备,都会在该设备本地配置一个聚合链路表,其中,该聚合链路表中记录了该设备本地的可用聚合成员链路,基于此,本步骤304具体为:Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流。作为本发明的一个优选实施例,Master可通过以下步骤选择所述集群中从重载设备本地至该重载设备相邻的轻载设备的至少一条可用堆叠链路加入所述重载设备本地的聚合链路表:步骤1,Master从所述重载设备连接至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值;步骤2,Master比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master在步骤I识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的数量;如果M+X〈=L,选择步骤I识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表;如果M+X>L,从步骤I识别出的可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。通过以上步骤I和步骤2可以看出,本发明中,一旦集群中有重载设备,则可以选择从重载设备至相邻的轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡分担数据流的转发。这里,从重载设备至相邻的轻载设备的至少一条可用堆叠成员链路只是临时与重载设备本地的可用聚合成员链路一起负载分担数据流的转发,不影响本堆叠成员链路本身的流量转发。并且,基于步骤I和步骤2,能够保证重载设备至相邻轻载设备的至少一条可用堆叠成员链路在临时与重载设备本地的可用聚合成员链路一起负载分担数据流转发时,不会出现与本可用堆叠成员原有流量转发相拥塞的现象。至此,完成图3所示流程。下面以图1所示的集群为例对图3所示流程进行描述:如图1所示,在图1所示的集群中仅包含如下两个设备:设备I和设备2,其中,设备I和设备2之间通过堆叠链路连接,设备I本地存在属于从设备I至设备2的堆叠链路的4条可用堆叠成员链路,且该4条可用堆叠成员链路被预先定义的流量带宽均为10。假如作为Master的设备I本地属于聚合链路的可用聚合成员链路中有两条链路即链路I和链路2D0WN,而其他两条链路即链路3和链路4可用,且这两条可用的链路3和链路4被预先定义的流量带宽均为10M,则当设备I收到需要通过聚合链路转发的数据流为40M,按照现有方式设备I就会通过本地属于聚合链路的两条可用聚合成员链路即链路3和链路4分另Ij分担20M的数据流,而由于链路3和链 路4均最多只能承载IOM的流量,这就会出现图2所示的链路拥塞,即:该40M的数据流就会引起链路3和链路4发生拥塞。
而如果采用本发明,则在设备I为重载设备、且与设备I通过堆叠链路连接且作为Standby的设备2为轻载设备时,作为Master的设备I按照上述步骤304选择出从设备I至设备2的两条可用堆叠成员链路即链路a、链路b加入至设备I本地的聚合链路表,如此,当设备I收到需要通过聚合链路转发的40M的数据流时,设备I就会通过本地聚合链路表记录的属于聚合链路的两条可用成员链路即链路3和链路4、以及从设备I至设备2的2条可用堆叠成员链路即链路a、链路b —起分担转发该40M的数据流,具体如图5所示,这显然不会出现集群中设备在部分成员链路DOWN时基于本地优先原则转发数据流引起的成员链路拥塞的现象。需要说明的是,本发明中,集群中的Master在将重载设备至相邻轻载设备的至少一条可用堆叠成员链路加入至重载设备本地的聚合链路表后,该Master还可进一步执行以下步骤:Master实时检测所述重载设备本地是否新增加了属于所述聚合链路的可用聚合成员链路;当Master检测出所述重载设备本地未增加可用聚合成员链路时,Master检测重载设备本地是否存在至少两条满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,则说明重载设备此时不再重载,无需再用之前选择的可用堆叠成员链路转发数据流,基于此,Master可通知重载设备在本地聚合链路表中删除可用堆叠成员链路,仅使用本地可用聚合成员链路转发数据流,即重载设备恢复了通过本地可用聚合成员链路优先转发数据流,这节省堆叠链路的带宽,而如果重载设备本地不存在满足条件I的至少两条聚合成员链路,则Master不执行任何操作,仍然如上所述,重载设备通过本地聚合链路表记录的可用堆叠成员链路和可用聚合成员链路一起均衡分担数据流。当Master检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率`下限阈值,如果重载设备本地存在满足条件2的至少两条可用聚合成员链路,则说明重载设备此时不再重载,无需再用之前选择的可用堆叠成员链路转发数据流,基于此,Master可通知重载设备在本地聚合链路表中删除可用堆叠成员链路,仅使用本地可用聚合成员链路转发数据流,即重载设备恢复了通过本地可用聚合成员链路优先转发数据流,这节省堆叠链路的带宽,而如果重载设备本地不存在满足条件2的至少两条聚合成员链路,则Master不执行任何操作,仍然如上所述,重载设备通过本地聚合链路表记录的可用堆叠成员链路和可用聚合成员链路一起均衡分担数据流;在上面描述中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值,比如,第二链路出方向利用率下限阈值为30%,第一链路出方向利用率下限阈值为 10% ;以上对本发明提供的方法进行了描述,下面对本发明提供的装置进行描述:参见图6,图6为本发明实施例提供的聚合链路负载分担装置结构图。这里,所述聚合链路包含集群中不同成员设备本地连接至汇聚设备的成员链路,所述集群中相邻成员设备之间通过堆叠链路连接,所述集群中的成员设备细分为主设备Master和至少一个备设备Standby,如图6所示,所述装置为所述集群中的Master,包括:收集单元,用于每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率,所述各个设备本地可用聚合成员链路为各个设备本地属于所述聚合链路的可用成员链路;以及用于每隔所述设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率,所述各个设备本地可用堆叠成员链路为各个设备本地属于堆叠链路的可用成员链路;验证单元,用于利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件;处理单元,用于在所述验证单元的验证结果为是时,从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。作为本发明的一个优选实施例,所述聚合链路失衡条件包括:所述集群中存在满足设定重载条件的重载设备;所述集群中与所述重载设备相邻的至少一个设备满足设定轻载条件;所述集群中重载设备与相邻的一个轻载设备的本地可用聚合成员链路数量之差满足设定偏差阈值;所述集群中从所述重载设备至所述重载设备相邻的一个轻载设备的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。作为本发明的一个优选实施例,所述满足设定重载条件的重载设备为:本地各个可用成员链路的出方向利用率均大于等于设定的成员链路出方向利用率上限阈值的设备;所述满足设定轻载条件的轻载设备为:本地各个可用成员链路的出方向利用率均小于等于设定的成员链路出方向利用率下限阈值的设备。作为本发明的一个优选实施例,所述处理单元选择所述重载设备连接至所述轻载设备的至少一条可用堆 叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发包括:选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流;其中,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表包括:从所述重载设备本地至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值;比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的数量;如果M+X〈=L,选择识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表;
如果M+X>L,从识别出的所有可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。优选地,如图6所示,该装置进一步包括:检测单元,用于实时检测所述重载设备本地是否新增加了可用聚合成员链路,当Master检测出所述重载设备本地未增加可用聚合成员链路时,检测所述重载设备本地是否存在满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,通知重载设备在本地聚合链路表中删除可用堆叠成员链路;当检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率下限阈值,如果重载设备本地存在满足条件2的至少两条可用聚合成员链路,通知重载设备在本地聚合链路表中删除可用堆叠成员链路;其中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值。至此,完成图6所示的装置描述。由以上技术方案可以看出,本发明中,Master通过利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、可用堆叠成员链路出方向利用率验证所述聚合链路满足设定的聚合链路失衡条件时,选择所述集群中满足设定重载条件的重载设备至所述重载设备相邻的、且满 足设定轻载条件的轻载设备的至少一条堆叠链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发,这样就能避免集群中设备在部分成员链路DOWN时基于本地优先原则转发数据流引起的成员链路拥塞的现象。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种聚合链路负载分担方法,所述聚合链路包含集群中不同成员设备连接至汇聚设备的成员链路,所述集群中相邻成员设备之间通过堆叠链路连接,所述集群中的成员设备细分为主设备Master和至少一个备设备Standby,其特征在于,所述方法包括: 所述集群中的Master每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率;所述各个设备本地可用聚合成员链路为各个设备本地属于所述聚合链路的可用成员链路; 所述Master每隔所述设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率,所述各个设备本地可用堆叠成员链路为各个设备本地属于堆叠链路的可用成员链路; 所述Master利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件; 如果是,所述Master从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。
2.根据权利要求1所述的方法,其特征在于,所述聚合链路失衡条件包括: 所述集群中存在满足设定重载条件的重载设备; 所述集群中与所述重载设备相邻的至少一个设备满足设定轻载条件; 所述集群中重载设备与相邻的一个轻载设备的本地可用聚合成员链路数量之差满足设定偏差阈值; 所述集群中从所述重载设备至所述重载设备相邻的一个轻载设备的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。
3.根据权利要求1或2所述的方法,其特征在于,所述满足设定重载条件的重载设备为:本地各个可用聚 合成员链路的出方向利用率均大于等于设定的聚合成员链路出方向利用率上限阈值的设备; 所述满足设定轻载条件的轻载设备为:本地各个可用聚合成员链路的出方向利用率均小于等于设定的聚合成员链路出方向利用率下限阈值的设备。
4.根据权利要求1所述的方法,其特征在于,所述Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发包括: Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流。
5.根据权利要求4所述的方法,其特征在于,Master选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表包括: Master从所述重载设备连接至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值;Master比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的数量; 如果M+X〈=L,选择识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表; 如果M+X>L,从识别出的所有可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。
6.根据权利要求4或5所述的方法,其特征在于,该方法进一步包括: 所述Master实时检测所述重载设备本地是否新增加了可用聚合成员链路, 当Master检测出所述重载设备本地未增加可用聚合成员链路时,检测所述重载设备本地是否存在满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路; 当Master检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率下限阈值,如果是,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路; 其中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值。
7.一种聚合链路负载分担装置`,所述聚合链路包含集群中不同成员设备本地连接至汇聚设备的成员链路,所述集群中相邻成员设备之间通过堆叠链路连接,所述集群中的成员设备细分为主设备Master和至少一个备设备Standby,其特征在于,所述装置为所述集群中的Master,包括: 收集单元,用于每隔设定收集周期收集所述集群中各个设备本地可用聚合成员链路的出方向利用率,所述各个设备本地可用聚合成员链路为各个设备本地属于所述聚合链路的可用成员链路;以及用于每隔所述设定收集周期收集所述集群中各个设备本地可用堆叠成员链路的出方向利用率,所述各个设备本地可用堆叠成员链路为各个设备本地属于堆叠链路的可用成员链路; 验证单元,用于利用收集的所述集群中各个设备本地的可用聚合成员链路出方向利用率、以及可用堆叠成员链路出方向利用率验证所述聚合链路是否满足设定的聚合链路失衡条件; 处理单元,用于在所述验证单元的验证结果为是时,从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发。
8.根据权利要求7所述的装置,其特征在于,所述聚合链路失衡条件包括: 所述集群中存在满足设定重载条件的重载设备; 所述集群中与所述重载设备相邻的至少一个设备满足设定轻载条件; 所述集群中重载设备与相邻的一个轻载设备的本地可用聚合成员链路数量之差满足设定偏差阈值;所述集群中从所述重载设备至所述重载设备相邻的一个轻载设备的至少一条可用堆叠成员链路的出方向利用率满足设定的可用堆叠成员链路出方向利用率阈值。
9.根据权利要求7或8所述的装置,其特征在于,所述满足设定重载条件的重载设备为:本地各个可用聚合成员链路的出方向利用率均大于等于设定的聚合成员链路出方向利用率上限阈值的设备; 所述满足设定轻载条件的轻载设备为:本地各个可用聚合成员链路的出方向利用率均小于等于设定的聚合成员链路出方向利用率下限阈值的设备。
10.根据权利要求7或8所述的装置,其特征在于,所述处理单元选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与所述重载设备本地的可用聚合成员链路一起均衡负担数据流的转发包括:选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表,以使重载设备接收到需要通过聚合链路转发的数据流时,利用本地聚合链路表中所有链路均衡分担该数据流; 其中,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路加入至所述重载设备本地的聚合链路表包括: 从所述重载设备本地至相邻轻载设备的所有可用堆叠成员链路中识别出满足以下条件的可用堆叠成员链路:出方向利用率满足设定的可用堆叠链路出方向利用率阈值; 比较M+X与L,其中,M为所述重载设备本地可用聚合成员链路的数量,X为Master识别出的可用堆叠成员链路的数量,L为预先针对重载设备设定的最多可用链路的数量; 如果M+X〈=L,选择识别出的所有可用堆叠成员链路加入所述重载设备本地的聚合链路表; 如果M+X>L,从识别出的所有可用堆叠成员链路中选择出前Y条可用堆叠成员链路加入所述重载设备本地的聚合链路表,所述Y满足M+Y〈=L。
11.根据权利要求7所述的装置,其特征在于,该装置进一步包括: 检测单元,用于实时检测所述重载设备本地是否新增加了可用聚合成员链路; 当Master检测出所述重载设备本地未增加可用聚合成员链路时,检测所述重载设备本地是否存在满足以下条件I的至少两条可用聚合成员链路:出方向利用率小于等于设定的第一链路出方向利用率下限阈值,当检测出重载设备本地存在至少两条满足条件I的可用聚合成员链路时,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路; 当检测出所述重载设备本地新增加了可用聚合成员链路时,进一步检测重载设备本地是否存在满足以下条件2的至少两条可用聚合成员链路:出方向利用率小于等于设定的第二链路出方向利用率下限阈值,如果是,Master通知重载设备在本地聚合链路表中删除可用堆叠成员链路; 其中,所述第二链路出方向利用率下限阈值大于第一链路出方向利用率下限阈值。
全文摘要
本申请提供了聚合链路负载分担方法和装置。本发明中,集群中的Master在验证所述聚合链路满足设定的聚合链路失衡条件时,从所述集群中识别出满足设定重载条件的重载设备,并在所述重载设备存在相邻的、且满足设定轻载条件的轻载设备时,选择所述重载设备连接至所述轻载设备的至少一条可用堆叠成员链路与重载设备本地的可用聚合成员链路一起分担数据流的转发。这样能避免集群中设备在部分成员链路DOWN时基于本地优先原则转发数据流引起的成员链路拥塞的现象。
文档编号H04L12/803GK103248581SQ20131018998
公开日2013年8月14日 申请日期2013年5月20日 优先权日2013年5月20日
发明者陈亮 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1