基于無線多跳網(wǎng)絡(luò)的混合路由視頻傳輸
1 引言:
本文引用地址:http://2s4d.com/article/156930.htm無線多跳網(wǎng)絡(luò)是無線自組網(wǎng)、無線網(wǎng)狀網(wǎng)、無線傳感器網(wǎng)絡(luò)的總稱。基于無線多跳網(wǎng)絡(luò)上的視頻傳輸已得到了廣泛關(guān)注和研究,但所依賴的底層路由協(xié)議基本上是傳統(tǒng)路由協(xié)議(如AODV,DSDV 等)。近年來底層的路由協(xié)議有了新發(fā)展,文獻(xiàn)[2]首次提出一種性能更好、被稱作機(jī)會路由的協(xié)議ExOR(Extremely OpportuniSTic Routing)。
傳統(tǒng)的無線多跳網(wǎng)絡(luò)路由協(xié)議基本思路沒有脫離有線網(wǎng)絡(luò),將節(jié)點(diǎn)之間人為地規(guī)定是否存在鏈路,并根據(jù)某種路由度量準(zhǔn)則,選擇最好的路由。而機(jī)會路由協(xié)議認(rèn)為無線電波的本質(zhì)是廣播的,利用廣播性質(zhì)所帶來的增益,通過節(jié)點(diǎn)間的協(xié)作,獲得了高于傳統(tǒng)路由的帶寬。因此,從直觀上, 利用機(jī)會路由作為支持視頻傳輸的底層路由協(xié)議會取得比傳統(tǒng)路由協(xié)議更好的性能, 但是機(jī)會路由為了獲得這種增益而采取的調(diào)度機(jī)制在傳輸實(shí)時視頻時會產(chǎn)生丟失部分I 幀的嚴(yán)重問題, 使得視頻傳輸?shù)姆€(wěn)定性受到嚴(yán)重影響。
針對此問題, 筆者提出一種綜合利用傳統(tǒng)路由和機(jī)會路由進(jìn)行實(shí)時視頻傳輸?shù)目鐚釉O(shè)計(jì)方法。
2 機(jī)會路由簡介:
傳統(tǒng)的無線多跳網(wǎng)絡(luò)的路由協(xié)議和有線網(wǎng)絡(luò)中的路由協(xié)議十分相似, 即在源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間尋找1 組點(diǎn)形成1 條最優(yōu)的路由,然后各節(jié)點(diǎn)依次轉(zhuǎn)發(fā)數(shù)據(jù)。路由上各個節(jié)點(diǎn)之間被人為地認(rèn)為有1 條鏈路存在, 因此并未有效利用無線電波的廣播特性。
圖1 機(jī)會路由原理演示圖
如圖1,假設(shè)源節(jié)點(diǎn)到4 個中間節(jié)點(diǎn)n1,n2,n3,n4 的鏈路質(zhì)量較差, 且都是數(shù)據(jù)包發(fā)送1 次只有25%的概率可以收到, 節(jié)點(diǎn)n1,n2,n3,n4 到目的節(jié)點(diǎn)的鏈路質(zhì)量很好,且都是數(shù)據(jù)包發(fā)送1 次100%的概率可以收到。那么,按照傳統(tǒng)的路由機(jī)制, 會從4 個中間節(jié)點(diǎn)選擇1 個最優(yōu)的作為中繼節(jié)點(diǎn),由于4 個中間節(jié)點(diǎn)鏈路狀況一樣,則會隨機(jī)選1 個節(jié)點(diǎn)作為路由轉(zhuǎn)發(fā)節(jié)點(diǎn),比如n2。這樣,數(shù)據(jù)包會沿著源節(jié)點(diǎn)、n2、目的節(jié)點(diǎn)這條路由進(jìn)行轉(zhuǎn)發(fā),那么1個數(shù)據(jù)包通過這條路由平均傳送次數(shù)期望ETX(ExpectedTransmissiON Count)為1/0.25+1=5。而由于無線電波的廣播特性, 源節(jié)點(diǎn)向n2 發(fā)送數(shù)據(jù)時,n1,n3,n4 也會收到一部分包。有些數(shù)據(jù)包n2 沒有收到,但n1 可能恰好收到。有些數(shù)據(jù)包n1,n2 都沒有收到,但n3 可能收到了??梢圆槐卮_定哪個節(jié)點(diǎn)是中繼節(jié)點(diǎn), 只要目的節(jié)點(diǎn)有數(shù)據(jù)包沒有收到,那么任何1 個中繼節(jié)點(diǎn)只要有這個包,都可以傳給目的節(jié)點(diǎn)。假設(shè)n1,n2,n3,n4 收到包的概率相互獨(dú)立, 經(jīng)過計(jì)算1 個數(shù)據(jù)包的平均傳送次數(shù)期望為1/(1-(1-0.25)4)+1≈2.5。這里,充分利用無線電波的廣播特性可以獲得1 倍的增益。隨著網(wǎng)絡(luò)拓?fù)涞牟煌?,ExOR 所獲得的增益也不同,文獻(xiàn)[2]實(shí)驗(yàn)結(jié)果表明ExOR 端到端的平均吞吐量是傳統(tǒng)路由協(xié)議(AODV)的3 倍。
雖然ExOR 帶寬利用效率和端到端吞吐量優(yōu)勢明顯,但也存在不足之處,尤其在支持實(shí)時視頻傳輸時顯得更加明顯,主要體現(xiàn)在以下3 點(diǎn):
1) ExOR 路由算法內(nèi)在地利用了無線通信的隨機(jī)性,因此其傳輸調(diào)度算法對每個數(shù)據(jù)包都是公平的,而視頻傳輸?shù)奶攸c(diǎn)就是不同數(shù)據(jù)包重要性不同, 因此兩者存在一定的矛盾。
2) ExOR 成批發(fā)送,會造成一定程度的延遲。
3) ExOR 沒有鏈路級的差錯重傳機(jī)制,最后幾個數(shù)據(jù)包所需傳輸時間較長,在實(shí)時視頻傳輸中,會導(dǎo)致部分關(guān)鍵幀數(shù)據(jù)包的丟失。
3 混合路由視頻傳輸:
對于某些實(shí)時視頻傳輸, 例如視頻轉(zhuǎn)播, 有如下特點(diǎn):對實(shí)時性要求較高,系統(tǒng)可以允許一定的延時,但希望視頻盡量是連續(xù)的,抖動較小,同時在保證傳輸?shù)那闆r下視頻質(zhì)量盡量高。由于機(jī)會路由在端到端吞吐量上與傳統(tǒng)路由相比, 有著明顯的優(yōu)勢, 因此, 可以期望利用ExOR 進(jìn)行實(shí)時視頻傳輸取得比傳統(tǒng)路由更優(yōu)的性能。
在設(shè)計(jì)具體方案時,以下幾點(diǎn)是必須予以考慮:
1) 由于ExOR 需要將數(shù)據(jù)包成批發(fā)送,因此視頻的延遲將直接和數(shù)據(jù)包數(shù)量的多少相關(guān)。每批次的數(shù)據(jù)包越多,延遲越大;數(shù)據(jù)包越少,延遲越小。
2) ExOR 的性能和每批包的數(shù)量相關(guān),文獻(xiàn)[3]研究結(jié)果表明,每批包的數(shù)量越多,ExOR 的平均端到端吞吐量越高,但數(shù)量高于20 個后,數(shù)量增加對端到端吞吐量提升效果不明顯。
3) 視頻的參數(shù)選擇需要考慮到I 幀的數(shù)量,如果I幀過多,會影響壓縮效率,如果I 幀過少,會影響視頻解碼質(zhì)量。
4) 視頻播放時,I 幀的丟失是不可容忍的,因此要盡量保證播放時I 幀的數(shù)據(jù)已收到。
綜合以上幾點(diǎn),選擇1 個合適的編碼參數(shù),若每T s1 個I 幀,則將每T s 的數(shù)據(jù)作為一個批次發(fā)送。若傳輸延遲為t s,則初始延遲為(T+t) s。此后為保證視頻播放的實(shí)時性和流暢性,無論每批次在T s 內(nèi)是否傳送完畢,都應(yīng)停止當(dāng)前批次的發(fā)送,及時啟動下一批次的發(fā)送。在每批次中,視頻幀的打包應(yīng)遵循IETF 相關(guān)標(biāo)準(zhǔn)[4]規(guī)定。即每一個數(shù)據(jù)包的長度應(yīng)滿足不超過MTU (Maximum TransmissionUnit,最大傳輸單元,一般為1 500 byte)的條件,每個P 幀單獨(dú)組成1 個數(shù)據(jù)包,I 幀在每個限制長度內(nèi)組成1 個包, 不足的部分單獨(dú)組成1 個包。如果只利用ExOR 傳輸數(shù)據(jù),由于無線多跳網(wǎng)絡(luò)本身的隨機(jī)性和不穩(wěn)定性以及ExOR 最后幾個包的傳輸延遲較大, 并不一定能保證每T s 的數(shù)據(jù)都能在T s 內(nèi)傳輸完畢。這樣就會造成某些批次最后幾個數(shù)據(jù)包的丟失。而ExOR 調(diào)度機(jī)制本身決定了這最后幾個數(shù)據(jù)包是隨機(jī)的, 如果丟掉的恰好是I 幀的數(shù)據(jù)包,造成I 幀的丟失,就會導(dǎo)致這T s 的視頻無法播放, 從而造成視頻觀看的不連續(xù)性和主觀收看質(zhì)量的下降。因此,不能簡單地將ExOR 直接用于視頻傳輸,必須根據(jù)視頻傳輸?shù)奶厥庑宰鱿鄳?yīng)地調(diào)整。
視頻傳輸與一般數(shù)據(jù)傳輸所不同, 其特殊性之一就在于視頻傳輸中數(shù)據(jù)包的重要性是不同的[5]。關(guān)鍵幀I 幀是重要的,一般要盡量保證I 幀傳輸?shù)目煽啃浴R驗(yàn)? 個I 幀將影響并決定其后數(shù)個P 幀的解碼,1 個I 幀的丟失將導(dǎo)致2 個I 幀之間的視頻無法播放或視頻質(zhì)量急劇下降。而P 幀是非關(guān)鍵幀,丟失個別P 幀對視頻質(zhì)量影響不大,一般來說,P 幀只是盡量傳輸,并不進(jìn)行差錯重傳。因此,必須根據(jù)數(shù)據(jù)包重要性的不同進(jìn)行相應(yīng)處理。對于I幀,應(yīng)保證無差錯地傳輸,而對于P 幀,盡力保證一定時間內(nèi)盡量多的傳送。同時,傳統(tǒng)路由雖然傳輸速率不如機(jī)會路由, 但是傳統(tǒng)路由網(wǎng)絡(luò)結(jié)構(gòu)清晰, 并且無須成批發(fā)送,配合差錯重傳會使得某些特定數(shù)據(jù)傳輸更有保障。所以,對于實(shí)時視頻傳輸,可以利用傳統(tǒng)路由對I 幀的數(shù)據(jù)包進(jìn)行差錯重傳, 而對P 幀的數(shù)據(jù)包用機(jī)會路由進(jìn)行盡力傳輸。這樣,就同時利用了2 種路由的優(yōu)點(diǎn)根據(jù)不同數(shù)據(jù)包的性質(zhì)選擇相應(yīng)合適的路由協(xié)議進(jìn)行傳輸, 并且解決了I 幀丟失的問題。
評論