当前位置: 首页 > 专利查询>中南大学专利>正文

一种数据中心网络中基于任务感知的传输控制方法技术

技术编号:15550715 阅读:69 留言:0更新日期:2017-06-07 15:58
本发明专利技术公开了一种数据中心网络中基于任务感知的传输控制方法,包括以下步骤:通信过程的发送端通过显式反馈信息计算网络当前可用带宽,并且根据它以及所发送的流的拖尾度来调整发送速率,路由器通过分组头ECN信息反馈网络负载,接收端回显该ECN信息并且计算任务预期完成时间;发送端通过接收端在ACK中捎带的任务预期完成时间以及自己计算的流预期完成时间,计算出拖尾度,并且和显式反馈信息一起作为调整发送速率的依据。本发明专利技术通过结合端到端任务信息和网络拥塞信息反馈,从而避免了额外的控制开销、减少了部署的难度、提高协议普及性的同时保证了较低的任务完成时间和较高的吞吐率,因此,减少了用户发送请求之后的等待时间。

Task aware transmission control method in data center network

The invention discloses a method for controlling transmission tasks based on perception of a data center network, which comprises the following steps: sending end of the communication process through explicit feedback calculation of current network available bandwidth, and according to it and send flow trailing degree to adjust the sending rate by ECN router packet header information feedback network load the receiver, echo the ECN information and computing tasks expected completion time; the transmitter receiver piggybacks the tasks in ACK and its own calculation of the expected completion time flow expected completion time, calculate the tailing degree, and explicit feedback information to adjust the sending rate as the basis. The present invention by combining end-to-end task information and network congestion information feedback, so as to avoid the extra control overhead, reducing the difficulty of deployment, improve the popularity of the protocol guarantees a low task completion time and high throughput, therefore, reduce user waiting time after sending a request.

