基于NS2的TCP拥塞控制策略的研究与仿真文献综述

 2023-03-22 11:03
{title}{title}


一、文献综述

(一)国内外研究现状

自从互联网高速发展开始,TCP数据流一直占据其主导地位,越来越多的应用进程选择TCP来作为它们的第四层协议,但随着网络人口的增多、英特网的壮大,远距离数据传输越来越多,导致报文段的传输延时越来越大,渐渐的TCP拥塞控制进入到了人们的视线。

在众多TCP拥塞控制算法中,TCP Vegas表现出比其他算法更为优越的性能,然而自1995年提出至今,仍然没有取代TCP Reno成为现今最广泛使用的TCP拥塞控制算法。有研究表明,这是由于Vegas在与Reno共存的网络环境下不能公平地竞争到带宽,因此不能实质性地提高网络性能。在分析Reno如何在网络路由中占用带宽的基础上,提出一种 在两者兼容环境下的拥塞控制方法,根据不同瓶颈缓冲区容量合理选择a、beta;等参数,实现了在Vegas与Reno共存环境下两者良好的兼容性,并通过仿真实验证明了该算法的有效性和正确性。为了控制拥塞,研究者们对此进行了大量的研究,,各种各样的研究方案不断出现,而这些方案需要经过充分的分析和测试来评价其性能,尽早的发现问题并对其加以改正,但依赖于理论分析很难给出精确的评价结果。网络仿真软件由于具有可控性、可重现性、能够减少投资风险等优点,因此大多数都会选择在网络仿真软件中进行模拟仿真,其中使用的比较多的网络仿真软件就是开源的网络模拟器NS2。

目前主要研究不同的TCP拥塞控制算法对网络性能(数据可靠、完整传输)的影响,通过仿真环境的选择、性能指标的设置和网络拓扑结构的设置等来实现自己的研究课题。如文献查阅目录[1]中,作者总结衡量TCP性能的方法并在ns2软件的帮助下通过设置包延迟(sec)、带宽、文件大小(字节)等仿真参数,研究了流量控制窗口大小对TCP连接吞吐量的影响,并实现了TCP流量和背景流量的网络馈送,等到结论。如文献查阅目录[3]中,作者通过NS2网络仿真软件对现有不同网络环境的拥塞控制算法进行了分析比较,分析了各算法的优势以及存在的问题,在不同网络环境下的适应性,基于实验分析结果提出了两种提高TCP协议性能的方案:一是根据网络中链路类型的不同,在发送端和接收端实现不同的TCP算法选择;二是从TCP拥塞控制算法入手,针对适用于HBDP网络的FAST TCP算法进行改进,修改了FAST算法进入拥塞避免阶段的慢启动阈值,使数据流的收敛性和超调量都得到了优化,通过实验来验证改进算法的有效性。

