MP-Start基于带宽测量的分阶段TCP慢启动机制

上传人:痛*** 文档编号:161860521 上传时间:2022-10-15 格式:DOC 页数:11 大小:1.41MB
收藏 版权申诉 举报 下载
MP-Start基于带宽测量的分阶段TCP慢启动机制_第1页
第1页 / 共11页
MP-Start基于带宽测量的分阶段TCP慢启动机制_第2页
第2页 / 共11页
MP-Start基于带宽测量的分阶段TCP慢启动机制_第3页
第3页 / 共11页
资源描述:

《MP-Start基于带宽测量的分阶段TCP慢启动机制》由会员分享,可在线阅读,更多相关《MP-Start基于带宽测量的分阶段TCP慢启动机制(11页珍藏版)》请在装配图网上搜索。

1、第11期邓晓衡等:MP-Start:基于带宽测量的分阶段TCP慢启动机制101MP-Start:基于带宽测量的分阶段TCP慢启动机制邓晓衡1,2, 陈志刚1, 张连明1, 曾碧卿1(1. 中南大学 信息科学与工程学院,湖南 长沙 410083;2. 国防科学技术大学 计算机学院, 湖南 长沙 410073)摘 要:针对TCP慢启动机制门限值参数难于设置以及突发流量引起网络抖动的问题,提出了一种基于带宽测量及分阶段实施的TCP慢启动改进算法。该方法利用在线网络带宽测量技术,探测出网络带宽,从而根据网络状态的动态变化实现慢启动门限值的动态更新,同时,采用分阶段方法调节拥塞窗口的增加,在拥塞窗口大于

2、门限值一半时,拥塞窗口增幅为门限值和拥塞窗口差值的一半,逐步迭代逼近门限值,使拥塞窗口在连接启动和过渡到拥塞避免阶段增加幅度比较小,而在中间阶段窗口增加幅度比较大。有效避免了多个分组丢失现象的发生,实现了连接的平滑接入和过渡到拥塞避免阶段;为提高改进算法的性能,设计了一种灵活的参数化的模型和自适应参数设置方案。大量仿真实验结果表明MP-Start能在多种网络环境下有效改善网络性能,如降低分组丢弃数、减少数据传输时间、降低共享链路分组队列长度、保持连接的传输平滑性。关键词:TCP;拥塞控制;慢启动;测量;分阶段中图分类号:TP393 文献标识码:B 文章编号:1000-436X(2007)11-

3、0092-11MP-Start: bandwidth measurement based andphase-divided TCP slow start mechanism DENG Xiao-heng1,2, CHEN Zhi-gang1, ZHANG Lian-ming1, ZENG Bi-qing1(1.College of Information Science and Technology, Central South University,Changsha 410083,China;2.School of Computer, National University of Defen

4、se Technology, Changsha 410073,China)Abstract: To set appropriate threshold value(ssthresh) of slow start and eliminate network oscillation caused by bursty traffic, a new measurement-based and phase-divided slow start mechanism was proposed, which was called MP-Start. MP-Start employs effective onl

5、ine bandwidth measurement technology to update the ssthresh with appropriate value dynamically, and adjusts the increment of congestion window(cwnd) in different phase of the startup. MP-Start increases cwnd with half of the difference between ssthesh and cwnd, iterates and gradually closes up ssthr

6、esh, of which the increment is small at start phase and end phase and comparatively large at the middle phase of the startup of a connection, the largest increment is no more than one quarter of ssthresh. In order to improve the performance of this algorithm, a flexible parameterized model and an ad

7、aptive parameter setting solution are designed. And series simulation experiments indicate that MP-Start significantly decreases dropped packets, data transforming time, packet queue length of shared link, and also improves network performance and smoothness of connections.Key words: TCP; congestion

8、 control; slow start; measurement; phase-divided收稿日期:2006-04-30;修回日期:2007-08-17基金项目:国家自然科学基金资助项目(60573127);国家重点基础研究发展计划(“973”计划)基金资助项目(2005CB321801);湖南省自然科学基金资助项目(06JJ30032); 中国博士后科学基金资助项目(20060400879)Foundation Items: The National Natural Science Foundation of China (60573127); The National Basic R

9、esearch Program of China (973 Program) (2005CB321801); The Natural Science Foundation of Hunan Province (06JJ30032); The China Postdoctoral Science Foundation(20060400879)1 引言传输控制协议(TCP)提供了可靠的端到端的互联网服务,随着互联网应用的不断增加,网络规模的不断扩大,TCP成为一种最为广泛配置的协议。TCP之所以能适应互联网的发展而成为一种主流的传输控制技术是因为其采取了系列有效的机制保证数据可靠传输和互联网的稳定

