首页> 中国专利> 数据中心网络中基于延时差异性的多路径传输方法

数据中心网络中基于延时差异性的多路径传输方法

摘要

本发明公开了一种数据中心网络中基于延时差异性的多路径传输方法,发送端根据路径延时和流大小为各路径动态分配数据包,将先发送的数据包发往高延时路径,后发送的数据包发往低延时路径,从而减少拖尾流的完成时间。本发明可以让数据中心应用更加合理地使用多路径的可用带宽,减少流的完成时间,从而提升应用性能。

著录项

  • 公开/公告号CN107566275A

    专利类型发明专利

  • 公开/公告日2018-01-09

    原文格式PDF

  • 申请/专利权人 中南大学;

    申请/专利号CN201710968716.4

  • 发明设计人 黄家玮;王疆盛;胡晋彬;王建新;

    申请日2017-10-18

  • 分类号H04L12/727(20130101);H04L12/709(20130101);H04L12/803(20130101);H04L12/825(20130101);

  • 代理机构43114 长沙市融智专利事务所;

  • 代理人杨萍

  • 地址 410083 湖南省长沙市岳麓区麓山南路932号

  • 入库时间 2023-06-19 04:13:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-03

    授权

    授权

  • 2018-02-02

    实质审查的生效 IPC(主分类):H04L12/727 申请日:20171018

    实质审查的生效

  • 2018-01-09

    公开

    公开

说明书

技术领域

本发明涉及数据中心网络(DCN,Data Center Network)中基于延时差异性来最小化流完成时间的多路径传输方法。

背景技术

随着在线搜索、社交网络、电子商务等网络应用的高速发展,越来越多的在线应用系统被迁移到数据中心,利用大规模的计算和存储资源为用户提供网络服务。通常情况下,数据中心网络流量具有高并发和低延时的特征。这些在线实时网络应用,以满足大规模用户对访问的低延时性能需求为目标。目前研究已经提出了很多优化方法策略,主要从传输层和网络层两个方面进行改进和优化。在传输层,主要以拥塞控制为核心技术,通过衡量拥塞程度适时地进行流速控制,为用户提供高效、公平、可靠的数据传输服务。在网络层,主要以路由协议和调度算法为核心技术,针对不同路径上的拥塞程度来调度数据包和选择最优传输路径,最终为用户提供高效的服务。

当前数据中心网络主流的拥塞控制协议DCTCP使用显式拥塞通告(ECN)标记的方法实现拥塞控制。在交换机设置缓存队列阈值K。当交换机队列长度大于K时,数据包被标记,并利用ACK反馈进行速率调节。DCTCP的缺点是采用单路径传输,不能充分利用空闲的带宽,网络资源利用率低,负载不均衡,当高并发时在核心Spine交换机容易形成热点问题。

近年来,研究学者们提出一些新型的数据中心网络拓扑结构如Fat-tree和Leaf-Spine,这些网络拓扑中存在丰富的多路径资源。为了利用多路径资源,ECMP利用数据包头携带的五元组信息在交换机使用哈希算法实现负载均衡,提高了网络资源利用率。但是当多条流被哈希函数分发到交换机同一个出端口时,就形成哈希碰撞。而RPS为了避免哈希碰撞问题,采用了包级别的路由机制。当数据包达到交换机时,RPS将数据包随机分发到交换机的出端口来实现负载均衡。MPTCP是依据ECMP实现的多路径传输协议,将数据流分成多个子流在不同路径上并行传输。总体而言,以上的多路径路由机制都能提升了网络利用率,但也存在一个共同的问题:没有考虑到不同路径可能存在延时差异。如果最后发送的数据包或过多的数据包被发往高延时路径将增加整条流的完成时间,降低网络传输效率。

因此,如何充分利用数据中心网络多路径资源来最小化流的完成时间,是一个亟待解决的问题。

发明内容

本发明所解决的技术问题是,针对现有技术的不足,提供一种数据中心网络中基于延时差异性的多路径传输方法,可以让数据中心应用更加合理地使用多路径的可用带宽,减少流的完成时间。

