李成福,盧選民,張輝棟,楊 杰
(西北工業大學 電子信息學院,陜西 西安 710129)
基于USRP的網絡編碼視頻傳輸研究與設計
李成福,盧選民,張輝棟,楊 杰
(西北工業大學 電子信息學院,陜西 西安 710129)
物理層網絡編碼理論及其應用是當前通信網絡領域研究的熱點,但是真實場景下的實驗平臺建設還很少見。文通過USRP+PC軟件無線電平臺在無線雙向中繼網絡場景下,實現了物理層網絡編碼視頻傳輸的功能。仿真結果表明, 應用網絡編碼的視頻傳輸和傳統的方式相比,可以有效地提高視頻的傳輸質量和效率。
網絡編碼;無線雙向中繼網絡;軟件無線電;通用軟件無線電外設
網絡編碼是一種融合了路由和編碼的信息交換技術,它的核心思想是在網絡中的各個節點上對各條信道上收到的信息進行線性或者非線性的處理,然后轉發給下游節點,中間節點扮演著編碼器或信號處理器的角色。大量理論研究證明,網絡編碼已成為提高網絡吞吐量、魯棒性、負載均衡和安全性等的有效方法。
雖然網絡編碼可以顯著提高通信網絡單位時間內數據吞吐量并且有效降低網絡負載,但是目前傳統的硬件網絡基礎設施并不支持這種算法,所以當前更多地僅局限于理論研究,一些核心關鍵技術在實際系統中并沒有得到有效地驗證,工程化推進不足[1]。因此,工程上實現網絡編碼的仿真驗證平臺是一個亟需解決的問題。
近幾年來,隨著通用硬件處理性能的不斷提升,軟件無線電的解決方案和原型平臺也不斷涌現,真正將軟件無線電由理論引入工程實踐是GNU Radio推出的軟件無線電通信外設平臺(USRP)解決方案,該方案基于FPGA和DSP 等可編程硬件,實時性較好且重配置能力得到了很大的提高。因此,文中研究在USRP平臺上實現無線雙向中繼網絡編碼算法,并驗證了該網絡環境下視頻傳輸的性能。
本系統基于GNU Radio的USRP軟件無線電平臺搭建無線雙向中繼傳輸系統,并在該系統中實現基于TDMA方式的網絡編碼。系統傳輸模型如圖1所示。

圖1 基于USRP的網絡傳輸模型Fig. 1 Network transmission model based on USRP
GNU Radio由Eric Blossom開發,用計算機軟件定義了無線電磁波的發送和接收方式,從而搭建起無線通信系統[2-3]。因此,現在高性能的無線電設備中所遇到的數字調制問題將變成軟件問題。GNU Radio的編程基于Python腳本語言和C++的混合方式。C++被用于編寫各種信號處理模塊。Python 被用來編寫連接各個block 成為完整的信號處理流程的腳本graph。
一套USRP由一塊母板和最多四塊子板構成,主板的主要功能是中頻采樣和中頻信號到基帶信號之間的互相轉換[4]。子板則負責射頻信號的接收發送以及到中頻信號的轉換。USRP從本質上講,充當了一個無線電通訊系統的數字基帶和中頻部分。在該系統中,USRP完成模擬信號到數字中頻信號的轉換,其余的信號處理過程均將在GNU Radio中完成。
1.2.1 母 板
USRP母板的主要功能是將處于中頻頻段的模擬信號通過ADC變換為數字信號,并將得到的數字中頻數據通過USB接口傳遞給位于計算機中的軟件處理模塊。
1.2.2 子 板
子板是用來裝載RF接收接口或者調諧器和射頻發射機的。每個子板插槽可以訪問4個高速AD/DA 轉換器其中的2個(DAC輸出用于發送, ADC輸入用于接收),這使得每個使用時(不是正交)采樣的子板有2個獨立的射頻部分,和2個天線(整個系統一共有4個)。如果使用復正交采樣,每個子板支持一個單一的射頻部分,整個系統一共2個。通常,我們可以看到每個子板有兩個SMA連接器。通常會使用它們連接輸入或輸出信號。USRP母板上沒有提供抗混疊或重建濾波器,這樣可以在子板頻率規劃時獲得最大的靈活性。
文中設計的系統平臺中,物理層由發射機,接收機和載波偵聽3部分構成,完成由信息比特到基帶波形之間的轉換,并通過能量檢測判斷當前信道是否空閑。MAC層完成對數據打包并加入CRC校驗等功能,物理層對MAC層的數據包加上包頭信息后進行調制等數據處理[5]并發送給 USRP。物理層收發框圖如圖2所示。