10、运行。自TCP产生以来,研究者对拥塞控制进行了大量的研究,产生了一系列改进版本13。最初的TCP Tahoe采用慢启动和拥塞避免机制1,TCP Reno2实现了丢包快速重传和从拥塞状态中快速恢复,TCP New-Reno和TCP SACK3通过应答消息返回发送端更完全的信息,可确定哪一个包丢失,解决了一个窗口中多个包丢失的问题。TCP协议采用滑动窗口机制,其中,慢启动主要应用于连接的建立和分组超时丢弃后快速恢复阶段。慢启动机制防止在建立TCP连接时发送速率过大导致网络拥塞,将拥塞窗口从一个分组大小逐渐增加到一个门限阈值,有效避免了新连接加入时的突发流量导致网络拥塞的发生。根据从建立到数据传输结

11、束连接终止经历时间的长短将连接分为长生存期和短生存期连接。有研究表明4,互联网上数据传输大多数为短生存期连接(如Web请求),但是数量占少数的长生存期连接(如FTP)传送了大部分的数据量。短生存期连接的传输过程往往还没有进入稳定运行状态就已经终止,即连接经常处于慢启动阶段,显然,慢启动机制的性能直接影响了短生存期连接的传输效率,而在实际应用中,短生存期连接却对带宽和延迟都有较高的要求,从而对互联网用户产生了巨大的影响。对于长生存期连接,慢启动机制将作用于连接启动阶段和分组传输超时重传阶段,在网络拥塞状况下,对于长生存期连接的性能也有一定的影响,因此,尽管慢启动经历的时间很短,但改善和提高慢启动

12、的性能仍具有重要意义。TCP慢启动阶段在分组正确应答时,拥塞窗口C变化规律如(1)其中,C为拥塞窗口大小,S为慢启动门限值,T为分组的往返延迟。为了有效提高短生存期连接的传送效率以及改善长生存期连接的启动过程和丢包重启过程的传输效率,研究者提出了系列改进方法510。其中,M. Allman等设计一个更大的初始窗口,减少慢启动经历的时间且大大提高了短生存期连接的慢启动开始阶段的效率5;Padmanabhan提出TCP Fast-start6利用缓存最近的网络参数保存网络状态来缩短新的一次慢启动的时间,从而显著减少了短的突发的传输延迟,在网络状态比较稳定的情况下,TCP Fast-start能减少

13、了网络性能的降低;SPAND(shared passive network discovery)7通过提取当前网络状态信息,获得优化的初始TCP参数;J. Hoe采用将初始门限值(Sinit)设定网络带宽延迟乘积,以确保拥塞窗口增长至一合适的值8;文献9提出一种结合使用历史连接参数和令牌技术的算法改善TCP协议的性能;TCP Vegas10采用了一定程度限制慢启动窗口的指数增长,即每2个往返时间间隔(T)把拥塞窗口增大一倍。以上方法从不同方面对TCP慢启动进行了优化,但均存在局限性,TCP Fast-start要求网络运行比较平稳,而随着互联网规模扩大,带宽的提高,网络的振荡幅度往往比较大;J

14、. Hoe的方法在实际应用中存在问题,主要表现在对网络的负荷变化不敏感,当多个数据流同时启动或新的流量注入网络,将导致多个分组丢失;基于历史连接参数的方法还需进一步探索网络流量模式;TCP Vegas协议虽然限制了窗口的指数增长,但仍无法避免一个窗口中多个分组丢弃,并且在一定程度上降低了网络的传输性能。考虑上述方法的局限性,本文提出了一种基于源端实时在线带宽测量的分阶段逐步逼近的慢启动算法MP-Start。其主要思想是通过源端在线测量网络带宽,对S动态更新,基于此,在不同阶段采用不同的调节策略,在连接启动之初采用标准的慢启动机制,窗口大小呈指数增长,当C大于等于S/2时,Ci1并不像标准慢启动

15、那样直接增加到S,而是增加(SCi)/2,并依此规律不断循环下去,直到(SCi)小于一设定的门限值,从而进入拥塞避免阶段。结合窗口指数增长和负指数增长逐步逼近的方法改变拥塞窗口变化规律,提高了慢启动的平滑性。2 基于带宽测量的分阶段TCP慢启动网络数据传输中一个关键问题是已加入和正在加入的网络用户是动态变化的,导致对网络带宽资源使用和需求的不确定性,从而导致网络带宽的供需矛盾,如果能采取有效措施实时在线地测量出网络的可用带宽,为网络流量管理提供依据,保证带宽的合理分配,将有利于网络整体性能的提高。2.1 实现有效TCP慢启动的困难TCP慢启动机制探测网络带宽,由于窗口从一开始按指数增长的固有特

