队列管理RED算法的性能研究

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汪琼1,吴斌2

1北京邮电大学,北京 2南京邮电大学,南京 wangqiongyeye@

摘 要: RED 算法是一种非常有效的避免拥塞和维持网络高链路利用率的队列管理机制。RED 算法的实际性能主要取决于四个控制参数的设置。然而,关于RED 算法的设置至今还没有一个很好的指导方针;针对各种异构网络,还未能提出设置其参量的有效方法,以维持各网络更高的链路利用率。本论文在对RED 算法及其参数设置进行深入研究的基础上,使用NS 模拟工具模拟网络环境,根据仿真结果详尽地分析了RED 算法四个参数设置对网关中各个性能指标的影响,提供了对不同网络设置不同RED 参数的参考方案。

关键词:RED 算法; 参数设置; NS 模拟

1. 引言

网络中采用的调度机制与网络的服务质量QoS 有着密切的关系。随着Internet 的迅速发展,网络规模越来越庞大,结构日趋复杂,仅仅依靠端到端的拥塞控制还不够,网络本身也必须参与资源的控制和管理,在网络发生拥塞时,网络节点必须丢弃一些分组,这个问题的解决首先必须实施有效的队列管理机制[1]。

之前的研究已经提出许多有效的队列管理机制,如:随机丢弃算法(Random Drop gateways)算法、尾部丢弃策略(Drop Tail gateways)、DECbit 算法和ERD(Early Random Drop)算法等算法。但它们都有一定的缺陷,RED 算法就是在弥补这些缺陷的基础上提出来的。

随机早期检测算法(Random Early Detection)[2,3]:采用低通滤波器模型来计算平均队长,支持突发业务,使得网关处理算法实现的更为合理,避免了网关因根据变化的实际队列长度而不断的变更处理方法,该算法因其具有较低的时延,较高的吞吐量和较好的公平性而被广泛采用。它通过在拥塞即将发生时丢弃,能够有效地避免全局同步。

RED 算法已成为路由器中的默认拥塞控制机制。RED 工作性能的优劣很大长度上是由其预先设置的参数、mi 、ma 和ma 决定的。一组RED 参数也许是给定业务吞吐量的最优化参数,但对于连续丢包、延迟等就未必是最优参数。因此如何权衡它们(吞吐量、延迟等)之间的关系,有针对性地找到最优的参数,仍然有待进一步研究。RED 参数的微小变化会给总体性能带来很大的影响。

q w n th x th x p 本论文主要目标是研究讨论RED 算法参数,明确其与网络中各项指标的关系,提出一个可行的针对不同网络环境调节算法参数的参考方案,使RED 算法发挥更好的性能。本论文结构如下:先介绍了RED 算法及其较之其他算法的优越性,并理论上分析了其参数对不同性能指标的敏感性。然后通过设计大量的仿真实验,分析了包括拥塞控制、平均队长、丢包和吞吐量等指标,确定RED 算法参数与调节特定的性能指标之间的关系。 (100876)

(210003)

由于以往使用的算法存在许多不足之处,如:持续的满队列状态、业务流对缓存的死锁、业务流的全局同步、对突发流的不公、平均队长计算不合理等。所以RED 算法设计必须避免或改进这些不足,实现以下目标:(1)通过控制平均队长来避免拥塞;(2)避免全局同步问题;(3)允许突发业务。

2.1 RED 算法的原理

RED 算法使用一个指数权值平均的低通滤波器计算平均队列长度。平均队列长度和两个门限值比较:一个下限()和一个上限();当平均队列长度在上限和下限之间时,每个到来的分组以概率min th max th a p 标记,a p 是队列平均长度avg 的函数,每当有个分组被标记时,该分组被标记的可能性与该特定节点所要求占用的带宽成比例。当平均队列长度低于下限时,不丢弃(即丢弃概率为0)到来的分组;当平均队长在下限和上限之间时,以概率a p 丢弃到来的分组;当平均队长超过上限时,则丢弃到来的全部分组(即丢弃概率为1)。可以看出,RED 算法分两部分:一是计算平均队长,一是计算标记概率。平均队长的设定影响到网关队列突发度;标记概率则决定网关标记数据包的频度,表明网关当前拥塞程度。

2.1.1 平均队长的计算

RED 算法用低通滤波器来计算平均队长,所以由突发业务或者瞬时拥塞导致的队长短期增长,并不会过大的影响平均队长。低通滤波器是指数加权动态均值,平均值计算如下:

(1)q avg w avg w q =−+q ) (1)

即 (2)

(q avg avg w q avg =+−式中为平均队列长度;为权值,对应于低通滤波器时间常数;q 为当前队列长度。

avg q w 2.1.2 标记概率的计算

初始的分组标记概率b p 是平均队列长度的线性函数。标记概率有两种方法:其一,当平均队列长度是常量时,两次标记之间的分组数是几何随机变量;其二,两次标记之间的分组数是统一随机变量。

最初的标记概率计算方法如下:

max (min )/(max min )b p th th th p avg =−− (3)

参量是标记概率的最大值,当平均队列长度到达上限时取。

max p 方法一:几何随机变量法。此法每个分组以概率b p 标记,设X 为两次被标记分组之间的分组数,由于每个分组均以概率b p 标记,则:

1Pr [](1)n b ob X n p p −==−b (4)

因此,X 是一个几何随机变量,并有:[]1/b E X p =。

方法二:统一随机变量法。此法是把X 设为统一的随机变量,

取值范围是{1,2,...1/}b p (简单的假设1/b p 是一个整数);每个到来的分组以/(1*)b b p count p −的概率被标记,其中的是自上一个分组被标记以来的分组数。在这种情况下: count 20Pr [](1)1(1)1 11/n b b i b b b

p p ob X n n p ip p for n p −===−−−−=≤≤∏b

(5) 且, Pr []0 1/b ob X n for n p ==>;可有:[]1/(2)1/2b E X p =+。

文献[4]中,实验得出方法二标记的包比方法一更均匀,RED 算法采用标记方法二。

2.2 RED 算法的参数设置

RED 算法在实践中性能的好坏取决于参数的设置,RED 算法中有如下几个参数需要设置:平均队长的权值,最大丢包概率,下限和上限ma 。

q w max p min th x th 2.2.1权值

q w q w 影响平均队长的计算,当取值比较大时,平均队长容易受瞬时队长的影响,此时平均队长增长较快,相应的允许突发能力较弱;如果取值较小,平均队长变化很小,可能导致发生拥塞却检测不到,达不到控制的目的。参数还决定路由器中数据包在队列中的延迟。在文献[4]中给出的参考取值为0.002。

q w q w q w q w (1)的上限范围

q w 如果太大,计算平均队列长度的程序将不能滤出网关中的拥塞,假设队列开始为空,即平均队列长度是0,当L 个分组到来后,队列长度从0变到L ;在第L 个分组到达网关后,平均队长和、L 的关系如图1所示:

q w L avg q

w

图1 是和L 的函数

L avg q w

相关文档
最新文档