使用率不足和延迟增大 [4]
等问题。
为了改进传统的队尾丢弃算法,1993 年 Sally Floyd 等人提出了随机早期检测拥
塞控制机制(RED,Random Early Detection)[4]
,其后该算法成为首选的主动队列管
理算法(AQM),广泛运用于网络中间连接的路由器和交换机中,在 1998年 IETF的
RFC2309 更是建议在路由器中采用 AQM 机制,至此一股关于 AQM 研究的热潮在学
术界迅速掀起了。RED的算法原理是通过计算平均队列长度来反映网络拥塞的情况,
当监控到路由器输出端口的平均队列长度迅速增大时,即一旦拥塞逼近,则标记(丢
包)概率就会被增大来随机通知发送方,在队列发生溢出导致丢包前,发送方就必须
减小发送窗口,降低发送数据包的速度缓解拥塞[1]
。但近期众多研究表明 RED算法对
网络参数的设置较为敏感,若 RED 参数未能调节好,则会出现吞吐量降低,时延增
大,节点队列振荡等不稳定现象[5][6]
,为此又衍生出不少改进算法,包括 Wu chang Feng
等提出的SRED(stabilized RED)[7]、Sally Floyd 等提出的ARED(Adaptive RED)[8]、
James A等提出的 DRED(Dynamic RED)和 David D.Clark 等提出的 RIO(RED with In
and Out)[9]
等,它们对 RED 拥塞控制机制做了一定程度的改进,某种意义上减少了连接节点处的队列振荡现象[10]
。尽管如此,这些改进算法也只是解决了一些局部问题,
且其构建过程一直缺乏系统的理论依据,在改善了算法的同时也增加了算法的复杂
度。可见局限于RED 算法已难以有突破性的发展,于是人们开始脱离了 RED的结构
框架,开始尝试将控制理论运用于主动队列管理机制中[9]
。2000 年,Vishal Misra 等
着手为动态网络建立一个科学的模型,他们将网络中的信息流看作连续的动态流体,
建立了AQM作用下TCP与队列变化的非线性动态模型[11]
, 由于该模型是非线性形式,
给分析带来了不便,据此 C.V.Hollot 等人于 2001 年利用小信号线性化方法将它线性
化后,导出了线性模型的传递函数,然后从控制理论的角度分析了 RED 的参数设置
和稳定性,并且用参数试凑方法为 AQM 设计出了比例积分(PI)控制器[12]
。之后
Ziegler-Nichols、Panda、Melchor-Aguilar、Poulin、Skogestad 等人从不同方面入手设
计出不同的 PI 控制器[13]
。如今结合控制理论来设计主动队列管理机制成为该领域研
究的热点,该方向一般使用几种常用的控制方法,如比例控制器(P)、比例积分控制
器(PI),比例积分微分控制器(PID)、比例微分控制器(PD)等。后来又加入了其
他先进的控制理论,包括鲁棒控制、基于状态反馈的现代控制、神经网络控制、模糊
控制等,甚至还有学者试图从最优化理论和经济学的方法中开辟出新的设计思路,但
这些新兴理论尚未成为主流[9]
。结合了控制理论的主动队列算法相较于之前的 RED算
法,在拥塞机制上算取得不错的成果,但依然存在一些问题,比如在常用的几种控制
方法中,算法的参数设置一般是固定的,所以当它遇到特殊的目标队列长度时,收敛
速度往往较慢,队列也会产生抖动。为此学者们又引入了更灵活稳定的新算法,即自
适应主动队列管理算法,它可根据网络状况动态调整控制算法中的配置参数,从而获
得更好的动态特性。
1.2.2 自适应 AQM算法设计思想及举例
(1)设计思想
解决网络拥塞问题,其中一个重要的目标就是在任何负载状态下都能把队列长度 自适应网络拥塞控制方法研究(3):http://www.youerw.com/zidonghua/lunwen_15202.html