16、性,导致了2个主要问题:第一,慢启动的窗口由一个分组开始增加,达到一个合适的值,将耗费多个往返时间周期,此过程导致了短生存期连接对可用带宽的低利用率,使窗口大小远小于路径带宽延迟乘积。因此,研究者提出使用一个更大的初始窗口和采用快启动5,6来减少慢启动过程所经历的时间,改善慢启动对网络性能的影响。第二,源节点并不知道网络可用资源的容量,在开始阶段使用系统默认参数,拥塞窗口的指数增长往往误导太快地发送过多的分组,使瓶颈链路缓存区严重溢出,出现一个发送窗口中多个分组丢弃,使TCP发送端失去自时钟,接着,引发重传超时,导致网络的全局同步;全局同步又将整个网络的流量负载和排队延迟的抖动,TCP性能大幅

17、下降。因此利用有效的测量技术,侦听网络的可用带宽,动态修正慢启动窗口的S,克服静态的参数设置的缺陷,成为一种可能的途径,但由于网络中的数据流处于动态变化,系统反应具有滞后性,即使利用有效的测量机制也很难保证门限阈值与网络可用带宽的完全匹配,而慢启动的发送窗口是随时间呈指数增长,最后一个T,其发送窗口增加幅度往往接近S/2,增加量最大,而此时发送端的发送速率却比较接近网络的可用带宽,窗口增加过大容易造成大量分组丢失。因此在利用带宽测量技术的基础上,还应改进慢启动窗口增长规律,才能有效解决慢启动性能低下问题。目前标准的慢启动的窗口增加的速度如图1中曲线a所示,窗口增加幅度越来越大。其实,连接启动时

18、,避免初始发送窗口过大,导致网络拥塞发生,应从一个较小的窗口,逐渐增大,当发送速率接近网络带宽时,发送窗口增大幅度应逐渐减少,确保平滑接近网络的带宽过渡到拥塞避免阶段(其增加速度应超过拥塞避免阶段的线性增加),如图1中的曲线b所示。图1 慢启动窗口增加速度2.2 基于TCP的实时在线带宽测量带宽测量技术应用于端到端的流量控制主要是通过在线获得网络的状态 从而对网络行为进行调节,充分利用网络资源,可分为被动和主动测量2种方式,被动测量的主要功能在于记录并统计网络的行为,不增加和修改通过网络的数据负载,对网络的实际行为没有影响;主动测量注入网络特定的带宽探测分组,对网络的运行的流量产生影响,要基于

19、TCP协议实现主动带宽测量,必须使探测流量符合TCP行为特征,对现有带宽测量算法进行改进。TCP Vegas10通过拥塞窗口与实际测量的T的比值(C/T)计算出实际传送速率与期望的传送速率的最大值(C/Tbase),将两者的差值与两门限值比较,调整发送端的发送速率,使传送带宽收敛于网络可用带宽。测量表达式Rt=Wt/T,Wt为拥塞窗口的大小,T为分组往返时间,通过计算上一个分组传送的速率,作为计算当前C大小和慢启动门限值S的依据。TCP Vegas的测量方法比较粗糙,在某种意义上来说它只是用来判断源端发送速率改变的趋势。带宽测量的算法主要有基于数据包对(packet pair)11和Pathc

20、har算法12,基于数据包对算法由于其原理和实现简单,对网络影响小,在带宽测量中得到广泛应用。数据包对算法的改进算法多分组(multi-packet)模型考虑了一个流中其他分组情形和端到端的延迟,本研究将multi-packet模型与TCP协议结合,构成一种基于TCP的multi-packet模型,嵌入到TCP协议中,只需源端进行修改,对网络中间节点和终端透明,基本原理如下:端到端的数据传输可以看作源端N1发送数据通过系列中间节点Ni和到达目的节点Nn,如图2所示,其中N1为源节点,Nn为目标节点,路径R由n-1条链路连接而成分别为li(1n-1),带宽分别为Bi,其中瓶颈链路lmin的带宽为

21、Bmin,分组的大小为P,假设数据传输过程中,路径R没有任何其他干扰流量,同时忽略目标节点返回应答分组的延迟对网络带宽的影响,N1发送分组的时间间隔为,Tk为分组k的往返延迟,其他变量约定依此类推。图2 网络模型源节点N1发送分组k经由各中间节点及链路到达目标节点Nn,分组到达节点Ni的经历时间为前i-1个节点上的排队时间(源节点N1没有排队延迟)、在前i-1条链路上的传输时间以及前i-1条链路的处理时延之和11,即(2)其中,为分组k到达Ni的时间,为分组k在N1开始发送的时间,P为分组的大小,bj为链路j的带宽,tdj为分组在链路j传播延迟,为分组k在链路j的排队延迟。根据前述约定分析分组

22、k在链路i的排队延迟,由于没有其他流量干扰,数据包在所有链路的起始端节点的排队时间为0,即。如果在第k+1个数据包到达第i个节点时,第k个分组已经离开第i个节点,那么第k+1个分组在节点i的排队时间;否则,分组k到达节点i+1的时间为分组k+1到达节点i的时间、在链路i的传播时间和链路i的排队延迟之和,即 (3)基于上述2种情况,有分组k+1在链路i的排队延迟为(4)分组k、k+1到达Nn的时间间隔为i=第k个分组没有完全离开瓶颈链路,第k+1个分组就到达瓶颈链路,两分组到达目标节点的时间间隔将由2个分组离开瓶颈链路的时间差决定,如图3所示,i=P/Bmin,有端到端的带宽,即为瓶颈链路带宽B

