技术新讯 > 电子通信装置的制造及其应用技术 > 应用于数据中心网络的自适应调节flowletinterval的负载均衡方法  >  正文

应用于数据中心网络的自适应调节flowletinterval的负载均衡方法

  • 国知局
  • 2024-08-02 14:13:22

本发明属于数据中心网络通信,具体涉及一种应用于数据中心网络的自适应调节flowlet interval的负载均衡方法。

背景技术:

1、大多数现代数据中心网络采用类似clos的拓扑结构(例如leaf-spine和fat-tree),为每对服务器间的通信提供多条等价链路。为了实现服务器之间数据传输的低时延和高吞吐率需求,现代数据中心网络的链路带宽和网络规模迅速增长,但也为设计有效的负载均衡算法以实现多路径间的负载均衡带来了新的挑战。

2、目前数据中心中主流的负载均衡算法可以根据重路由粒度分为三类:基于数据流的负载均衡算法、基于数据包的负载均衡算法和基于flowlet的负载均衡算法。基于数据流的负载均衡算法会为每条数据流分配相应的路径。其中具有代表性的,例如ecmp(equalcost multi-path,等值多路径路由协议),交换机根据每条数据流的五元组信息得到的哈希值,将该数据流分配到多条路径中的其中一条。然而,这种粗粒度的负载均衡算法会由于哈希碰撞而造成链路利用率低的问题,带来性能损失(例如低的聚合吞吐率),特别是对于长流来说更严重。基于数据包的负载均衡算法会为每个数据包进行独立路由,因此有效解决了上述方法带来的严重哈希碰撞损失。例如rps(random packet spray,随机数据包散射路由协议),交换机为每个到来的数据包随机选择一条链路进行转发。但与此同时,这种对每个数据包独立路由的细粒度负载均衡算法会造成接受方的数据包乱序到达的问题,特别是在网络出现链路故障时或者非对称的网络拓扑中,严重损害数据传输速率。

3、为了缓解粗粒度负载均衡算法的低链路利用率问题以及细粒度负载均衡算法的数据包乱序问题,学者们最近提出了一些基于flowlet的更合适粒度的路由算法,例如conga、letflow、hula等。flowlet是一种有弹性的路由粒度,它结合了基于数据流粒度的避免数据包乱序的优点以及基于数据包粒度的灵活性。只有当属于同一条数据流的前后两个数据包与数据包之间的间隔大于事先设定的flowlet timeout阈值δ时(表示当前链路发生拥塞),此时后一个数据包归属于一个新的flowlet,才会触发换路机制(即进行重路由)。因此,flowlet不仅能够对链路动荡及时做出反应,并且能够有效避免数据包乱序的问题。但是,传统的基于flowlet的负载均衡算法大多采用一个或一组固定的flowlet timeout阈值,这种重路由决策的触发是被动式的,只有当网络拥塞状况达到一定程度时才会触发重路由决策。这种被动的方式无法根据需要时随时对流量进行分配和路由。此外,也有一些前沿的方法试图通过部署动态flowlet timeout阈值来解决这一问题。然而,它们所使用的flowlet timeout阈值并不区分不同的流量。在数据中心网络中,根据数据中心应用的不同,流量大小分布也在大幅变化。比如,对于数据挖掘(data mining)工作负载来说,10%的流量是大于1mb的(即长流),另外90%的流量是小于1mb的(即短流),即data mining是一个长短流混合的流量模式。由于长短流的需求不同,长流因为其流量大,更适合负载小的链路,所以应该对链路拥塞感知更敏感;而短流因为其发送时间短,并且一旦换路造成数据包乱序的危害更大,所以应该避免频繁的换路。此时,如果仍然对所有流量都使用相同的flowlet timeout阈值,就会因不合适的flowlet timeout阈值造成长流和短流性能的损失。

4、因此,有必要设计一种能够根据不同流量模式动态调节flowlet timeout阈值的算法,在不需要事先获知流量大小信息的情况下,自适应地为不同的流量分配不同的合适的flowlet timeout阈值,一方面,长流被分配更小的flowlet timeout阈值,能够对链路拥塞更快反应,及时缓解拥塞状况并切换到负载更小的链路;另一方面,短流被分配更大的flowlet timeout阈值,面对拥塞更加稳定,缓解因换路带来的数据包乱序问题,同时实现长短流的高性能传输。

技术实现思路

