專利名稱:基于負載多變的路由器間隔式擁塞控制方法
技術領域:
本發明屬于路由器隊列管理和擁塞的控制方法,特別是一種基于負載多變的路由器間隔式擁塞控制方法,屬于基于負載多變的路由器間隔式擁塞控制方法的創新技術。
背景技術:
以TCP/IP協議為基礎的Internet自從90年代以來,已經成為全球性的信息基礎設施。網絡中眾多的數據流在路由器交匯,給路由器帶來了極大的負擔。雖然隨著科技發展,網絡設備的能力不斷增強,網絡帶寬持續增長,但硬件的發展總是滯后于需求的增長,當某時刻對網絡任一資源的需求超過了該資源的可用總量時,就會在該資源處形成瓶頸,致使排隊分組無法及時發送,緩存隊列溢出,分組被丟棄,網絡發生擁塞。擁塞是一種持續過載的網絡狀態,此時用戶對網絡資源(鏈路帶寬、存儲空間和處理器能力等)的需求超過了其固有容量,從而直接導致分組丟失率提高,端到端傳輸時延增加和吞吐量等服務質量(QOS)性能指標下降,嚴重影響帶寬、緩存等網絡資源的利用率,甚至可能使整個網絡系統發生崩潰。此外硬件的瓶頸效應和參數(如激活的連接數、回路往返時間)的動態變化,還會使得擁塞愈發嚴重、復雜。解決網絡擁塞問題早已成為Internet發展中必須要面臨的問題。
TCP擁塞控制方法運行在源端也叫源方法,它根據反饋信息,調整源端發送速率,從80年代至今,TCP擁塞控制方法已經經歷了TCPTacho、TCP Reno、Sack、New Reno和Vegas等多個版本的增強與改進。隨著網絡規模的日趨龐大,結構的日趨復雜,僅僅依靠端到端的TCP擁塞控制是不夠的,網絡的中間節點——路由器,也應該參與到資源的管理和控制中來。IP擁塞控制方法運行在網絡節點,也叫鏈路方法,它能檢測擁塞的發生,采取一定的措施緩減擁塞,并產生擁塞反饋信息使源端采取措施避免擁塞惡化。AQM作為IP擁塞控制方法,是當前擁塞控制的研究熱點;在AQM機制下的路由器能早期探測可能發生的擁塞,對分組進行標記或丟棄,源端接受到標記或丟棄分組的反饋后,在隊列溢出和丟包前降低發送速率,從而避免了隊列溢出。AQM能維持較小的隊列長度,降低丟包率,提高隊列利用率,在高吞吐量和低時延間取得平衡。
隨機早期檢測作為AQM的唯一候選方法,并得到路由器產商,RED在路由器上監控數據包的平均排隊長度,發現擁塞迫近后,隨機地主動標記或丟棄數據包來告知源端降低發送速率。與常用的尾丟棄相比,RED方法引入了2個新機制1)滿隊列前用概率機制提前丟棄分組,解決滿隊列問題;2)用平均隊長而不是即時隊長來調整丟棄概率,盡可能吸收短暫突發流,避免全局同步。RED的有效性已經過了一系列實踐的驗證,但它沒有完全解決全局同步,而且當瞬時隊長大于平均隊長時,緩存耗盡后就會工作在尾丟棄模式。
RED的三大缺陷為1)對參數過于敏感,難以找到適應任何環境的參數,參數的微小變化會給主體性能帶來很大影響。而且當網絡環境變化時,原本適應的參數可能不再適應新環境,帶來不利影響;2)存在延時抖動。比如重載時,容易產生延時抖動,導致網絡吞吐量急劇下降;3)無區分服務,無法提供有效的、完全的公平性保障。針對RED的缺陷,已經出現了很多改進方法。WRED通過為不同的業務等級設定不同的最大丟棄概率pmax來提供不同的服務質量。FRED采用“每活躍流記賬”(per-active-flow accounting)的方式來管理隊列,將網絡中的流大致分為非適應流、脆弱流和強壯流,只向有較多報文在緩沖區排隊的流發出擁塞通知,所以FRED可以起到公平分配帶寬,保護脆弱流的作用。但這些方法都是啟發式的缺乏系統性。基于經典控制理論的控制模型的引入解決了隊列管理方法缺乏系統性的問題,比如V Misra等人在2000年基于流體理論提出的網絡模型,該模型用忽略了TCP最大窗口限制、往返時延(RTT)差異等一系列環節后,恰當描述了TCP傳輸流的行為,為研究人員廣為采用。在這個模型的基礎上,出現了對RED方法穩定性分析、PI/PID控制器、魯棒控制器等AQM新技術的研究。
發明內容
本發明的目的在于考慮上述問題而提供一種能夠適應于網絡負載時變特性、魯棒性強的基于負載多變的路由器間隔式擁塞控制方法。本發明在負載多變的網絡環境下可使系統的性能得到明顯改善數據包的丟棄率降低,網絡系統的吞吐量提高,穩定性增強。
本發明的技術方案是本發明基于負載多變的路由器間隔式擁塞控制方法,包括有如下步驟 步驟1)初始化 預設wq、pmax、minlow、minhigh、maxlow、maxlow、,令count=-1、qavg=0。
其中,wq為計算平均隊長時所用的權值; pmax為最大丟棄概率; 最小閾值為區間(minlow,minhigh),即minlow為最小閾值的下界,minhigh為最小閾值的上界; 最大閾值為區間(maxlow,maxhigh),即maxlow為最小閾值的下界,maxhigh為最小閾值的上界; count代表連續成功傳輸的分組數; qavg代表平均隊長; 步驟2)在路由器建立一個基于IRED方法的控制器; 步驟3)等待新分組的到來。當新分組到來時,如果此時隊列為空,到執行驟4);否則執行步驟5); 步驟4)計算平均隊長qavg=(1-wq)m×qavg; 并將隊列為空的起始時間q_time設為當前時間time,即q_time=time; 其中,m代表空隊列持續的時間,m=f(time-q_time); 步驟5)計算平均隊長qavg=(1-wq)qavg+wq×q; 其中,q為當前隊長。
步驟6)由qavg計算丟包率pa。如果qavg≤minlow,轉去步驟7); 如果qavg≥maxhigh,轉去步驟8);否則轉去步驟9); 步驟7)數據包入列,pa=0,count=0,轉到步驟14); 步驟8)丟棄數據包,pa=1,count=-1,轉到步驟14); 步驟9)如果maxlow≤qavg<maxhigh,轉去步驟10);如果minhigh≤qavg<maxlow,轉去步驟11);如果minlow<qavg<minhigh,轉去步驟12); 步驟10)轉到步驟13); 步驟11) ,轉到步驟13); 步驟12)轉到步驟13); 步驟13)以pa標記數據包,count++; 步驟14)轉至步驟3),重復執行步驟3)到13),直至結束。
上述最小閾值和最大閾值分別都是兩個連續的區間,,即(minlow,minhigh)和(maxlow,maxhigh);并分別可以服從于的不同概率分布;當只選取區間的邊界值時,閾值成為了兩個間隔的點,從而得到間隔式的RED或IRED的方法。上述IRED擁有五個工作區 1)完全吸收區(AAI)系統輕度擁塞或不擁塞時,工作在此區;此時,路由器緩存的利用率較低,系統的吞吐量高; 2)最小閾值區(MINI)系統輕度擁塞時,工作于該區。此時,路由器緩存的利用率較低,系統的吞吐量高;這個工作區的引入通常會使IRED比RED早丟包,但IRED在該區的丟棄率很小,增加幅度也很小。當一個TCP連接新建后常會發送大量數據包,使網絡吞吐量急劇下降,minth工作區的引入與TCP擁塞控制的慢啟動配合可降低新建立的連接產生的突發通信量對網絡性能的影響; 3)線性丟棄區(LDI)工作于該區時,系統處于擁塞適中狀態,路由器緩存的利用率和系統的吞吐量之間能大致平衡; 4)最大閾值區(MAXI)系統重度擁塞時,工作于該區。此時,路由器緩存的利用率較高,系統的吞吐量低。該區的引入突破了RED中pmax的限制,使pb不必突變為1,使控制更加平穩、高效; 5)直接丟棄區(DDI)網絡完全擁塞時,工作于該區。直接丟棄進入路由器的任何數據包,路由器緩存的利用率很高,系統的吞吐量很低。
當擁塞控制策略選擇IRED時,在最小閾值區、線性丟棄區和最大閾值區,整個擁塞控制系統擁有不同的穩定裕量,其中線性丟棄區的穩定裕量最小,最小閾值區和最大閾值區的穩定裕量相對較大;在線性丟棄區,IRED用較小的穩定裕量,換來更嚴厲的控制,使系統更快地從擁塞態返回適度擁塞的最佳運行狀態;在最小閾值區和最大閾值區,源端分別工作于慢啟動和擁塞避免階段,系統的不穩定性增加,IRED正好能為控制系統提供相對較大的穩定裕量。
本發明提出了一種面向負載多變的網絡環境的路由器端間隔式RED方法,克服了現有RED方法對參數設置和網絡環境的過分敏感,將RED中的閾值從一個點改進為一個區間,得到了新的間隔式RED方法,該方法獲得了更強的魯棒性,能在負載多變的網絡環境下取得更好的控制。與RED方法相比,路由器使用該方法進行擁塞控制,系統的性能可得到明顯改善數據包的丟棄率降低,網絡系統的吞吐量提高,穩定性增強。本發明是一種性能優良,方便實用的基于負載多變的路由器間隔式擁塞控制方法。
圖1為本發明AQM控制框圖; 圖2為本發明閾值的改進設置圖; 圖3為本發明間隔式RED方法的臨時丟棄率pb與平均隊長qavg關系圖 圖4為本發明間隔式RED方法流程圖; 圖5為本發明網絡拓撲圖;
具體實施例方式 現有文獻基于流體理論給出了TCP流量控制的非線性模型 其中,各參數的物理意義為W為TCP期望窗口(單位包);q為期望隊長(包);R為往返時間(秒);C為鏈路容量(包/秒);N為負載因子,即TCP連接數;p為丟棄率。
用小信號理論在穩態工作點將該非線性模型線性化,并結合路由器上的AQM方法,結合經典控制理論,將TCP/AQM描述為反饋控制系統,如圖1所示。即AQM控制器用概率p來標記或丟棄分組,產生控制信號,終端加以響應調節自身發送窗口的大小,使隊長維持在較小值,擁塞得到有效預防和控制。系統的開環傳遞函數如圖1,描述了AQM控制器如何通過改變p(t)來影響q(t)。
(1) 其中, 在AQM方法的設計中,考慮到網絡環境的復雜多變,特別是負載的時變特性,而RED方法又極為敏感于參數設置和網絡環境的變化,所以將RED中的閾值從一個點改進為一個區間,得到了間隔式RED(Interval RED,IRED)方法。IRED控制器的設計如下 步驟1)在RED方法的框架下,如圖2,分別將RED的最小閾值minth和最大閾值maxth設置為一個區間,并且最小閾值和最大閾值區間中的點都服從某種的概率分布。當選取閾值區間的上下邊界點(服從均勻分布)時,可得到方法的最簡形式。
步驟2)對最小閾值和最大閾值進行組合,得到四組閾值組合(minlow,maxlow)、(minlow,maxhigh)、(minhigh,maxlow)、(minhigh,maxhigh)。
這四組閾值可分別對應四個RED控制器REDll、REDlh、REDhl和REDhh,其丟包率分別是pll、plh、phl和phh。
步驟3)這四個丟棄率的平均值就是本發明中方法的臨時丟棄率 圖3給出了pb與qavg的關系圖,顯然在不同的工作區,控制器對平均隊長qavg變化的響應是不一樣的 ●AAI代表完全吸收區,此時,qavg∈(0,minlow),到達路由器的數據包全部都可以進入隊列,即pb=0; ●MINI代表最小閾值區,此時,qavg∈(minlow,minhigh),最小閾值在此區間內取值,到達數據包的丟棄率為 ●LDI代表線性丟棄區,此時,qavg∈(minhigh,maxlow),到達數據包的丟棄率為 ●MAXI代表最大閾值區,此時,qavg∈(maxlow,maxhigh),最大閾值在此區間內取值,到達數據包的丟棄率為 ●DDI代表直接丟棄區,此時,qavg∈(maxhigh,∞),到達的數據包全部丟棄,即pb=1。
步驟4)最終丟棄率pa 步驟5)AQM控制器 其中,(δ是采樣頻率); 系統穩定性定理若k和Lired的取值滿足 其中 當滿足N>N-,Ro<R+時,TCP/IRED擁塞控制系統閉環穩定,(0<η≤0.1)。
在IRED控制器的設計中,閾值區間的邊界值minlow、maxlow、minhigh和maxhigh的設置,不僅決定的IRED的控制性能和擁塞控制系統的穩定性,還決定了系統在不同工作區間時的穩定裕量。
●MINI相角裕量,
幅值裕量, ●LDI
●MAXI
圖4為IRED方法的流程圖。
IRED方法可在NS-2仿真平臺上實現,并可進行性能測試。NS-2仿真平臺(Network Simulator-2)是近年來對網絡協議進行評估與研究的一個主流的模擬工具,作為一個開源軟件,它得到了極為廣泛的使用,成為通信和計算機網絡領域的協議研究的主流平臺之一。它采用開放體系結構,有大量的協議庫支持,廣泛應用于局域網、廣域網、蜂窩網和衛星網絡模擬。
本發明中的仿真使用2.31版的NS-2平臺,操作系統為UBUNTU7.04。采用n個FTP業務源和m個HTTP業務源來模擬實際應用中網絡負載情況見圖5所示,所有業務源與路由器r1之間的鏈路容量為1Mbps,延時為160ms到240ms之間的隨機值;瓶頸鏈路位于路由器r1和r 2之間,鏈路容量為15Mbps,延時40ms;除路由器r1與r2之間的鏈接以外,其余鏈接均使用DropTail;路由器r1上的緩存為800個包(分組缺省大小為500bytes),各個業務源的分組設置為500bytes。
以下一系列的實驗說明IRED的參數設置對負載量的敏感度較低。實驗的前提為預設4種方法的參數,只改變負載量,觀察4種方法在固定參數設置的情況下對不同負載量的敏感度。
●IRED的參數設置為minlow=150,minhigh=155,maxlow=700,maxhigh=705,pmax=0.1。
●RED的參數設置為minth=150,maxth=700,pmax=0.1,wq=0.00000133。
●GENTLE_RED的參數設置為minth=150,maxth=700,pmax=0.1,wq=0.00000133。
實驗一 設置20個FTP業務源和60個HTTP業務源,所有業務源從0s開始工作,實驗時間為200s。路由器r1和r2之間的鏈路采用IRED、RED和GENTLE_RED 3種方法,分別進行3次實驗。
并且每增加10個FTP業務源和30個HTTP業務源就進行一次4種方法的比較實驗,一直到把負載量增加到180個FTP業務源和540個HTTP業務源。可以得到如下表1組實驗數據。
表1不同負載情況下IRED、RED和GENTLE_RED的性能指標
可見IRED方法的性能總體上要優于RED和GENTLE_RED,特別是在負載量較輕和重載的時候占有明顯的優勢。從平均值的結果,進一步驗證了使用IRED方法能夠適應大部分的負載情況,獲得較好的性能;IRED對負載的敏感度比RED和GENTLE_RED低。在大部分的負載環境下,IRED仍然能夠獲得較好的性能。
實驗二 拓撲結構仍舊采用實驗一的結構,設置60個FTP業務流和180個HTTP業務流,且它們之間的帶寬為15Mbp,路由器r1和路由器r2之間的瓶頸帶寬在5Mbps到30Mbps間,每隔2.5Mbps做一組實驗,共11組。實驗時間均為300秒。最后得出11組實驗數據的平均值,如下表2。
表2不同瓶頸帶寬下的IRED、RED和GENTLE_RED的性能指標
可見,在大多數的帶寬情況中,RED和GENTLE_RED方法只適應了少部分的帶寬情況,而IRED方法則適應了大部分情況,由實驗數據平均值可進一步驗證,IRED對不同帶寬的敏感度要比RED和GENTLE_RED要低。
實驗三 拓撲結構仍舊采用實驗一的結構,為了比較IRED和RED和GENTLE_RED方法在負載量發生突變的時候的敏感度,可用以下一系列的實驗。拓撲結構依舊使用如圖1所示的結構,瓶頸帶寬為15Mbps實驗時間設定為300秒,假設在120秒的時候,FTP業務源的負載量突然發生變化,而HTTP業務源的負載量不變,選取4種突變的情況進行實驗,得出如下4組實驗數據,并計算出4組數據的平均值,詳細數據如下表3。
表3負載量突變的情況下IRED、RED和GENTLE_RED的性能指標
可見,在負載突變情況中,IRED比RED和GENTLE_RED有明顯優勢。根據4組突變實驗數據的平均值,可進一步證明,在大多數的負載量突變的情況中,IRED方法比RED和GENTLE_RED方法的性能更佳。
權利要求
1、一種基于負載多變的路由器間隔式擁塞控制方法,其特征在于包括有如下步驟
步驟1)初始化
預設wq、pmax、minlow、minhigh、maxlow、maxhigh、count、qavg;且count=-1、qavg=0。
其中,wq為計算平均隊長時所用的權值;
pmax為最大丟棄概率;
最小閾值為區間(min1ow,minhigh),即minlow為最小閾值的下界,minhigh為最小閾值的上界;
最大閾值為區間(maxlow,maxhigh),即maxlow為最小閾值的下界,maxhigh為最小閾值的上界;
count代表連續成功傳輸的分組數;
qavg代表平均隊長;
步驟2)在路由器建立一個基于IRED方法的控制器;
步驟3)等待新分組的到來。當新分組到來時,如果此時隊列為空,到執行驟4);否則執行步驟5);
步驟4)計算平均隊長qavg=(1-wq)m×qavg;
并將隊列為空的起始時間q_time設為當前時間time,即q_time=time;
其中,m代表空隊列持續的時間,m=f(time-q_time);
步驟5)計算平均隊長qavgqavg=(1-wq)qavg+wq×q;
其中,q為當前隊長。
步驟6)由qavg計算丟包率pa。如果qavg≤minlow,轉去步驟7);如果qavg≥maxhigh,轉去步驟8);否則轉去步驟9);
步驟7)數據包入列,pa=0,count=0,轉到步驟14);
步驟8)丟棄數據包,pa=1,count=-1,轉到步驟14);
步驟9)如果maxlow≤qavg<maxhigh,轉去步驟10);如果minhigh≤qavg<maxlow,轉去步驟11);如果minlow<qavg<minhigh,轉去步驟12);
步驟10)轉到步驟13);
其中,pb為臨時丟棄概率。
步驟11)
轉到
步驟13);
步驟12)轉到步驟13);
步驟13)以pa標記數據包,count++;
步驟14)轉至步驟3),重復執行步驟3)到13),直至結束。
2、根據權利要求1所述的基于負載多變的路由器間隔式擁塞控制方法,其特征在于上述最小閾值和最大閾值分別都是兩個連續的區間,即(minlow,minhigh)和(maxlow,maxhigh);并分別可以服從于的不同概率分布;當只選取區間的邊界值時,閾值成為了兩個間隔的點,從而得到間隔式的RED即IRED的方法。
3、根據權利要求1所述的基于負載多變的路由器間隔式擁塞控制方法,其特征在于上述IRED擁有五個工作區
1)完全吸收區(AAI)系統輕度擁塞或不擁塞時,工作在此區;此時,路由器緩存的利用率較低,系統的吞吐量高;
2)最小閾值區(MI NI)系統輕度擁塞時,工作于該區。此時,路由器緩存的利用率較低,系統的吞吐量高;這個工作區的引入通常會使IRED比RED早丟包,但IRED在該區的丟棄率很小,增加幅度也很小。當一個TCP連接新建后常會發送大量數據包,使網絡吞吐量急劇下降,minth工作區的引入與TCP擁塞控制的慢啟動配合可降低新建立的連接產生的突發通信量對網絡性能的影響;
3)線性丟棄區(LDI)工作于該區時,系統處于擁塞適中狀態,路由器緩存的利用率和系統的吞吐量之間能大致平衡;
4)最大閾值區(MAXI)系統重度擁塞時,工作于該區。此時,路由器緩存的利用率較高,系統的吞吐量低。該區的引入突破了RED中pmax的限制,使pb不必突變為1,使控制更加平穩、高效;
5)直接丟棄區(DDI)網絡完全擁塞時,工作于該區。直接丟棄進入路由器的任何數據包,路由器緩存的利用率很高,系統的吞吐量很低。
4、根據權利要求1所述的基于負載多變的路由器間隔式擁塞控制方法,其特征在于當擁塞控制策略選擇IRED時,在最小閾值區、線性丟棄區和最大閾值區,整個擁塞控制系統擁有不同的穩定裕量,其中線性丟棄區的穩定裕量最小,最小閾值區和最大閾值區的穩定裕量相對較大;在線性丟棄區,IRED用較小的穩定裕量,換來更嚴厲的控制,使系統更快地從擁塞態返回適度擁塞的最佳運行狀態;在最小閾值區和最大閾值區,源端分別工作于慢啟動和擁塞避免階段,系統的不穩定性增加,IRED正好能為控制系統提供相對較大的穩定裕量。
全文摘要
本發明是一種基于負載多變的路由器間隔式擁塞控制方法。本發明克服了現有RED方法對參數設置和網絡環境的過分敏感,將RED中的閾值從一個點改進為一個區間,得到了新的間隔式RED方法,即IRED(Interval IRED)算法,該方法獲得了更強的魯棒性,能在負載多變的網絡環境下取得更好的控制。與RED方法相比,路由器使用該方法進行擁塞控制,系統的性能可得到明顯改善數據包的丟棄率降低,網絡系統的吞吐量提高,穩定性增強。本發明是一種性能優良,方便實用的基于負載多變的路由器間隔式擁塞控制方法。
文檔編號H04L12/56GK101286929SQ20081002843
公開日2008年10月15日 申請日期2008年5月30日 優先權日2008年5月30日
發明者治 劉, 云 章, 杰 倪, 文俊朝 申請人:廣東工業大學