23、e2e=Bmin=P/()=P/i(5)图3 瓶颈链路与端到端分组间隔情况在实际的网络带宽测量过程中,存在干扰流量,前述模型的假设条件无法满足,网络中的干扰流量会影响测量结果,干扰分组与探测分组混杂在一起,可以处于探测分组之前、之后对测量结果产生不同的影响。例如,采用分组对(packet pair)或多分组(multi-packet)技术测量链路的瓶颈带宽时,探测分组和其他分组在瓶颈链路处公平地排队,不能彼此相邻排队,干扰分组处于探测分组之间将引起时间扩展,导致低估瓶颈链路带宽,干扰分组插入在瓶颈链路中的第一个分组之前将引起导致时间压缩、高估瓶颈链路带宽;同时,不同TCP实现中存在有应答压缩现

24、象,一个应答表明多个分组正确传送,业务量应为多个分组大小之和,若不予以区分将导致低估网络带宽。消除干扰流量对测量结果的影响成为分组对算法亟需解决的问题,一般采用多次测量统计求平均值的方法,包括:直接求平均值,柱状图法或非参数估计方法,即核密度(kernel density)估计算法11;以上方法存在误差大或计算复杂的缺陷,本研究引入指数移动平均滤波器减少突发流量对网络测量值的影响,指数平均系数取值一般为7/8左右2,采样值中所占比例少的突发流量的影响将减少,同时确保了一定大小的取样窗口,有测量带宽Bt(6)其中,Bt_cur为据式(5)的瞬时测量值,Bt1为t1时刻带宽测量值,慢启动门限值为带

25、宽和该窗口那所有分组的平均往返时间乘积与分组长度的比值(7)其中,Tmean为平均往返时间,P为分组大小。2.3 基于带宽测量的分阶段慢启动机制MP-Start的核心思想是通过实时在线带宽测量技术确定门限阈值S,在拥塞窗口小于门限值的一半的情况下遵循指数增长规律,否则,拥塞窗口每次增加门限值与拥塞窗口之差的一半(SC)/2,逐步逼近门限值,直到其差值小于调节因子,同时将拥塞窗口设为门限值,从而进入拥塞避免阶段。与TCP Vegas的慢启动比较,当取最小值,即=2时,其经历的时间相同,即最长慢启动时间与TCP Vegas相同,却能有效降低窗口中多个分组丢弃的概率。C可以由式(8)表示(8)这种方

26、法最大特点是在连接开始启动和进入拥塞避免的2个邻近阶段拥塞窗口增加幅度较小,变化比较平滑,能减少网络中其他共享连接的影响,保持了网络运行的稳定,减少了网络的抖动。具体算法实现如图4所示。1.初始化,C=2, S=Sinit,设置,;2.初始化k=1, Tmean = Tinit;3.发送C个分组;记录每个分组发送时间;4.如果第k个分组正确应答4.1 记录分组返回时间,计算;if k=1 then Tmean =T1;4.2 else if k1计算Tmean,Tmean(k1)Tmean + Tk)/k根据式(5)计算当前瞬时测量带宽Bt_cur;if k=2 then Bt= Bt_cur

27、 ;计算测量带宽Bt=Bt1+(1)Bt_cur ;估测慢启动门限值;4.3 k=k+1;4.4 if k = C then go to 4;4.5 if CS then C=S;转5;4.7 else if (CS/2 & SC) thenC=(C + S)/2,转2;4.8 else C=S ;5. 如果接收3个重复应答或应答超时,则重新进入慢启动阶段;转1;6.进入拥塞避免阶段;图4 基于带宽测量的分阶段慢启动算法下面来比较最初的TCP13协议慢启动与MP-Start的窗口变化情况。首先,假设所有的分组都正确应答,为分析方便令,根据慢启动原理,慢启动经历的时间,窗口变化情况如图5所示,连

28、接启动拥塞窗口C由1开始随T呈指数增长,前(N1)个T时间C增加到S/4,最后2个T时间周期里C分别增加S/4和S/2,增幅达门限值S的3/4,尤其最后一个往返延时周期增加S/2,对于现在的高速网络,拥塞窗口都比较大,这种网络的突发流量将对网络的稳定性造成极大影响,引起所有网络连接的分组丢弃,形成网络全局同步,网络性能大幅下降。在MP-Start中,如图6所示,在=2时,C的最大增幅会出现两次为S/4,大大减少了网络突发流量,并且在连接启动的2个临界区域变化平缓,虽然其性能较标准慢启动过程性能有所降低,但它结合在线带宽测量技术能很好根据网络状态进行调节,克服了对网络资源利用情况的不正确估计,确