如文献查阅目录[4]中,作者着重介绍了网络仿真技术NS2,对其在网络拥塞控制研究中的应用展开分析与讨论,并结合具体例子,讨论了如何在网络拥塞控制研究中使用NS网络仿真技术,为有效实施网络拥塞控制提供了可靠的途径。通过利用用禁忌遗传算法对网络的带宽、延迟等QoS参数进行 优化,可达到拥塞预防的目的,这在高速的TCP/IP网络中具有重要的意义。如文献查阅目录[5]中,作者提出了“当今世界上网络拥塞已经成为日渐关注的问题”这一趋势,并选择了经典的5种TCP拥塞控制算法TCP Tahoe、TCP Vegas、TCP Newreno、TCP Reno 和 TCP Sack。运用仿真软件NS2设计了四种网络仿真环境:无丢包环境、高时延环境、低带宽环境和拥塞环境对5种算法进行吞吐量,发包数,丢包数,丢包率和平均延时的性能对比。得出实验结果②在无丢包环境下,5种算法的平均延时和网络吞吐量基本相同和正常。②在高延时环境下,各种算法的性能均出现明显的下降。表现为平均吞吐量与发送的数据包数量大幅度下降,平均时延明显上升,但是并没有出现丢包的情况,且TCP Vegas受延时影响比其他四种算法要大,因此在该环境下不推荐TCP Vegas。③低带宽环境下,网络传输会受到影响,出现吞吐量下降、时延增加、数据包丢失的现象。此时Vegas 算法的平均吞吐量最高,时延低,没有发生丢包,性能最出色。④在一般拥塞环境中,Tahoe、Reno、Newreno、Sack、Vegas 五种算法的平均吞吐量依次增加,但是Vegas 算法不会出现丢包,并且时延低于其它几种算法,因此推荐Vegas 算法。如文献查阅目录[8]中,作者从传输数据的完整性和可靠性方面着手,重点研究了TCP协议的慢启动策略即拥塞避免机制,通过拥塞避免策略可以即使避免数据的不必要丢失,增加网络传输的效率。如文献查阅目录[9]中,作者利用NS2网络模拟器设计了四种网络仿真环境:拥塞网络环境、高带宽网络环境、同构型网络环境和异构型网络环境对5个算法进行丢失了、平均吞吐量及延时的性能对比。通过比较在带宽充足和不足条件下拥塞窗口变化、丢失封包和延时情况下得出了Vegas 算法在五个算法中拥塞窗口变化最为平稳,吞吐量也是最大的;Reno,NewReno,Sack 算法性能基本相同,而Tahoe算法性能最差,拥塞窗口变化也最为剧烈,吞吐量最小,但在多个算法竞争带宽时,Vegas 竞争能力最差。因此在设计网络拓扑结构时,在网络无竞争环境下,最好选择Vegas算法;有竞争时则选择Reno,NewReno,Sack算法。

(二)研究主要成果

根据目前的研究分析结果可知,各种算法都存在着自身的优缺点,对于不同网络类型的适应性差异较大,目前不存在一种算法可以高效的适用于所有网络类型。网络环境越来越复杂,拥塞控制算法也在不断地演进。我们需要做的便是在所需要的网络环境下选择最适合的拥塞控制算法。以下是在不同网络类型中各种算法性能的比较。

传统网络

高带宽高延迟网络

无线网络

Reno

HSTCP

STCP

HTCP

CUBIC

Fast

Vegas

Westwood

传统网络

带宽利用率

缓存占有率

一般

一般

一般

一般

一般

良好

一般

丢包率

良好

一般

一般

一般

一般

一般

高速网络

带宽利用率

一般

缓存占有率

良好

一般

良好

良好

一般

良好

一般

丢包率

良好

良好

一般

良好

良好

无线网络

带宽利用率

良好

良好

缓存占有率

良好

丢包率

表 1 不同网络类型各算法的性能比较

从理论上来说在没有发生拥塞的网络环境中,各种算法的性能基本相同,发送端会持续高速的发送数据包,不会产生丢包也没有流量控制机制。在瓶颈链路高时延环境下,并没有发生丢包,但是传输的速率明显受限,各种算法受影响的程度基本相同。在瓶颈链路低带宽环境下,网络传输会受到影响,出现吞吐量下降、时延增加、数据包丢失的现象。Vegas算法的平均吞吐量最高,时延低,没有发生丢包,性能最出色。 在一般拥塞环境中,Tahoe、Reno、Newreno、Sack、Vegas五种算法的平均吞吐量依次增加,但是Vegas算法不会出现丢包,并且时延低于其它几种算法,因此建议使用Vegas算法。

(三)发展趋势

