链路聚合负载均衡方法、装置和存储介质制造方法及图纸

技术编号:32163800 阅读:16 留言:0更新日期:2022-02-08 15:17
本申请涉及一种链路聚合负载均衡方法、装置和存储介质。所述方法包括:建立链路聚合组,并将N个成员端口依次循环填入到M个出链路中,每个成员端口占用至少1个出链路,其中所述链路聚合组包括N个成员端口以及M个出链路,M>N;获取N个成员端口中各成员端口的出口流量速率;根据各成员端口的出口流量速率调整各成员端口占用的出链路。通过动态调整成员端口占用的出链路数,对于流量速率高的端口,权重低,占用的出口链路数量减少,流量速率低的端口权重大,占用的出口链路数量增多。从而使得报文经过哈希运算后选择流量速率低的端口的机会大大增加,避免了报文从聚合组转发出去时由于负载不均衡而拥塞丢包,提高了网络可靠性。提高了网络可靠性。提高了网络可靠性。

【技术实现步骤摘要】
链路聚合负载均衡方法、装置和存储介质


[0001]本申请涉及网络通信
,特别是涉及一种链路聚合负载均衡方 法、装置和存储介质。

技术介绍

[0002]以太网链路聚合组(Ethernet Link Aggregation Group,简称Eth

LAG) 是指将多个以太网物理端口捆绑(Trunk)成一个逻辑端口使用,参见图1。 在数据通信领域中的交换机或路由器通常使用该技术来提供链路冗余和提 高网络带宽。
[0003]Eth

LAG是一个逻辑端口,报文从Eth

LAG转发的时候,为了在Eth

LAG 的成员端口做到负载均衡,会根据报文的内容(如五元组,源IP地址,目 的IP地址,协议号,源端口号,目的端口号)作为哈希关键字进行哈希运 算,根据运算结果选择Eth

LAG中的某条出链路转发出去。现有技术中 Eth

LAG的出链路数与成员端口的数量相同,由于在不同的网络环境中, 网络流量具有随机性,通过哈希运算选择Eth

LAG口的出端口时,存在某 些成员端口流量多,某些成员端口流量少,流量在各成员端口间转发不均 衡,某些端口甚至会发生拥塞丢包,造成网络中断。
[0004]此外现有技术中,当出现链路聚合组各成员间负载不均衡时,通常采 用修改聚合组链路选择的哈希关键字或是哈希算法的方式。通过修改聚合 组链路选择的哈希关键字或是哈希算法的方式,需要ASIC芯片的支持, 某些ASIC芯片对于哈希关键字和哈希算法的修改支持有限,无法完全满 足用户的需求,并且由于不同的网络环境,网络流量的类型差异很大,这 就时刻需要人工的监控干预,给网络维护带来困难。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够自动重新设置出链 路端口的链路聚合负载均衡方法、装置、计算机设备和存储介质。
[0006]一方面,提供一种链路聚合负载均衡方法,所述方法包括:
[0007]建立链路聚合组,并将N个成员端口依次循环填入到M个出链路中, 每个成员端口占用至少1个出链路,其中所述链路聚合组包括N个成员端 口以及M个出链路,M>N;
[0008]获取N个成员端口中各成员端口的出口流量速率;
[0009]根据各成员端口的出口流量速率调整各成员端口占用的出链路。
[0010]进一步的,根据各成员端口的出口流量速率调整各成员端口占用的出 链路,包括:
[0011]根据各成员端口的出口流量速率计算各成员端口占用出链路的权重;
[0012]根据所述权重计算各成员端口占用出链路的数量;
[0013]根据计算结果调整各成员端口占用的出链路。
[0014]进一步的,根据各成员端口的出口流量速率计算各成员端口占用出链 路的权重,之前还包括:
[0015]判断各成员端口的出口流量速率是否超过第一阈值;
[0016]若各成员端口中存在至少一个出口流量速率超过第一阈值,则判断成 员端口中最大出口流量速率与最小出口流量速率的差值是否超过第二阈 值;
[0017]若所述差值超过第二阈值,则计算各成员端口占用出链路的权重。
[0018]进一步的,根据各成员端口的出口流量速率计算各成员端口占用出链 路的权重,包括:
[0019]W
N
=所有成员端口的出链路速率之和/第N个端口的出端口流量速率, 其中W
N
为第N个成员端口占用出链路的权重;
[0020]根据所述权重计算各成员端口占用出链路的数量,包括:
[0021]C
N
=M*W
N
/(W1+W2+

+W
N
),其中C
N
为第N个成员端口占用的出链路数量, 且各成员端口占用的出链路数量大于等于1;
[0022]根据计算结果调整各成员端口占用的出链路,包括:
[0023]根据各成员端口的C
N
取整后的值调整各成员端口占用的出链路。
[0024]进一步的,根据各成员端口的C
N
取整后的值调整各成员端口占用的出 链路,包括:
[0025]对于出链路数量减少的成员端口,保持原有占用的出链路不改变,同 时释放出来当前多占用的出链路;
[0026]对于出链路数量增加的成员端口,保持原有占用的出链路不改变,将 出链路数量增加的成员端口按照所增加的数量添加到其它释放出来的出链 路中。
[0027]进一步的,M为芯片最大支持出链路的数量。
[0028]进一步的,定时查询统计各成员端口的流量,并计算各成员端口的出 口流量速率。
[0029]进一步的,获取N个成员端口中各成员端口的出口流量速率,之前还 包括:
[0030]接收待转发报文;
[0031]根据报文内容进行哈希运算;
[0032]根据运算结果选择相应的出链路,并通过该出链路对应的成员端口转 发。
[0033]另一方面,提供了一种链路聚合负载均衡装置,所述装置包括:
[0034]链路聚合单元,用于建立链路聚合组,并将N个成员端口依次循环填 入到M个出链路中,每个成员端口占用至少1个出链路;其中所述链路聚 合组包括N个成员端口以及M个出链路,M>N;
[0035]流量监控单元,用于获取N个成员端口中各成员端口的出口流量速率;
[0036]链路更新单元,用于根据各成员端口的出口流量速率调整各成员端口 占用的出链路。
[0037]又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序, 所述计算机程序被处理器执行时实现以下步骤:
[0038]建立链路聚合组,其中所述链路聚合组包括N个成员端口以及M个出 链路,M>N;
[0039]将N个成员端口依次循环填入到M个出链路中,每个成员端口占用至 少1个出链路;
[0040]获取N个成员端口中各成员端口的出口流量速率;
[0041]根据各成员端口的出口流量速率调整各成员端口占用的出链路。
[0042]上述链路聚合负载均衡方法、装置和存储介质,在设置芯片的Eth