29、保网络的性能与效率。其实,MP-Start是一种更通用的慢启动机制,其适用范围更广,当参数取值为S/2时,MP-Start就转变为标准慢启动,适当取其他大于1的值可以在一定程度上减少慢启动经历的时间,并能适度提高网络性能。与TCP Vegas相比,MP-Start的拥塞窗口的最大增幅小于TCP Vegas,变化更加平滑,且传输速率明显高于TCP Vegas;MP-Start所作的工作只是将窗口增加幅度的分布范围进行了调整。图5 TCP协议慢启动窗口大小变化图6 MP-Start窗口大小变化(=2)2.4 灵活的慢启动参数模型当=2时,算法MP-Start与TCP Vegas慢启动所经历的时间基

30、本相同,不过MP-Start将窗口增加的粒度减少了,改变了分布时间段;与标准慢启动比较,C小于S/2时,C随T数按2的指数增长,C大于S/2时,C随T数按C与S之和的指数的倒数增长,所经历时间约为标准慢启动的2倍,这将导致MP-Start性能降低,因此,有必要保证平滑启动和过渡的同时进一步提高传输性能,引入了增长因子g为大于等于1的整数(g1),表示源端每接收一个应答,C增加的分组数,可以用来反映慢启动窗口增加的快慢,例如,当g=1,=2时,即为2.3节所述算法;如果g=3,=2,当CS/2时,每个T时间间隔C增加幅度为3(S-C)/4,直到S-C小于,如图7所示。因此,MP-Start窗口变

31、化的通用表达式如式(9)(9)图7 各种慢启动机制的比较这种慢启动窗口改变算法,通过改变增长因子g的大小使窗口变化具有较大的灵活性,在提高传输性能的同时,还能有效克服采用较大初始窗口方法带来突发流量的缺陷。MP-Start算法有利于改善在网络中剩余带宽足够的条件下的短生命期连接的性能,如Web请求等;同时也适用于高带宽长延迟网络,即带宽延迟乘积大的网络中的数据传输,TCP协议的S的初始值一般设置为32或64 Kbyte,致使TCP流要经过一段很长的拥塞避免阶段,才能使发送速率接近网络带宽,而MP-Start在慢启动过程中通过测量可以获得较精确的带宽延迟乘积,从而动态改变S,通过慢启动阶段可较快

32、地达到网络容量的发送速率。2.5 自适应参数设置前面已经分析了引入增长因子和限制因子能实现一个灵活的慢启动参数模型,能够结合网络带宽测量方法,改善网络的性能,提高网络的吞吐量,降低网络的抖动。然而,静态的参数设置会使这种参数模型无法适应网络环境的变化,对于慢启动的改进只能限于一种的特定的模式的优化,使得该参数模型的应用受到限制。因此,有必要实现自适应的参数设置,满足不同网络环境需求,在此我们采用的方法与大多数网络协议设计一样是基于经验的,一般连接的慢启动历时不超过10个往返周期,即拥塞窗口小于1 024个分组大小,MP-Start也应该满足该约定。根据图7和MP-Start的基本原理,假定往返

33、时间,慢启动门限阈值为固定不变,各慢启动机制历时情况如表1所示。表1启动阶段经历时间Slow-startTCP VegasMP-Startg =1, d =2g =3, d =2任意给定g , d参考中间节点采用的分组丢弃策略的随机早期检测(RED)算法14,其思想是中间节点缓存区的占用低于下限阈值时,分组全部通过;在下限阈值与上限阈值之间分组的丢弃率由60线性增加到一设定值Pmax;分组占有率高于上限阈值,全部丢弃分组。MP-Start算法采用下面自适应参数设置方法:1) 参数的设定保持与较大的初始慢启动窗口5选项一致。2) 当S足够大,即,基于性能考虑MP-Start经历时间不能超过10T

34、,因此,参数g,满足下面条件3) 当S比较小,标准慢启动所经历时间不超过5个往返时间周期,即S小于等于32个分组大小,MP-Start保持与标准慢启动相同的拥塞窗口增长率。4) 当S在这2个门限值之间,即,g的取值在情况2)、3)两种取值之间逐渐增加,取这样g 的值可以保持相对比较平滑的变化。基于上述的自适应策略,在S较小的情况下基本没有发生作用,而在高带宽长延迟的网络环境下,具有显著效果。这种自适应参数设置还不够完善,不同网络环境下拥塞窗口增加粒度突变严重,高效平滑调节的自适应机制还有待进一步的研究。 3 网络仿真与分析为了验证分阶段慢启动算法的有效性,本文采用目前网络研究广泛使用的网络模拟