1、本发明是为解决上述问题而进行的,针对现有数据中心中基于数据流的负载均衡算法无法及时反应链路变化,基于数据包的负载均衡算法不能有效缓解数据包乱序问题,以及基于flowlet的负载均衡算法不能适用于变化的流量模式而导致的数据传输效率低的问题,提供一种基于flowlet并能根据流量模式自适应分配flowlet timeout阈值的负载均衡方法。对于长流来说,其流量更大,更适用负载小的链路,应该对链路拥塞感知更敏感,因此为其分配更小的flowlet timout阈值,能够对链路拥塞更快反应,及时缓解拥塞情况并切换到负载更小的链路;对于短流来说,其发送时间短,并且一旦换路造成数据包乱序的危害更大,应该避免频繁的换路,因此为其分配更大的flowlet timeout阈值,面对拥塞情况更加稳定,缓解因换路带来的数据包乱序问题,最终同时实现长短流的高性能传输。

2、本发明采用了如下技术方案:

3、本发明提供了一种应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,用于对数据中心网络的数据流进行负载均衡,该数据中心网络的交换机设置有用于维护数据流信息的数据流记录表,其特征在于,包括以下步骤:

4、步骤s1,所述交换机收到新数据包后,提取该新数据包的时间戳及其所属的所述数据流的id;步骤s2,根据该id判断该数据流是否为新数据流;步骤s3,在步骤s2判断为否时,根据所述id从所述数据流记录表中查找到相应的数据流表项,并从该数据流表项中提取flowlet timeout阈值以及上个数据包的时间戳;步骤s4,计算所述新数据包的时间戳和所述上个数据包的时间戳之间的间隔差值;步骤s5,判断所述间隔差值是否小于所述flowlet timeout阈值;步骤s6,在步骤s5判断为是时,所述新数据包属于当前的flowet,将所述flowlet timeout阈值减小;步骤s7,从所述数据流表项中提取路径选择信息,并根据该路径选择信息将所述新数据包转发至相应端口;步骤s8,在步骤s5判断为否时,所述新数据包属于下一个flowet,将所述flowlet timeout阈值重置为初始值;步骤s9,根据重路由策略为所述新数据包选择路径,并根据该路径将所述新数据包转发至相应端口。

5、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,其中,步骤s6包括如下子步骤:步骤s6-1,判断所述flowlet timeout阈值是否大于预定的下限阈值;步骤s6-2,在步骤s6-1判断为是时,将所述flowlet timeout阈值减去一个预定的调整值,从而得到所述新flowlet timeout阈值。

6、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,其中,步骤s6-1中,所述下限阈值为1*rtt,步骤s6-2中,所述调整值为0.008*rtt,rtt为所述数据中心网络中的往返时延。

7、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,其中,步骤s8中,所述初始值为9*rtt,rtt为所述数据中心网络中的往返时延。

8、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,还包括以下步骤:步骤s10,在步骤s2判断为是时,在所述数据流记录表中为所述新数据流新建一个数据流表项;步骤s11,将所述新数据包的信息记录在新建的所述数据流表项中,然后进入步骤s8。

9、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,其中,步骤s9包括如下子步骤:步骤s9-1,从所述数据流表项中提取所述数据流的所有可转发端口,并随机选择其中两个作为候选端口;步骤s9-2,将所述上个数据包的转发端口也作为所述候选端口;步骤s9-3,比较三个所述候选端口的缓存队列长度,并选择所述缓存队列长度最小的所述候选端口作为所述新数据包的转发端口,将所述新数据包转发至该转发端口。

10、本发明提供的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,还可以具有这样的技术特征,其中,所述路径选择信息由预定的路径选择策略生成,所述路径选择策略使用conga算法或letflow算法。

11、发明作用与效果

12、根据本发明的应用于数据中心网络的自适应调节flowlet interval的负载均衡方法,由于交换机在接收到一个新数据包并判断该新数据包属于当前的flowlet时就将数据流的flowlet timeout阈值减小,在判断该数据包属于新的flowlet时则将flowlettimeout阈值重置为初始值,因此能够根据接收的数据包的情况自适应地调节数据流的flowlet timeout阈值,为长数据流分配更小的flowlet timeout阈值,能够对链路拥塞更快反应,使得长数据流在发生拥塞情况时能够及时切换到负载更小的链路从而缓解拥塞情况;为短数据流分配更大的flowlet timeout阈值,面对拥塞更加稳定,能够缓解短数据流因换路带来的数据包乱序问题。如上所述,本发明的方法是一种基于数据包的细粒度的负载均匀方法,并且通过本发明的方法,能够同时实现长、短数据流的高性能传输。

本文地址:https://www.jishuxx.com/zhuanli/20240801/242083.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。