基于控制理论的主动队列管理的研究

(整期优先)网络出版时间:2019-06-04
/ 3
摘 要 本文运用经典控制理论对TCP拥塞控制机制建模,在此基础上依次分析了PI控制器、PID控制器对主动队列进行的管理技术,并对两者进行了比较。最后研究分析了智能控制理论在主动队列管理中的应用技术,并引入了模糊控制和神经网络,介绍了两者在主动队列管理中的具体应用。

关键词 主动队列管理;PID;模糊理论;神经网络


1 引言


由于Internet数据本质上是突发的,因此允许传输突发的数据非常必要,而路由器中队列的重要作用就是吸收突发的数据包。较大的队列能够吸收更多突发的数据包,提高吞吐量,但TCP机制往往会保持较高的队列占用,从而增加了数据包的排队延迟。主动队列管理机制就是要维持一个较小的队列长度以降低排队延迟,提高吞吐量,其中最著名的就是RED算法[1],然而RED算法对网络环境敏感,可能导致队列振荡、吞吐量下降、延迟等问题。为了解决这个问题,业界提出了各种改进算法,但是大部分算法都在很大程度上依赖于参数的设置。不合适的参数很容易导致网络性能的下降,甚至导致系统的不稳定性。近些年来,人们将控制理论引入到主动队列的管理中,通过建立拥塞控制器,使队列长度尽快的达到期望值,从而减小延迟时间,保持高的链路利用率。本文针对主动队列管理中控制理论的应用进行了研究总结

2 经典控制理论在AQM中的应用

2.1 PI控制器

在随机早期检测(RED)算法中,当分组到来时,主要按照以下处理方式来进行:

(1)若平均队列长度小于最小阈值minth,则分组进入队列排队。

(2)若平均队列长度位于minth和maxth之间,则以概率P丢弃到来的包。

(3)若平均队列大于最大阈值maxth,则丢弃到来的所有包。

从控制论的角度分析,RED算法等价于比例控制器加上低通滤波(LPF)。低通滤波的存在降低了网络对拥塞的快速响应能力。而参数的选择必须要考虑队列的稳定裕度和快速性的折衷。比例控制器的缺点是存在“稳态误差”,稳态误差的大小依赖于网络的环境,这是平均队列随网络流量增长的主要原因。有时可能出现误差超过缓冲的大小,从而引起振荡现象的发生。

Misra等人基于流体流理论建立了AQM作用下的TCP连接上拥塞窗口的动态模型[2],它可以用下面的一组非线性微分方程来描述:

1512253001.jpg

其中,W为期望的拥塞窗口,q为期望的队列长度,R为返回时间,C为链路带宽,p为丢包率,N为TCP的连接数。将该数学模型在平衡点附近线性化,得到拥塞控制系统的方块图,如图1所示。

1512262684.jpg

图1 TCP/AQM系统

基于上面的TCP/AQM控制理论模型,Hollot进行了合理的线性化处理,提出了用比例控制器和积分控制器来产生反馈控制系统(如图2所示)。积分(I)控制器有一个很重要的属性:能够使稳态误差为0。如果在AQM中引入积分控制器,就可以解除队列长度和丢弃概率之间的直接耦合,从而消除稳态误差。

1512269435.jpg

图2 AQM控制系统(PI)

PI控制器建立在TCP流量模型基础上,与RED相比性能大大提高,能够将队列长度控制在预期的范围内,同时保持良好的稳态和瞬态性能。但是在缓冲区较小或者路由器上负载较大时,队列需要较长时间才能收敛到期望值附近。在AQM算法中使用PI控制器虽然可以消除稳态误差,但同时也会减慢系统的反应速度。当网络中的流量发生很大变化时,PI控制器需要的收敛时间远远长于比例控制器。

2.2 PID控制器

为了解决PI控制器的调节时间过长,对路由器缓存大小的依赖性过强的问题,又引入了微分环节,设计用于主动队列管理的PID控制器[3](如图3所示),可以缩短控制器的调节时间,使队列尽快趋于期望值附近,提高网络的性能。