35、器ns2.2615,操作系统为Linux red hat 9.0,实现了MP-Start算法,实验的网络拓扑结构如图8所示,对包括TCP Reno标准慢启动,TCP Vegas慢启动和MP-Start慢启动机制进行仿真实验。为综合考察基于测量的分阶段慢启动的性能,设计了多个实验方案,并对实验结果进行了比较分析。图8 网络仿真拓扑实验网络模型如图8所示,假设有N个连接经过一段共享链路,即路由器R1,R2构成的链路为这N个连接的共同瓶颈,路由器所在瓶颈链路的带宽B为1.5Mbit/s,图8中标记的时间均为链路传播延迟。分组大小为1KB。缓存区容量L为25个分组的大小,网络传输的数据类型为FTP。在

36、实验1中,在链路中注入固定的背景流量,使得TCP会话分享1Mbit/s带宽和8个分组大小的缓存区,路由器使用FIFO(first in first out)的分组调度算法,瓶颈链路采用去尾(droptail)分组丢弃策略,根据网络的特点可以计算出网络的带宽延迟乘积(PBD)由于分组大小为1KB,故PBD约为12个分组,整个管道中总共能容纳的分组数为带宽延迟乘积与缓存容量两者之和20。网络传送的文件大小为60KByte。在TCP协议中,源端发送窗口W取值为拥塞窗口C和接收端通告窗口Wr中的较小者,即Wmin( C , Wr )本实验Wr分别取18、20、24、36、64个分组,用以约束发送窗口的

37、最大值不超过Wr,利用Wr来限定S的值,分别处于大于、等于和小于网络的实际带宽情况。图9显示了各慢启动机制分组丢弃数与窗口大小的关系,实验结果表明MP- Start能够较准确估测网络带宽,动态设定S满足网络传输的条件,尤其在设定网络允许发送速率大于网络带宽的情况下大大降低了分组数。图9 分组丢弃数与最大发送窗口关系在上述网络环境中,改变传输文件的大小,同时将接收端的通告窗口设置为足够大,丢包情况如图10所示,在传输文件较小时,数据流还没有注满整个连接管道,文件已经传输完成,因此没有分组丢弃,当传输文件不断增大,标准慢启动和TCP Vegas由于不能准确判断网络的状态,发送过量数据超过网络的容量

38、,导致缓存区溢出,而导致更多分组丢弃,MP-Start通过在线估测网络带宽和平滑增加发送速率,分组丢弃数大大降低,当文件进一步增大,连接将快速恢复,并进入拥塞避免阶段,丢弃分组数不再明显增加。图10 分组丢弃数与传输文件大小的关系在实验2中,考察慢启动阶段的网络的性能、利用率和吞吐量。根据前面分析,在网络没有发生拥塞的情况下,各慢启动经历的时间如表1所示。MP-Start通过带宽测量,获得网络状态,能有效降低分组丢弃的概率,由于网络的动态性以及滞后反馈,带宽测量方法并不能绝对避免拥塞的发生;不论是否发生拥塞,MP-Start可通过选取适当的参数获得较高的性能,表2为各慢启动机制的网络利用率情况

39、比较,实验结果表明在没有拥塞发生的情况下标准慢启动的传输性能比TCP Vegas和MP-Start(g=1,=2)要好,但比MP-Start(g=3, =2)要差,MP-Start可以通过参数配置获得更好的性能,当CS进入拥塞避免阶段后TCP Vegas的性能较好,MP-Start对不同参数选取表现出不同的性能。表2各慢启动机制性能比较时间/sSlow-startTCP VegasMP-Startg=1,=2g=3,=2248.6%35.1%55.7%69.6%474.3%82.2%88.2%89.6%684.1%91.3%92.8%93.2%887.5%93.5%95.3%95.4%进一步,

40、改变通过瓶颈链路的连接数,考察各慢启动机制的传输性能,传送文件大小为30KB,连接的往返延迟分别为50ms,200ms,同时启动5个基于RealAudio的UDP连接产生VBR的背景流量,burst time为10s, idle time为1s,网络中连接数最大取值为30。图11显示了不同连接数下完成文件传输所需时间,实验结果看来,Slow-start和TCP Vegas与UDP流量竞争资源时处于不利位置,MP-Start能够利用在线测量技术利用网络的有效带宽,MP-Start性能明显优于Slow-start和TCP Vegas,总体来看平均完成时间降幅达30%80%,TCP Vegas的性能

41、优于Slow-start;MP-Start由于能在线估测带宽,在各种情况下都获得较高的性能,其参数取值为g=2,=2。在实验3中,为验证各慢启动机制对网络的稳定性的影响,监测其突发流量,共享链路采用随机早期检测(RED, random early detection)14分组丢弃策略获得瞬时队列长度,分别利用Slow-start和MP-Start(g=1, =2)从0.5s开始每隔0.5s启动一个新的FTP会话,每个连接持续0.7s后终止。瓶颈链路瞬时队列长度如图12所示,结果表明MP-Start有效维持网络的稳定,其窗口变化相对平滑,因此瞬时队列长度的抖动幅度也相对较小。图11 不同连接数的

