羅康1,張勝利1,丁凡1,2
?。?. 深圳大學(xué) 信息工程學(xué)院,廣東 深圳 518000;2.韶關(guān)學(xué)院 物理與機(jī)電工程學(xué)院,廣東 韶關(guān) 512005)
摘要:在物理層網(wǎng)絡(luò)編碼系統(tǒng)中,鏈路層差錯(cuò)控制采用基于終端節(jié)點(diǎn)的自動(dòng)重傳請(qǐng)求(TO-ARQ)方案。文中針對(duì)TO-ARQ系統(tǒng)存在傳輸速率慢、延時(shí)較大的缺點(diǎn),在TO-ARQ的基礎(chǔ)上,提出了一種基于終端和中繼的自動(dòng)重傳請(qǐng)求(TR-ARQ)方案。該方案在中繼接收的物理層網(wǎng)絡(luò)編碼數(shù)據(jù)包受損時(shí),中繼將立即發(fā)送反饋信息請(qǐng)求終端節(jié)點(diǎn)重傳相應(yīng)的數(shù)據(jù)分組,從而降低數(shù)據(jù)傳輸?shù)姆答佈訒r(shí)。實(shí)驗(yàn)結(jié)果表明,相比TO-ARQ,TR-ARQ方案改善了系統(tǒng)的延時(shí),并顯著提高了系統(tǒng)的傳輸速率。
關(guān)鍵詞:物理層網(wǎng)路編碼;鏈路層差錯(cuò)控制;TO-ARQ方案;TR-ARQ方案
中圖分類(lèi)號(hào):TN925文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.05.022
引用格式:羅康,張勝利,丁凡.物理層網(wǎng)絡(luò)編碼系統(tǒng)中ARQ的設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2017,36(5):72-75,79.
0引言
*基金項(xiàng)目:國(guó)家自然科學(xué)基金(61372078)網(wǎng)絡(luò)編碼[1](Network Coding, NC)的概念最早在有線網(wǎng)絡(luò)中提出,研究發(fā)現(xiàn)利用NC技術(shù)可以提高系統(tǒng)資源利用率和提升網(wǎng)絡(luò)吞吐量。2006年,Zhang等人[2]將網(wǎng)絡(luò)編碼的思想應(yīng)用到無(wú)線網(wǎng)絡(luò)中,創(chuàng)新性地提出了物理層網(wǎng)絡(luò)編碼(Physical layer Network Coding, PNC)的概念。其基本思想是中繼節(jié)點(diǎn)將同時(shí)接收到的疊加的電磁波信號(hào)映射為相應(yīng)數(shù)據(jù)比特的異或,從而有效提升網(wǎng)絡(luò)吞吐量和系統(tǒng)的傳輸效率。物理層網(wǎng)絡(luò)編碼與網(wǎng)絡(luò)編碼相比,系統(tǒng)獲得了更大的吞吐量增益,因此獲得越來(lái)越多的關(guān)注[3 4]。
雙向中繼信道作為一種典型的傳輸信道,常常應(yīng)用于物理層網(wǎng)絡(luò)編碼的研究中,其簡(jiǎn)單模型為兩個(gè)終端節(jié)點(diǎn)通過(guò)中繼節(jié)點(diǎn)交換信息。Lu Lu等人[5 6]在軟件定義無(wú)線電平臺(tái)上實(shí)現(xiàn)了雙向中繼信道的物理層網(wǎng)絡(luò)編碼系統(tǒng),為PNC的進(jìn)一步應(yīng)用奠定了堅(jiān)實(shí)基礎(chǔ)。然而,在PNC的實(shí)現(xiàn)過(guò)程中,由于信號(hào)在傳輸過(guò)程中一定會(huì)受到各種衰落和干擾的影響,為了對(duì)抗無(wú)線信道中不利因素的影響,實(shí)現(xiàn)可靠有效的數(shù)據(jù)通信,需要采用具有差錯(cuò)檢測(cè)功能的ARQ技術(shù)。在PNC系統(tǒng)中,鏈路層差錯(cuò)控制采用端到端的ARQ機(jī)制[6],即基于終端節(jié)點(diǎn)的ARQ(TOARQ),但存在傳輸速率慢、延時(shí)較大的缺點(diǎn)。本文在Lu Lu等人的研究基礎(chǔ)上,根據(jù)參與ARQ機(jī)制節(jié)點(diǎn)的不同,提出了一種基于終端節(jié)點(diǎn)和中繼的ARQ(TRARQ)方案。相比TOARQ,TRARQ在中繼接收PNC映射數(shù)據(jù)包出錯(cuò)時(shí),中繼將發(fā)送NACK信息請(qǐng)求終端節(jié)點(diǎn)重傳相應(yīng)的數(shù)據(jù)分組,從而降低數(shù)據(jù)傳輸?shù)姆答佈訒r(shí)。相比TOARQ,TR-ARQ改善了系統(tǒng)的延時(shí),提高了系統(tǒng)的傳輸速率。
1系統(tǒng)模型和ARQ方案
本文考慮的物理層網(wǎng)絡(luò)編碼系統(tǒng)模型如圖1所示。終端節(jié)點(diǎn)A、B之間希望傳輸各自的信息給對(duì)方,但節(jié)點(diǎn)A、B均不在對(duì)方的可靠通信范圍之內(nèi),所以只能通過(guò)中繼R協(xié)作進(jìn)行通信。
終端節(jié)點(diǎn)A、B之間的信息交互由兩個(gè)階段組成,多址接入(MA)階段和廣播(BC)階段。假設(shè)節(jié)點(diǎn)A、B之間交換K個(gè)分組,分別用SA[i]和SB[i]表示,其中i=0,1,...,K-1。在MA階段,節(jié)點(diǎn)A、B分別向中繼R同時(shí)發(fā)送分組SA[i]和SB[i],在BC階段,中繼R將收到的疊加的信息分組映射成網(wǎng)絡(luò)編碼的數(shù)據(jù)包SR[i]。
SR[i]=SA[i]SB[i],i=0,...,K-1(1)
當(dāng)獲得的SR[i]正確時(shí),中繼R將SR[i]廣播給節(jié)點(diǎn)A、B,因?yàn)楣?jié)點(diǎn)A、B已知各自的發(fā)送信息,可以分別利用自己的信息從成功接收到的XOR包中獲取另一個(gè)節(jié)點(diǎn)的數(shù)據(jù),實(shí)現(xiàn)信息的交互。
SB[i]=SR[i]SA[i],i=0,...,K-1(2)
SA[i]=SR[i]SB[i],i=0,...,K-1(3)
在節(jié)點(diǎn)A、B信息交互過(guò)程中,因?yàn)闊o(wú)線信道中的路徑損耗、衰落等因素的影響,系統(tǒng)在MA和BC階段都有可能出錯(cuò)。在MA階段,中繼R可能丟失XOR數(shù)據(jù)包或者獲得的XOR數(shù)據(jù)包受損。在BC階段,節(jié)點(diǎn)A、B可能丟失XOR數(shù)據(jù)包或者接收的XOR數(shù)據(jù)包受損。為了確保數(shù)據(jù)的正確傳輸,提高系統(tǒng)的傳輸效率,必須重傳出錯(cuò)的數(shù)據(jù)包。接下來(lái)首先介紹PNC系統(tǒng)中基于終端節(jié)點(diǎn)的重傳方案TO-ARQ,然后介紹改進(jìn)的基于終端節(jié)點(diǎn)和中繼的重傳方案TR-ARQ。
1.1TO-ARQ方案
TO-ARQ方案是端到端的ARQ方案,即基于終端節(jié)點(diǎn)的ARQ。在TOARQ中,中繼不參與ARQ過(guò)程,中繼只轉(zhuǎn)發(fā)正確的網(wǎng)絡(luò)編碼的數(shù)據(jù)包,并且在MA階段,如果中繼獲得的XOR數(shù)據(jù)包出錯(cuò),中繼不請(qǐng)求終端節(jié)點(diǎn)重傳相應(yīng)的數(shù)據(jù)分組。文獻(xiàn)[7 8]介紹了PNC系統(tǒng)中TO-ARQ方案,采用的是窗為N的自動(dòng)選擇重傳,ACK放在數(shù)據(jù)包的頭部。圖2介紹了在TO-ARQ中中繼獲得的XOR數(shù)據(jù)包錯(cuò)誤時(shí)的情景,其中終端節(jié)點(diǎn)數(shù)據(jù)分組的第一位數(shù)字代表分組的序號(hào),第二位數(shù)字代表ACK。假設(shè)N=8,節(jié)點(diǎn)A、B分別發(fā)送分組SA[0]、SB[0]時(shí),中繼節(jié)點(diǎn)獲得的網(wǎng)絡(luò)編碼數(shù)據(jù)包SR[0]為False。在TO-ARQ方案中,中繼節(jié)點(diǎn)不發(fā)送NACK信息請(qǐng)求終端節(jié)點(diǎn)重傳,節(jié)點(diǎn)A、B將分別丟失分組SB[0]、SA[0]。節(jié)點(diǎn)A、B在窗內(nèi)繼續(xù)發(fā)送,并將正確接收的失序分組緩存,當(dāng)發(fā)送窗的長(zhǎng)度等于8時(shí),重發(fā)分組SA[0]、SB[0]。節(jié)點(diǎn)A、B按序接收到丟失的分組SB[0]、SA[0]后,將緩存的數(shù)據(jù)一起按序交付給上層應(yīng)用,然后發(fā)送ACK=8。當(dāng)節(jié)點(diǎn)A、B收到ACK后,采用累積確認(rèn)的方式,更新發(fā)送窗口為[8,15]。
1.2TR-ARQ方案
TR-ARQ是基于終端節(jié)點(diǎn)和中繼的重傳方案,中繼和終端節(jié)點(diǎn)都參與ARQ過(guò)程,采用的是窗為N的自動(dòng)選擇重傳。在TOARQ方案中,中繼獲得的XOR數(shù)據(jù)包出錯(cuò)時(shí),中繼不請(qǐng)求終端節(jié)點(diǎn)重發(fā)使XOR數(shù)據(jù)包出錯(cuò)的分組。在TRARQ方案中,中繼發(fā)送NACK信息請(qǐng)求終端節(jié)點(diǎn)重傳相應(yīng)的分組。圖3介紹了在TR-ARQ中中繼獲得的XOR數(shù)據(jù)包錯(cuò)誤時(shí)的情景,假設(shè)N=8,節(jié)點(diǎn)A、B分別發(fā)送SA[0]、SB[0]時(shí),中繼獲得的SR[0]為False。在TR-ARQ中,中繼R發(fā)送NACK請(qǐng)求節(jié)點(diǎn)A、B分別重傳SA[0]、SB[0]。節(jié)點(diǎn)A、B接收的失序分組SB[1]、SA[1]將被緩存直到丟失的分組SB[0]、SA[0]被收到為止,這時(shí)才將分組0、1按序交付給上層應(yīng)用,然后發(fā)送ACK=2。當(dāng)節(jié)點(diǎn)A、B收到ACK=2后,采用累積確認(rèn)的方式,更新發(fā)送窗口為[2,9],重復(fù)接收的分組SA[1]、SB[1]忽略。接下來(lái)按序接收的分組直接交付給上層。定義節(jié)點(diǎn)的相對(duì)平均速率為按序接收分組的平均速率與接收分組的平均速率的比值,這個(gè)比值越大,按序接收的數(shù)據(jù)分組的比例越大,往上層應(yīng)用交付數(shù)據(jù)越快,系統(tǒng)延越較小。對(duì)比TR-ARQ和TO-ARQ,很顯然,TR-ARQ方案的反饋延時(shí)較小,相對(duì)平均速率更大。
2基于TR-ARQ的PNC系統(tǒng)設(shè)計(jì)
基于TR-ARQ的雙向中繼PNC 系統(tǒng)架構(gòu)如圖4。終圖4PNC系統(tǒng)架構(gòu)端節(jié)點(diǎn)TCP/IP層上運(yùn)行著實(shí)際的應(yīng)用,并且TCP/IP層和邏輯鏈路控制(LLC)層、媒體訪問(wèn)控制(MAC)層、物理(PHY)層交互。中繼沒(méi)有應(yīng)用,因此只有MAC層和PHY層。
在PNC系統(tǒng)中,MAC層協(xié)調(diào)終端節(jié)點(diǎn)和中繼的傳輸,LLC層提供可靠的數(shù)據(jù)通信。為了支持實(shí)際應(yīng)用,實(shí)現(xiàn)兩終端節(jié)點(diǎn)通過(guò)中繼交換信息,終端節(jié)點(diǎn)應(yīng)用層數(shù)據(jù)通過(guò)TCP套接字與LLC層通信,并在ARQ控制下發(fā)送數(shù)據(jù)。為了驗(yàn)證TR-ARQ的可行性和可靠性,PNC系統(tǒng)LLC層差錯(cuò)控制采用TR-ARQ方案。
PNC的實(shí)現(xiàn)是以O(shè)FDM為基礎(chǔ)的。在多址接入階段,中繼節(jié)點(diǎn)同時(shí)接收兩個(gè)信源節(jié)點(diǎn)到達(dá)的OFDM 信號(hào),中繼節(jié)點(diǎn)根據(jù)接收的和信號(hào)中的導(dǎo)頻信息進(jìn)行信道估計(jì),然后對(duì)信號(hào)進(jìn)行均衡、檢測(cè)、映射及OFDM 調(diào)制,在廣播階段將處理后的和信號(hào)同時(shí)發(fā)給兩個(gè)信源節(jié)點(diǎn)。整個(gè)系統(tǒng)的工作流程如下:
(1)中繼節(jié)點(diǎn)首先發(fā)送一個(gè)IEEE 802.11a/g標(biāo)準(zhǔn)格式的信標(biāo)Beacon觸發(fā)終端節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù)。
(2)終端節(jié)點(diǎn)接收到Beacon后,以一定時(shí)間間隔將帶有時(shí)間戳的M個(gè)數(shù)據(jù)分組發(fā)送出去。終端節(jié)點(diǎn)在MAC層協(xié)議控制下保證數(shù)據(jù)同時(shí)發(fā)送。
(3)中繼節(jié)點(diǎn)接收到兩個(gè)終端節(jié)點(diǎn)同時(shí)到達(dá)的分組后,進(jìn)行PNC映射,將數(shù)據(jù)映射成 x1 x2、x1 jx2、5QAM形式,然后直接發(fā)送出去。如果PNC映射的數(shù)據(jù)包經(jīng)校驗(yàn)有錯(cuò),中繼將發(fā)送NACK信息請(qǐng)求終端節(jié)點(diǎn)重傳相應(yīng)的數(shù)據(jù)分組。
(4)終端節(jié)點(diǎn)根據(jù)信道系數(shù)之間的關(guān)系確定接收到的是哪種編碼形式(x1 x2、x1 jx2、5QAM),然后結(jié)合自身數(shù)據(jù)解碼出對(duì)方節(jié)點(diǎn)的信息。如果接收到NACK,終端節(jié)點(diǎn)重發(fā)相應(yīng)的數(shù)據(jù)分組。
3實(shí)驗(yàn)驗(yàn)證分析
為了驗(yàn)證TR-ARQ的可行性和可靠性,在實(shí)驗(yàn)室部署三節(jié)點(diǎn)網(wǎng)絡(luò)的雙向中繼PNC實(shí)驗(yàn)系統(tǒng),實(shí)現(xiàn)節(jié)點(diǎn)A、B通過(guò)中繼R互傳圖片數(shù)據(jù)文件,如圖5所示。
本文的雙向中繼PNC測(cè)試系統(tǒng)是在Linux 12.04 LTS 桌面版系統(tǒng)上通過(guò)USRP/GNU Radio軟件定義無(wú)線電(SDR)平臺(tái)實(shí)現(xiàn),采用3臺(tái)計(jì)算機(jī)分別連接3臺(tái)USRP N210,來(lái)搭建一個(gè)三節(jié)點(diǎn)中繼通信系統(tǒng)。USRP N210使用千兆以太網(wǎng)線和計(jì)算機(jī)連接。USRP的子板是RFX2400雙工子板/2.4 GHz頻段,主要負(fù)責(zé)數(shù)據(jù)采集和數(shù)字上下變頻,信號(hào)處理的功能由PC來(lái)完成。在圖5中,上行鏈路和下行鏈路的天線分別位于垂直和水平兩個(gè)不同平面,以盡可能避免同一USRP不同鏈路之間天線的干擾。
為了對(duì)比分析TR-ARQ與TO-ARQ的優(yōu)缺點(diǎn),在PNC實(shí)驗(yàn)系統(tǒng)中分別采用TR-ARQ和TO-ARQ重傳方案。圖6和圖7是在相同傳輸條件下分別采用TO-ARQ和TR-ARQ的PNC系統(tǒng)節(jié)點(diǎn)A的應(yīng)用層,用來(lái)顯示接收節(jié)點(diǎn)B的圖片信息。圖6中顯示在343.53 s時(shí)接收數(shù)據(jù)的平均速率為241.77 kb/s,圖7中顯示在343.97 s時(shí)接收數(shù)據(jù)的平均速率為274.11 kb/s。圖8是在相同傳輸條件下PNC系統(tǒng)分別采用TO-ARQ和TR-ARQ,節(jié)點(diǎn)A應(yīng)用層接收數(shù)據(jù)的平均速率隨接收數(shù)據(jù)包數(shù)的變化情況。從圖6、圖7和圖8可以看出,相比TO-ARQ,TR-ARQ系統(tǒng)的傳輸速率有
明顯的提高。節(jié)點(diǎn)B也有類(lèi)似的結(jié)果。
圖9所示為在中繼接收2 000個(gè)PNC映射數(shù)據(jù)包時(shí)節(jié)點(diǎn)A接收數(shù)據(jù)的相對(duì)平均速率隨中繼誤包率的變化情況。從圖9中看出,相比TO-ARQ,采用TR-ARQ方案的PNC系統(tǒng)相對(duì)平均速率更快,相應(yīng)的系統(tǒng)延時(shí)較小,并且在中繼誤包率相對(duì)較大時(shí),TRARQ的PNC系統(tǒng)的相對(duì)平均速率相比TO-ARQ提高較大,相應(yīng)降低系統(tǒng)延時(shí)更加明顯。節(jié)點(diǎn)B也有類(lèi)似結(jié)果。
4結(jié)論
本文在TO-ARQ方案的基礎(chǔ)上提出了一種基于終端節(jié)點(diǎn)和中繼的重傳方案TR-ARQ。從理論上分析了這兩種方案的特點(diǎn),并通過(guò)實(shí)驗(yàn)比較分析了兩種不同重傳方案的PNC系統(tǒng)的性能。實(shí)驗(yàn)結(jié)果表明,TR-ARQ方案是可行的,其能夠提供可靠的數(shù)據(jù)通信;并且相比TO-ARQ,TR-ARQ方案降低了系統(tǒng)的延時(shí),改善了系統(tǒng)的傳輸速率。實(shí)驗(yàn)中還發(fā)現(xiàn),在中繼誤包率較大時(shí),TR-ARQ改善系統(tǒng)延時(shí)更加明顯。
參考文獻(xiàn)
?。?] AHLGWEDE R, ROBERT S R, YEUNG R W. Network information flow[J]. IEEE Transactions on Information Theory, 2000, 46(4): 1204-1216.
?。?] ZHANG S L, LIEW S C, LAM P P. Hot topic: physical layer network coding[C]. In ACM MOBICOM, 2006: 358-365.
?。?] POPOVSKI P, YOMO H.Physical network coding two way wireless relay channels[C]. In IEEE International Conference on Communications, Glasgow, 2007: 707- 712.
[4] BOBAK N, MICHAEL G. Reliable physical layer network coding [J]. Proceedings of the IEEE, 2011, 99(3): 438-460.
?。?] LU L, WANG T T, LIEW S C, et al. Implementation of physical layer network coding[C]. In IEEE International Conference on Communications, 2012:4734-4740.
[6] LU L, YOU L, YANG Q, et al. Real time implementation of physical layer network coding[C]. In ACM SRIF, 2013:4734-4740.
?。?] YOU L Z, LIEW S C, LU L. Reliable physical layer network coding supporting real applications[J]. IEEE Transactions on Mobile Computing, 2016,16(99):1 16.
?。?] HE J H, LIEW S C. ARQ for physical layer network coding[J]. IEEE Transactions on Mobile Computing,2015, 15(7): 1614-1631.