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