42、性能比较图12 慢启动瞬时队列长度比较实验表明基于测量的分阶段慢启动机制能够有效的降低网络传输分组丢弃,减轻网络的抖动,适当配置慢启动参数能缩短慢启动持续时间,提高网络传输性能。网络带宽的测量与预测的精确性直接关系到改进算法性能,在NS2的TCP协议中嵌入该测量方法实现端到端的带宽测量,将TCP连接分别和基于CBR流量以及RealAudio的VBR流量的UDP连接共同分享瓶颈链路带宽验证测量的有效性。瓶颈链路的带宽为5Mbit/s,单向延迟为30ms,对于到达的分组以FIFO方式调度。第一个测量场景中采用CBR背景流量,首先启动一个1Mbit/s的CBR的UDP连接同时启动网络带宽测量;50s

43、后,第二个UDP连接启动持续50s,然后状态每隔50s由ON/OFF交替转化,经过300s,关闭所有连接,测量结果如图13所示,结果表明测量结果基本与实际带宽基本吻合,图中的actual-bw为瓶颈链路容量与产生的背景流量的理想峰值之差,由于各NS2流量生成器产生的流量具有固有的模式,因此actual-bw并不是完全意义上的网络实际带宽,以后各图在此一并说明。图13 基于CBR背景流量的带宽测量结果比较第二个测量场景中先启动10个100kbit/s的基于Pareto VBR流量的UDP连接,启动带宽测量,50s后,再启动10个100kbit/s的Pareto的UDP连接并持续50s,然后每隔5

44、0s交替关闭/启动10个100kbit/s的Pareto的UDP连接,其中VBR traffic的busrt time/idle time为10s/1s,经过300s,测量结束,测量结果如图14所示,测量结果在大部分情况能很好地与实际带宽吻合;实验中当选用Pareto、Exponential和RealAudio 3种不同的VBR流时,流量突发性也各不相同,当选用RealAudio生成VBR流量时busrt/idle为NS2默认设置时测量结果如图15所示,RealAudio突发时间短,空闲时间较长,平均流量远没有达到其峰值带宽,因此形成图中针状锯齿的测量结果。在慢启动阶段试探性增加发送流量,测量

45、结果趋向于比较保守,即测量结果会略低于网络的实际带宽,尽管如此其性能还是会优于另两种慢启动。图14 基于Pareto VBR背景流量的带宽测量结果比较图15 基于RealAudio VBR背景流量的带宽测量结果比较进一步验证MP-Start对于不同网络环境的适应性,不断改变网络瓶颈链路的容量,分别取5,10,20, 40,100Mbit/s,比较3种算法慢启动阶段的吞吐量性能。实验时,向网络中注入占瓶颈链路容量分别10的CBR和基于Pareto的VBR的混合背景流量,分别计算3种慢启动算法前15s的吞吐量,结果如图16所示。结果显示Slow-start由于受限于固定的S,其吞吐量不能随着网络容

46、量增加而增加,TCP Vegas通过基于监测往返延时,利用W/T来估测网络带宽,在网络T固定不变的情况下,TCP Vegas吞吐量增加到16Mbit/s后,吞吐量随网络容量增加就不明显。MP-Start通过在线测量网络带宽,使得端到端的吞吐量能够随网络容量增加而增加,使得传输效率较前两种算法大幅提升;在网络容量增大时,增长因子g =2比g=1性能更加突出。图16 瓶颈链路容量与端到端吞吐量比较MP-Start能够适应网络环境的变化,在网络带宽乘积较大情况下具有较好的性能,改变网络带宽和往返延迟,形成不同的带宽延迟乘积,比较标准慢启动和MP-Start的窗口变化情况和网络利用率。网络带宽分别为1

47、0Mbit/s、50Mbit/s,往返延迟分别为50ms、100ms、200ms。TCP Reno慢启动的门限初始值Sinit为32KByte,分组大小为1 000Byte,选择不同的带宽和往返延迟形成带宽延迟乘积。图17、18分别显示带宽为10Mbit/s、50Mbit/s,往返延迟分别为50ms、100ms、200ms时reno和MP-Start的C的变化情况。图17 拥塞窗口C的变化(带宽为10Mbit/s)图18 拥塞窗口C的变化(带宽为50Mbit/s)图17、图18表明TCP Reno不能够适应网络环境的变化,在BDP较大的情况下,Reno过早地进入拥塞避免阶段,C呈线性增长,网络