1512271156.jpg

图3 模拟PID控制系统原理框图

PID控制器是一种线性控制器,其控制规律为:

1512271948.jpg

或写成传递函数的形式:

1512276089.jpg

K:比例环节(P),Kp为比例系数

1/Tls :积分环节(I),Tl为积分时间常数

TDs:微分环节(D),TD为微分时间常数

当得到被控制参数的误差信号后,比例环节可以将这种误差信号成比例地放大,并产生控制输出作用,以减少系统误差,从而提高系统的控制精度。其实质上是一个具有增益的放大器,它只改变信号的增益而不影响其相位。积分环节具有将小的误差信号积累输出的功能,因而它能够消除系统的静差,提高系统的型别,有利于系统稳态性能的提高。积分作用的强弱取决于积分时间常数,积分常数越大,积分作用越弱,反之越强。微分环节能反应输入信号的变化趋势,产生有效的早期修正信号,以增加系统的阻尼程度,从而改善系统的稳定性。

2.3 PI控制器与PID控制器的比较

(1)主动队列管理不仅关心如何保持高链路利用率,而且还要控制分组在路由器队列中的排队时间,PID控制器可以迅速地将队列长度调节到期望值附近,保证以上两个目标的实现,但PI控制器却要花费相当长的时间。

(2)队列的波动必然导致排队时延的抖动,实验发现PID控制的队列对负载变化的敏感程度没有PI那么强,可以很快地将队列调节到期望值附近。

(3)针对网络中响应流和非响应流共存的情况,PID控制器的反应速度仍然比PI控制器快,同时其平均队列长度也要短些,从而减少了延迟时间。

3 智能控制理论在AQM中的应用研究

经典控制理论对问题的解决在很大程度上依赖于被控对象的数学模型精度,但要得到实际对象的精确模型较难,往往需要许多假设和限制。智能控制是控制理论发展的高级阶段,它主要解决经典控制理论难以解决的复杂系统的控制问题,研究对象是不确定的模型,呈高度的非线性,任务复杂。模糊控制和神经网络控制作为智能控制的两大分支,今年来在网络拥塞控制中得到了广泛的应用。

3.1 模糊控制在AQM中的应用

在实际网络中,AQM算法存在不稳定性,同时对参数的变化很敏感,而AQM算法所依据的模型也是忽略了许多因素后得到的,与实际系统有较大的距离。对此类复杂、时变、不确定性的网络,模糊控制则能解决这一问题。模糊控制系统采用如图4所示的结构,其中输入变量为队列长度和队列长度的变化率,输出变量为丢包率。

151227980.jpg

图4 基于模糊控制的主动队列管理系统

1)模糊理论用于队列长度管理

Chrysostomou[4]等人提出了一种基于TCP/IP best-effort网络的AQM新方案——Fuzzy Explicit Marking (FEM)。该方法通过预先设定一个目标队列长度(TQL)来调节IP路由器中的队列长度,同时获得较高的网络利用率和较低的平均延时。

2)模糊理论用于不同连接的处理

参考文献[5]提出的算法是根据缓冲队列长度大小,采用模糊理论得出丢包概率。该模糊算法采用局部拥塞控制和全局拥塞控制相结合的策略对队列的丢包进行控制。这种方法解决了RED算法不在拥塞状态的连接也可能出现丢包的现象,使得路由器能够在发生拥塞时智能地分清各连接的状态,并能正确处理处于拥塞状态的数据包,保护和隔离非拥塞状态的TCP连接,优化网络利用率。

参考文献[6]是基于加权公平队列(WFQ)原理提出的模糊控制算法,能够根据各连接的权值分配相应的队列长度和带宽。同时,当局部拥塞时可部分增加某队列长度,使队列推出拥塞状态,以免在网络负载较轻时,长队列流过早受到阻塞。

3)模糊理论用于丢包方法的处理

