胡留軍 許進(jìn)
中圖分類號(hào):TN929.11 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1009-6868 (2015) 05-0056-004
摘要:將機(jī)會(huì)調(diào)度模式引入嵌套碼體系,通過(guò)各個(gè)收發(fā)節(jié)點(diǎn)與中繼節(jié)點(diǎn)的信道狀況自適應(yīng)調(diào)整嵌套碼的碼速率,可以增加信道狀況好的鏈路傳輸?shù)臄?shù)據(jù)量,提升無(wú)線網(wǎng)絡(luò)的整體吞吐量。仿真結(jié)果表明,相比傳統(tǒng)非機(jī)會(huì)調(diào)度嵌套碼而言,機(jī)會(huì)調(diào)度嵌套碼能夠有效提升網(wǎng)絡(luò)吞吐量和誤比特性能。
關(guān)鍵詞:中繼系統(tǒng);嵌套碼;機(jī)會(huì)調(diào)度;吞吐量;誤比特率
Abstract: This paper introduces the concept of opportunistic scheduling in a nested coding system. In this scheme, adaptive rate nested codes are used according to channel conditions in order to increase the transmission load of the link while maintaining a good channel condition. In this way, network capacity is no longer constrained by the worst link, and the overall throughput of wireless networks is increased. Simulation shows that compared to traditional non-opportunistic scheduling nested coding, opportunistic scheduling nested coding increases throughput and reliability of single relay multicast relay networks.
Key words: relay system; nested codes; opportunistic scheduling; throughout; bit error rate
當(dāng)前無(wú)線網(wǎng)絡(luò)系統(tǒng)正經(jīng)歷對(duì)系統(tǒng)容量的需求提升及網(wǎng)絡(luò)密集化的過(guò)程[1]。網(wǎng)絡(luò)編碼因能夠采用較少的鏈路獲取較大的網(wǎng)絡(luò)容量而被廣泛關(guān)注[2-3]。在傳統(tǒng)網(wǎng)絡(luò)編碼中,網(wǎng)絡(luò)節(jié)點(diǎn)需要預(yù)知其他節(jié)點(diǎn)的邊信息,然而在實(shí)際情況下,邊信息往往很難獲取[4]得到。
針對(duì)邊信息獲取難的問(wèn)題,L.Xiao等將卷積碼與網(wǎng)絡(luò)編碼相結(jié)合,提出采用嵌套碼的補(bǔ)償方法來(lái)解決沒(méi)有邊信息的情況下的網(wǎng)絡(luò)編解碼問(wèn)題[5]。因此,我們可以認(rèn)為嵌套碼可以進(jìn)一步提高未來(lái)網(wǎng)絡(luò)編碼投入到實(shí)際應(yīng)用的可行性。
在現(xiàn)有嵌套碼體系下,全網(wǎng)中的所有鏈路采用相同的碼速率。然而,在無(wú)線通信網(wǎng)絡(luò)場(chǎng)景下,不同鏈路所受信道衰落各不相同。為了保證質(zhì)量最差的鏈路具有可接受的可靠性,全網(wǎng)所有鏈路都需要采用較低的傳輸速率。在這種情況下,無(wú)線網(wǎng)絡(luò)的容量瓶頸是通信質(zhì)量最差的無(wú)線鏈路,網(wǎng)絡(luò)中信道質(zhì)量好的無(wú)線鏈路得不到充分利用。
針對(duì)以上問(wèn)題,文章將機(jī)會(huì)調(diào)度機(jī)制[5]引入嵌套碼體系。在典型無(wú)線組播單中繼網(wǎng)絡(luò)架構(gòu)下,基于信道狀態(tài)信息,通過(guò)動(dòng)態(tài)選擇參與網(wǎng)絡(luò)編碼的信源節(jié)點(diǎn),提升整個(gè)網(wǎng)絡(luò)的容量。此外,針對(duì)無(wú)線信道的時(shí)變特性,文章還提出了在機(jī)會(huì)調(diào)度網(wǎng)絡(luò)編碼體系中引入可變碼率的刪余卷積碼(RCPC)[6]來(lái)動(dòng)態(tài)適配無(wú)線鏈路的信道質(zhì)量,從而進(jìn)一步提升整個(gè)無(wú)線網(wǎng)絡(luò)的容量和可靠性。
1 網(wǎng)絡(luò)編碼系統(tǒng)模型
文章提出的方法主要針對(duì)典型組播單中繼系統(tǒng)。系統(tǒng)由一個(gè)中繼站和多個(gè)收發(fā)節(jié)點(diǎn)構(gòu)成。各個(gè)收發(fā)節(jié)點(diǎn)既是信源節(jié)點(diǎn)也是目的節(jié)點(diǎn)。即各個(gè)收發(fā)節(jié)點(diǎn)都要通過(guò)中繼將自己的信息發(fā)送給所有其他收發(fā)節(jié)點(diǎn),同時(shí)也接收所有其他收發(fā)節(jié)點(diǎn)發(fā)來(lái)的信息。典型的4收發(fā)節(jié)點(diǎn)組播單中繼系統(tǒng)如圖1所示[7]。
在該系統(tǒng)中采用的網(wǎng)絡(luò)編碼傳輸信息的過(guò)程如下:4個(gè)收發(fā)節(jié)點(diǎn)(A,B,C,D)將各自的信息(iA,iB,iC,iD)發(fā)送至中繼節(jié)點(diǎn)r;中繼節(jié)點(diǎn)將收到的部分或全部信息進(jìn)行網(wǎng)絡(luò)編碼;中繼節(jié)點(diǎn)r將網(wǎng)絡(luò)編碼后的信息廣播至各收發(fā)節(jié)點(diǎn);各收發(fā)節(jié)點(diǎn)將從中繼節(jié)點(diǎn)收到的信號(hào)解碼,獲取從其他收發(fā)節(jié)點(diǎn)傳來(lái)的信息[8]。
2 機(jī)會(huì)調(diào)度與嵌套碼的原理
2.1 嵌套碼
嵌套碼將卷積碼與網(wǎng)絡(luò)編碼技術(shù)相結(jié)合,每個(gè)卷積碼的編碼矩陣相互線性獨(dú)立,再將各個(gè)卷積碼編碼進(jìn)行網(wǎng)絡(luò)編碼形成嵌套碼。嵌套碼的優(yōu)勢(shì)在于接收端僅通過(guò)嵌套碼譯碼就可以獲取組成該碼的各個(gè)源節(jié)點(diǎn)的數(shù)據(jù)信息。
本系統(tǒng)中源節(jié)點(diǎn)通過(guò)相互線性獨(dú)立的卷積碼生成器產(chǎn)生編碼數(shù)據(jù)包并發(fā)送至中繼節(jié)點(diǎn),中繼節(jié)點(diǎn)進(jìn)而對(duì)其中一部分接收信息進(jìn)行嵌套編碼[9-10],數(shù)學(xué)表達(dá)式如下:
其中,[G1,G2,...,Gs]表示相互線性獨(dú)立的生成矩陣,[i1,i2,...,is]表示源節(jié)點(diǎn)數(shù)據(jù)包,[⊕]表示異或操作。
嵌套碼的設(shè)計(jì)依據(jù)以下準(zhǔn)則:各節(jié)點(diǎn)的編碼向量相互線性獨(dú)立;合并后的嵌套碼的碼率小于1;避免使用惡性卷積碼[11]?;诟鞴?jié)點(diǎn)的編碼向量相互獨(dú)立,可以降低嵌套碼譯碼時(shí)對(duì)邊信息的依賴,若碼率大于1或者若源節(jié)點(diǎn)使用了惡性卷積碼,將導(dǎo)致卷積碼性能損失。
2.2 機(jī)會(huì)調(diào)度與RCPC碼
網(wǎng)絡(luò)模型中全部鏈路均為相互獨(dú)立的衰落信道,在μ時(shí)刻,源節(jié)點(diǎn)到中繼節(jié)點(diǎn)的瞬時(shí)信噪比(SNR)可寫為:
[γsrμ=Phsrμ2σ2sr] (2)
其中,P為發(fā)射功率,[hsr(μ)]為信道系數(shù),[σ2sr]則為高斯白噪聲的噪聲方差。
中繼節(jié)點(diǎn)將源到中繼節(jié)點(diǎn)的瞬時(shí)SNR設(shè)置為一組升序數(shù)組。rk表示升序數(shù)組中第k個(gè)瞬時(shí)SNR,Nd表示目的節(jié)點(diǎn)的總數(shù),共有Nt = Nd - k + 1個(gè)目的節(jié)點(diǎn)參與機(jī)會(huì)調(diào)度,k為調(diào)度等級(jí)。rk為Nt個(gè)目的節(jié)點(diǎn)與中繼節(jié)點(diǎn)的鏈路上的最小SNR。
參與機(jī)會(huì)調(diào)度的信源節(jié)點(diǎn)至中繼節(jié)點(diǎn)的每單位帶寬下的系統(tǒng)容量定義[7]:
[Ckinst=Ntlog21+rk] (3)
式(3)中,當(dāng)Nt逐漸增大時(shí),rk的取值逐漸減小,因此可以通過(guò)選取合適的k值,使得式(3)表示的系統(tǒng)容量最大。
中繼節(jié)點(diǎn)對(duì)調(diào)度到的節(jié)點(diǎn)進(jìn)行異或操作,SOS表示參與機(jī)會(huì)調(diào)度的源節(jié)點(diǎn)的集合。因此,中繼節(jié)點(diǎn)進(jìn)行嵌套編碼的表達(dá)式如下:
為了提高嵌套碼的碼率,中繼節(jié)點(diǎn)采用RCPC編碼。例如可采用碼率1/3,約束長(zhǎng)度為3的最佳距離譜(ODS)碼作為母碼。
2.3 譯碼算法
目的節(jié)點(diǎn)獲取的軟信息可以表示為:
[τ=cnested-os+e] (5)
其中e表示噪聲。進(jìn)一步,以在目的節(jié)點(diǎn)d處為例,[τ]可表示為:
[τ=⊕l?kdilGl⊕l'?kdil'Gl'+e] (6)
kd表示目的節(jié)點(diǎn)d的已知先驗(yàn)信息的節(jié)點(diǎn)的索引,[⊕l'?kdil'Gl']表示目的節(jié)點(diǎn)已獲取的信息。通過(guò)以上集合可推導(dǎo)表達(dá)式如下:
[τd=τ⊕l'∈kdil'Gl'=⊕l?kdilGl+e] (7)
其中,
[⊕l?kdilGl+e] (8)
表示目的節(jié)點(diǎn)d尚未獲知的信息。為了從未知信息中獲得目的信息,嵌套碼通過(guò)各行向量相互線性獨(dú)立的編碼矩陣[[G1,G2,...,Gj,...GSe]T]從[⊕l?kdilGl+e]中獲取目標(biāo)源節(jié)點(diǎn)信息il。
2.4 編碼可達(dá)速率
文獻(xiàn)[8]分析了有、無(wú)調(diào)度機(jī)制下的系統(tǒng)可達(dá)速率:
[R=Tt.W.Is,r,d] (9)
R表示系統(tǒng)的可達(dá)速率,T表示每個(gè)時(shí)隙的時(shí)間長(zhǎng)度,t表示所有時(shí)隙的總的時(shí)長(zhǎng),W表示可用帶寬,[I(s,r,d)]表示源節(jié)點(diǎn)s到目的節(jié)點(diǎn)d的互信息。
首先,各源節(jié)點(diǎn)使用相同的傳輸時(shí)隙T。如圖2(a)所示,當(dāng)不采用機(jī)會(huì)調(diào)度時(shí),由于要兼顧鏈路條件最差的那個(gè)節(jié)點(diǎn),中繼節(jié)點(diǎn)傳輸網(wǎng)絡(luò)編碼包需要用較低的碼率,例如在圖2(a)中用了3個(gè)時(shí)隙(3T)。在圖2(b),由于采用了機(jī)會(huì)調(diào)度的機(jī)制,中繼節(jié)點(diǎn)可根據(jù)不同的機(jī)會(huì)調(diào)度等級(jí)選擇不同的時(shí)隙傳輸網(wǎng)絡(luò)編碼包。
由圖2可以推導(dǎo)出有或者無(wú)機(jī)會(huì)調(diào)度的情況下系統(tǒng)傳輸網(wǎng)絡(luò)編碼包所需要的時(shí)隙數(shù):
[twithoutOS=STwithoutOS+3TwithoutOS] (10)
整理可得:
[TwithoutOS=twithoutOSS+3] (12)
其次,通過(guò)中繼轉(zhuǎn)發(fā)后源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的互信息[I(s,r,d)]可以表示為[9]:
其中,se表示采用機(jī)會(huì)調(diào)度后源節(jié)點(diǎn)的集合;[rsd=|hsd|2ps/σ2d],[rsr=|hsr|2ps/σ2r]和[σ2zrd]分別表示接收節(jié)點(diǎn)d的網(wǎng)絡(luò)編碼噪聲方差。在文章所述的系統(tǒng)模型中,有[|se|max=|s|],[σ2zrd=σ2d],其中[|se|max]表示機(jī)會(huì)調(diào)度機(jī)制下最大的源節(jié)點(diǎn)集合中包含的節(jié)點(diǎn)數(shù)。在有機(jī)會(huì)調(diào)度和沒(méi)有機(jī)會(huì)調(diào)度的情況下,源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的互信息分別表示為:
[r2rd]與[r1rd]分別表示有或者無(wú)機(jī)會(huì)調(diào)度下目的節(jié)點(diǎn)d的SNR。通過(guò)式(12)—(16)和式(10)換算出系統(tǒng)的可達(dá)速率:
考察在相同碼率的條件下,有、無(wú)機(jī)會(huì)調(diào)度機(jī)制對(duì)系統(tǒng)可達(dá)速率的影響,假設(shè)x=3,[r2rd=r1rd]。因?yàn)閇s≥se],有[j=1srsjr≥sj∈sersjr]。因此
[RP13withoutOS≤RP13withOS] (19)
即采用機(jī)會(huì)調(diào)度的可達(dá)速率高于不采用機(jī)會(huì)調(diào)度時(shí)的可達(dá)速率。當(dāng)可以自適應(yīng)調(diào)整網(wǎng)絡(luò)編碼的碼率時(shí),自適應(yīng)打孔可達(dá)速率為:
[Pap=argmaxpRp] (20)
且:
由此可見,機(jī)會(huì)調(diào)度模式能夠有效提升網(wǎng)絡(luò)的可達(dá)速率并提高網(wǎng)絡(luò)容量。通過(guò)在機(jī)會(huì)調(diào)度嵌套碼架構(gòu)下提高打孔碼率,能夠進(jìn)一步提升網(wǎng)絡(luò)的可達(dá)速率和網(wǎng)絡(luò)容量[6]。
3 仿真分析
假設(shè)所有的節(jié)點(diǎn)有相同的發(fā)射功率且所有鏈路均為瑞利獨(dú)立慢衰落信道。基于文獻(xiàn)[10]的結(jié)果,文章采用的編碼矩陣為如式(22)。選取任意目的節(jié)點(diǎn)并假定節(jié)點(diǎn)獲取全部邊信息、部分邊信息和無(wú)邊信息。假設(shè)iA為節(jié)點(diǎn)C想要獲取的目標(biāo)信息,那么節(jié)點(diǎn)C獲取全部邊信息就表示節(jié)點(diǎn)C偵聽到了相鄰節(jié)點(diǎn)(B,D)的信息[(iB,iD)];節(jié)點(diǎn)C獲取部分邊信息則表示節(jié)點(diǎn)C偵聽到(B,D)其中之一的信息,無(wú)邊信息則表示節(jié)點(diǎn)C僅有自己發(fā)射的信息iC。
[GAGBGCGD=5 6 5 6 7 47 0 7 3 6 24 5 2 6 5 06 1 5 7 2 5] (22)
下面分兩種情況分別分析文章中機(jī)會(huì)調(diào)度嵌套碼的性能。在第1種情況下,假設(shè)中繼節(jié)點(diǎn)已經(jīng)獲取所有收發(fā)節(jié)點(diǎn)的先驗(yàn)信息,并利用先驗(yàn)信息進(jìn)行解碼。在第2種情況下,中繼節(jié)點(diǎn)僅具有收發(fā)節(jié)點(diǎn)的先驗(yàn)信息。在傳輸?shù)倪^(guò)程中,中繼節(jié)點(diǎn)采用維特比解碼算法進(jìn)行解碼[11]。在這兩種情況下,機(jī)會(huì)調(diào)度與非機(jī)會(huì)調(diào)度嵌套碼的誤比特率分別如圖3和圖4中所示。
由圖3可見,當(dāng)中繼節(jié)點(diǎn)已知要發(fā)送至目的節(jié)點(diǎn)的所有信息時(shí),目的節(jié)點(diǎn)獲取到全部邊信息時(shí)誤碼率(BER)性能最優(yōu),沒(méi)有獲取任何邊信息時(shí)BER性能最差。以上情況由節(jié)點(diǎn)獲取先驗(yàn)信息的多少以及不同編碼矩陣的性能差異所致,如果目的節(jié)點(diǎn)獲取其他節(jié)點(diǎn)的先驗(yàn)信息較少,則目的節(jié)點(diǎn)的譯碼性能較差。
由圖4可見,當(dāng)中繼節(jié)點(diǎn)僅已知要發(fā)送至目的節(jié)點(diǎn)的部分信息時(shí),目的節(jié)點(diǎn)無(wú)邊信息時(shí)的性能反而略優(yōu)于目的節(jié)點(diǎn)獲取全部邊信息時(shí)的性能。這可以從差錯(cuò)傳播的角度來(lái)解釋,雖然更多的邊信息意味著譯碼端可以利用譯碼信息更多,但是由于在中繼節(jié)點(diǎn)不知道目的節(jié)點(diǎn)的全部先驗(yàn)信息時(shí),過(guò)多的邊信息也可能引入過(guò)多的差錯(cuò)。不完整的先驗(yàn)信息引入的差錯(cuò)會(huì)對(duì)最終的譯碼性能造成一定的影響。從仿真結(jié)果上可以看到邊信息數(shù)量越多反而性能越差。
基于以上分析,有、無(wú)機(jī)會(huì)調(diào)度下嵌套碼的瞬時(shí)最大容量分別為:
[CwithOSinst=Nd-k+1log21+rk] (23)
[CwithoutOSinst=Ndlog21+rmin] (24)
此時(shí),rmin表示接收瞬時(shí)SNR中的最小值。
有、無(wú)機(jī)會(huì)調(diào)度下網(wǎng)絡(luò)編碼的平均最大容量的表達(dá)式:
其中,p( )為概率密度函數(shù)。
在有、無(wú)機(jī)會(huì)調(diào)度的情況下,嵌套碼的容量分別如圖5所示。由圖5可見,機(jī)會(huì)調(diào)度機(jī)制對(duì)應(yīng)的最大容量?jī)?yōu)于非機(jī)會(huì)調(diào)度機(jī)制,尤其在低信噪比區(qū)域。因?yàn)闄C(jī)會(huì)調(diào)度機(jī)制以系統(tǒng)容量最大為優(yōu)化目標(biāo),會(huì)選擇向鏈路質(zhì)量較好的用戶傳輸網(wǎng)絡(luò)編碼包。隨著鏈路SNR的逐漸提高,兩種傳輸機(jī)制的容量曲線相接近,由于鏈路SNR的提高使得所有鏈路均可傳輸網(wǎng)絡(luò)編碼包,兩種機(jī)制的傳輸策略基本相同。因此性能差異也逐漸縮小。
4 結(jié)束語(yǔ)
文章將機(jī)會(huì)調(diào)度引入嵌套碼,通過(guò)提升高信噪比無(wú)線鏈路的傳輸負(fù)荷,充分利用網(wǎng)絡(luò)中的無(wú)線鏈路,提升多播單中繼無(wú)線網(wǎng)絡(luò)的網(wǎng)絡(luò)容量。仿真結(jié)果表明,機(jī)會(huì)調(diào)度方法能夠有效提升嵌套碼的容量和誤碼性能。在中繼節(jié)點(diǎn)獲取全部收發(fā)節(jié)點(diǎn)先驗(yàn)信息時(shí),并且在BER為10-2時(shí)采用機(jī)會(huì)調(diào)度機(jī)制能夠獲得6 db的增益,在中繼節(jié)點(diǎn)獲取部分收發(fā)節(jié)點(diǎn)先驗(yàn)信息時(shí)能夠獲得近4.5 dB的性能增益。當(dāng)SNR為0~20 db時(shí),采用機(jī)會(huì)調(diào)度相比非機(jī)會(huì)調(diào)度機(jī)制的網(wǎng)絡(luò)容量最大能有66%的提升。
綜上所述,機(jī)會(huì)調(diào)度機(jī)制與嵌套碼相結(jié)合的傳輸方案相比非機(jī)會(huì)調(diào)度機(jī)制,無(wú)論從BER性能還是網(wǎng)絡(luò)容量方面都存在顯著提升。