本发明的技术方案包括以下步骤:

一种数据中心网络中基于延时差异性的多路径传输方法,发送端在其发送的数据包头部写入端口号,Leaf交换机读取数据包头部的端口号并按该端口号向输出端口转发数据包,实现多路径传输;发送端在收到ACK包时,计算该ACK包的接收时间与其所对应数据包的发送时间之间的差值,将此差值作为该ACK包所对应的传输路径的RTT值;根据路径对应的端口号和RTT值建立路径信息表(包括端口号字段和RTT字段;其中端口号字段用于标识路径,不同端口号对应不同路径;RTT字段记录路径往返延时值大小,发送端收到来自不同路径的ACK包后及时更新表中路径的RTT值),将先发送的数据包发往路径信息表中RTT值较大的(高延时)路径,后发送的数据包发往路径信息表中RTT值较小的(低延时)路径。

进一步地,接收端接收到发送端发送的数据包后,将其可用缓存大小写入ACK包的保留字段,并反馈给接收端;

所述将先发送的数据包发往路径信息表中RTT值较大的路径,后发送的数据包发往路径信息表中RTT值较小的路径具体包括以下步骤:

步骤一:初始化,获得发送端网卡带宽C和最大传输单元MTU大小,并通过读取先前发送数据包对应的ACK包的保留字段获取接收端可用缓存大小;

步骤二:对路径信息表中路径按照RTT值从大到小编号为1~N,即RTT值最大的路径其编号i为1,RTT值第二大的路径其编号i为2,依次类推,RTT值最小的路径其编号i为N;其中N为路径数,即核心Spine交换机数量;

步骤三:判断当前发送缓存是否为空,若为空,表示没有数据需要发送,则结束;若不为空,表示还有数据需要发送,则进入步骤四;

步骤四:判断当前发送缓存数据量是否大于接收端可用缓存,若是,则从发送缓存取出接收方可用缓存大小的数据量,否则从发送缓存取出全部数据;

步骤五:将从发送缓存取出的数据量大小赋值给L,并计算传输完数据量L需要的最小时间Tl

步骤六:从路径表中选择RTT值不大于Tl的路径组成可用路径集合;

步骤七:根据可用路径Pi的RTT值,计算出相应路径分配数据量的权重因子Wi;其中i为路径的编号;

步骤八:从可用路径集合中选择编号i最小的可用路径;

步骤九:计算可用路径Pi需要发送的数据包数L*Wi

步骤十:向可用路径Pi发送数据包;

步骤十一:统计已通过可用路径Pi发送的数据包数,判断其是否小于L*Wi,若是则转步骤十;否则发送端根据返回ACK更新路径信息表中RTT值,并判断是否还有其它可用路径,若有其它可用路径,则令i=i+1,并转步骤十,若没有其它可用路径,则转步骤二。

进一步地,所述步骤一中,发送端网卡带宽C=1Gbps,最大传输单元MTU=1500Bytes。

进一步地,所述步骤五中,发送端传输完数据量L需要的最小时间Tl的计算公式为:

其中,RTTmin为所有路径的RTT值中的最小值。

进一步地,所述步骤七中,分配数据量的权重因子Wi的计算公式为:

其中,RTTi为第i条可用路径的RTT值;M为可用路径数。

有益效果:

本发明公开了一种数据中心网络中基于延时差异性的多路径传输方法,解决了单路径传输中网络资源利用率低的问题;相对于现有的多路径传输方法,本发明发送端根据路径延时和流大小为各路径动态分配数据包,将先发送的数据包发往高延时路径,后发送的数据包发往低延时路径,从而减少了拖尾流的完成时间,可以让数据中心应用更加合理地使用多路径的可用带宽,减少流的完成时间,从而提升应用性能。

附图说明

图1为本发明的流程图。

图2为实验所采用的Leaf-Spine拓扑结构,其多路径数量为核心Spine交换机数。

图3为发送先后数据包选择不同延时路径的完成时间示意图;图3(a)将先发送的数据包发往低延时路径,后发送的数据包发往高延时路径;图3(b)为本发明DDMCC所采用的方法,将先发送的数据包发往高延时路径,后发送的数据包发往低延时路径来完成传输。

