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