随着互联网规模和流量的不断增大,网络拥塞成为了不可避免的现象。研究表明,当今互联网上95%的数据流使用的是TCP/IP协议。因此,基于TCP的拥塞控制是解决互联网拥塞问题的主要手段。如何验证拥塞控制协议的有效性和进行相关性能测试,使用网络仿真软件能够节省大量的时间和减少资源浪费,并且能够通过网络仿真软件的仿真运行和图形化的结果分析使得研究人员能更加便捷、直观的得到实验数据。目前使用的最为广泛的网络仿真软件是NS2,NS2开源,免费,支持协议且功能广,缺点是大规模网络方面性能较差.因此对基于NS2的高负载、大规模网络仿真将会是未来的主要发展趋势。利用NS2网络仿真器,我们不仅可以对TCP、UDP等网络协议进行仿真,还可以对路由队列管理机制,路由算法,以及无线网络、LAN、移动IP和卫星通信等进行仿真。而且由于它的开源性,我们可以通过自己编写相应的的模块来实现自己要仿真的目标。而就NS产品来讲,虽然NS-3早已推出,但目前NS-3功能还不完备且网络协议支持较少,因此在将来较长时间里,NS-2仿真会继续占据网络仿真研究主流。

对于TCP拥塞控制算法除了对其进一步的改进和完善外,还需要关注TCP层上的公平性问题,主要表现在两个方面。一是面向连接的TCP和无连接的UDP在拥塞发生时对拥塞指示的不同反应和处理,所导致对网络资源的不公平使用的问题。在拥塞发生时,有拥塞控制反应机制的TCP数据流会按拥塞控制步骤进入拥塞避免阶段,从而主动减小发送入网络的数据量。但对无连接的数据报UDP,由于没有端到端的拥塞控制机制,即使网络发出了拥塞指示(如数据包丢失、收到重复ACK等),UDP也不会像TCP那样减少向网络发送的数据量。结果遵守拥塞控制的TCP数据流得到的网络资源越来越少,没有拥塞控制的UDP则会得到越来越多的网络资源,这就导致了网络资源在各源端分配的严重不公平。
网络资源分配的不公平反过来会加重拥塞,甚至可能导致拥塞崩溃。因此如何判断在拥塞发生时各个数据流是否严格遵守TCP拥塞控制,以及如何“惩罚”不遵守拥塞控制协议的行为,成了目前研究拥塞控制的一个热点。在传输层解决拥塞控制的公平性问题的根本方法是全面使用端到端的拥塞控制机制。除TCP层上的公平性问题外,AIMD拥塞窗口更新策略也存在一些缺陷,和式增加策略使发送方发送数据流的拥塞窗口在一个往返时延(RTT)内增加了一个数据包的大小,因此,当不同的数据流对网络瓶颈带宽进行竞争时,具有较小RTT的TCP数据流的拥塞窗口增加速率将会快于具有大RTT的TCP数据流,并且将会占有更多的网络带宽资源。

(四)存在的问题

由于以上的实验成果基本都是在网络仿真环境下进行研究而得到的,在网络仿真环境中,环境变量比较稳定,不会出现意料之外的情况,所以能够得出一个精确的结果。尽管证明可行,但并没有在实际复杂的网络环境下进行过应用和测试,而在实际的网络环境中,由于会有着更多的突发情况和影响因素,并且随着网络技术的飞速发展,将来的网络环境和结构只会更加复杂,导致出现更多其它的

问题,所以在网络仿真环境下所得出的结论不能够盲目的认为其正确而将其应用于实际网络环境中。

