趙晨圓, 葛萬成
隨著無線網(wǎng)絡(luò)技術(shù)的發(fā)展,多媒體視頻業(yè)務(wù)得到了空前的發(fā)展。無線網(wǎng)絡(luò)和視頻傳輸技術(shù)的融合是一個必然的趨勢[1]。最近提出的IEEE802.11e EDCA機制引入了傳輸優(yōu)先級概念來區(qū)分不同的業(yè)務(wù),但不是專門針對視頻傳輸來進行設(shè)計的,導(dǎo)致在無線網(wǎng)絡(luò)傳輸中視頻的QoS很難被保證,并且改進的效果很有限[2]。
基于OSI標(biāo)準(zhǔn)分層結(jié)構(gòu)的通信協(xié)議已經(jīng)不能滿足各種移動多媒體視頻業(yè)務(wù)的要求,因此跨層設(shè)計已經(jīng)成為廣泛研究的熱點。首先使用基于場景的馬爾可夫鏈對MPEG-4的視頻數(shù)據(jù)流進行建模,分析視頻幀之間的相關(guān)性。然后利用跨層的思想,將EDCA機制和MPEG-4的視頻特性結(jié)合起來,提出了跨層動態(tài)映射算法,來保證視頻傳輸?shù)姆?wù)質(zhì)量,并給出了NS2的仿真結(jié)果,驗證了算法的有效性。
在視頻數(shù)據(jù)流建模中,使用 Bellcore提供的 Star Wars數(shù)據(jù),作為實驗中MPEG-4視頻數(shù)據(jù)流的原始經(jīng)驗視頻數(shù)據(jù)。視頻經(jīng)過MPEG-4壓縮編碼后產(chǎn)生了三種視頻幀:I視頻幀、P視頻幀和B視頻幀。視頻幀按照順序被排列成固定的周期序列(GOP,Group of Picture)。根據(jù)MPEG-4視頻幀的相關(guān)性,提出了基于場景的馬爾可夫鏈模型[3]。首先,按照以下算法得到場景邊界。
①令n=1,初始化場景的左邊界b_left=1。
②n=n+1,從b_left到n的一段GOP子序列的變異系數(shù)Cnew(標(biāo)準(zhǔn)差和均值的比值):
其中ε值的大小限定了一個場景所能容忍的標(biāo)準(zhǔn)差。如果加入一個新的GOP,使得標(biāo)準(zhǔn)差變化過于劇烈,那么重新開始一個新的場景。
得到場景邊界之后,把GOP序列劃分成多個GOP子序列,則得到每個場景內(nèi)一個GOP的平均大?。?/p>
然后把視頻數(shù)據(jù)流按照每個場景的GOPSi,再分成M個場景狀態(tài)。
得到視頻數(shù)據(jù)流的M個場景狀態(tài)后,把每個場景按照的大小分配到與之相對應(yīng)的場景狀態(tài),再統(tǒng)計出相鄰場景間的狀態(tài)轉(zhuǎn)移個數(shù)就可以求出場景的狀態(tài)轉(zhuǎn)移概率矩陣Pij,其中Sij代表從場景狀態(tài)i到場景狀態(tài)j的轉(zhuǎn)移個數(shù)。
如圖1所示,描述了基于場景的馬爾可夫鏈模型生成的視頻數(shù)據(jù)流的 GOP自相關(guān)曲線,它能良好地逼近原始經(jīng)驗視頻數(shù)據(jù)的自相關(guān)曲線。根據(jù)以上得到的基于場景的馬爾可夫鏈模型,生成視頻傳輸仿真中所需要的視頻幀序列件。
圖1 基于場景馬爾可夫鏈的GOP自相關(guān)曲線
IEEE802.11e的EDCA機制把數(shù)據(jù)分成AC_VO (語音業(yè)務(wù)),AC_VI (視頻業(yè)務(wù)),AC_BE (盡力而為業(yè)務(wù))和AC_BK(背景業(yè)務(wù)),分別定義為 AC[3]、AC[2]、AC[1]、AC[0](優(yōu)先級由高到低)。當(dāng)視頻數(shù)據(jù)為網(wǎng)絡(luò)中傳輸?shù)闹饕獢?shù)據(jù)時,只有AC[2]一直為滿負(fù)荷工作?;贓DCA信道訪問機制對視頻傳輸?shù)木窒扌裕岢隹鐚觿討B(tài)映射算法,將OSI模型的應(yīng)用層得到的各個視頻幀的信息傳送到MAC層,如圖2所示。
根據(jù)編解碼關(guān)系,I視頻幀是最重要的視頻幀,其次是P視頻幀和B視頻幀。針對三種視頻幀分別定義了初始化映射概率p,并且pB>pP>pI。通過采用MAC層的AC[2]隊列長度來實時地判斷網(wǎng)絡(luò)的負(fù)荷狀況。為了達到這個目的,引入兩個參數(shù)qlow和qhigh,綜合考慮這兩個參數(shù)的算法可以用式(6)來表示:
其中pnew為新計算出的映射概率,qlow為隊列長度的最小閥值,qhigh為隊列長度的最大閥值,q(AC[2])為訪問類型AC[2]的隊列長度。pnew越大表示這個視頻幀映射到低優(yōu)先級隊列的機會更大。如圖3所示,描述了跨層動態(tài)映射算法的具體實現(xiàn)過程。其中RN的值是由一個歸一化的函數(shù)隨機產(chǎn)生,它的值介于(0.0,1.0)之間。
圖2 跨層動態(tài)映射算法
圖3 跨層動態(tài)映射算法的實現(xiàn)流程
運用網(wǎng)絡(luò)仿真工具NS2對無線網(wǎng)絡(luò)進行建模。在仿真中從2個方向來產(chǎn)生trace文件:①利用上述通過基于場景的馬爾可夫鏈生成的視頻幀序列;②采用MyEvalid-NT壓縮編碼原始的MPEG-4視頻,從而得到trace文件,在接收方可以直接觀察所得到的 MPEG-4格式視頻來分析傳輸?shù)男Ч鸞4]。在仿真中使用2種流量場景來分析視頻的傳輸性能:場景一,只有視頻數(shù)據(jù)流從視頻發(fā)送方傳送到接收方;場景二,使用除視頻數(shù)據(jù)流外的其它業(yè)務(wù)來生成網(wǎng)絡(luò)負(fù)荷。
選取場景一,并且采用基于場景的馬爾可夫鏈模型生成的trace文件作為視頻數(shù)據(jù)業(yè)務(wù)的輸入。
如圖4所示在EDCA機制下使用MAC層隊列的情況。從中可以看出,只有AC[2]被占用了,并且在某個時刻超過了最大的排隊長度,出現(xiàn)了數(shù)據(jù)包丟失的情況,而其它的隊列均為空閑狀態(tài)。如圖 5所示在跨層動態(tài)映射算法下使用MAC層隊列的情況。在圖中可以看到,相對于EDCA機制,這種算法能夠很好地利用AC[2]、AC[1]、AC[0]這三個隊列,從而提高數(shù)據(jù)的傳輸速率,是比較理想的跨層映射算法。
圖4 EDCA機制下的隊列排隊長度
圖5 跨層動態(tài)映射算法下的隊列排隊長度
定義可解碼視頻幀比例Q=可解碼視頻幀個數(shù)/總共傳輸?shù)囊曨l幀個數(shù)。在Q參數(shù)仿真中,采用基于場景的馬爾可夫鏈模型生成的trace文件,選取場景一。分析表1,可以發(fā)現(xiàn)跨層動態(tài)映射算法的Q值明顯大于EDCA機制Q值。
表1 場景一仿真得到的Q值
發(fā)送方采用MyEvalid-NT生成的trace文件,并且采用場景二。
圖6(b)是采用EDCA機制進行傳輸后得到的視頻圖像,圖6(a)是原始的未經(jīng)過傳輸前的視頻圖像。從圖中可以看出,傳輸后的視頻圖像質(zhì)量極其惡劣。如圖7(b)是采用跨層動態(tài)映射算法進行傳輸后得到的視頻圖像,圖7(a)是原始的未經(jīng)過傳輸前的視頻圖像。從圖中可以發(fā)現(xiàn),整個視頻的效果能很好地逼近原始視頻的效果。因此,跨層動態(tài)映射算法能夠取得比原始的EDCA傳輸機制更好的視頻傳輸效果。
圖6 大數(shù)據(jù)流量場景下的EDCA機制視頻傳輸效果
圖7 大數(shù)據(jù)流量場景下的跨層動態(tài)映射算法視頻傳輸效果
結(jié)合基于場景的馬爾可夫鏈對MPEG-4視頻數(shù)據(jù)進行建模,并且提出了針對MPEG-4視頻傳輸?shù)目鐚觿討B(tài)映射算法,根據(jù)視頻幀的重要性和網(wǎng)絡(luò)的負(fù)荷情況,把應(yīng)用層的視頻幀信息傳送到MAC層,同時動態(tài)地分配到最合適的隊列中去。然后,采用網(wǎng)絡(luò)仿真工具NS2對無線網(wǎng)絡(luò)進行建模。從排隊長度,可解碼視頻幀比例以及真實MPEG-4視頻數(shù)據(jù)傳輸?shù)男Ч?,對EDCA接入機制以及跨層動態(tài)映射算法進行比較。仿真結(jié)果表明,使用跨層動態(tài)映射算法能有效地改善MPEG-4視頻傳輸后的QoS。
[1]張學(xué)毅,于惠鈞,梁建華.UWB無線網(wǎng)絡(luò)QoS跨層聯(lián)合優(yōu)化的研究[J].通信技術(shù),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.