黃玉濤



摘要:本文將自整定PI速度控制器用于主動隊列管理算法中,提出一種基于自整定PI控制器的主動隊列管理算法,該算法能夠?qū)崿F(xiàn)控制器參數(shù)的自整定,仿真結(jié)果表明,該算法比基于PI控制器的主動隊列管理算法具有更快的響應速度以及更小的“穩(wěn)態(tài)誤差”。a
關鍵詞:主動隊列管理;PI控制器;自整定
中圖分類號:G642 文獻標志碼:A 文章編號:1674-9324(2014)52-0281-02
一、引言
路由器中的主動隊列管理(active queue management,AQM)算法能夠有效地解決網(wǎng)絡擁塞問題。最著名的AQM算法是Floyd所提出的隨機早期檢測RED(random early detection)算法[1],雖然RED算法已被廣泛應用在路由器隊列管理中,但RED算法缺乏系統(tǒng)理論模型與分析,存在參數(shù)配置、穩(wěn)定性等問題。
C.Hollot等人建立了TCP/AQM控制理論模型[2],分析了RED算法的穩(wěn)定性,在此基礎上,文獻[3]提出一種基于PI(proportional integral)控制器的主動隊列管理算法,基于PI控制器的主動隊列管理算法可以有效地消除隊列控制中的“穩(wěn)態(tài)誤差”,然而,該算法中PI控制積分項的引入也導致算法響應速度的降低,動態(tài)調(diào)節(jié)效果不甚理想。
為了克服該主動隊列管理算法中PI控制器所存在的缺陷,本文將文獻[4]中所使用的自整定PI速度控制器用于主動隊列管理算法中,提出一種基于自整定PI控制器的主動隊列管理算法,該算法能夠?qū)崿F(xiàn)控制器參數(shù)的自整定,從而可以有效地提高算法的響應速度,使得隊列控制算法快速性、穩(wěn)定性達到最優(yōu)化。
二、基于自整定PI控制器的主動隊列管理算法
文獻[2]給出了如圖1所示的時滯二階閉環(huán)反饋控制模型,這為使用控制理論設計主動隊列管理算法控制器奠定了堅實的基礎。
圖1中,P(s)e■為控制對象;q0為路由器目標隊列長度;q(t)為t時刻路由器隊列長度;e(t)為t時刻隊列長度控制偏差;p(t)為分組丟失概率。控制模型的控制目標是:根據(jù)隊列長度偏差來設定控制量p(t)值,從而將隊列穩(wěn)定在目標長度q0,路由器能夠保持較高吞吐量、較低分組時延。
P(s)=■ (1)
其中,C為路由器鏈路帶寬;N為TCP數(shù)據(jù)流數(shù)目;R0為往返時延。在圖1中,控制器C(s)的如果使用PI控制器,則構(gòu)成基于PI控制器的主動隊列管理算法[3]。基于PI控制器的主動隊列管理算法可以有效地消除隊列控制中的“穩(wěn)態(tài)誤差”,然而,算法中PI控制積分項的引入導致算法響應速度的降低,動態(tài)調(diào)節(jié)效果不甚理想。為了克服該主動隊列管理算法中PI控制器所存在的缺陷,有效地提高算法響應速度,使得隊列控制算法快速性、穩(wěn)定性達到最優(yōu)化,那么就必須動態(tài)改變PI控制器的比例參數(shù)與積分參數(shù)。
自整定PI控制器的設計思想就是當隊列長度控制偏差很大時,增強比例環(huán)節(jié)的作用,增大比例參數(shù),隨著偏差的減小,比例參數(shù)逐漸減小,積分的作用逐漸增強,為了減小靜態(tài)誤差,當偏差小于某一值時,積分作用達到最強,自整定PI控制器結(jié)構(gòu)如圖2所示。
基于自整定PI控制器的主動隊列管理算法中,分組丟失概率為:
p(t)=kp(t)e(t)+ki(t)■e(t)dt (2)
其中,e(t)為t時刻隊列長度控制偏差;kp(t)為比例參數(shù);ki(t)為積分參數(shù);kp(t)和ki(t)為e(t)的函數(shù)。
kp(t)的數(shù)學表達式為:
kp(t)=kpmax-(kpmax-kpmin)exp(-a(t)|e(t)|) (3)
其中,kpmax與kpmin分別為比例參數(shù)的最大值和最小值;a(t)如式(5)所示。
ki(t)的數(shù)學表達式為:
ki(t)=(1-a(t))kimax(4)
a(t)=1 |e(t)|>ε0 |e(t)|≤ε (5)
由以上公式可知,當隊列控制偏差較大超出ε時,比例參數(shù)為kpmax,積分參數(shù)為0,隨著隊列控制偏差的減小,比例參數(shù)隨之減小,當隊列控制偏差不大于ε,比例參數(shù)為kpmin,積分參數(shù)為kimax,從而實現(xiàn)PI控制器參數(shù)根據(jù)隊列偏差大小的自整定。
三、算法性能仿真
為了驗證本文所提出基于自整定PI控制器的主動隊列管理算法的性能,在NS2網(wǎng)絡仿真器[5]中實現(xiàn)了該算法,并與基于PI控制器的主動隊列管理算法進行性能仿真試驗對比,仿真試驗所使用的網(wǎng)絡拓撲結(jié)構(gòu)如圖3所示。
在仿真試驗所使用的網(wǎng)絡拓撲結(jié)構(gòu)中,在發(fā)送方和接收方之間存在兩個連接S1-D1、S2-D2,分組長度為1024字節(jié)。路由器R1與路由器R2之間的鏈路帶寬為100Mb/s,時延為15ms,緩沖區(qū)隊列長度為200個分組。發(fā)送方與路由器R1之間使用尾部丟失(DropTail)隊列,相互之間的鏈路帶寬為100Mb/s,時延為10ms。接收方與路由器R2之間使用尾部丟失(DropTail)隊列,相互之間的鏈路帶寬為100Mb/s,時延為10ms。
基于PI控制器的主動隊列管理算法中,抽樣時間為0.01s,a=1.822(10)-5,b=1.816(10)-5。基于自整定PI控制器的主動隊列管理算法中,采樣時間為0.01s。
在路由器R1與R2之間分別配置基于PI控制器的主動隊列管理算法以及本文所提出的基于自整定PI控制器的主動隊列管理算法,兩種算法中,路由器隊列長度期望值q0均為150個分組。
仿真時間60秒,發(fā)送方和接收方之間為2個基于TCPReno的FTP流,基于PI控制器的主動隊列管理算法以及本文所提出的基于自整定PI控制器的主動隊列管理算法中路由器隊列長度隨時間變化的仿真結(jié)果如圖4所示。
圖4的仿真結(jié)果表明,基于自整定PI控制器的主動隊列管理算法在性能上優(yōu)于基于PI控制器的主動隊列管理算法,具有更快的響應速度以及更小的穩(wěn)態(tài)誤差,能夠?qū)㈥犃虚L度穩(wěn)定在期望值150個分組附近。
為了克服該主動隊列管理算法中PI控制器所存在的缺陷,本文提出將自整定PI速度控制器用于主動隊列管理算法中,提出一種基于自整定PI控制器的主動隊列管理算法,該算法能夠?qū)崿F(xiàn)控制器參數(shù)的自整定,具有更快的響應速度以及更小的“穩(wěn)態(tài)誤差”,算法在性能上優(yōu)于基于PI控制器的主動隊列管理算法。
參考文獻:
[1]Floyd S.Jacobson V Random early detection gateways for congestion avoidance[J].IEEE/ACM Transactions on Networking,1993,1(4):397-413.
[2]C.Hollot,V.Misra,D.Towsley,W.B.Gong.A control theoretic analysis of RED[C].In Proc.of INFOCOM2000 Conference,Tel Aviv,Israel,2000.
[3]C.V.Hollot,et.al.On designing improved controllers for AQM routers supporting TCP flows[C].In Proc.of IEEE INFOCOM,2001.
[4]楊立永,張艷秋.永磁同步調(diào)速系統(tǒng)自整定PI速度控制器設計[J].電力電子技術(shù),2012,(5):28-30.
[5]Ns-2.Network Simulator.http://www.isi.edu/nsnam/ns.