二、查阅中外文献资料目录

  1. Performance comparison of TCP, UDP and TFRC in static wireless environment RajaSekhar Rajaboina;P. Chenna Reddy;Raja Ashok Kumar;Nangil Venkatramana 2016 Vol.8 No.2 158-180.
  2. Casoni, Maurizio. Next-generation TCP for ns-3 simulator Simulation Model Practice and Theory 2016 Vol.66 81-93.
  3. 娄文君. 基于NS2的TCP拥塞控制算法研究[D].山东科技大学, 2015.
  4. 赵静,张秀奇,孔金生.NS2网络仿真技术及其在网络拥塞控制中的应用[J].河南科学,2009,27(01):77-79.
  5. 娄久, 李秀坤. NS2平台的TCP/IP网络拥塞控制算法仿真[J]. 实验室研究与探索, 2015, 第34卷(2):81-83,87.
  6. 马元飞, 王顺利, 张培方等. 基于NS2的TCP拥塞控制原理演示平台搭建实例研究[J]. 软件导刊, 2013, (4):82-84.
  7. 张奎.基于NS2的网络拥塞控制算法实验仿真与分析[J].青海师范大学学报(自然科学版),2021,37(02):36-41.
  8. 杨亚涛,范晓红,袁阳. 基于NS2的TCP拥塞控制策略的研究与仿真[C]//第13届全国计算机、网络在现代科学技术领域的应用学术会议论文集.[出版者不详],2007:192-195.
  9. 王珏,余永胜,郑智飞.基于NS2的网络拥塞控制算法的仿真研究[J].科学技术与工程,2013,13(22):6533-6539.
  10. 张雅琼.基于NS2模拟软件的TCP协议实验设计[J].电子设计工程,2013,21(09):27-29 34.
  11. 陈雪小. 基于NS2的无线网络中TCP协议算法性能分析[J]. 传感器世界, 2016, 第22卷(7):32-36.
  12. 潘伟锵,刘瑛.NS—2网络仿真平台及其在TCP拥塞控制研究中的应用[J].科学技术与工程,2009,9(24):7542-7545 7550.
  13. 周德荣,夏龄,田关伟,舒涛.NS2中网络协议开发与仿真研究[J].哈尔滨师范大学自然科学学报,2015,(第2期).
  14. 张治国.基于NS2的网络仿真研究[J].福建电脑,2016,(第8期).
  15. 王强,焦俊,孔文,高雅,袁晨晨.基于NS2的固定和移动节点的无线传感网络的仿真[J].合肥学院学报(自然科学版),2015,(第2期).

检查:第二个数字必须与前一数字一致。

PS:本文档定稿上传系统时请删除本标注框!

资料编号:[596242]


一、文献综述

(一)国内外研究现状

自从互联网高速发展开始,TCP数据流一直占据其主导地位,越来越多的应用进程选择TCP来作为它们的第四层协议,但随着网络人口的增多、英特网的壮大,远距离数据传输越来越多,导致报文段的传输延时越来越大,渐渐的TCP拥塞控制进入到了人们的视线。

在众多TCP拥塞控制算法中,TCP Vegas表现出比其他算法更为优越的性能,然而自1995年提出至今,仍然没有取代TCP Reno成为现今最广泛使用的TCP拥塞控制算法。有研究表明,这是由于Vegas在与Reno共存的网络环境下不能公平地竞争到带宽,因此不能实质性地提高网络性能。在分析Reno如何在网络路由中占用带宽的基础上,提出一种 在两者兼容环境下的拥塞控制方法,根据不同瓶颈缓冲区容量合理选择a、beta;等参数,实现了在Vegas与Reno共存环境下两者良好的兼容性,并通过仿真实验证明了该算法的有效性和正确性。为了控制拥塞,研究者们对此进行了大量的研究,,各种各样的研究方案不断出现,而这些方案需要经过充分的分析和测试来评价其性能,尽早的发现问题并对其加以改正,但依赖于理论分析很难给出精确的评价结果。网络仿真软件由于具有可控性、可重现性、能够减少投资风险等优点,因此大多数都会选择在网络仿真软件中进行模拟仿真,其中使用的比较多的网络仿真软件就是开源的网络模拟器NS2。

