趙晨圓, 葛萬成
隨著無線網絡技術的發展,多媒體視頻業務得到了空前的發展。無線網絡和視頻傳輸技術的融合是一個必然的趨勢[1]。最近提出的IEEE802.11e EDCA機制引入了傳輸優先級概念來區分不同的業務,但不是專門針對視頻傳輸來進行設計的,導致在無線網絡傳輸中視頻的QoS很難被保證,并且改進的效果很有限[2]。
基于OSI標準分層結構的通信協議已經不能滿足各種移動多媒體視頻業務的要求,因此跨層設計已經成為廣泛研究的熱點。首先使用基于場景的馬爾可夫鏈對MPEG-4的視頻數據流進行建模,分析視頻幀之間的相關性。然后利用跨層的思想,將EDCA機制和MPEG-4的視頻特性結合起來,提出了跨層動態映射算法,來保證視頻傳輸的服務質量,并給出了NS2的仿真結果,驗證了算法的有效性。
在視頻數據流建模中,使用 Bellcore提供的 Star Wars數據,作為實驗中MPEG-4視頻數據流的原始經驗視頻數據。視頻經過MPEG-4壓縮編碼后產生了三種視頻幀:I視頻幀、P視頻幀和B視頻幀。視頻幀按照順序被排列成固定的周期序列(GOP,Group of Picture)。根據MPEG-4視頻幀的相關性,提出了基于場景的馬爾可夫鏈模型[3]。首先,按照以下算法得到場景邊界。
①令n=1,初始化場景的左邊界b_left=1。
②n=n+1,從b_left到n的一段GOP子序列的變異系數Cnew(標準差和均值的比值):


其中ε值的大小限定了一個場景所能容忍的標準差。如果加入一個新的GOP,使得標準差變化過于劇烈,那么重新開始一個新的場景。
得到場景邊界之后,把GOP序列劃分成多個GOP子序列,則得到每個場景內一個GOP的平均大?。?/p>

然后把視頻數據流按照每個場景的GOPSi,再分成M個場景狀態。

得到視頻數據流的M個場景狀態后,把每個場景按照的大小分配到與之相對應的場景狀態,再統計出相鄰場景間的狀態轉移個數就可以求出場景的狀態轉移概率矩陣Pij,其中Sij代表從場景狀態i到場景狀態j的轉移個數。

如圖1所示,描述了基于場景的馬爾可夫鏈模型生成的視頻數據流的 GOP自相關曲線,它能良好地逼近原始經驗視頻數據的自相關曲線。根據以上得到的基于場景的馬爾可夫鏈模型,生成視頻傳輸仿真中所需要的視頻幀序列件。

圖1 基于場景馬爾可夫鏈的GOP自相關曲線
IEEE802.11e的EDCA機制把數據分成AC_VO (語音業務),AC_VI (視頻業務),AC_BE (盡力而為業務)和AC_BK(背景業務),分別定義為 AC[3]、AC[2]、AC[1]、AC[0](優先級由高到低)。當視頻數據為網絡中傳輸的主要數據時,只有AC[2]一直為滿負荷工作。基于EDCA信道訪問機制對視頻傳輸的局限性,提出跨層動態映射算法,將OSI模型的應用層得到的各個視頻幀的信息傳送到MAC層,如圖2所示。
根據編解碼關系,I視頻幀是最重要的視頻幀,其次是P視頻幀和B視頻幀。針對三種視頻幀分別定義了初始化映射概率p,并且pB>pP>pI。通過采用MAC層的AC[2]隊列長度來實時地判斷網絡的負荷狀況。為了達到這個目的,引入兩個參數qlow和qhigh,綜合考慮這兩個參數的算法可以用式(6)來表示:

其中pnew為新計算出的映射概率,qlow為隊列長度的最小閥值,qhigh為隊列長度的最大閥值,q(AC[2])為訪問類型AC[2]的隊列長度。pnew越大表示這個視頻幀映射到低優先級隊列的機會更大。如圖3所示,描述了跨層動態映射算法的具體實現過程。其中RN的值是由一個歸一化的函數隨機產生,它的值介于(0.0,1.0)之間。