【技术实现步骤摘要】
一种数据中心网络中基于任务感知的传输控制方法
本专利技术涉及一种数据中心网络中基于任务感知的传输控制方法。
技术介绍
在现代数据中心中,普遍使用基于树形的分治算法来下发数据或者计算到数以千记的服务器中去,在每台服务器计算或者处理完毕之后,会把结果传输到聚合机(Aggregator)进行组合和处理,聚合机处理完成之后才能把最终的结果返回给用户。这样的并行处理做法可以很大程度上的提高运行效率,降低用户请求的等待时间,改善和提高用户体验。但是很明显,如果某些服务器对下发的工作处理很慢,这样聚合机就必须等待到所有的数据到达之后才能开始工作,从而导致用户的等待时间加长。这被称为掉队者现象。最近的研究已经表明,在使用了新的硬件技术的数据中心内,网络延时已经占据了85%的端到端应用延时。因此,很多现有的研究都在努力减少网络延时(即拖尾流),以求达到更好的用户体验。总体来说目前的方法可以分为两大类:基于流的和基于任务的网络传输控制方法。基于流的网络传输控制方法由于操作和逻辑相对简单,实现和部署起来比较容易,响应也比较迅速。这些方法或者优化和提高流完成时间(例如DCTCP、L2DCT和pFabric),或者减少截止期限缺失率(例如D2TCP和D3)。但是由于它们都只专注于优化流级别的性能而忽略了一个事实:其实一次用户请求,或者说是任务,是由成百上千条流组成的,任何一条流没有完成,则这次任务就没有完成,也就是说拖尾流决定了这个任务的最终完成时间。因此,这些基于流的机制都不可避免的在不同程度上降低了数据中心所提供的应用的性能。下面的一个例子则可以很好的说明这个问题。最短流优先调度算法会选择调度任务中的最短流,即使这些流分属于不同的任务。这样做可以很好的降低平均流完成时间(Averageflowcompletiontime)。而在应用和任务的层面上看,平均任务完成时间则升高了(Averagetaskcompletiontime),因为在任务完成过程中,不断的有别的任务的流的来阻断自己的传输。这样加大了任务的完成时间,从而影响了用户的体验。相比基于流的传输控制方法,基于任务的传输控制方法可以减少任务的完成时间,也就减少了用户的等待时间。这些基于任务的传输控制方法总体来看可以分为两个大类:一个是基于分布式架构的,另一个则是中心控制器架构的。分布式架构的控制方法,例如Baraat,通过下发调度策略到不同的交换机上面,成功的避免了交换机与中心控制器的计算和通信开销。但是由于计算机基于本地任务信息来决定调度顺序,而缺乏所调度的任务的全局信息。这样会导致存在一种情况:即选中的任务的流,一部分会在某些交换机上成功调度,但是其它部分则会在某些交换机被阻塞,这样仍然不能降低任务的完成时间。而基于中心控制器架构的方法,例如Varys和Rapier,需要一个复杂的系统来收集任务的全局信息,进行调度决策,以及保证决策的正确执行。这个系统包括了中心调度器和安装在网络节点(例如服务器)上的中间件。虽然它们很接近最优调度结果,但是这些方法的计算复杂度和控制开销会随着网络规模的扩大而迅速的上升。在数据中心中,接近80%的流都是10KB到100KB的小流。这些只有10KB的小流在某些方法中,甚至可以在一个往返延时(Roundtriptime)中就可以完成。而如果这些小流还需要花费额外的一个RTT甚至更久的时间来等待中心调度器的调度决策,它们的完成时间则至少增加了100%。可见,数据中心网络中,现有的传输控制方法,或者使用了庞大的系统来保证精准的控制,但是增大了计算开销和传输延迟,同时由于对现有的数据中心网络改动较大,失去了普适性;或者使用了灵活的部署和简单的机制来保证快速响应,但是结果也往往不准确,没有办法减少任务完成时间以及用户的等待时间。因此,如何设计一个轻量级的、有效的、可兼容的基于任务的数据中心网络传输控制方法,在减少任务完成时间的同时,也不增加计算和传输开销,从而减少用户的等待时间,是一个亟待解决的问题。
技术实现思路
为了解决上述数据中心网络中传输控制方法存在的准确性以及快速响应和庞大系统以及灵活部署这两对矛盾,本专利技术提供了一种数据中心网络中基于任务感知的传输控制方法。该方法基于传统传输层,普遍适用的以任务为单位进行传输控制,通过接收端驱动的协调机制,来实现了流拖尾信息的共享,在保证控制准确度的同时,也由于使用了传统TCP协议栈的功能,实现了灵活部署以及较低的开销。本专利技术解决上述技术问题的技术方案为:基于支持ECN的交换机或者路由器、接收端和发送端;一种数据中心网络中基于任务感知的传输控制方法,包括以下步骤:步骤1:发送端在传输层的报文头部中增加任务信息和流信息字段,包括任务ID字段和流大小字段,并将报文发送给路由器或者交换机;步骤2:路由器或者交换机根据网络负载信息决定是否给发送端报文打上ECN标记用于显示网络负载信息,然后将报文转发给接收端;步骤3:接收端根据接收到的报文头部携带的信息,更新任务表相关信息,并计算出任务预期完成时间Tt,并且通过返回给发送端的ACK报文的头部捎带回去该任务预期完成时间Tt以及路由器或者交换机加入的网络负载信息;步骤4:发送端接收接收端返回的ACK报文;步骤5:发送端根据接收端返回的ACK报文,解析出任务预期完成时间和网络负载信息,并且通过任务预期完成时间和其所发送的流的预期完成时间来算出拖尾度因子ω;步骤6:发送端根据拖尾度因子和网络负载信息调整自身拥塞窗口(发送速率),使之适应当前的网络拥塞状态,并通过对拥塞窗口不同程度的改变,调整流的预期完成时间与任务预期完成时间之间的差距。所述步骤3中,接收端维持一个任务表,任务表记录以下信息:任务ID、任务中的每条流的流ID、每条流对应的流大小以及流的已接收的字节数;任务ID用于标识流所属的任务,即一个任务可能由多条流组成,它们共享一个相同的任务ID,它是数据中心边界服务器在收到相应用户请求时随机生成并且下发的;流ID通过TCP/IP协议的本身的五元组得到,用于区分不同的流,以便接收端更新任务表中对应流的表项;每条流的流大小字段的数值为应用层的具体应用所要传输的数据量,即数据的字节数,该值在应用准备发送数据时已经确定,无需更新;每条流的已接收的字节数,则在传输层协议自带的序列号字段的基础上,通过每条流的当前序列号与建立连接时最初的序列号的差值计算得出;流的已接收的字节数会随着流已接收的序列号的增加而增加;所述步骤3中,任务表的更新流程为:接收端根据接收报文头部的任务ID字段,查找任务表;若任务表中不存在该任务ID,则在表中插入一个新表项,其值为该任务ID、该任务中的流ID、对应的流大小和流的已接收字节数;若任务表中存在该任务ID,则进一步比对该任务ID对应的表项中是否存在接收报文头部的流ID;若不存在该流ID,则新建一个表项并且写入该任务ID、流ID、对应的流大小和流的已接收字节数;若存在该流ID,则更新对应的流大小和流的已接收字节数;所述步骤3中,任务预期完成时间Tt=(任务大小-任务已接收字节数)/历史接收速率;其中任务大小通过累加该任务ID下每条流的流大小得到;任务已接收字节数通过累加该任务ID下每条流的已接收字节数得到;历史接收速率则通过任务已接收字节数比本文档来自技高网
...
一种数据中心网络中基于任务感知的传输控制方法

