论文部分内容阅读
计算机网络技术的快速发展,推动了世界信息化进程,互联网上用户数量和网络业务量的增长,使人们对于网络的需求越来越大,对网络服务质量的要求也越来越苛刻。互联网数据流量的急剧增长,使网络出现了拥塞现象,导致网络性能下降,中间节点丢包率增加,网络时延增大,用户的服务得不到及时响应,解决网络拥塞已经成为一个十分重要的课题。网络研究人员一方面要研究怎样更好的利用和整合现有的网络资源,使网络能够达到最高效能;另一方面也在不断研究新的网络协议和算法,为网络发展进行必要的前瞻性研究。当网络的负载超过网络提供的资源量和处理能力时,就出现了拥塞。目前,互联网的拥塞控制主要是依靠基于TCP层的端到端拥塞控制机制,在发生拥塞时,TCP发送端会降低数据发送速度,根据网络条件来实时协同调整终端的数据传输速率。基于TCP层的端到端拥塞控制算法对网络中间节点所能发挥的作用考虑较少,而路由器等中间节点设备能更及时、甚至提前预测网络的拥塞状态,路由器主动队列管理机制也是拥塞控制的重要组成部分,它是在必要时通过丢包来有效地监控队列的长度,使网络能够有效地避免拥塞。本文主要对主动队列管理算法中存在的稳定性和公平性等方面的问题进行了详细研究,对RED算法和CHOKe算法中各自存在的缺陷提出了改进方案。(1)本文对随机早期检测算法丢包率公式涉及到的平均队列长度和丢包率进行了深入研究,因为两者之间的线性关系导致RED算法在网络拥塞不严重的时候丢包率相对较大,而在较严重的时候丢包率相对较小。针对这一异常丢包现象,提出了一种非线性的NL-RED拥塞控制算法,目的在于提高算法对网络拥塞的调节能力。该算法建立了一个二阶分组丢弃函数模型,在最小门限值附近丢包率缓慢增大,然而在最大门限值附近丢包率会快速增大,这样就可以有效地将平均队列长度控制在一个合理的范围内。NS2仿真实验证明NL-RED算法具有较好的网络性能。(2)本文在对CHOKe算法深入研究的基础上,结合对CHOKe算法的一些改进算法的控制机制和优缺点的详细分析。针对CHOKe算法对非响应流在识别和惩罚这两个机制上存在的问题,提出了一种改进公平性的CHOKe算法LRU-CHOKe,该算法结合了LRU缓存击中的机制,该机制主要是提高新算法对非响应流识别的精确度;利用路由器队列击中,自适应丢包,并结合两次击中和新的丢包策略来加强对非响应流的惩罚,从而提高网络带宽公平性。仿真结果表明,LRU-CHOKe相比CHOKe算法能更有效地对非响应流进行识别和惩罚,实现更好的公平性能。