圖2 數據發送流程Fig. 2 Data transmission process
在Mod-pkt中,先經過Send-Pkt,完成對數據進行MAC層打包的過程,對數據插入接入碼,進行CRC校驗,加入白噪聲等處理后放入消息隊列,進過調制之后,送到USRP并發送出去。在調制器之前都是以消息隊列的形式,通過Message Queue與MAC層連接起來。而調制后輸出的數據是流圖形式,這種連接方式,使得異步不定長的MAC數據包跟和與系統時鐘“同步的”物理層連接起來。如圖3所示。
接收端從USRP接收過來信號后,經過信道濾波器和功率檢測器,當接收到的信號的功率大于一定的閾值時,判定接收到的信號是有效信號,并把信號傳給包接收機,進行相應的解調和檢錯等,數據輸出是消息隊列的形式,開啟的多線程Watcher-Pkt負責把消息傳回給上面的 MAC層或者應用層。對數據進行MAC打包的過程較為簡單,

圖3 數據接收流程Fig. 3 Data reception process
首先對數據包進行CRC校驗,校驗位長度為4字節。數據部分、CRC 校驗比特和尾比特(0x55)都被白化處理以使數據具有隨機均勻分布。最后,加上一個 4 字節的包頭。包頭包含兩個信息:白化參數 4 比特和數據包長度 12 比特。包頭采用了重復發送的方法,以增加可靠性。在不定長的Burst前添加一個定長的Preamble(16bit),依靠該 Preamble完成時間同步和頻率同步,加上64比特的Access Code,以便接收端完成數據解幀。到此,一個完整的MAC 數據包就包裝完成,如圖4所示。

圖4 幀結構與數據處理Fig. 4 Frame structure and data processing
如圖5所示,采用網絡編碼技術的傳輸方案使用3個時隙完成一次傳輸。在時隙1,節點A將自己的信息發送給中繼節點R,時隙2,節點B發送自己的信息給中繼R,時隙3,中繼檢點對前兩個時隙接收并解碼存儲的信號進行異或操作之后按照節點A和B的編碼方式發送出去。

圖5 基于TDMA的NC傳輸方案Fig. 5 NC transmission schme based on TDMA
1)節點A在時隙1向中繼R發送數據,節點B在時隙2向中繼R發送數據,中繼節點R在時隙3向節點A、B發送數據[6],如此循環。
2)中繼節點R對接收到的節點A和節點B的數據進行解調解碼,并進行異或操作,如果數據包的長度不匹配,測將短的數據包做補零操作之后再異或。
3)由于USRP自身的特點,在流圖中設置發送一定時間,但是實際中數據通過網卡發送給USRP并最終發送出去需要的時間大于該時隙長度,所以設置了一定的保護帶寬。
由于傳輸過程中,3個節點之間的時間同步方法是將3臺機器同步到互聯網時間,精度較差,所以在實驗中每個時隙設置的保護帶寬很寬,每個時隙設置一半的時間作為有效傳輸時間,使用1Mbps的傳輸速率時,節點 A和節點 B交換4 M 字節大小的文件時,通過計算,不使用NC編碼處理時,一個周期占用4個時隙,而在這 4個時隙中,有效時隙相當于1個時隙,而這 1個時隙中還要去掉保護時隙所占用的時間,因此傳輸速率大約為128 Kbps,需要的傳輸時間為 256 s。如果采用NC編碼處理時,一個周期需要3個時隙,其他參數類似于不采用NC編碼處理的傳輸方案,因此,通過計算可得傳輸4M字節文件需要的時間為192 s。網絡編碼視頻傳輸性能對比如表1所示。