圖2 跨層動態映射算法

圖3 跨層動態映射算法的實現流程
運用網絡仿真工具NS2對無線網絡進行建模。在仿真中從2個方向來產生trace文件:①利用上述通過基于場景的馬爾可夫鏈生成的視頻幀序列;②采用MyEvalid-NT壓縮編碼原始的MPEG-4視頻,從而得到trace文件,在接收方可以直接觀察所得到的 MPEG-4格式視頻來分析傳輸的效果[4]。在仿真中使用2種流量場景來分析視頻的傳輸性能:場景一,只有視頻數據流從視頻發送方傳送到接收方;場景二,使用除視頻數據流外的其它業務來生成網絡負荷。
選取場景一,并且采用基于場景的馬爾可夫鏈模型生成的trace文件作為視頻數據業務的輸入。
如圖4所示在EDCA機制下使用MAC層隊列的情況。從中可以看出,只有AC[2]被占用了,并且在某個時刻超過了最大的排隊長度,出現了數據包丟失的情況,而其它的隊列均為空閑狀態。如圖 5所示在跨層動態映射算法下使用MAC層隊列的情況。在圖中可以看到,相對于EDCA機制,這種算法能夠很好地利用AC[2]、AC[1]、AC[0]這三個隊列,從而提高數據的傳輸速率,是比較理想的跨層映射算法。

圖4 EDCA機制下的隊列排隊長度

圖5 跨層動態映射算法下的隊列排隊長度
定義可解碼視頻幀比例Q=可解碼視頻幀個數/總共傳輸的視頻幀個數。在Q參數仿真中,采用基于場景的馬爾可夫鏈模型生成的trace文件,選取場景一。分析表1,可以發現跨層動態映射算法的Q值明顯大于EDCA機制Q值。

表1 場景一仿真得到的Q值
發送方采用MyEvalid-NT生成的trace文件,并且采用場景二。
圖6(b)是采用EDCA機制進行傳輸后得到的視頻圖像,圖6(a)是原始的未經過傳輸前的視頻圖像。從圖中可以看出,傳輸后的視頻圖像質量極其惡劣。如圖7(b)是采用跨層動態映射算法進行傳輸后得到的視頻圖像,圖7(a)是原始的未經過傳輸前的視頻圖像。從圖中可以發現,整個視頻的效果能很好地逼近原始視頻的效果。因此,跨層動態映射算法能夠取得比原始的EDCA傳輸機制更好的視頻傳輸效果。

圖6 大數據流量場景下的EDCA機制視頻傳輸效果

圖7 大數據流量場景下的跨層動態映射算法視頻傳輸效果
結合基于場景的馬爾可夫鏈對MPEG-4視頻數據進行建模,并且提出了針對MPEG-4視頻傳輸的跨層動態映射算法,根據視頻幀的重要性和網絡的負荷情況,把應用層的視頻幀信息傳送到MAC層,同時動態地分配到最合適的隊列中去。然后,采用網絡仿真工具NS2對無線網絡進行建模。從排隊長度,可解碼視頻幀比例以及真實MPEG-4視頻數據傳輸的效果,對EDCA接入機制以及跨層動態映射算法進行比較。仿真結果表明,使用跨層動態映射算法能有效地改善MPEG-4視頻傳輸后的QoS。
[1]張學毅,于惠鈞,梁建華.UWB無線網絡QoS跨層聯合優化的研究[J].通信技術,2008,41(06):17-19.
[2]STOCKHAMMER T, LIEBL G. On practical Crosslayer Aspects in 3GPP Video Service[M].USA: ACM, 2007.
[3]FANG Zhijun. Kalaman Optimized Model for MPEG-4 VBR Sources[J].IEEE Consumer Electriniss, 2004, 50(02):688-690.
[4]YU Yu, HENG E C. MyEvalvid-NT, a Simulation Tool-Set for Video Transmission and Quality Evaluation[J]. IEEE, 2006(10):1-4.