对FAST TCP 网络拥塞控制优缺点的分析

2012-07-25 07:16:06
微型电脑应用 2012年8期
关键词:高带宽公平性吞吐量

沈 浅

0 引言

随着互联网的快速发展,网络给人们的生活带来了新的变革,互联网改变了人们的生活习惯、交流方式、行为活动。然而事物在不断发展的过程中必然会出现很多的问题,面对规模与应用越来越复杂且资源有限的互联网,传统的 TCP Reno网络拥塞控制机制已经存在缺陷,不能适应。于是,针对于高带宽、长延时、大容量网络而言,FAST TCP就此应运而生了。

1 拥塞产生的原因与危害

网络中产生拥塞的原因是网络流量、宽带需求大于网络实际的承载能力,如果不去加以控制的话,必然会导致网络数据的拥塞,如图1所示:

图1 网络吞吐量与负载的关系

网络的吞吐量与负载的关系,由图中可以看到:当网络负载较小时,吞吐量的增长与负载成正比关系,吞吐量增长迅速,当负载继续增大到最佳操作点之后,网络吞吐量的增长速度已经慢于负载的增长,这是因为网络进入了中等拥塞状态。此时,虽然网络可以继续应付负载,但是延时已经增加,如图2所示:

图2 响应时间与负载的关系

由于实际负载不可能均匀地分布在网络中[1]。因此,如果某些节点遇到中等程度的拥塞时,其他节点则可能要经受严重的拥塞,这样必然导致丢弃一些流量。另外,当负载增加时,网络将试图通过选择穿过低拥塞区的分组路由来平衡负载。为了完成路由的选择,更多路由分组必须在节点之间交换以避开拥塞区,这种额外开销也降低了可用于数据分组的容量。

当然,拥塞是一个复杂现象,产生的原因也很多。如果不加以控制,将会出现丢包率迅速增加,网络资源利用率低,延时增加等情况,严重的话更可能导致网络的拥塞崩溃。

2 FAST TCP的拥塞控制分析

2.1 FAST TCP模型与优点

FAST TCP模型在实现上可以分为4个部分:RTT测量、数据管理、窗口控制和突发控制。这4部分在功能上相互独立,有利于协议的设计和异步升级,如图3所示:

图3 FAST TCP结构图

图3给出了FAST TCP协议的结构,其中各个部分的主要功能为:

RIT测量:利用多位的排队延迟信号或一位的丢弃/未丢弃信号来估计网络拥塞状况。

数据管理:用来控制发送哪些报文。

窗口控制:根据RTT测量模块获得的信息控制发送窗口的大小。

突发控制:决定何时可以发送报文。

FAST TCP[2]使用队列延时作为判断拥塞的主要依据,适当结合了流层和报文层的设计,能够较好地解决传统TCP Reno中存在的问题。我们使用一个通用的如公式来表示TCP协议和TCP变种流层上的模型,公式(1)

其中:ki(t),ui(t)如公式(2)、(3)

通过对比TCP Reno与FAST TCP的ki(wi,Ti)和ui(wi,Ti)表达式,如表1所示:

表1 增益函数、利用率函数和拥塞反馈方法

从表中可以发现FAST TCP[1]由于采用一种基于表达式的实现方式,可以让网络维持在一个动态高效的状态下。

由此,FAST TCP具有如下优点:

第一,FAST TCP能够明确估算出当前状态距平衡状态的程度,以一种公平稳定的方式逐步逼近平衡点。当FAST TCP离平衡点较远时,窗口变化较快,当快接近平衡点时,窗口的调整较小,避免了Reno中因网络变化导致的窗口慢增长和剧烈下降的问题;

第二,通过选用多比特的拥塞衡量方式,提供更多的拥塞信息,减少了因丢包率为拥塞信号带来的数据报层的振荡;

第三,当链路队列容量较大时,使用队列时延作为拥塞衡量的主要方式,能够使网络更稳定,从而减小队列延迟。

2.2 NS2实验仿真

为了更好地分析FAST TCP,验证其性能,我们采用现今使用广泛网络仿真器的NS2[3]平台进行实验验证。实验使用的网络拓扑结构图,如图4所示:

图4 仿真实验拓扑结构图

其中R1到Rn是中间路由器节点,S1~Sn是源节点,D1~Dn是目的节点,实验采用Drop Tail队列管理策略。

我们把分组大小设置 1000Byte,随机设置各流发送时间以避免相互影响和干扰,采用FTP作为通过TCP连接传输数据的应用,所有这些实验时间都是500秒。

下面我们将从以下几个方面对实验数据进行分析:

1)效率

效率[4]主要是指带宽的利用率,通过 NS2模拟软件分析,随着带宽的增加,FAST TCP在带宽的利用率上远远超过了传统的TCP Reno。

2)稳定性

协议的稳定性有很多评价方法,在这里,我们利用稳定性指数来做评价,第i个流的稳定性指数定义为其样本标准方差除以平均吞吐量,如公式(4)