现有的AQM算法基本都沿用了RED的概率丢弃机制。但分组概率丢弃机制中随机数的生成需要大的计算开销,不利于优化网络设备性能。参考文献[7]提出一种利用模糊逻辑决定是否丢包的方法,以进一步优化路由器的传输性能。同时,又定义了拥塞指数这个新的测量变量来量化描述网络的拥塞状态。在此基础上,利用模糊逻辑设计了一种智能分组丢弃机制。离线的合成推理使得分组丢弃判定仅需要简单查表和比较运算即可完成。

3.2 神经网络控制在AQM中的应用

人工神经网络[8]是近十几年迅速发展起来的一门新兴的交叉学科,并在控制领域得到了广泛应用,人工神经网络的主要特点在于:①能充分逼近任意复杂的非线性关系;②能够学习和适应不确定系统的动态特性;③具有很强的容错性和鲁棒性;④采用信息的分布式并行处理,可以快速大量运算。因此,对于非线性系统和不确定性系统来说,人工神经网络无疑是一种解决问题的有效途径。

考虑到对网络流量进行建模的复杂性,可以尝试在主动队列管理中引入神经网络的方法。神经网络具有较强的学习能力和适应能力,比较适用于那些具有不确定性或高度非线性的控制对象,通过神经网络对网络的队列管理特性进行概括和总结,在此基础上调节丢弃概率,达到避免和解除网络拥塞的目的。当然,将神经网络和模糊系统综合运用有助于解决这一问题。运用神经网络需要解决的是计算延时、学习速率、网络本身复杂性等问题。

参考文献[9]提出将传统的PID调节器与神经网络的基本单位单神经元结合起来,解决主动队列管理的控制问题,克服传统PID调节器不易在线实时整定参数,难于对负载波动和缓慢变化进行有效控制的不足。

文献[10]引入了再激励学习,它可以在没有指导的情况下,从环境探索中获得经验,自主的改进系统性能,使强化信号值最大,具有自学的能力。将其与主动队列管理机制相结合,可以发掘出更新颖而高效的AQM机制,以便降低数据包的丢弃机制中随机数生成的计算开销,优化网络性能。

4 小结

路由器主动队列管理机制是计算机网络拥塞控制的重要组成部分,是互联网的重要研究课题之一。本文研究的目的主要是将控制理论应用于网络拥塞控制中的“主动队列管理”,利用控制理论指导AQM算法的设计,从而减少网络延迟,提高网络利用率。

参考文献

[1]徐昌彪,鲜永菊.计算机网络重的拥塞控制与流量分析[M].河北:人民邮电出版社,2007

[2] HOLLOT C V,MISRA V,TOWSLEY D,et al.On designing improved controllers for AQM routers supporting TCP flows[A].Proc of IEEE INFOCOM’O1[C].2001

[3] Fan Y F, Ren F Y, Lin C .Design a PID controller for active queue management . In:Proc.of the 8th IEEE Int’1 Symp(ISCC 2003).2003

[4] Chrysostomou C, Pitsillides A. A Fuzzy Logic Congestion in TCP/IP Best-Effort Networks. In:Proceedings of the Australian Telecommunication Networks and Application Conference, Melbourne,Australia,2003

[5] 冯宪林,龙腾飞.一种基于模糊理论的拥塞控制方法[J].微机发展,2004,14(8)

[6] 綦朝晖,宋学军,刘民.一种基于模糊理论的拥塞控制算法[J].计算机工程与应用.2003,39(11)

[7] 任丰原,林闯,魏丫丫,等.主动队列管理的智能分组丢弃新机制[J].电子学报,2002,30(zl) 46-73

[8] 魏海坤。神经网络结构设计的理论与方法。北京:国防工业出版社

[9] 胡勇,网络拥塞控制中基于单神经元自适应PID的AQM策略研究[D].硕士,河海大学,2005

[10] 陈金华,TCP拥塞控制中主动队列管理算法的研究[D].硕士,南京理工大学,2004