论文部分内容阅读
TCP短流是指始终处在慢启动状态,传输数据量在10K字节左右的TCP流。当代互联网流量中,有相当一部分是HTTP协议为主的WWW万维网数据。这类数据一个重要特点是构架在TCP协议之上,同时一个TCP连接传输的数据量较少。从已有的对HTTP数据特征的分析中可以看出,绝大部分的HTTP协议流传输的数据量在20K字节以内。近年来,随着数据中心的兴起,TCP短流发挥的作用也越来越大。研究表明[3],在目前运行着的数据中心中,有80%的数据流都是TCP短流,其传输的数据量小于10K字节。因此,TCP短流的重要性也就越来越突出,有必要对此做专门的研究。已有对TCP协议的研究中,绝大部分针对承载的数据量大,处在稳定状态的TCP长流。而对TCP短流的研究现在可以大致分为两类,一类以研究TCP短流完成时间的计算方法为主。一类以研究调度协议,减少短流的队列等待时间为主。针对TCP短流对网络拥塞程度的影响,以及相应的TCP短流性能方面的研究还比较缺乏。另一方面,近年来,一些研究指出,可以减少核心路由器的缓冲区,而不会引起链路利用率的明显下降。这类研究的一个共同点是认为拥塞队列由TCP长流造成,没有考虑或者忽略了TCP短流对队列的影响。因此,研究TCP短流对网络拥塞点拥塞状态(即队列深度)的贡献,以及在拥塞环境中TCP短流的性能具有重要的意义。这类研究可以有助于调度协议的分析和构想,以便减小TCP短流分组的队列延时,可以帮助网络管理者更好的设置网络设备参数,可以用于分析和提高数据中心的网络性能等等。TCP短流在拥塞点上的性能是指TCP短流在拥塞点上的队列行为特征以及由此对拥塞队列带来的影响。本文针对TCP短流的拥塞点行为特性,分析了短流在最优情况队列深度模型(网络没有发生丢包)和丢包率非0队列深度模型下的拥塞点队列行为。最后,将分析的结论应用到数据中心网络中。本文的主要工作包括:第一,在现在的队列管理机制下,长流会比短流占据更多的网络带宽资源。为了与短流对拥塞点队列的影响做对比,我们分析了长流对拥塞点队列深度的影响,发现长流流数和平均队列深度有着线性关系。第二,在最优情况队列模型下,对短流在拥塞点上队列行为建模。在分析了各种建模方式后,我们发现以拥塞窗口为单位建模,利用M/G/1模型,可以很好的描述TCP短流在拥塞点上队列行为。通过数学分析,我们找到TCP短流对队列深度影响的公式。这个公式指出,在最优模型下,短流所造成的平均队列深度与链路负载,短流发送的数据量有着确定的数学关系。第三,分析了短流在网络发生丢包时的队列行为。我们发现,短流发生丢包后,实际上是将一个慢启动状态分解成了多个慢启动状态。同时,在丢包率较小时,可以认为网络负载没有发生明显变化。这时,只需将分解后的慢启动状态代入最优公式,依然可以获得和最优模型相似的数学结论。第四,我们对数学结论进行了仿真验证,得到两个结论:一是理论模型和仿真数据有较好的相似,同时分析了误差原因;二是发现短流的队列行为有着特别的类指数曲线的趋势。第五,在总结了数据中心短流数据特征和网络拓扑的情况下,分析了数据中心的TCP短流性能的两个重要因素:队列等待时间和流完成时间。对此作了仿真,并对理论值和仿真值做了比较。