基于NS2的FASTTCP协议改进

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品1基于NS-2的FASTTCP协议快速收敛改进算法摘要:FASTTCP协议采用静态表映射方法设置慢启动阈值,在复杂多变的网络环境无法实现快速收敛。本文首先通过NS-2仿真实验发现了慢启动阈值与系统收敛速度的关系,然后采用数学方法理论分析了慢启动阈值对与系统收敛速度的影响,并根据上述实验和理论分析结果,提出了一种动态设置慢启动阈值的改进算法。该算法将各连接留在链路缓冲区的个数作为慢启动阈值量纲,根据各连接实际的协议参数确定慢启动阈值,使其在复杂多变的网络环境下获得较好的收敛性能。NS-2仿真结果表明该算法的有效性。1FASTTCP简介FASTTCP是一种面向高带宽延时积网络的新型TCP拥塞控制协议。它从根本上改变了传统TCP的拥塞控制机制。该协议是由加州理工学院网络实验室StevenH.Low等人在源端针对高速、长时延、大容量的高性能网络提出的一种新型高速传输控制协议。FASTTCP协议完全将拥塞控制器建立在各连接源端,采用估测的排队时延作为拥塞反馈信号,其基于平衡的设计思想使其稳定性、吞吐量、公平性和快速响应等性能指标要优于TCPReno、HSTCP和STCP等网络传输控制协议。但其存在难以选择确保系统稳定的协议参数和准确估计传播延时等公开问题。这些公开问题阻碍了该协议的进一步推广。2FASTTCP所存在的问题通过分析FASTTCP代码(由澳大利亚墨尔本大学CUBINLAB实验室网页提供)和文献[1,2,4]可知,FASTTCP在建立新连接时,是采用静态表映射方法初始化FASTTCP的协议参数α、控制律增益参数g和慢启动阈值m,各取值分别为200、0.5和0.00075。这种静态表映射的方法存在致命的缺陷,就是无法很好的适应变化层出不穷的网络拓扑。下面我们通过一组对比实验说明此问题。第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品2我们通过NS-2网络仿真平台,搭建如图1的经典哑铃网络系统:哑铃网络系统中包含3条具有相同链路属性的FASTTCP连接,共享唯一瓶颈链路l。实验一:采用如图1所示的哑铃网络拓扑结构,假设瓶颈链路l带宽C=96Mb/s(即C=12000packets/s),排队延时d=50ms,每个FASTTCP连接采用默认静态协议参数(a=200,g=0.5,m=0.00075),数据包的大小设置为1000个字节,仿真记录时间为20s。记录各连接的数据发送率,仿真实验结果如下图2所示:图2C=96Mb/s时各连接传输流量S1S3T1T2T3S2L1L2图1哑铃网络系统拓扑结构第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品3由图2可知,FASTTCP在瓶颈链路带宽C为96Mb/s时,收敛时间大概为3秒,超调量约为25%,系统表现出较快的收敛速度和较低的超调量。实验二:将瓶颈链路l带宽C设置为实验一的10倍,即C=960Mb/s,其它参数保持不变。记录各连接的数据发送率,仿真实验结果如下图3所示:图3C=960Mb/s时各连接传输流量由图3可知,FASTTCP在瓶颈链路带宽C为960Mb/s时,使用默认的静态协议参数,收敛时间长达18秒,超调量超过200%,各连接在慢启动阶段占用时间较长。实验三:将瓶颈链路l带宽C设置为960Mb/s(与实验二相同),协议参数α取800,其它参数与实验二保持一致。记录各连接的数据发送率,仿真实验结果如下图4所示:第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品4图4C=960Mb/s时各连接传输流量由图4可知,FASTTCP在瓶颈链路带宽C为960Mb/s时,将协议参数α设置为800,其它参数不变的情况下,收敛时间约为7秒,超调量约为30%。实验对比结论:对比实验一和实验二,我们可以看出,在不同带宽的瓶颈链路中,FASTTCP表现出两种截然不同的系统性能。在百兆网络中,FASTTCP有较良好的性能,但随着核心网络带宽的增加,FASTTCP呈现出波动和传播速率收敛慢的现象。由实验三可得,通过增大协议参数α,可得到较快的收敛速度和较小的超调量。但增大α的同时,也增加了系统的队列延时。由文献[1-4,6]和实验数据可求得实验二的瓶颈链路队列排队时延为0.005s,而实验三的瓶颈链路队列排队时延高达0.05s,为原来的10倍,影响系统数据传送性能。3慢启动阈值对收敛速度的分析及改进由FASTTCP的代码与文献[1,3,4]可知,在建立FASTTCP新连接时,分三个阶段:慢启动阶段(下简称阶段1)、慢启动完成至系统达到平衡避免拥塞阶段(下简称阶段2)和系统平衡阶段,如下图5所示:第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品5其中:T1=m,m为慢启动阈值;T2=N·α/C-m,N为当前系统连接个数,α为当前FASTTCP连接的协议参数,C为链路l的带宽单位packets/s;由文献[1,4,5]可得:1111T2T1n-/α-m)α/(CNα/C-mNm(1)n为当排队延时q=m时,当前FASTTCP连接留在缓冲区的包的个数,根据其定义可得其计算公式为NmCn。通过实验一、二和三收集的仿真数据,可求出其与(1)式对应的值分别为:0.01522、0.1764和0.01522。不妨猜想,(1)式的结果T1与T2的比例关系,能影响网络系统的收敛速度与超调量。为验证猜想,我们做了另外一组对比实验:实验四:瓶颈链路l带宽取C=96Mb/s,FASTTCP连接总个数N为1,修改其α与m值,分别做以下实验,收集数据如下表所示:表一:慢启动阈值m和(1)式结果的关系实验号αmT1/T2n/α超调量收敛时间(s)14000.00750.290.22560%324000.0030.0990.0910%1.538000.000750.01130.0112540%248000.0060.0990.0920%1.75由以上实验和实验一、二、三可以看出,当T1与T2的比值落在区间[0.09,0.1]时,系统表现出良好的性能,即收敛速度较快,超调量较低。因此,我们可以以n为慢启动的阈值标志,以控制T1与T2之间的比例。慢启动阀值m系统平衡点阶段1(T1)阶段2(T2)系统平衡阶段(T3)连接时间(s)…图5FASTTCP建立连接时各阶段分配图第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品6FASTTCP建立连接时的三个阶段,根据其代码,可用伪代码描述如下:while(aACKisreceived){if(qi(t)mi){//阶段1,执行慢启动算法:wi(t+1)=wi(t)+1;}else{if(()()xtqtiiia¹){//阶段2,执行FASTTCP窗口更新算法wi(t+1)=(1)(1)()(())()diWtWtWtiiiiiidqtiigga+=-+++;}else{//阶段3,保持窗口稳定wi(t+1)=wi(t);}}}算法变量说明:qi(t):第i个连接在链路队列中的排队延时;wi(t):第i个连接的窗口大小;wi(t+1):第i个连接下一时刻窗口大小;xi(t):第i连接获得的传输流量(packets/s)现根据前文的猜想,修改执行慢启动的条件。将代码第2行里的判断条件更改为:wi(t)*qi(t)/di(t)ni,并于建立连接时初始化ni为ni=αi/10。12345678910111213141516第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品74验证算法的有效性为验证改进后的算法的有效性,可对照实验二,进行如下实验:将瓶颈链路l带宽C设置为960Mb/s,其它参数与实验二相同。记录各连接的数据发送率,仿真实验结果如下图6所示:图6C=960Mb/s时各连接传输流量由图6与仿真数据可得,在保证系统稳定的情况下,系统在8s左右时已经收敛,超调量约为17%,系统性能表现良好。对比实验二的仿真结果,收敛速度有所提高,超调量大幅度下降。5结束语本文通过在Linux下的NS-2网络仿真平台与gnuplot的结合,通过对使用FASTTCP协议的网络连接进行流量分析,发现其在高带宽链路中的慢收敛问题。近而对其慢启动算法的算法进行分析,通过一系列的实验,提出一种可改善该算法慢启动时间的算法。并通过仿真实验,验正了算法的正确性与可行性,使FASTTCP协议在高带宽网络具能更好的发挥其优越性,促进其推广使用。第11届“挑战杯”广东大学生课外学术科技竞赛参赛作品8参考文献[1].DavidX.Wei,ChengJin,Steven.H.Low.FASTTCP:Motivation,Architecture,Algorithms,Performance[J].IEEETransonNetworking,2006,14(6):1246-1259[2].KristerJacobsson.Dynamicmodelingofinternetcongestioncontrol[Ph.Ddissertation].RoyalInstituteofTechnology(KTH),Sweden,2008.25-40[3].KristerJacobsson,LachlanL,Steven.H.Low.AnImprovedLinkModelforWindowFlowControlandItsApplicationtoFASTTCP[J].IEEETransonAutomaticControl,2009,54(3):551-564[5]黄小猛,林闯,任丰源.高速传输协议研究进展[J].计算机学报.2006,29(11).111-120[4].宋丽华,王海涛,陈鸣.基于网络测量和模糊控制技术的拥塞控制机制[J].华南理工大学学报,2006,34(6):89-95[5].王建新,龚皓,陈建二.高带宽延时网络中一种协同时拥塞控制协议[J].软件学报,2008,19(1):125-135[6].龙承念,杨会龙,关新平.EHSTCP:改进的高速TCP算法[J].计算机学报,2008,31(3):143-152联系作者:施伟彬E-Mail:cowboybean@126.com

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功