48、利用率低,往返延迟越长,性能越差,当网络带宽由10Mbit/s改变为50Mbit/s,TC的变化并未因带宽增加而调整,图中显示两者基本一样,因此带宽增加的情况下,带宽利用率更低。MP-Start能够通过带宽测量和参数改变动态适应网络环境的变化,图中显示MP-Start能够平滑地启动和平滑地过渡到拥塞避免阶段,不容易产生多个分组丢弃;并且能够根据网络BDP的大小,调节C的增加速度,迅速地达到S,从而充分利用网络带宽资源,图中显示在不同的带宽和往返延迟下,MP-Start都能迅速将发送速率调整到接近网络容量,大大提升了慢启动的性能。4 结束语本文分析了TCP慢启动机制对于网络传输的影响以及实现高效

49、稳定启动TCP连接存在的困难,探讨了带宽测量技术在TCP协议中的应用,并设计了一种基于TCP协议的网络带宽测量方法,在此基础上,提出了一种基于带宽测量的分阶段TCP慢启动机制。该机制能利用测量技术获得的网络带宽,调节慢启动门限值;应用分阶段拥塞窗口增加规律,实现了慢启动快速平滑过渡到拥塞避免阶段,有效减少了多个分组丢弃对传输性能的损害,提高了网络性能。不过,MP-Start算法采用在线实时测量增加了源端的计算量,这在PC处理能力不断增强的互联网上影响不大,可用带宽测量的精度对于传输控制的效果起到关键作用,因此算法要适应带宽不对称网络,还需进一步改进测量方法。下一步的工作是在线带宽测量技术应用到

50、TCP的拥塞避免和快速重传与恢复机制改进中,利用网络测量方法估测网络瓶颈链路队列长度判断网络拥塞程度,在队列长度小于某一阈值时,遵循现有窗口线性增加规律,大于阈值时,将窗口线性增加的斜率降低,使网络数据传输速率尽量长时间维持在接近网络容量的范围;以及往返延迟实现一种基于带宽测量全面优化各机制网络传输协议是我们进一步研究的内容。参考文献:1JACOBSON V. Congestion avoidance and controlJ. ACM Computer Communications Review, 1988, 18(4): 314-329.2JACOBSON V. Berkeley TCP

51、evolution from 4.3-tahoe to 4.3 renoA. Proceedings of the 18th Internet Engineering Task ForceC. Vancouver, BC, 1990. 365.3FALL K, FLOYD S. Simulation-based comparisons of tahoe, reno, and SACK TCPJ. Computer Communication Review, 1996, 26(3): 5-21.4THOMPSON K, MILLER G J, WILDER R. Wide-area Intern

52、et traffic patterns and characteristicsJ. IEEE Network, 1997, 11(6): 10-23. 5ALLMAN M, HAYES C, OSTERMANN S. An evaluation of TCP with larger initial windowsJ. ACM Computer Communication Review, 1998, 28(3): 41-52.6PADMANABHAN V N, KATZ R H. TCP fast start: a technique for speeding up Web transfersA

53、. Proceedings of IEEE GLOBECOM98C. Sydney Australia, 1998. 1157-1162.7SESHAN S, STEMM M, KATZ R H. SPAND: shared passive network performance discoveryA. Proceedings of USITS97C. Monterey, CA, 1997. 135-146.8HOE J. Improving the start-up behavior of a congestion control scheme for TCPA. Proceeding of

54、 ACM SIGCOMM96C. Stanford, CA, 1996. 270-280.9陈晶, 郑明春, 孟强. 一种基于历史连接的网络拥塞控制算法及其性能分析J. 计算机研究与发展, 2003,40(10):1470-1475. CHEN J, ZHENG M C, MENG Q. A network congestion control algorithm based historyconnections and its performance analysisJ. Journal of Computer Research and Development, 2003,40(10): 1

55、470-1475.10BRAKMO L S, PERTERSON L. TCP Vegas: end-to-end congestion avoidance on a global internetJ. IEEE Journal on Selected Areas in Communication, 1995,13(8): 1465-1480. 11LAI K, BAKE M. Measuring bandwidthA. Proceedings of IEEE INFOCOM99C. 1999. 1329-1336.12JACOBSON V. PathcharEB/OL. ftp:/ftp.e

56、e.lbl.gov/pathchar/,1997.13POSTEL J. Transmission Control ProtocolS. Request for Comments 793, DDN Network Information Center, SRI International, 1981. 14FLOYD S, JACOBSON V. Random early detection gateways for congestion avoidanceJ. IEEE/ACM Transactions on Networking, 1993,1(4): 397-413.15NS project, the network simulator-ns-2EB/OL. http:/www.isi.edu/ nsnam/ns/作者简介:邓晓衡(1974-),男,湖南衡阳人,博士,中南大学副教授,主要研究方向为流量管理、网络拥塞控制、网络优化、网格计算。陈志刚(1964-),男,湖南益阳人,博士、中南大学教授、博士生导师,主要研究方向为网络计算与分布式处理。张连明(1972-),男,湖南邵阳人,中南大学博士生,主要研究方向为网络流量工程。曾碧卿(1969-),男,湖南衡阳人,博士,中南大学副教授,主要研究方向为网络并行计算。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!