目前主要研究不同的TCP拥塞控制算法对网络性能(数据可靠、完整传输)的影响,通过仿真环境的选择、性能指标的设置和网络拓扑结构的设置等来实现自己的研究课题。如文献查阅目录[1]中,作者总结衡量TCP性能的方法并在ns2软件的帮助下通过设置包延迟(sec)、带宽、文件大小(字节)等仿真参数,研究了流量控制窗口大小对TCP连接吞吐量的影响,并实现了TCP流量和背景流量的网络馈送,等到结论。如文献查阅目录[3]中,作者通过NS2网络仿真软件对现有不同网络环境的拥塞控制算法进行了分析比较,分析了各算法的优势以及存在的问题,在不同网络环境下的适应性,基于实验分析结果提出了两种提高TCP协议性能的方案:一是根据网络中链路类型的不同,在发送端和接收端实现不同的TCP算法选择;二是从TCP拥塞控制算法入手,针对适用于HBDP网络的FAST TCP算法进行改进,修改了FAST算法进入拥塞避免阶段的慢启动阈值,使数据流的收敛性和超调量都得到了优化,通过实验来验证改进算法的有效性。

如文献查阅目录[4]中,作者着重介绍了网络仿真技术NS2,对其在网络拥塞控制研究中的应用展开分析与讨论,并结合具体例子,讨论了如何在网络拥塞控制研究中使用NS网络仿真技术,为有效实施网络拥塞控制提供了可靠的途径。通过利用用禁忌遗传算法对网络的带宽、延迟等QoS参数进行 优化,可达到拥塞预防的目的,这在高速的TCP/IP网络中具有重要的意义。如文献查阅目录[5]中,作者提出了“当今世界上网络拥塞已经成为日渐关注的问题”这一趋势,并选择了经典的5种TCP拥塞控制算法TCP Tahoe、TCP Vegas、TCP Newreno、TCP Reno 和 TCP Sack。运用仿真软件NS2设计了四种网络仿真环境:无丢包环境、高时延环境、低带宽环境和拥塞环境对5种算法进行吞吐量,发包数,丢包数,丢包率和平均延时的性能对比。得出实验结果②在无丢包环境下,5种算法的平均延时和网络吞吐量基本相同和正常。②在高延时环境下,各种算法的性能均出现明显的下降。表现为平均吞吐量与发送的数据包数量大幅度下降,平均时延明显上升,但是并没有出现丢包的情况,且TCP Vegas受延时影响比其他四种算法要大,因此在该环境下不推荐TCP Vegas。③低带宽环境下,网络传输会受到影响,出现吞吐量下降、时延增加、数据包丢失的现象。此时Vegas 算法的平均吞吐量最高,时延低,没有发生丢包,性能最出色。④在一般拥塞环境中,Tahoe、Reno、Newreno、Sack、Vegas 五种算法的平均吞吐量依次增加,但是Vegas 算法不会出现丢包,并且时延低于其它几种算法,因此推荐Vegas 算法。如文献查阅目录[8]中,作者从传输数据的完整性和可靠性方面着手,重点研究了TCP协议的慢启动策略即拥塞避免机制,通过拥塞避免策略可以即使避免数据的不必要丢失,增加网络传输的效率。如文献查阅目录[9]中,作者利用NS2网络模拟器设计了四种网络仿真环境:拥塞网络环境、高带宽网络环境、同构型网络环境和异构型网络环境对5个算法进行丢失了、平均吞吐量及延时的性能对比。通过比较在带宽充足和不足条件下拥塞窗口变化、丢失封包和延时情况下得出了Vegas 算法在五个算法中拥塞窗口变化最为平稳,吞吐量也是最大的;Reno,NewReno,Sack 算法性能基本相同,而Tahoe算法性能最差,拥塞窗口变化也最为剧烈,吞吐量最小,但在多个算法竞争带宽时,Vegas 竞争能力最差。因此在设计网络拓扑结构时,在网络无竞争环境下,最好选择Vegas算法;有竞争时则选择Reno,NewReno,Sack算法。

(二)研究主要成果

根据目前的研究分析结果可知,各种算法都存在着自身的优缺点,对于不同网络类型的适应性差异较大,目前不存在一种算法可以高效的适用于所有网络类型。网络环境越来越复杂,拥塞控制算法也在不断地演进。我们需要做的便是在所需要的网络环境下选择最适合的拥塞控制算法。以下是在不同网络类型中各种算法性能的比较。

以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。