基于NS-2的無線網絡視頻QoS平臺的實現
隨著無線網絡技術的飛速發展,無線多媒體通信的業務量將遠遠超過傳統業務。視頻業務,特別是實時視頻業務將是未來無線網絡業務的主體,因此面向無線網絡的視頻QoS保障問題成為新的研究熱點。在QoS保障機制的研究過程中,由于網絡的復雜性和經濟條件的制約,網絡仿真技術非常重要。網絡仿真技術通過建立網絡設備和網絡鏈路的統計模型,并模擬網絡流量的傳輸,從而獲取網絡設計或優化所需的網絡性能數據。
在分析EvalVid 工具集的基礎上,結合NS技術,提出一種利用NS-2建立無線網絡中圖像QoS研究仿真平臺的方法。NS支持的協議廣泛,采用開放的體系結構,用戶很容易根據需求開發新的協議,因此使用NS針對具體的無線視頻業務研究網絡傳輸策略及其傳輸性能非常合適。
2 網絡視頻的QoS研究
Jirka Klaue給出統一評價視頻傳輸質量的框架和工具集一EvalVid。EvalVid具有模塊化結構,可在所用的的視頻編碼策略下,通過trace文件實現網絡之間的交互作用,很容易在任何網絡環境下使用。EvalVid評估框架如圖1所示。
(1)信源視頻信源可能是QCIF(176×144)或CIF(352×288)格式的YUV視頻信息。
(2)視頻編碼器和解碼器用來對YUV視頻進行編解碼以適應網絡的傳輸,編碼策略可采用MPEG,H.261等。
(3)視頻發送器 VS從編碼的視頻文件中產生trace文件,即視頻trace文件和發送trace文件。VS讀取視頻編碼器輸出的視頻壓縮文件,將大視頻幀分成較小的分段以在網絡環境中經UDP分組傳輸。發送trace文件記錄每個傳輸的UDP分組時間戳,分組id和分組負載大小。視頻trace文件記錄視頻文件中每個幀的信息。視頻trace文件和發送trace文件在隨后的視頻質量評估中使用。
(4)評價trace利用原始編碼視頻文件、視頻trace文件、發送trace文件和接收trace文件中記錄的分組時間戳、分組id和分組載荷大小等信息,ET產生一個幀/分組丟失、幀/分組延時抖動報告和一個重建的視頻文件。
(5)重建視頻數字視頻質量的評價通過逐幀比較實現。如果選用的編解碼器不能處理丟失的幀,則通過插入最近成功解碼的幀代替每一個丟失的幀的錯誤隱藏技術處理。
(6)主觀和客觀質量評價(PSNR、MOS)主觀質量評價直接反映人眼的感覺,是相對較為準確的圖像質量評價方法。常用的指標是基于5級質量制或5級損傷制的平均意見分(MOS分)。視頻圖像質量的客觀評價通過某些數學準則衡量,常用峰一峰信噪比(PSNR)。其定義如下:
式中,M和N是視頻幀的寬度和高度的維數;x(i,j)和x'(i,j)是原始像素和重構像素在(i,j)點的亮度或色度值。
Chih-Heng Ke等將EvalVid和NS-2結合,給出視頻流質量評估的新工具集。NS-2和EvalVid的結合通過3個連接模擬代理實現,即MyTrafficTrace,MyUDP和MyUDPSink。設計這些接口既要讀取視頻trace文件,又要產生視頻傳輸質量評估用的數據。
MyTrafficTrace代理從VS的輸出文件中提取視頻trace文件的幀類型和幀大小。此外該代理將視頻幀分割成小的分段,并在適當的時間發送這些分段至低層UDP,發送時間由用戶在模擬描述文件中設定。
MyUDP是UDP代理的延伸。此新代理允許用戶指定發送trace的輸出文件名。它記錄每個傳輸分組的時間戳,分組id和分組大小。
MyUDP代理的任務對應于在真實網絡環境中的cp-dump或win-dump工具的任務。MyUDPSink是接收代理,接收MyUDP發送的視頻幀分組,此代理也在用戶指定的文件中記錄每個接收分組的時間戳、分組id和負載大小。在此基礎上擴展,提出一種適合無線視頻傳輸的質量評價體系。
3 基于NS-2的無線網絡視頻QoS平臺實現
3.1 NS-2中的無線模塊
NS中的無線模塊最初由CMU的Monarch 工作組引入到NS。由CMU/Monarch引入的無線模塊可進行純無線網絡仿真,擴展后的無線模塊還支持無線和有線網絡聯合仿真以及移動IP。還有一些其他無線模塊可在NS-2中使用,包括Blueware,Blue2Hoc,Mobiwan,GPRS,CIMS等。無線模塊以MobileNode為基本核心,并通過一些附加特性以支持多跳Adhoc網絡和無線局域網仿真。MobileNode由基本Node增加無線和移動節點所需功能,可在OTCL中設定其各種網絡構件,如鏈路層(LL)、連接到LL上的ARP模塊、接口隊列(ifql、ifqlen)MAC層和網絡接口等。移動節點通過網絡接口連接到無線信道上。目前MobileNode支持的ad-hoc路由協議包括DSVD、DSR、TORA和AODV。
3.2 無線網絡視頻仿真的過程
由于在視頻傳輸的仿真中,需在網絡中傳輸真實的視頻碼流,兇此必須擴展并修改NS-2,添加視頻傳輸仿真過程所需的網絡元素,包括代理,即MyTrafficTrace、MyUDP和MyUDPSink。如果研究者要驗證其提出的傳輸策略,則需使用C++和OTcl對網絡元素編程,將其提出的策略加到網絡元素中,然后重新編譯NS。在完成對NS-2的擴展后,就可利用NS進行仿真。過程如下:
(1)利用選定的視頻編碼器對原始視頻編碼,并從中提取視頻分組的相關信息,編寫程序產生傳輸用的trace文件。trace文件的格式為分組序號,時間戳,分組大小>。
評論