LAG 的出链路时,将各成员端口依次循环写入Eth

LAG的出链路。增加各成员 端口的出口流量速率检测机制,并根据出口流量速率来动态调整各成员端 口占用的出链路数量。通过这种方式,使得往Eth

LAG转发的报文经过哈 希运算后选择流量速率低的端口的机会大大增加,高流量速率端口的负载 减少,低流量速率端口的负载增加,有效防止了由于负载不均衡导致端口 发生拥塞而丢包。
附图说明
[0043]图1为现有技术中Eth

LAG在芯片中的设置示意图;
[004本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种链路聚合负载均衡方法,其特征在于,所述方法包括:建立链路聚合组,并将N个成员端口依次循环填入到M个出链路中,每个成员端口占用至少1个出链路,其中所述链路聚合组包括N个成员端口以及M个出链路,M>N;获取N个成员端口中各成员端口的出口流量速率;根据各成员端口的出口流量速率调整各成员端口占用的出链路。2.根据权利要求1所述的链路聚合负载均衡方法,其特征在于,所述根据各成员端口的出口流量速率调整各成员端口占用的出链路,包括:根据各成员端口的出口流量速率计算各成员端口占用出链路的权重;根据所述权重计算各成员端口占用出链路的数量;根据计算结果调整各成员端口占用的出链路。3.根据权利要求2所述的链路聚合负载均衡方法,其特征在于,所述根据各成员端口的出口流量速率计算各成员端口占用出链路的权重,之前还包括:判断各成员端口的出口流量速率是否超过第一阈值;若各成员端口中存在至少一个出口流量速率超过第一阈值,则判断成员端口中最大出口流量速率与最小出口流量速率的差值是否超过第二阈值;若所述差值超过第二阈值,则计算各成员端口占用出链路的权重。4.根据权利要求2所述的链路聚合负载均衡方法,其特征在于,所述根据各成员端口的出口流量速率计算各成员端口占用出链路的权重,包括:W
N
=所有成员端口的出链路速率之和/第N个端口的出端口流量速率,其中W
N
为第N个成员端口占用出链路的权重;所述根据所述权重计算各成员端口占用出链路的数量,包括:C
N
=M*W
N
/(W1+W2+

+W
N
),其中C
N
为第N个成员端口占用的出链路数...

【专利技术属性】
技术研发人员:刘铮李友
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1