摘 要: 首先對業務進行分類,不同的業務對網絡不同的要求使其具有不同的QoS參數約束。然后研究并提出了基于智能業務識別的QoS路由模型和路由結構,根據動態配置的安全/QoS策略,在業務識別的基礎上,標志數據包,根據DiffServ代碼點DSCP值選擇合適的路由算法。并針對帶寬-時延-時延抖動-丟包率限制路由提出了一種改進的啟發式路由算法,將丟包率轉化為可加性條件,并把帶寬限制作為剪枝條件,最后通過實驗證明了其可行性。
關鍵詞: 業務分類;QoS參數;路由模型;路由結構;路由算法
隨著人們對網絡應用的多樣化需求的增長,特別是對數據、語音、視頻的網絡多媒體應用的需求急劇的增長,Internet中盡力而為傳輸模式已無法滿足各種多媒體應用和用戶對網絡傳輸質量的要求。盡力發送服務不區分業務種類,只是將網絡資源公平地分配給各類業務,這種機制無法保證網絡層傳輸的參數,而丟失率、帶寬、時延等對于應用業務是至關重要的。因此,以提高網絡資源利用效率、為用戶提供高質量服務作為目標的QoS研究是當前Internet領域的重要研究課題。
基于業務識別的QoS路由模型根據不同的安全/QoS路由策略劃分不同的業務類,并給各業務類數據包標志DSCP(Diffserv Code Points)值,實現策略可配置的可信路由,達到區分服務的目的。
1 業務分類和QoS參數約束
服務質量QoS(Quality of Service)在RFC2386中的定義為:網絡在傳輸流數據時必須滿足的一系列服務需求。這里,流數據指的是從源地址到目的地址以一定的服務質量進行傳輸的數據流。不同的業務對網絡的性能要求也不盡相同,這種要求可以用一種統一的QoS參數來表示,包括:可靠性、時延、時延抖動、丟包率、吞吐量等。
各種業務經過網絡時,不同的業務對網絡的要求是不同的,不同的業務級別對指標要求也不一樣。為了保證用戶業務在網絡中的性能,將業務劃分為不同的等級,如表1所示。
2 數據包的業務類別標志
路由器在精確識別和分類數據包的業務類型之后,對它進行標注處理,確保網絡上的交換機或路由器等網絡設備可以對該應用數據包按優先級進行路由選擇。根據制定的QoS策略所對應的業務類別和相應的優先等級,參照RFC2474[1]和RFC2475[2]中的DS字段,設定6位區分服務編碼點域,標志相應的DSCP值,DS字段結構如圖1所示。當前路由器和相應的后繼路由器就可根據設定的DSCP值和可信路由策略之間的對應關系作相應的策略路由處理。
3 基于智能業務識別的QoS路由模型
基于業務識別的QoS路由模型如圖2所示。整個系統分為3個模塊:智能業務識別與流量控制、數據包標志和基于業務識別的QoS路由。首先,按照網絡的實際需求制定安全/QoS策略,基于業務識別的QoS路由模型根據不同的QoS路由策略劃分不同的業務類,不同的業務類具有不同的路由度量,如帶寬、時延、丟包率等,并給各業務類數據包標志DSCP值,根據不同的DSCP值或路由度量參數選擇合適的路由算法,實現策略可配置的QoS路由,達到區分服務的目的[6]。
總體上說,基于智能業務識別的QoS路由模型根據不同的QoS路由策略劃分不同的業務類[4],并給各業務類數據包標志DSCP值,根據DSCP值選擇路由。其簡化的邏輯如圖3所示。
如圖2所示,業務流經過DSCP分類器,根據DSCP值被分成主動隊列1,2,…,n,每個隊列都有各自的隊列標識指針,該指針指向該隊列的具體路由表,根據路由表轉發數據包。路由結構如圖4所示。
4 帶寬-時延-時延抖動-丟包率限制路由問題
如表1所示,在各種業務中對QoS的要求有所不同,實際上,在QoS路由選擇中,要對所有的QoS參數進行優化是不太可能的,本文在進行QoS路由的優化選擇時,以帶寬、時延、時延抖動和丟包率為主要的優化選擇。
參考文獻[3]提出了一種多可加性條件下端到端的QoS路由算法,先將包丟失率條件轉化為可加性條件,再將帶寬和費用作為剪枝條件,搜索出合適的路徑。本文對參考文獻[5]提出的算法進行了改進:首先,調整了剪枝的條件,不考慮費用條件;其次,對滿足條件的路徑按照時延進行升序排序。包丟失率轉換為可加性條件的轉換過程如下:
4.1 算法描述
該算法中最重要的數據結構是為搜索建立一個堆棧,用此堆棧保存已經搜索過的路徑相關信息,假設源節點為s,堆棧為Q,棧首元素為q0。
改進的算法描述如下:
步驟1:變量初始化,給結構體q0賦初值;
步驟2:用改進的Dijkstra算法,求出節點到目的節點的最小值,如最小時延、最小時延抖動和最小丟包率;
步驟3:將棧首q0壓入堆棧stack;
步驟4:當棧非空時,若鄰節點的性能滿足QoS要求,則將該節點記入QoS路徑中;
步驟5:對所有滿足條件的鄰節點,按時延進行升序排列;
步驟6:輸出結果。
4.2 模擬驗證
用Visual C++在Win32環境下編程實現上述算法,并對如圖5所示的網絡模型進行模擬。運行結果如下:
(1)QoS路由請求1:源節點為1、目的節點為4、帶寬約束Bp=75、時延約束Dp=30、時延抖動約束DJp=10、丟包率約束-ln(1-PLP)=0.000 510。
結果:最佳路徑:1→2→4,各個實際代價:band=90、delay=13、jitter=6、lost_rate=0.000 402。
(2)QoS路由請求2:源節點為2、目的節點為3、帶寬約束Bp=85、時延約束Dp=35、時延抖動約束DJp=18、丟包率約束。
結果:最佳路徑:2→4→5→3,各個實際代價:band=90、delay=27、jitter=10、lost_rate=0.000 441。
由上述結果可知,本算法得到的解可以滿足QoS請求的所有路徑中時延最短的路徑。
本文根據QoS要求,把通信應用分為兩個種類:實時應用和非實時數據。非實時數據是指現在網絡中的大部分應用,要求盡力傳送,一般只對丟包率有要求;實時應用對網絡的性能要求比較高,其QoS要求包括時延、時延抖動、丟包率和帶寬。基于智能業務識別的QoS路由根據各業務數據包標志DSCP值選擇合適的路由算法,并提出了相應的路由結構,實現了策略可配置的QoS路由,同時提出了一種改進的啟發式路由算法,并給出了驗證范例,證明了該算法的可行性。
參考文獻
[1] NICHOLS K, BLAKER F. Definition of differentiated services field(DS fileld) in the IPv4 and IPv6 headers, http://www. ietf. org/rfc/rfc2474. txt, 2010.
[2] BLAKE S, BLAKE D, CARLSON M, et al. An architecture for differentiated services. http://www. ietf. org/rfc/rfc2475. txt. 2010.
[3] 賀細平,朱幸輝,張歷卓.啟發式QoS路由選擇算法的實現與仿真[J].計算機工程與設計,2007,28(9):2030-2033.
[4] 李君,張順頤,李翠蓮,等.基于智能業務識別的可信路由研究[J].電信科學,2009(4):45-51.
[5] 翁南釤,蔡德鈞.Internet業務分類及應用要求[J].電子技術,1998(8):7-8.
[6] 肖建華,王建新,陳松喬,等.多可加性條件下的端點到端點QoS路由算法[J].中南工業大學學報,2001,32(5):528-531.