欢迎来到天天文库
浏览记录
ID:30966105
大小:67.50 KB
页数:4页
时间:2019-01-05
《tcp往返时延与拥塞控制的研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、TCP往返时延与拥塞控制的研究【摘要】时延测量和拥塞控制对于网络的管理、协议开发与技术发展具有重要意义。本文列岀了时延和拥塞控制的概念以及产生的相应机理,并提出了应对的算法。对于网络时延测算软件的设计,本文具有理论指导意义。【关键词】TCP往返时延拥塞控制一、概念简介TCP协议实现了流量控制和拥塞控制功能,可以保证数据的有序可靠的到达目的端。因此,目前网络传输层中多数的应用均?用TCP协议进行。往返时延(RTT)是研究TCP连接行为的重要测度,它是指从TCP发端发出报文到接收到通信对端立即返回的确认报文所经历的时长。拥塞控制(congest
2、ioncontrol)是防止过多的数据注入网络中,这样可以使网络的路由或链路不过载。对于通信端点来说,拥塞往往表现为通信时延的增加。二、TCP往返时延(-)概述TCP相对于UDP來说是可靠传输,但代价也是存在的。TCP采用一种口适应的算法,它记录一个报文段发出的时间,以及收到相应确认的时间,这两个时间之差就是往返时延(RTT)oTCP保留了RTT的一个加权平均往返时间RTTs。时延的测量有挺多,以下给出两种。(二)SYN-ACK方法SYN-ACK方法,通过监测TCP三次握手建立连接的过程来估计RTTo用监测到的最后一个和第一个ACK之间的时
3、间间隔来计算RTTo使用此方法的前提:SYN-ACK和ACK的传输没有被延迟;SYN-ACK在传输中没有丢包,ACK在到达监测点前没有丢包;SYN和ACK在传输的过程中时间抖动不大。SYN-ACK方法的不足之处在于:丢包可能导致RTT估计过长,超过3秒的RTT被认为是不准确的。有些操作系统会使用DelayACK方式工作,导致RTT估计错误。为了减少错误,,SYN-ACK方法使用HTTP请求和应答之间的时延作为RTT估计的上界。(三)SPECTRALANALYSIS方法SPECTRALANALYSIS方法基本思想是:(1)使用前256个分组的
4、到达间隔生成RTT初始估计值。(2)使用滑动窗口估计来设置RTT估计的上界。(3)使用序列号/应答号Z间的关系来寻找DATA-ACK-DATA关联,设置RTT估计的下界。(4)使用自相关函数和Lomb-Scargle周期图來估计RTTo三、TCP拥塞控制(-)概述拥塞的直接原因主要有:(1)存储空间不足;(2)带宽容量不足;(3)处理能力较弱。为对传输层进行拥塞控制,因特网建议标准定义了四种算法。(-)拥塞控制算法1・慢启动旧的TCP在启动一个连接时会向网络中发送许多数据包,由于一些路由器必须对数据包排队,所以这样就有可能耗尽存储空间,从而
5、导致TCP连接的吞吐量(throughput)急剧下降。避免这种情况发生的算法就是慢启动。当建立新的TCP连接时,拥塞窗口(cwnd)初始化为一个数据包大小。源端按cwnd大小发送数据,每收到一个ACK确认,cwnd就增加一个数据包发送量•很显然,cwnd的增长将随RTT呈指数级(exponential)增长:1个、2个、4个等等。源端向网络中发送的数据量将急剧增加。2.拥塞避免发送端的cwnd每经过一个往返时延RTT就增加一个最大报文段长度MSS的大小,而不是加倍,使得cwnd按线性规律缓慢增长,当出现一次超时时,令慢开始门限ssthre
6、sh等于当前cwnd的一半。可归纳如下:当cwnd小于ssthresh时,使用慢开始算法。当cwnd大于等于ssthresh时,改用拥塞避免算法。3.快重传和快恢复当数据包超时时,cwnd要被置为1,重新进入慢启动,这会导致过大地减小发送窗口尺寸,降低TCP连接的吞吐量.所以快速重传和恢复就是在源端收到3个或3个以上重复ACK时,就断定数据包已经丢失,重传数据包,同时将ssthresh置为当前cwnd的一半,而不必等到RT0超时。总的来说,TCP拥塞控制算法如下:1•初始化:win二min(cwnd,awin)cwnd=1;ssthresh
7、=65535bytes(缺省值);/2.当新确认包ACK到达时:If(cwnd8、T测量算法•北京邮电大学学报,2004,27(5).[2]范君晖.TCP/IP拥塞控制算法浅述[期刊论文]-上海工程技术大学学报,2004(3)・[3]施荣华,王国才•计算机通信
8、T测量算法•北京邮电大学学报,2004,27(5).[2]范君晖.TCP/IP拥塞控制算法浅述[期刊论文]-上海工程技术大学学报,2004(3)・[3]施荣华,王国才•计算机通信
此文档下载收益归作者所有