论文部分内容阅读
目前网络通信快速发展,在通信过程中数据流量的增长越来越迅猛,网络拥塞已经成为一个被广泛关注的问题。当负载过大,而网络中的资源十分有限时,就会造成吞吐量下降、网络延时变大、数据包掉包率变大等问题,使得系统的性能以及鲁棒性严重下降,因而在此基础上提出了网络拥塞控制算法来缓解拥塞问题。为了提高网络服务质量,保证数据的正确传输,提出了各种网络拥塞控制算法,其中比较有代表性的就是主动式队列管理机制的随机早丢弃算法(Random Early Detection,RED)。相较于被动式队列管理机制的Drop Tail算法,RED队列管理机制解决了TCP全局同步问题。主动队列管理机制是在队列满之前就开始把数据包丢弃,限制将要拥塞的转发设备的发送端的流量速度,可以有效的避免队列溢出所导致的吞吐量下降、丢包率骤增、延时变长和低链路利用率等问题。但是RED算法还有稳定性、参数敏感性等方面的不足。因此,本文通过详细的学习和深入的研究RED算法,应用Linux系统下NS2仿真软件来对RED算法进行改进仿真—ERED、2SSRED和3SSRED。首先,新算法提出了新的非线性平滑,并且调整了算法中的掉包概率函数。新算法通过科学的数学计算推导得出了掉包概率与队列长度的关系,关系式表明掉包概率与队列长度并不是简单的线性关系也不是简单的曲线关系,而是一种类似S型函数的关系。其次,将缓冲区长度的整个区域分为不同的管理区域。可以简单的分为两个区域:积极区和消极区;也可以分为更为复杂的三个区域:积极区、稳定区和消极区。在不同的区域将要对掉包概率函数进行不同的调整,这样数据的分发和处理将会更加准确快速。最后,在Linux系统下应用NS2软件下对新的算法进行了仿真验证,仿真结果表明三种新的算法在吞吐量、丢包率等方面相比基础算法表现出了显而易见的优势。