论文部分内容阅读
自从互联网出现以来,网络资源的缺乏和网络流量分配的不均使得网络拥塞问题一直困扰其发展,伴随着网络规模的扩大和业务量的激增,网络拥塞问题更加严重,已经成为阻碍互联网进一步发展的瓶颈。目前,网络拥塞问题仍然不可避免。互联网发展要求我们必须采取有效的控制机制来降低网络拥塞发生的可能性,确保发生网络拥塞后能及时将网络恢复到正常状态,保证网络运行的稳定和畅通。网络拥塞控制算法是避免网络拥塞、改善网络性能、提高网络质量的主要手段,对网络拥塞控制算法的研究具有重要的理论意义和应用价值。本文分别从TCP端和网络端两部分对网络拥塞控制算法进行了较深入的研究,并提出了改进算法。在基于TCP端的网络拥塞控制算法中,主要针对TCPVegas算法进行了详细分析,从网络非对称性和算法兼容性两个方面对TCP Vegas算法进行了改进;在基于网络端的拥塞控制算法中,主要针对队列管理算法和队列调度算法进行了详细分析。论文的主要内容和创新点如下:(1)基于TCP Vegas网络拥塞控制算法兼容性问题的研究TCP Vegas算法是一种基于测量技术的拥塞控制算法,相比传统的拥塞控制算法而言,TCP Vegas算法在“慢启动”、“拥塞避免”和“快速重传”三个方面都做了改进。特别是在拥塞避免机制上通过比较实际吞吐量和期望吞吐量来调整拥塞窗口大小,将被动的拥塞避免机制变为主动预防的拥塞避免机制,极大地提高了算法的适用性。TCP Reno算法是目前网络中的主流算法,它采用了被动的拥塞避免机制,通过持续增加自己的拥塞窗口,直到网络过载来保证有效利用网络资源;而TCP Vegas算法采用了主动的拥塞避免机制,其目标是将网络带宽维持在一个稳定的水平,所以它不会持续扩展自己的拥塞窗口。在实际应用中,TCPReno算法将会窃取TCP Vegas算法的带宽,导致TCP Vegas算法机制不能起到实际作用。为解决这个问题,本文对TCP Vegas算法设置的两个参数α和β进行了分析,将其由固定值变为动态变动数值,此外将拥塞窗口的指数级增长变为线性增长,仿真结果表明改进算法提高了TCP Vegas算法的带宽竞争能力和数据流量的稳定性。(2)基于TCP Vegas网络拥塞控制算法网络非对称性问题的研究TCP Vegas算法是一种基于时间的算法,因此往返时延(RTT)的准确性至关重要,粗略测量的RTT会导致对拥塞窗口的粗略调整。目前TCP Vegas算法只是考虑了在数据发送方向上发生网络拥塞时采取措施,但是若拥塞发生在回路方向,也即ACK方向,TCP Vegas的算法机制同样会采取拥塞避免措施,这样会引起对实际吞吐量的过低估计,导致拥塞窗口不必要的减小。实际应用中我们要求能够辨认网络拥塞是发生在哪个方向上,进而采取正确的措施保证网络的稳定性。为解决这个问题,本文分析了TCP Vegas算法拥塞避免机制,得到影响TCPVegas算法RTT最大的因素是反向排队时间,为此可以在计算时除去该部分对RTT的影响。仿真结果表明,改进算法消除了TCP Vegas算法的网络非对称性问题。(3)基于TCP Vegas算法中的反向链路拥塞和兼容性问题的融合性研究我们分别针对TCP Vegas算法的兼容性问题和网络非对称问题提出自己的改进算法,仿真试验也分别证明了改进算法的有效性。在实际应用中我们都希望找到一种尽可能“完美”的算法,能够解决TCP Vegas算法中的各种问题,以适应目前网络的需要。本文综合分析了针对TCP Vegas算法中反向链路拥塞问题的改进算法,以及兼容性问题的改进算法,将它们融合在一起,提出了TCP NewVegas算法。仿真结果表明,该算法可以在和TCP Reno算法并用时保持较高的带宽竞争能力,也可消除反向链路的网络拥塞对算法机制的影响。(4)基于自适应虚拟队列算法的区分服务问题的研究自适应虚拟队列(AVQ)算法是根据系统负载情况来判断网络拥塞的,其算法机制是维持一个容量小于实际链路容量的虚拟队列。和传统主动队列管理算法相比,该算法解决了死锁问题,保持了业务流的公平性,可以减小排队延迟。但该算法不能提供区分服务,这对于目前网络业务种类不断增加,网络环境日益复杂的发展趋势来说是个很大的缺陷。为解决这个问题,本文首先分析了动态阈值算法和队列长度阈值算法,综合了这两种算法的思想用于AVQ算法。具体来讲是利用动态阈值算法的思想对AVQ算法的队列管理进行改进,利用队列长度阈值算法的思想对AVQ算法的队列调度进行改进,通过对不同的业务设置不同的优先级,根据不同的优先级给予不同的服务等级,从而达到保证区分服务来满足实时性业务。