负载分担方法及装置、交换机及计算机可读存储介质制造方法及图纸

技术编号:20118847 阅读:20 留言:0更新日期:2019-01-16 12:15
本发明专利技术方案通过交换机对链路聚合组各成员端口进行故障检测,在检测到发生故障的成员端口时,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间,并将划分得到的各子哈希值区间分别配置至未发生故障的成员端口,从而使得除故障成员端口上的业务流会重新选择转发的成员端口外,其他业务流维持在原成员端口转发,不受故障端口的影响,满足了业务流转发的稳定性要求。

Load-sharing methods and devices, switches and computer-readable storage media

The scheme of the invention detects the faults of each member port of link aggregation group by switch. When the faulty member port is detected, the allocated hash value interval of the faulty member port is divided into several sub-hash value intervals, and each sub-hash value interval is allocated to the non-faulty member port separately, so as to enable the service on the fault member port. In addition to re-selecting the forwarding member ports, other traffic flows are maintained at the original member ports and are not affected by the failure ports, thus meeting the stability requirements of traffic forwarding.

【技术实现步骤摘要】
负载分担方法及装置、交换机及计算机可读存储介质
本专利技术涉及数据通信领域,尤其涉及一种负载分担方法及装置、交换机及计算机可读存储介质。
技术介绍
随着计算机及网络技术的高速发展和各种网络应用的不断涌现,基础数据通信网络的稳定性越来越重要。为了增加带宽,实现链路传输弹性和冗余等功能,交换机之间的连线一般是聚合链路,用以实现出、入流量在个成员口中的负载分担。通常的,交换机通过哈希映射实现负载分担,即根据业务流中的某些信息和哈希算法,计算出一个哈希值,然后根据该哈希值以及链路聚合组各成员端口配置的用于转发业务流的哈希值区间,挑选出一个成员端口进行转发,从而根据不同业务流的哈希值,将网络上的业务流分担至各个成员端口进行转发。然而,在现有技术中,当交换机检测到其中一个成员端口的链路发生故障时,就停止在此端口上转发业务流,并根据负载分担策略在剩余的链路中重新计算业务流发送的成员端口,并在故障的成员端口恢复后再次重新计算业务流发送的成员端口。这样就导致成员端口发生故障后,无法做到原链路上的业务流继续通过原链路,可能原链路上的业务流走了另外一条链路,不能满足业务流向的需求,同时,重新计算的过程中也容易导致业务流丢包。
技术实现思路
本专利技术的主要目的在于提供一种负载分担方法及装置、交换机及计算机可读存储介质,旨在提高交换机业务流量转发的稳定性。为实现上述目的,本专利技术提供一种负载分担方法,该负载分担方法包括:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。进一步地,本专利技术还提供一种负载分担装置,该负载分担装置包括:端口状态检测模块,用于检测链路聚合组各成员端口是否发生故障;故障处理模块,用于在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;还用于将各子哈希值区间分别配置至未发生故障的成员端口。进一步地,本专利技术还提供一种交换机,该交换机包括:存储有负载分担程序的存储器;处理器,与所述存储器通信且配置为执行所述负载分担程序以实现以下步骤:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。进一步地,本专利技术还提供一种计算机可读存储介质,该计算机可读存储介质上存储有负载分担程序,所述负载分担程序被处理器执行时实现以下步骤:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。本专利技术方案通过交换机对链路聚合组各成员端口进行故障检测,在检测到发生故障的成员端口时,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间,并将划分得到的各子哈希值区间分别配置至未发生故障的成员端口,从而使得除故障成员端口上的业务流会重新选择转发的成员端口外,其他业务流维持在原成员端口转发,不受故障端口的影响,满足了业务流转发的稳定性要求。附图说明图1为本专利技术交换机一个可选的硬件结构示意图;图2为本专利技术负载分担方法第一实施例的流程示意图;图3为本专利技术负载分担方法第一实施例中链路聚合组成员端口的示意图;图4为本专利技术负载分担方法第一实施例中链路聚合组成员端口发生故障的示意图;图5为本专利技术负载分担装置第一实施例的模块示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例的主要解决方案是:通过交换机对链路聚合组各成员端口进行故障检测,在检测到发生故障的成员端口时,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间,并将划分得到的各子哈希值区间分别配置至未发生故障的成员端口,从而使得除故障成员端口上的业务流会重新选择转发的成员端口外,其他业务流维持在原成员端口转发,不受故障端口的影响,满足了业务流转发的稳定性要求。如图1所示,图1是本专利技术实施例方案涉及的硬件运行环境的交换机的结构示意图。如图1所示,该交换机可以包括:处理器1001,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口等。网络接口1004可选的可以包括标准的有线接口、无线接口(如Wi-Fi接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的交换机的结构并不构成对交换机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。如图1所示,在本专利技术交换机的一实施例中,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及负载分担程序。在图1所示的交换机中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的负载分担程序,并执行以下操作:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。进一步地,处理器1001可以用于调用存储器1005中存储的负载分担程序,还执行以下操作:将故障成员端口已配置的哈希值区间划分为等长的多个子哈希值区间。进一步地,处理器1001可以用于调用存储器1005中存储的负载分担程序,还执行以下操作:获取各未发生故障的成员端口的带宽空闲率,并根据各带宽空闲率的比例关系,将故障成员端口已配置的哈希值区间划分为等比例的多个子哈希值区间。进一步地,处理器1001可以用于调用存储器1005中存储的负载分担程序,还执行以下操作:在侦测到故障成员端口的故障排除时,恢复故障成员端口之前配置的哈希值区间,并撤销配置至未发生故障的成员端口的各子哈希值区间。进一步地,处理器1001可以用于调用存储器1005中存储的负载分担程序,还执行以下操作:在接收到业务流时,采用哈希算法根据接收业务流中的报文信息进行计算,得到接收到业务流的哈希值;若计算得到的哈希值落在任一所述子哈希值区间之内,则通过计算的哈希值所在子哈希值区间的成员端口转发前述业务流。进一步地,前述报文信息包括源MAC地址、目的MAC地址和虚拟局域网标识。进一步地,本专利技术还提供一种负载分担方法,应用于图1所示的交换机,参照图2,在本专利技术负载分担方法的第一实施例中,该负载分担方法包括:步骤S10,检测链路聚合组各成员端口是否发生本文档来自技高网...

【技术保护点】
1.一种负载分担方法,其特征在于,所述负载分担方法包括以下步骤:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。

【技术特征摘要】
1.一种负载分担方法,其特征在于,所述负载分担方法包括以下步骤:检测链路聚合组各成员端口是否发生故障;在有成员端口发生故障时,根据未发生故障的成员端口的个数,将故障成员端口已配置的哈希值区间划分为多个子哈希值区间;将各子哈希值区间分别配置至未发生故障的成员端口。2.根据权利要求1所述的负载分担方法,其特征在于,所述将故障成员端口已配置的哈希值区间划分为多个子哈希值区间的步骤包括:将故障成员端口已配置的哈希值区间划分为等长的多个子哈希值区间。3.根据权利要求1所述的负载分担方法,其特征在于,所述将故障成员端口已配置的哈希值区间划分为多个子哈希值区间的步骤,还包括:获取各未发生故障的成员端口的带宽空闲率,并根据各带宽空闲率的比例关系,将故障成员端口已配置的哈希值区间划分为等比例的多个子哈希值区间。4.根据权利要求1-3任一项所述的负载分担方法,其特征在于,所述将各子哈希值区间分别配置至未发生故障的成员端口的步骤之后,还包括:在侦测到所述故障成员端口的故障排除时,恢复所述故障成员端口之前配置的哈希值区间,并撤销配置至未发生故障的成员端口的各子哈希值区间。5.根据权利要求1-3任一项所述的负载分担方法,其特征在于,所述将各子哈希值区间分别配置至未发生故障的成员端口的步骤之后,还包括在接收到业务流时,采用哈希算法根据所述业务流中的报文信息进行计算,得到所述业务流的哈希值;若计算得到的哈希值落在任一所述子哈希值区间之内,则通过所述哈希值所在子哈希值区间的成员端口转发所述业务流。6.根据权利要求5所述的负载分担...

【专利技术属性】
技术研发人员:郭晓彬
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1