基于显示拥塞通告的TCP Vegas算法改进
![](/assets/7a34688/images/icon/s-doc.png)
VIP免费
基于显示拥塞通告的 TCP Vegas 算法改进
1 绪论
在信息时代的今天,随着网络的广泛利用,我们的日常生活已经越来越依
赖于网络带给我们的各种信息,通过网络进行的数据和信息传输已经成为现代
商业社会重要且不可缺少的组成部分和赖以生存的基础。近年来,随着信息技术
的迅猛发展,各个领域的网络应用大量增加,使得原来已经存在的庞大的数据
传输量成倍地增长。而网络硬件资源的增长速度是无法满足如此快速的传输需求
增长的,于是网络拥塞就产生了。当网络拥塞产生的时候,不但无法使吞吐量维
持在网络固有的传输能力水平,实际上网络吞吐量急剧下降,产生拥塞崩溃。在
1986 年 10 月,由于拥塞崩溃的发生,美国 LBL 到 UC Berkeley 的数据吞吐量从
32kbps 跌落到 40bps。在那之后,拥塞控制得到了大量的研究。
1.1 网络产生拥塞的原因
拥塞发生的主要原因在于网络能够提供的资源不足以满足用户的需求,这
些资源包括缓存空间、链路带宽容量和中间节点的处理能力。由于互联网的设计
机制导致其缺乏“接纳控制”能力,因此在网络资源不足时不能限制用户数量,
而只能靠降低服务质量来继续为用户服务,也就是“尽力而为”的服务。当通信
子网中有太多的报文时其性能降低,这种情况叫做拥塞。拥塞会导致传输时延的
急剧增加,造成大量的分组丢失,以及网络吞吐量的急剧下降。
拥塞产生的直接原因[1]有如下三点:(1)存储空间不足。如果几个输入数
据流共同需要同一个输出端口,那么在这个端口就会建立排队。如果没有足够的
存储空间,数据包则会被丢弃。对突发数据流更是如此。增加存储空间在某种程
度上可以缓解这一矛盾,但当路由器有无限存储量,拥塞只会变得更坏,而不
是更好,因为在网络里数据包经过长时间排队完成转发时,它们早已超时,源
端认为它们已经被丢弃,而这些数据包还会继续向下一路由器转发,从而浪费
网络资源,加重网络拥塞。(2)带宽容量不足。低速链路对高速数据流的输入
也会产生拥塞。所有信源发送的速率 R 必须小于或等于信道容量 C。如果
R>C,在理论上无差错传输则是不可能的。所以在网络低速链路处就会形成带宽
瓶颈,当其满足不了通过它的所有源端带宽的要求时,网络就会发生拥塞。
(3)处理器处理能力弱、速度慢。如果路由器的 CPU 在执行排队缓存、更新路
由表等功能时,处理速度跟不上高速链路,也会产生拥塞。
图1.1 负载与吞吐量的关系
Figure1.1 Throughput vs. Load
图 1 显示了负载与吞吐量[2]的关系,当负载较小时,吞吐量与负载之间
呈线性关系,到达膝点(knee)之后,随负载的增加,吞吐量的增量逐渐变小。当
负载越过崖点后,吞吐量却急剧下降,此时网络究竟入了严重拥塞状态,若不
及时进行控制,则有可能导致网络崩溃。拥塞控制的目的就是使吞吐量尽量保持
在膝点与崖点之间,使网络的负载始终保持在一个相应的区间之间。
1.2 拥塞控制算法的研究现状
拥塞控制算法根据其实现位置的不同,可以分为两大类:链路算法[41-43]
和源算法[5](图1.2)。链路算法是指算法是在网络中间设备如路由器或交换
机上实施的;源算法是指在端系统中运行的算法。
链路算法在网络设备(如路由器和交换机)上执行,作用是检测网络拥塞
的发生,采取一定的措施缓减拥塞状况,产生拥塞反馈信息以使发送端采取适
当的措施避免拥塞恶化。链路算法的研究目前正集中在“主动队列管理”
(Active Queue Management, AQM)[6][7][8]算法方面。源算法在主机和网络
边缘设备中执行,作用是根据反馈信息,调整发送速率。源算法中除 TCP 协议
本身的拥塞控制算法,如已经广泛运用于现实网络中的和式增加积式减少
(AIMD)[9]机制外,还有大量的算法被广泛的研究。有关 TCP 协议上的拥塞控
制算法在第二章将给出详细的说明。
图1.2 拥塞控制算法分类
Figure1.2 Classification of the congestion control algorithms
1.2.1 源算法
在源算法[45-48]中,我们使用基于不同的对拥塞进行响应的方式作为分类
的标准将源算法分为两类:基于窗口和基于速率的源算法。而第三级分类标准则
是基于单播或基于组播。下面我们将分别介绍我们列出的算法。
速率适应协议(RAP:Rate Adaption Protocol)[10]是一个简单的应用于单
播数据流的 AIMD 机制。每一个分组都必须被接收者应答(Acknowledged)。ACK
分组被用来探测拥塞和推算 RTT。当探测到拥塞,发送方将当前的拥塞窗口减半
在没有分组丢失,亦即没有出现拥塞的时候,协议在每个 RTT 后将拥塞窗口增
加 1。协议在每个 RTT 之后决定速率的变化——增加或减少,取决于当前的网
络状况。RAP 在发送行为上与 AIMD 机制非常相似,但它没有考虑超时的情况。
因此当网络拥塞主要导致超时发生时,RAP 将表现得更具侵略性。
基于丢失-延迟的适应算法(LDA+:Loss-Delay Based Adaption
Algorithm)[11]与其它的机制不同,它没有设计自身的反馈机制来控制发送速
率,而是仅仅依靠实时传输协议(RTCP:Real-Time Transport Control
Protocol)提供的反馈信息进行调节。LDA+同样是以 AIMD 为基础的,但是它增
加了一些影响因素。AIMD 的增加和减少因子是随着网络状况而调节的。它通过
分组对来判断瓶颈链路的带宽,从而来决定当前网络是否拥塞,进而决定采取
的行动。速率的增加是如下三个相互独立因子的最小者:
(1)带宽低的数据流的增加速率可以比带宽高的数据流快
(2)数据流不能超过估计的瓶颈带宽
(3)数据流增加带宽的速率不能比 TCP 连接快
当接收方报告分组丢失的时候,发送速率就以(1-)为因子积式减少,
其中 l 是分组丢失率。模拟显示 LDA+与 TCP 在给定的环境中公平竞争。
TCP 友好速率控制协议(TFRC:TCP-Friendly Rate Control Protocol)
[12]是专门设计用来进行单播传输的。 它通过对公式(1.1)[13]的计算来调节
发送速率。公式(1.1)是一个 TCP 的吞吐量公式,R 代表回路时间 RTT, tRTO
代表重传超时值,B 时发送分组的大小,用字节表示,p 是丢包率,Wm 是拥塞
窗口的最大值,b 代表每次 ACK 确认的分组个数。TFRC 使用了复杂的方法来收
集需要的参数。其中包括使用衰减加权方法来计算平均丢包间隔,从而降低久的
丢包事件对平均丢包率的影响。通过反馈到发送方的时间戳来计算 RTT。TFRC
使用与 TCP 相似的方式进行慢启动,当出现丢包时,慢启动结束。在每个 RTT
中,一旦 TFRC 接收方更新了参数并发送一个报告给发送方时,发送方就会利
用这些参数计算一个新的公平速率并以此为依据调整发送速率。TFR 的一个主要
的优点就是有一个相对稳定的发送速率,并且仍然提供对竞争的充分的响应。
T(R,tRTO,B,p)=min (1.1)
接收端 TCP 模拟 TEAR(TCP Emulation at Receiver)[14]是一个基于窗口和
基于速率混合的拥塞控制机制。TEAR 接收端计算一个直接的接收速率并将它发
摘要:
展开>>
收起<<
基于显示拥塞通告的TCPVegas算法改进1绪论在信息时代的今天,随着网络的广泛利用,我们的日常生活已经越来越依赖于网络带给我们的各种信息,通过网络进行的数据和信息传输已经成为现代商业社会重要且不可缺少的组成部分和赖以生存的基础。近年来,随着信息技术的迅猛发展,各个领域的网络应用大量增加,使得原来已经存在的庞大的数据传输量成倍地增长。而网络硬件资源的增长速度是无法满足如此快速的传输需求增长的,于是网络拥塞就产生了。当网络拥塞产生的时候,不但无法使吞吐量维持在网络固有的传输能力水平,实际上网络吞吐量急剧下降,产生拥塞崩溃。在1986年10月,由于拥塞崩溃的发生,美国LBL到UCBerkeley的...
相关推荐
-
VIP免费2025-01-09 9
-
VIP免费2025-01-09 6
-
VIP免费2025-01-09 6
-
VIP免费2025-01-09 6
-
VIP免费2025-01-09 6
-
VIP免费2025-01-09 9
-
VIP免费2025-01-09 8
-
VIP免费2025-01-09 7
-
VIP免费2025-01-09 8
-
VIP免费2025-01-09 7
作者:朱铭铭
分类:高等教育资料
价格:150积分
属性:61 页
大小:2.04MB
格式:DOC
时间:2024-09-20