图4(a)为测试不同协议或方法的流完成时间结果图。实验参数设置如下:服务器发送流大小分别为64KB、32KB和16KB,3条路径的往返延时分别为RTT1=100us、RTT2=150us和RTT3=300us,接收端缓存大小64KB,其中本发明命名为DDMCC。

图4(b)为测试不同协议或方法下流大小为64KB时,每个数据包到达接收端的时间结果图,实验参数同图4(a)

图5(a)为测试不同协议或方法在不同延时差异性程度下短流的完成时间结果图。实验参数如下:服务器发送流大小为64KB,接收端缓存大小64KB,拓扑中有10条路径,其中一条路径的RTT值从100us增加到700us,其他9条路径延时RTT值为100us。

图5(b)测试不同协议或方法在路径延时存在差异的情况下,长流中每段数据传输的有效吞吐率结果图,其中段大小为64KB。实验参数设置如下:服务器发送流大小为1280KB,接收端缓存大小64KB,存在一条高延时路径RTT为300us,其他9条路径RTT值为100us。

图6(a)为不同协议或方法在高延时路径数量不同的情况下,短流完成时间结果图。实验参数设置如下:服务器发送流大小为64KB,接收端缓存大小64KB,共10条路径,其中低延时路径RTT为100us,高延时路径为300us。依次测试高延时路径数量为0条、2条、4条、6条、8条五种情况的短流完成时间。

图6(b)为不同协议或方法在3条高延时路径下,长流中每段数据传输的有效吞吐率结果图,其中段大小为64KB。实验参数设置如下:服务器发送流大小为1280KB,接收端缓存大小64KB;有3条高延时路径RTT为300us,低延时路径RTT为100us。

具体实施方式

参见图1,图1为本发明的流程图。过程如下:

初始化,发送端通过在数据包头部写入端口号,Leaf交换机读取数据包头的端口号并按该端口号向输出端口转发数据包,实现多路径传输。发送端再根据反馈ACK计算各路径延时RTT值,建立路径信息表,并按RTT值从大到小排序。

当发送端有数据需要发送时,先判断发送缓存数据量是否大于接收端可用缓存大小,如果是,则从发送缓存取出接收端可容纳的数据量发送,否则从发送缓存取出全部数据发送,并将需要发送的数据量赋值给L。

发送端根据路径信息表中RTT值计算传输完数据量L所需要的最小时间Tl,然后将RTT值不大于Tl的路径组成可用路径集合,并根据可用路径RTT值计算各路径i的权重Wi及分配的数据量L*Wi

发送端开始发送数据并判断发往路径Pi的数据量是否小于L*Wi,若是则继续往路径Pi发送数据包;当发送完L*Wi数据时,发送端根据返回ACK更新路径信息表中RTT值,并判断是否还有可用路径,若是则往Pi+1路径发送L*Wi+1的数据,若没有可用路径,发送端根据RTT值从大到小对路径重新排序。

图2为实验拓扑图,详细见附图2说明。

图3为现有普遍方法和本发明DDMCC的时序图。图3(a)显示了现有普遍方法把先发送的数据包发往低延时路径,后发送的数据包发往高延时路径;图3(b)为本发明所采用方法,把先发送的数据包发送到高延时路径,后发送的数据包发送到低延时路径。由图可观察到,本发明能帮助后发送的数据包利用低延时路径追赶在高延时路径上传输的先发数据包,降低了发送包的总体到达时间,从而减少了整条流的完成时间。

本发明利用NS2.35网络仿真平台来实现,并进行了性能测试。实验结果为重复50次实验的平均结果。

图4对比了本方法DDMMC和RPS、DCTCP的流完成时间。实验参数设置如下:发送端到接收端存在三条路径,往返延时分别为RTT1=100us、RTT2=150us和RTT3=300us,交换机缓存为250个包,所有链路容量均为1Gbps,流大小分别为64KB、32KB和16KB,接收端缓存大小64KB。