公式中稳定性指数越小,说明源端能感觉到的震荡也就越小,如果有多个数据流,则只要进行叠加取平均值就可以得出。通过数据分析,我们发现在稳定性上,FAST TCP也有一定的提高。

3)RTT公平性

公平性[5]是指当网络发生拥塞时,链路中的各个连接能公平地竞争网络资源。拥塞发生必然导致数据包丢失,当网络资源减少,各个数据流必将相互争夺而发生竞争,竞争能力弱的数据流将无法或很少获得网络资源。

通过实验数据分析,FAST TCP协议在RTT公平性方面表现较差,远远低于传统的TCP Reno协议。

2.3 存在的问题

在FAST TCP协议模型中,由于假设源端的发送速率不能超过最大链路带宽。链路队列延迟矩阵p(t)能根据窗口大小计算[6]。假设wi(t)=wi,则链路上的延迟pm(t)=pm≥0表示如公式(5)

当FAST TCP流达到平衡状态时,吞吐量表示为如公式(6)

其中ai是FAST TCP在到达平衡位置时源i流在链路中数据包的个数。

在TCP Reno中,每个RTT时间内拥塞窗口加1,导致具有较小 RTT的连接迅速增加窗口从而掠夺网络资源。FAST TCP和TCP Reno不同[7],它对传播时延较大的流并不存在偏见,即使遇到这种情况,发送端为了维持链路中数据包的数量,也会给该流一个合适的拥塞窗口。

FAST TCP是通过估计部分计算的base RTT[8]来调整其窗口大小,传播时延测量的准确性对FAST TCP窗口控制部分至关重要。而当网络发生拥塞改变路由时,会造成传输时延的变化,这种变化是很难捕捉到的,当网络稳定后,新的传播时延大于重路由前的传播时延时,连接的吞吐量会剧烈下降,从而使FAST TCP的连接无法获得公平的带宽分配。

根据以上的分析,FAST TCP在公平性方面存在一些问题:

首先,从FAST TCP窗口更新公式看出,当RTT测量结果不准确时,会使FAST TCP窗口的增长速率相对温和,从而占用较少的带宽,不利于FAST TCP与其它协议竞争带宽。

第二,在 FAST TCP中,具有较短RTT的连接排队时延更短,这可以帮助它在平衡状态时保持较多的数据包,从而有利于去抢夺网络资源。

第三,随着流的不断加入,网络环境时刻变化,由于FAST TCP使用队列延迟的拥塞控制方法,当对base RTT的测量失误时,会对FAST TCP的整体性能造成不良影响,从而影响FAST TCP连接的公平性以及效率。

3 结论

通过对 FAST TCP的分析,可以看到新算法与传统的TCP Reno相比,确实有了很大进步和提高。但由于每个协议设计的出发点和侧重点的差异,FAST TCP也存在不足,在高带宽时的 RTT公平性方面表现不佳。通过分析,考虑可以通过在原有算法中添加一个公平因子,消除RTT的影响,从而有效地提高算法的公平性表现。

[1]李卫星,严晖.FAST TCP公平性改进研究[J].计算机应用与软件,2010(11):37-39.

[2]Floyd S. High-Speed TCP for large congestion windows[S /OL]. RFC3649, 2003.

[3]David X Wei, C Jin, S H Low, et al. FAST TCP: motivation, architecture, algorithms, performance.[C]IEEE/ACM Trans. Net, 2006, 14:1246-1259.

[4]丁一,汪永琳.长距离高带宽环境下FAST TCP的结构与性能分析[J].科技信息,2006(01):1-3.

[5]王德锁,舒勤.TCP拥塞控制机制在高速网络中的局限性[J].中国测量技术,2007(03):47-67

[6]李士宁,王猛,赵磊.长距离高带宽环境下的 TCP[J]拥塞控制.2006(01):47-50

[7]罗万明,林闯,阎保平.TCP/IP拥塞控制研究[J].计算机学报,2009(01)

[8]刘秋让,倪红波.TCP拥塞控制解决办法分析及评价[J].计算机工程,2008(06):59-61

猜你喜欢
高带宽公平性吞吐量
城市光网引领高带宽应用探讨
大科技·D版(2018年7期)2018-10-21 09:38:17
一种提高TCP与UDP数据流公平性的拥塞控制机制
面向PPPoE用户的宽带测速平台的搭建和应用研究
2016年10月长三角地区主要港口吞吐量
集装箱化(2016年11期)2017-03-29 16:15:48
2016年11月长三角地区主要港口吞吐量
集装箱化(2016年12期)2017-03-20 08:32:27
公平性问题例谈
关于公平性的思考
中国卫生(2015年3期)2015-11-19 02:53:16
政企客户组网中MSTP、MSAP技术的应用分析
未来通信卫星的发展趋势
新媒体研究(2014年9期)2014-06-16 15:31:00
2014年1月长三角地区主要港口吞吐量
集装箱化(2014年2期)2014-03-15 19:00:33