一种基于LACP协议的链路聚合带宽保护方法及装置 【技术领域】
本发明涉及以太网通讯技术,尤其涉及一种基于LACP协议的链路聚合带宽保护方法及装置。
背景技术
随着数据业务量的增长和对服务质量要求的提高,特别是在数据汇聚层,单条物理链路无论在带宽还是可靠性方面都不能满足使用要求,而链路聚合技术的出现很好的解决了这个问题。所谓“链路聚合(Link Aggregation)”是将两个或更多数据信道结合成一个单个的信道,该信道以一个单个的更高带宽的逻辑链路出现。该链路在逻辑上是一个整体,内部的组成和传输数据的细节对上层服务是透明的。采用链路聚合后,逻辑链路的带宽增加了大约(n-1)倍,这里,n为聚合的路数。另外,链路聚合后,可靠性也可大大提高,因为,n条链路中只要有一条可以正常工作,则这个链路就可以工作。链路聚合的主要作用在于:根据聚合组中端口的数量来增加带宽,创建链路的传输弹性和实现链路冗余备份。
链路聚合控制协议(Link Aggregation Control Protocol,LACP)是IEEE802.3ad标准的主要内容之一,定义了一种标准的聚合控制方式。聚合的双方设备通过协议交互聚合信息,根据双方的参数和状态,自动将匹配的链路聚合在一起收发数据。聚合形成后,交换设备维护聚合链路状态,当双方配置变化时,自动调整或解散聚合链路。LACP协议是依赖信息和状态的传输,而不是命令的传输;聚合链路控制协议数据单元(Link Aggregation ControlProtocol Data Unit,LACPDUs)被本端发送到对端,其中包含本端的状态和本端所知对端的信息。LACPDU中所包含的信息可以决定对端下一步的动作。链路聚合有以下条件:1)端口处于链接正常状态(LinkUp);2)端口的速度相同;3)端口处于全双工模式;4)端口的媒体类型相同。
下面结合图1对现有技术进行介绍。如图1所示,CE为城域网用户接入边缘交换机,PE为城域网运营商边缘接入交换机。CE交换机通过链路聚合和PE交换机相连。假设以太网每条链路的最大带宽为1Gbit/s,CE和PE之间的数据流最大带宽为3Gbit/s,最小带宽为2Gbit/s。为了满足最大带宽,则CE和PE之间最少有3条链路参加聚合。为了保证可靠性,图1中使用了4条链路聚合,聚合后带宽为1×4Gbit/s。当其中任何一条链路因故异常,CE和PE之间带宽都一直满足最大带宽要求。
然而,现有技术不能保证链路聚合的最小带宽。如图1,要求的最小带宽为2Gbit/s,当CE和PE间的3条链路聚合发生故障时,剩余带宽只有1Gbit/s,不满足2Gbit/S的最小带宽要求。因而,现有技术中关于链路聚合的最小带宽如何保障,则没有相应的保护通告和处理机制。
【发明内容】
本发明所要解决的技术问题在于,提供一种基于LACP协议的链路聚合带宽保护方法及装置,解决现有链路聚合技术中可用带宽不满足最小带宽时,没有相应保护处理机制的问题。
为了解决上述问题,本发明提出了一种链路聚合带宽保护方法,包括如下步骤:
启动链路聚合过程,配置链路聚合最小带宽;
动态检测链路聚合可用带宽,并将可用带宽和所配置的最小带宽进行比较:
若可用带宽小于最小带宽,进行链路聚合保护处理同时给出告警信息;
若可用带宽大于或等于最小带宽,按链路聚合正常流程处理,继续动态循环检测链路可用带宽并与最小带宽比较。
所述配置链路聚合最小带宽是指配置一个链路聚合最小带宽的阈值。
若可用带宽小于最小带宽,进行链路聚合保护处理同时给出告警信息的步骤,是指整个链路聚合组停止工作,同时给出告警信息。
所述方法进一步包括:在进行所述链路聚合保护处理之后,若动态检测可用带宽大于或等于最小带宽时,恢复采用链路聚合保护处理前的链路聚合正常流程处理。
所述告警信息包括链路可用带宽、链路保护当前状态。
本发明还提供一种链路聚合带宽保护装置,包括:链路聚合模块、链路聚合最小带宽配置模块、链路聚合带宽检测比较模块、链路聚合保护处理模块,其中:
链路聚合模块,用于实现链路聚合;
链路聚合最小带宽配置模块,用于配置链路聚合的最小带宽;
链路聚合带宽检测比较模块,用于根据链路聚合模块的链路聚合状态动态进行可用带宽的检测,将可用带宽与链路聚合最小带宽配置模块所配置的最小带宽进行比较,聚合成功链路的可用带宽小于所配置的最小带宽时,将比较结果告知链路聚合保护处理模块;可用带宽大于或等于所配置的最小带宽时,走继续动态检测可用带宽;
链路聚合保护处理模块,用于在聚合成功链路的可用带宽小于所配置得最小带宽时,对链路聚合进行保护处理并发出告警信息。
所述链路聚合最小带宽配置模块配置链路聚合的最小带宽是配置一个最小带宽的阈值。
所述链路聚合保护处理模块,用于在聚合成功链路的可用带宽小于所配置得最小带宽时,对链路聚合进行保护处理是指整个链路聚合组停止工作,同时给出告警信息。
所述链路聚合保护处理模块给出的所述告警信息包括:链路可用带宽、链路保护当前状态。
所述链路聚合带宽检测比较模块,是根据聚合链路成员接口的有效状态的数量来计算整个链路聚合的可用带宽。
本发明的链路聚合带宽保护方法及装置,预先设置最小带宽阈值,在链路聚合过程中,动态检测链路聚合成功的聚合链路的可用带宽;对检测得到的可用带宽和最小带宽阈值进行比较,根据比较结果进行带宽保护控制,当聚合成功链路的可用带宽小于所配置得最小带宽(阈值)时,对链路聚合进行保护处理并发出告警信息。本发明中对链路聚合进行保护处理,是将链路聚合组停止工作(down),当可用带宽重新满足要求(即大于或等于所配置的最小带宽)后,需要恢复保护操作前的正常流程。本发明提供的简单易行地动态控制链路聚合带宽的保护方案,可以防止部分链路聚合发生故障而导致带宽不满足要求,造成拥塞。
【附图说明】
图1是现有技术中两台交换机参与链路聚合的示意图;
图2是本发明中链路聚合带宽保护装置的结构示意图;
图3是本发明中配置最小链路聚合可用带宽的处理流程图;
图4是本发明中链路聚合可用带宽检测和保护处理流程图。
【具体实施方式】
为使本发明的目的、技术方案和优点更加清楚,以下结合附图对本发明作进一步地详细说明。
以太网链路聚合的目的是增加带宽,IEEE,Std802.3ad对链路聚合方法有详细的说明。本发明在LACP(Link Aggregation Control Protocol,链路聚合控制协议)协议基础上,提供一种简单易行的动态控制链路聚合带宽的保护方案,来防止部分链路聚合发生故障而导致带宽不满足要求,造成拥塞。
本发明的基本思路是:预先设置最小带宽阈值,在链路聚合过程中,动态检测链路聚合成功的聚合链路的可用带宽;对检测得到的可用带宽和最小带宽阈值进行比较,根据比较结果进行带宽保护控制,当聚合成功链路的可用带宽小于所配置得最小带宽(阈值)时,对链路聚合进行保护处理并发出告警信息;当聚合成功链路的可用带宽大于或等于所配置的最小带宽(阈值)时,走正常的LACP链路聚合流程。所述正常LACP链路聚合流程是指协议“IEEE,Std802.3ad”中介绍的流程,以下简称正常流程。
本发明中对链路聚合进行保护处理,是将链路聚合组停止工作(down),当可用带宽重新满足要求(即大于或等于所配置的最小带宽)后,需要恢复保护操作前的正常流程。也可以采用其他的保护处理方式。
本发明的链路聚合带宽保护方法,包括如下步骤:
步骤1:启动链路聚合过程,配置链路聚合最小带宽;此步骤中,和正常流程一样配置链路聚合,启动LACP进行链路聚合,本发明适用于LACP所有模式:静态模式及协议模式。配置链路聚合最小带宽时,是配置一个最小带宽阈值。
步骤2:动态检测链路聚合可用带宽,并将检测的可用带宽和所配置的最小带宽阈值进行比较,如果可用带宽小于阈值,转到步骤3,若可用带宽大于或等于阈值,满足要求时,转步骤4
步骤3:进行链路聚合保护处理,采取链路聚合保护操作,本发明中的一种可选保护操作为:整个链路聚合(组)停止工作(down),同时给出告警信息。
步骤4:可用带宽满足要求时,走正常流程,转步骤2动态循环检测链路可用带宽状态。
由上可见,当链路聚合可用带宽不满足要求时,即可用带宽小于所述最小带宽阈值时,采用本发明可提供一种检测和保护处理方式。
如图2所示,显示了本发明的链路聚合带宽保护装置示意图,包括:
链路聚合模块,该链路聚合模块基于IEEE,Std802.3ad协议,其功能与现有技术相同,用于实现链路聚合;
链路聚合最小带宽配置模块,用于配置最小带宽需求,即配置最小带宽阈值;
链路聚合带宽检测比较模块,用于根据链路聚合模块的链路聚合状态动态进行可用带宽的检测与计算,并将可用带宽与链路聚合最小带宽配置模块所配置的最小带宽进行比较,聚合成功链路的可用带宽小于所配置的最小带宽(阈值)时,将比较结果告知链路聚合保护处理模块;可用带宽大于或等于所配置的最小带宽(阈值)时,走正常流程;
链路聚合保护处理模块,用于在聚合成功链路的可用带宽小于所配置得最小带宽(阈值)时,对链路聚合进行保护处理并发出告警信息,告警信息包括链路可用带宽、链路保护当前状态。
所述链路聚合保护处理模块采用的保护处理动作是可以选择的,本发明提供的一种方式为:如果链路聚合可用带宽不满足要求,整个链路聚合组停止工作(down)。
本发明是基于LACP链路聚合进行的,当聚合成员LACP协商成功时,对应的成员接口状态定义为有效(active);其它状态认为聚合没有成功,对应成员接口状态为无效(inactive)状态。active成员的带宽为可用带宽。链路聚合带宽检测比较模块可以根据聚合链路成员接口的active状态数量来计算整个链路聚合的可用带宽。
下面结合图3、图4对本发明技术方案的实施作进一步的详细描述。
如图3所示,为本发明配置最小链路聚合带宽时需要的处理流程,具体包括以下步骤:
步骤S301、通过外部输入,配置链路聚合(组)的最小带宽(minBW)。此参数需要根据应用需求进行设置。
步骤S302、计算链路聚合组可用带宽(useableBW)。具体的方法可以根据聚合链路中成员状态为有效(active)的数量乘以单个成员端口物理带宽获得。聚合成员的active状态可以根据标准LACP协议状态机得到。
步骤S303、比较可用带宽useableBW和配置最小带宽minBW值大小,如果可用带宽大于或等于配置最小带宽,转步骤S304,否者转步骤S305。
步骤S304、按链路聚合处理流程处理,具体可参照标志协议IEEE,Std802.3ad,此处不在详细介绍。
步骤S305、进行链路聚合保护处理,并给出告警信息。
图3介绍了链路聚合最小带宽配置时需要的处理流程,配置后的流程参见图4,具体包括以下步骤:
步骤S401、链路聚合带宽检测模块,具体的,根据LACP协议状态机及成员端口的接口状态,动态检测链路聚合可用带宽是否发生变化。
步骤S402、判断链路聚合可用带宽是否发生变化,如果未发生变化转步骤S403,否者转步骤S404。
步骤S403、维持原来的状态不变。此处可能有两种状态:状态一是正常状态;状态二是经过链路聚合保护处理模块处理过的状态。转步骤S401继续检测。
步骤S404、计算链路聚合可用带宽useableBW。具体的方法可以根据聚合链路中成员active数量乘以单个成员端口物理带宽获得。
步骤S405、比较可用带宽useableBW和配置最小带宽minBW值大小,如果可用带宽大于等于配置最小带宽,转步骤S406,否者转步骤S407。
步骤S406、通告链路聚合保护处理模块,满足带宽阈值要求,链路聚合正常(UP),如果链路聚合状态发生改变则给出告警信息。转步骤S401继续检测。
步骤S407、链路聚合可用带宽不满足阈值,链路聚合down,如果链路聚合状态发生改变则给出告警信息。转步骤S401继续检测。
本发明的链路聚合带宽保护方法,可以适用于链路聚合的两端设备,在本端设备采用了链路聚合带宽保护方案后,对端链路聚合最小带宽阈值需要和本端最小带宽阈值设置一致,不然会出现两端链路聚合一个up,一个down的情况。对端设备的链路聚合带宽保护的装置,及设置步骤和流程和上面图2至4所述技术内容一致。综上,本发明提供了一种链路聚合可用带宽不满足要求时的检测、通告及保护处理的技术方案。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。