从图4(a)可看出,在不同流大小情况下DCTCP完成时间都是最长,本发明DDMCC的流完成时间最短。图4(b)是流大小为64KB时每个数据包到达接收端的时间图。可以看出,DCTCP采用单路径传输,可用带宽小于多路径传输,所以效果最差。RPS没有考虑延时差异性导致数据包随机选择路径传输,形成了拖尾现象,增加了流的完成时间。本发明DDMCC通过为不同延时路径分配不同数据包,将先发送的少数包发往高延时路径,后发送的多数包发往低延时路径,最后使得不同路径上最后传输的数据包基本同时到达接收端,从而减少了整条流的完成时间。

图5为测试路径延时差异性对短流完成时间和长流有效吞吐率影响的结果图。图5(a)的实验参数设置如下:发送流大小为64KB,接收端缓存大小64KB,发送端到接收端存在10条路径,其中存在一条高延时路径,RTT值从100us增加到700us,链路带宽为1Gbps;图5(b)的实验参数设置如下:发送流大小为1280KB,高延时路径RTT为300us,低延时路径RTT为100us,其他实验参数同图5(a)。

从图5(a)看出,DCTCP的流完成时间不断增加且幅度较小。其原因是10条路径中,仅一条高延时路径RTT增加导致平均RTT增幅较小,所以流完成时间的增幅也较小。RPS的流完成时间随高延时路径RTT递增而变大,原因是随着高延时路径RTT值增加,延时差异性变大,有更多数据包形成拖尾,增加了流的完成时间。MPTCP中采用8条子流并行传输,但子流也是随机选择发送路径,使得后发送的数据包被发往高延时路径,所以随着RTT差异性变大,MPTCP的流完成时间受影响最大,显著增加了流的完成时间。本发明DDMCC给高延时路径分配的包数减少,将先发送的数据包发往高延时路径,后发送的数据包发往低延时路径,能有效降低流的完成时间。另外,当高延时路径RTT增加到700us时,其他协议或方法仍然向这条超高延时路径发送数据包;而本发明会把该路径记为不可用路径,从而显著的降低了流完成时间。

从图5(b)看出,DCTCP的有效吞吐率基本稳定在0.8Gbps左右,但网络中的带宽利用率仅为1/10。RPS虽然用了10条路径进行传输,但其随机选择路径的方法降低了长流的有效吞吐率。MPTCP受到高延时路径的影响,其有效吞吐率稳定在0.6Gbps左右。本发明DDMCC由于每次都是从发送缓存取出64KB数据发送,每段的数据包考虑了多路径状态来传输,有效吞吐率稳定在0.9Gbps左右。

图6为测试高延时路径数量对短流完成时间和长流有效吞吐率影响的结果图。图6(a)的实验参数设置如下:发送流大小为64KB,接收端缓存大小64KB,发送端到接收端存在10条路径,高延时路径数量分别为0条、2条、4条、6条、8条五组情况,链路带宽1Gbps;图6(b)的实验参数设置如下:发送流大小为1280KB,选取存在3条RTT值为300us的高延时路径,其他参数同图6(a)。

从图6(a)看出,DCTCP的短流完成时间随着平均延时增加而增加。其原因是随着高延时路径数量增加,平均RTT也在相应的增加,所以流完成时间也逐步增加。RPS中,随着高延时路径数增加,更多的数据包在高延时路径上传输,流完成时间也在增加。MPTCP随着高延时路径数目的增多,会有更多的数据包被分配到高延时路径从而增加了流完成时间。本发明DDMCC在所有路径延时均为100us时,发送端把数据均分到10条路径,此时的流完成时间最小。随着高延时路径数量增加,数据包逐渐偏移到低延时路径,保证了较小的流完成时。

从图6(b)看出,DCTCP的有效吞吐随着高延时路径数增加而降低。RPS中,随着高延时路径数量增加,有效吞吐率有所提升但是并不明显。MPTCP中,高延时路径数量的增加并没对长流的段有效吞吐率造成很大的影响。本发明DDMCC随着高延时路径数量增加有效吞吐率所有下降,但是仍然高于其他协议或方法。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号