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