论文部分内容阅读
本文通过对早期随机检测RED算法进行详细分析的基础上,总结出已有算法的优势和不足,提出了一种新的AQM算法——CAKED(Cauchy Adaptive RED)算法。
CARED算法对原有RED算法的分组丢弃概率Pb的计算方法和参数Pmax的取值进行修改。
其一:利用模糊理论中的升半哥西分布的隶属函数代替原来的线性增加分组丢弃概率的函数。CARED分组丢弃概率计算采用升半哥西分布函数,以平均队列长度为样本来获得,将控制范围扩展为最小阈值到最大缓冲之间,实现了分组丢弃概率变化的平滑化,保证在每一阶段系统都能迅速地对拥塞作出反应。
其二:CARED通过计算出路由器队列单位时间间隔内的平均队列长度,分别与最大阈值或最小阈值的比较,根据二者差值的大小动态地调整Pmax的大小,调整向源端发送拥塞通知的速率,维持队列长度的稳定,避免不必要的传输延时和抖动。并且Pmax的值不是每个时间间隔都更新,而只有当连续两个时间间隔内Status都处于相同状态,那么就可以更精确的认为缓冲队列中负载过大或过小,算法就会动态增加或减少Pmax的值,这样避免了Pmax的改变过于频繁,从而提高了链路的利用率。
其三:CARED算法的健壮性来自它对Pmax的规律性调整,如果大量突发数据包导致网络拥塞程度发生急剧变化,则Pmax则需要过一段时间甚至10秒或20秒才能适应。为了保证算法在这段时间里性能不会过度下降,本文将Pmax的范围限制在[0.01,0.5]之间,这样,即使这段时间内平均队列长度Qav不在目标范围内,平均延时和吞吐量也不会下降太多,使算法虽然在理论使不能得到最优,但其性能可得到保证。
在NS2网络仿真器上对算法进行了验证,一系列仿真实验表明,CARED能够有效地适应网络流量的变化,保持队列长度的稳定,减少了队列溢出和空闲现象的发生,在保持队列长度稳定以及提高链路利用率方面明显优于RED算法。