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