表1 NC視頻傳輸性能對比Tab.1 Performance contrast of NC video transmission
在上述的雙向中繼傳輸系統中,使用TDMA方式傳輸一段視頻,通過比較加入網絡編碼和不加入網絡編碼的視頻傳輸效果,即節點A和節點B分別通過中繼轉發一段視頻給對方,并實時播放對方發過來的視頻,對傳輸視頻的質量做一個定性的直觀對比,如圖6所示,傳統的傳輸方式下,實時視頻的傳輸會較不連貫,但是加入網絡編碼之后,視頻的質量相對較好,如圖7所示。

圖6 未使用網絡編碼算法的視頻傳輸Fig. 6 Video transmission without network coding algorithm
實驗結果表明,與不采用網絡編碼技術的傳統傳輸方案相比,該方案對系統的吞吐量增益可以達到25%。通過傳輸并實時播放相同的一段視頻,網絡編碼方案中視頻播放更加流暢,質量較好,由此驗證了網絡編碼在提升系統吞吐量方面有較大的優勢。

圖7 使用網絡編碼算法的視頻傳輸Fig. 7 Video transmission with network coding algorithm
文中提出了一種在USRP平臺上通過網絡編碼算法[8]實現視頻傳輸的方案,并通過實驗驗證了采用網絡編碼算法后可以有效地提高視頻的傳輸質量和效率。
[1] 段洪亮.基于軟件無線電的網絡編碼仿真平臺研究與實現[D].西安:西北工業大學,2013.
[2] 姜宇柏,游思晴.軟件無線電原理與工程應用[M]. 北京:機械工業出版社, 2007.
[3]曹瀚文,王文博. GNU Radio:開放的軟件無線電平臺[J].電信快報, 2007.4:31-34.
CAO Han-wen,WANG Wen-bo.GNU Radio: Open software radio platform[J].Telecommunications Information.2007.(4):31-34.
[4]黃嘉崴,鐘曉峰,王京.基于GNU Radio和USRP的路測儀設計[J].通信技術, 2011,44(4):158-160.
HUANG Jia-wei,ZHONG Xiao-feng,WANG Jing.A GSM 900M road tester design with USRP and GNU Radio[J]. Communications Technology, 2011,44(4):158-160.
[5] 丁宇貞.基于軟件無線電的網絡編碼實現與性能分析 [D].北京:北京郵電大學. 2013.
[6] Yuzhen Ding,Guoyou Li. Multiple-Access Relay Channel with Direct Network Coding[C]//. IEEE,2012 IEEE 14th International Conference on CommunicationTechnolo gy,2012:1191-1195
[7] 趙明峰.基于網絡編碼的無線協作通信系統研究[D].成都:電子科技大學, 2011.
[8] 陳海勇,朱詩兵,李長青.網絡編碼構造算法研究[J].現代電子技術,2011(19):11-14.
CHEN Hai-yong,ZHU Shi-bing,LI Chang-qing.Research of network coding construction algorithm [J].Modern Electronics Technique,2011(19):11-14.
Network coding video transmission research and design based on USRP
LI Cheng-fu, LU Xuan-min, ZHANG Hui-dong, YANG Jie
(School of Electronics and Information, Northwestern Polytechnical University, Xi’an, 710129,China)
Theories on Physical-layer Network Coding and its application are a hotspot in current research.However,the real situations of experimental platform construction is still very rare.This paper realized the function of the physical layer network coding video transmission by using the USRP + PC software radio platform in wireless two-way relay network scenario.According to the simulation result, application of network coding of video transmission compared with the traditional way, can effectively improve the quality of video transmission and efficiency.
physical layer network coding; wireless cooperative relay network; software Defined radio; USRP
TN91
A
1674-6236(2014)03-0056-03
2013–06–18 稿件編號:201306109
2011年西北工業大學基礎研究基金(GBKY1007)
李成福(1984—),男,青海平安人,碩士研究生。研究方向:網絡編碼、下一代網絡。