【技术保护点】
一种数据中心网络中基于任务感知的传输控制方法,其特征在于,包括以下步骤:步骤1:发送端在传输层的报文头部中增加任务信息和流信息字段,包括任务ID字段和流大小字段,并将报文发送给路由器或者交换机;步骤2:路由器或者交换机根据网络负载信息决定是否给发送端报文打上ECN标记,用于显示网络负载信息,然后将报文转发给接收端;步骤3:接收端根据接收到的报文头部携带的信息,更新任务表相关信息,并计算出任务预期完成时间T

【技术特征摘要】
1.一种数据中心网络中基于任务感知的传输控制方法,其特征在于,包括以下步骤:步骤1:发送端在传输层的报文头部中增加任务信息和流信息字段,包括任务ID字段和流大小字段,并将报文发送给路由器或者交换机;步骤2:路由器或者交换机根据网络负载信息决定是否给发送端报文打上ECN标记,用于显示网络负载信息,然后将报文转发给接收端;步骤3:接收端根据接收到的报文头部携带的信息,更新任务表相关信息,并计算出任务预期完成时间Tt,并且通过返回给发送端的ACK报文的头部捎带回去该任务预期完成时间Tt以及路由器或者交换机加入的网络负载信息;步骤4:发送端接收接收端返回的ACK报文;步骤5:发送端根据接收端返回的ACK报文,解析出任务预期完成时间和网络负载信息,并且通过任务预期完成时间和其所发送的流的预期完成时间来算出拖尾度因子ω;步骤6:发送端根据拖尾度因子和网络负载信息调整自身拥塞窗口,使之适应当前的网络拥塞状态,并通过对拥塞窗口不同程度的改变,缩小流的预期完成时间与任务预期完成时间之间的差距。2.根据权利要求1所述的数据中心网络中基于任务感知的传输控制方法,其特征在于,所述步骤3中,接收端维持一个任务表,任务表记录以下信息:任务ID、任务中的每条流的流ID、每条流对应的流大小以及流的已接收的字节数;任务ID用于标识流所属的任务;每条流的已接收的字节数,则在传输层协议自带的序列号字段的基础上,通过每条流的当前序列号与建立连接时最初的序列号的差值计算得出;流的已接收的字节数会随着流已接收的序列号的增加而增加;所述步骤3中,任务预期完成时间Tt=(任务大小-任务已接收字节数)/历史接收速率;其中任务大小通过累加该任务ID下每条流的流大小得到;任务已接收字节数通过累加该任务ID下每条流的已接收字节数得到;历史接收速率则通过任务已接收字节数比上花费的时间得出。3.根据权利要求2所述的数据中心网络中基于任务感知的传输控制方法,其特征在于,所述步骤5中,...

【专利技术属性】
技术研发人员:王建新刘森黄家玮邹绍军张韬
申请(专利权)人:中南大学
类型:发明
国别省市:湖南,43

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

1