陳柯帆,呂 娜,張偉龍,包志祥
(空軍工程大學 信息與導航學院,陜西 西安710077)
由于協作通信改變了傳統的通信方式,導致現有的MAC (medium access control)協議在協作通信模式下存在明顯不足,需要研究合適的MAC 協議來有效地利用協作通信技術提供的物理層優勢[1]。
文獻 [2,3]提出針對802.11的協作MAC 協議;文獻[4]提出一種采用協作機制的時隙ALOHA 協議,較好改善了采用隨機接入類MAC 協議網絡的傳輸性能。針對時分多址 (TDMA)網絡,目前已有一些協作MAC 協議提出,但依然不多。文獻 [5]提出一種基于微時隙設計的協議,雖然提高了傳輸成功率,但并沒有說明微時隙的引入對整個網絡性能的影響;文獻 [6]提出一種C-TDMA協議,分析結果表明C-TDMA 較傳統的TDMA,較大提高了系統吞吐量,但C-TDMA 是基于時隙固定分配的TDMA設計的,并未擴展到動態TDMA 中;文獻 [7]將協作技術擴展到動態TDMA 中,提出一種基于動態TDMA 的協作MAC協議,進一步提高了系統吞吐量。
對于節點具有相同優先級的自組織網絡,某一節點由于數據傳輸失敗帶來的不斷重傳將造成傳輸失敗節點的緩存區數據積壓,嚴重影響該節點的傳輸性能,導致該節點傳輸的信息不能及時有效被其它節點獲取。文獻 [7]利用網絡中無數據發送節點的空閑數據時隙進行協作重傳,對于業務量持續恒定的網絡,及高業務量或是存在較大干擾的網絡,網中節點在自身時隙內無數據發送的概率很小,傳輸失敗節點獲得的吞吐量較有空閑數據時隙時大幅降低。
針對以上問題,本文在動態TDMA 協作MAC 協議(C-DTDMA)基礎上進行了改進,提出一種基于業務量感知的動態TDMA 協作MAC 協議,并通過建立數學模型進行數值仿真分析,得出了相應結論。
本節詳細描述改進的動態TDMA 協作MAC協議。
如圖1所示,本文改進的協議的幀結構與文獻 [7]相似,由控制時隙部分與數據時隙部分組成。網絡中每一個節點對應一個控制微時隙[8],控制微時隙用于發送預約類相關信息和節點業務量信息。數據發送部分每一個數據時隙由數據發送與反饋時隙組成,在數據發送后,節點在反饋時隙接收來自目的節點的反饋信息,傳輸成功則收到ACK 報文,傳輸失敗則收到NACK 報文。

圖1 協議幀結構
本文以節點IP層緩存區數據包的數量來表征節點業務量的大小,緩存數據包數量越多說明節點的業務量越大。利用跨層的思想,網絡中節點在每一幀自身數據時隙完成數據發送后,便讀取IP層緩存區的數據包數量,在其它時刻不進行讀取。在控制信息交互階段,將所讀取的數據包數通過控制報文發送至其它節點。網絡中每個節點維護一張緩存區記錄表用于記錄當前自身以及網中其它節點的緩存區數據包數量,當接收到其它節點通過控制報文廣播的緩存區數據包數量信息,便立即對緩存區記錄表進行更新。
如圖2所示,節點A 發送數據到節點D。在全連通網絡中,節點B與節點C在節點A 發送時接收A 發往D 的數據包并緩存到協作數據包緩存區中。若D 成功接收A 發送的數據包,則發送ACK 報文,節點A,B,C 收到來自節點D 的ACK 報文,則丟棄其緩存的A 發往節點D 的數據包。若由于信道環境影響導致D 接收數據包出錯,則D 發送NACK 報文,節點A,B,C 在收到NACK 報文后,則準備在下一幀進行協作重傳。

圖2 數據包傳輸
如圖2所示,若節點A 傳輸失敗,則節點A,B,C 在下一幀將對A 傳輸失敗的數據包進行協作重傳,以提高A重傳數據的可靠性。在控制時隙階段,網內每個節點在自身控制微時隙期間不僅廣播時隙動態占用信息,同時也要廣播自身業務量大小信息。
節點B,C若發現自身緩存區數據包數量小于節點A的數據包數量,則B,C將在自身控制微時隙期間申請利用自身數據時隙為節點A 重傳錯誤數據包,源節點A 也必須發送相應申請。若除A 外沒有其它節點申請,則所有正確收到A 數據包的節點與A 一起在A 的數據時隙為節點A重傳相應數據包,目的節點D 以MRC (最大比合并)的方式接收多節點協作傳輸的數據包。若有除節點A 外其它節點申請,節點A 在自身數據時隙傳輸其它數據,并在選中的申請節點的數據時隙與其它節點一起重傳錯誤數據包。為保證數據傳輸的實時性,提前申請的節點具有較高的優先級,即若B的控制微時隙在C 之前,并在C 之前進行申請,則C偵聽到B的申請后,放棄自身對該錯誤數據包的申請,并在B的數據時隙部分幫助A 重傳錯誤數據包。數據時隙部分協議的運行如圖3所示。
協作重傳機制需通過控制時隙部分的信息交互才能實現。通過控制信息交互,每個節點更新并記錄其相鄰節點的緩存區數據包數量信息。當鄰居節點有傳輸失敗的數據包,且自身成功接收這一數據包,通過比較自身緩存區與記錄的鄰居節點的緩存區數據包數量大小,決定是否申請利用自身數據發送時隙為相應鄰居節點協作重傳失敗數據包,數據包數量比鄰居節點大則申請,小則放棄申請。若在對某一傳輸失敗數據包進行申請前,已感知到其它節點對該數據包的申請,則放棄申請該數據包。若存在多個鄰居節點傳輸失敗,選擇未被申請的數據包進行申請,其它正確接收該數據包的節點在申請成功節點的數據時隙協作重傳該數據包。若無節點對某一鄰居節點的傳輸失敗數據包進行協作申請,則其它正確接收該數據包的節點在源節點的數據時隙協作重傳該數據包??刂茣r隙部分協議運行如圖4所示。
為便于數學模型的建立,描述相關系統模型及假設條件。

圖3 數據時隙部分協議運行流程
本文考慮一個有N 個節點的全連通網絡,任意節點間可相互進行通信。每一幀的數據時隙部分有N 個時隙,與網絡中節點數量相同,且時隙長度相同。網絡中每個節點發送的數據包長度固定且相同,每個數據時隙只能發送1個數據包。數據包的產生相互獨立,并且服從概率為δ的伯努利分布[9,10]。每個節點有兩個緩存區,一個為自身數據包緩存區,用于存儲自身需要發送數據,大小為L;一個為協作數據包緩存區,用于存儲將要協作重傳的數據包,大小為N-1。緩存區都采用FIFS (先到先服務)的服務方式。本文假設任意節點都能準確無誤的接收其它節點發送的ACK 與NACK 報文。
假設全網時間同步,所有節點均采用MISO (多收單發)收發方式。若有k-1個節點幫助源節點進行協作重傳,則形成天線數量為k的虛擬天線陣,在瑞利衰落信道下采用BPSK調制時,利用MRC方式接收數據的平均誤碼率為[11,13]

式中:r——k個協作節點傳輸鏈路的平均信噪比。假設任意一個時隙內,信噪比保持恒定,對于一個含u 個比特的數據包,數據包正確傳輸的概率為ps(k)=(1-Pb(r,k))u,其中Pb(r,k)表示當有k 個節點協作傳輸時的誤碼率,ps(k)表示當有k個節點協作傳輸時所有u 個比特正確傳輸的概率,傳輸失敗的概率為pe(k)=1-ps(k)。
本節基于C-TDMA[6,12]性能分析模型,對改進后的動態TDMA 協作MAC協議在瑞利衰落信道下傳輸失敗節點的吞吐量進行了數學建模。
令Qr(t)表示除源節點外其它節點中有t個節點幫助源節點重傳傳輸失敗數據包的概率,則

式中:ps(1)——當k=1,即沒有協作傳輸時,數據包正確傳輸的概率。
令pF(f)表示數據包傳輸失敗的平均概率

式中:pnth——相同數據包進行第n 次重傳的概率,pr(E|nth)——第n次重傳依然傳輸失敗的概率。

圖4 控制時隙部分協議運行流程
由之前假設可知

式中:pe(1)——沒有協作傳輸時,數據包傳輸失敗的概率,pe(1)=1-ps(1)。

通過上述分析,式 (3)可重新寫為

根據之前假設,數據包生成概率可用式 (6)表示,其中pi表示每個節點在上一次讀取緩存區數據包數量到本次讀取之間產生i個數據包的概率

對任意節點,其緩存區數據包數量的情況可近似用一個狀態轉移矩陣B(L+1)×(L+1)進行描述,如式 (7)所示,其中行狀態表示當前緩存區數據包數量,列狀態表示下一讀取時刻緩存區數據包數量,pF(s)表示數據包正確傳輸的平均概率,pF(s)=1-pF(f)。本文假設每個節點的緩存區可以緩存L 個數據包,且僅考慮當L 小于N時的情況

令l=(l0,l1,l2……lL)表示在穩定狀態下節點緩存區有 (0,1,2……L)個數據包的概率,由式 (8)可求出l0,l1,l2……lL的穩態值

本文以數據包正確傳輸的概率來表示節點的吞吐量。對于C-TDMA 協議,傳輸失敗的數據包總是利用源節點本身數據時隙進行協作重傳,故傳輸失敗節點在下一次傳輸時可獲得的吞吐量可表示為

對于動態TDMA 協作MAC 協議,由于可利用其它節點空閑的數據時隙進行協作重傳,故在有空閑時隙可用時,傳輸失敗節點在下一次傳輸時可獲得的吞吐量大小為

無空閑時隙可用時,其吞吐量退化為C-TDMA 的吞吐量。于是動態TDMA 協作MAC 協議下傳輸失敗節點的吞吐量可近似表示為

改進的動態TDMA 協作MAC 協議通過比較網中節點與源節點的業務量 (IP 層數據緩存區數據包數量)大小,來決定網中節點是否申請利用自身數據時隙幫助源節點重傳傳輸失敗數據包。對任意節點,網絡中存在緩存區數據包數量大于自身節點的概率pg為

可以推導出改進后協議下傳輸失敗節點在下一次傳輸時可獲得的吞吐量可表示為

比較式 (9)、式 (11)與式 (13),分析3 種協議的性能。
本節利用MATLAB仿真軟件對瑞利信道下C-TDMA,C-DTDMA,以及改進后的C-DTDMA 協議進行數值仿真分析。首先分析傳輸失敗節點在下一次傳輸時可獲得的吞吐量隨網絡業務量變化的情況。
假設所有節點間的SNR (鏈路信噪比)固定為25dB;節點數據緩存區的大小為15,單位為數據包;數據包大小為1024比特;網絡規模為20 個節點,且可以相互通信;通過式 (6)中節點數據包產生概率δ的變化來表征節點業務量的變化。對傳輸失敗節點在下一次傳輸時可獲得的吞吐量進行數值仿真,仿真結果如圖5所示。
由圖5可以看出,隨著網絡業務量的增加,傳輸失敗節點在下一次傳輸時可獲得的吞吐量也顯著提高。當網絡業務量較高時,節點的吞吐量趨于穩定狀態,主要原因是受節點發送速率以及信道環境的影響,限制了節點吞吐量的進一步提高。同時可以看出C-DTDMA 較C-TDMA 在網絡業務量較低時,傳輸失敗節點在下一次傳輸時可獲得的吞吐量明顯高于C-TDMA,主要是因為C-DTDMA 利用控制時隙的信息交互,使得傳輸失敗的節點可以利用網中無數據發送節點的空閑時隙對傳輸失敗數據包進行協作重傳,而在自身數據時隙發送其它數據包。但隨著網絡業務量的增加,網絡中無數據可發的節點數量大幅減少,導致傳輸失敗節點無其它空閑數據時隙可用,導致采用C-DTDMA的傳輸失敗節點在下一次傳輸時可獲得的吞吐量大幅降低,性能退化為與C-TDMA 相同。

圖5 傳輸失敗節點下一次傳輸時吞吐量隨業務量變化情況
改進后的C-DTDMA 協議在網絡業務量較低時,傳輸失敗節點在下一次傳輸時可獲得的吞吐量與C-DTDMA 一致,主要是因為在業務量較低時,網絡中存在空閑的數據時隙,改進后的C-DTDMA 與C-DTDMA 一樣都是利用空閑的數據時隙進行協作重傳。但隨著業務量的增加,改進后的C-DTAMA 協議的性能雖也有所下降,但穩定時,傳輸失敗節點在下一次傳輸時可獲得的吞吐量明顯高于C-DTDMA與C-TDMA,因為在無空閑時隙時,改進后的C-DTDMA 使得傳輸失敗節點仍然可以利用業務量小于自身的節點進行協作重傳,而在自身數據時隙傳輸其它數據包,提高了傳輸失敗節點的吞吐量。
下面考慮傳輸失敗節點在下一次傳輸時可獲得的吞吐量隨鏈路信噪比變化的情況。δ的值分別為0.05 與0.03,其它條件與之前相同??紤]SNR 從15dB 到40dB 變化,仿真結果如圖6所示。
由圖6 (a)可以看出當δ=0.05時,即網絡業務量較大時,隨著SNR 的增加,傳輸失敗節點在下一次傳輸時可獲得的吞吐量也快速增加,在接近40dB 時,受傳輸速率的限制趨于穩定。同時C-TDMA 與C-DTDMA 的曲線幾乎重合,主要是由于在δ =0.05時,網絡業務量較大,幾乎沒有空閑數據時隙,C-DTDMA 的性能與C-TDMA 相近。
由圖6 (b)可以看出在δ =0.03 時,網絡業務量較小,在信噪比較低時,由于網絡傳輸誤碼率高,傳輸失敗節點的數量較多,導致網絡業務量增大,幾乎沒有空閑的數據時隙,C-DTDMA 的性能與C-TDMA 性能相近。但隨著信噪比的增加,C-DTDMA 使發送失敗節點在下一次傳輸時可獲得的吞吐量明顯高于C-TDMA。當信噪比增加到超過25dB時,節點的吞吐量開始下降,并最終與C-TDMA 趨于一致,主要是因為隨著信噪比的增加,節點幾乎不會存在發送失敗數據包,傳輸失敗節點在下一次傳輸時可獲得的吞吐量最終與發送成功的吞吐量一致。

圖6 傳輸失敗節點下一次傳輸時吞吐量隨信噪比變化情況
同時綜合圖6可以看出,在信噪比較低時,改進后的C-DTDMA 使得傳輸失敗節點在下一次傳輸時可獲得的吞吐量高于C-DTDMA 與C-TDMA,使得傳輸失敗節點的傳輸性能在高業務量網絡與低信噪比網絡下優于C-DTDMA與C-TDMA,在低信噪比網絡下性能較優的原因主要是在低信噪比下節點傳輸錯誤率高,幾乎沒有空閑的數據時隙,而改進后的C-DTDMA 使得傳輸失敗節點依然可以利用緩存區數據包數量較小的節點的數據時隙進行協作重傳。
本文通過對動態TDMA 協作MAC 協議 (C-DTDMA)進行改進,采用跨層的思想,提出了基于業務量感知的動態TDMA 協作MAC協議;并且通過建立數學模型與數值仿真,比較和分析了在瑞利衰落信道下C-TDMA,C-DTDMA 以及改進后的C-DTDMA 的協議性能。
仿真結果表明,改進后的C-DTDMA 協議使得傳輸失敗的節點在高業務量網絡下依然可以獲得較高的吞吐量,提升傳輸的可靠性,避免由于傳輸失敗造成的緩存區數據積壓,確保傳輸失敗節點信息的有效傳輸;同時在低信噪比環境下,全網節點的傳輸錯誤率高,業務量較大節點利用業務量較小節點的數據時隙進行協作重傳,滿足業務量較大節點的吞吐量需求,保證了其數據的優先傳輸。
[1]LI Yun,DU Yang,CAO Bin,et al.Cooperative MAC for wireless networks[J].Journal of Software,2011,22 (1):101-114 (in Chinese).[李云,杜楊,曹儐,等.無線網絡協作MAC協議機制 [J].軟件學報,2011,22 (1):101-114.]
[2]Sheu Jang-Ping,Chang Jung-Tzu,Ma Chuang.A cooperative MAC protocol based on 802.11in wireless ad hoc networks[C]//IEEE WCNC,2013:416-421.
[3]Gokturk MS,Gurbuz O.Cooperation in wireless sensor networks:Design and performance analysis of a MAC protocol[C]//IEEE International Conference on Communication,2008:4284-4289.
[4]Gokturk MS,Ercetin O,Gurbuz O.Throughput analysis of ALOHA with cooperative diversity [J].IEEE Commun Letters,2008,12 (6):468-470.
[5]Jiao Hongzhi,Frank Y Li.A mini-slot-based cooperative MAC protocol for wireless mesh networks [C]//IEEE Globecom,2010:89-93.
[6]Yang Zhou,Yao Yudong,Li Xiaochen.A TDMA-based MAC protocol with cooperative diversity [J].IEEE Comm Letters,2010,14 (6):542-544.
[7]Lee Jong-Kwan,Noh Hong-Jun,Lim Jaesung.A cooperative TDMA MAC protocol using dynamic slot assignment scheme[C]//International Conference on Information Networking,2013:216-220.
[8]Lee Jone-Kwan,Lee Kyu-Man,Lim Jaesung.Distributed dynamic slot assignment scheme for fast broadcast transmission in tactical ad hoc networks[C]//Military Communications Conference Milcom,2012:1-6.
[9]Zheng Di,Yao Yudong.Throughput performance evaluation of two-tier TDMA for sensor networks[C]//IEEE Sarnoff Symposium,2009:1-5.
[10]CHEN Kefan,LV Na,WANG Jinjiang,et al.A dynamic relaying protocol based on posture information for aeronautical network [J].Journal of Air Force Engineering University(Natural Science Edition),2015,16 (3):61-65 (in Chinese).[陳柯帆,呂娜,王錦江,等.態勢信息感知下的航空網絡動態中繼協議 [J].空軍工程大學學報 (自然科學版),2015,16 (3):61-65.]
[11]Zhao Yulei,Du Bing,Ge Ning.An empty-queue aware cooperative relay MAC protocol with vacation queue analysis[C]//IEEE MILCOM,2013:194-199.
[12]Hu Nansai,Yao Yudong,Yang Zhou.Analysis of cooperative TDMA in rayleigh fading channels [J].IEEE Transaction on Vehicular Technology,2013,62 (3):1158-1168.
[13]SU Yuze,REN Qinghua,HAN Ying,et al.Compressed sensing sparse channel estimation method for TDCS [J].Journal of Air Force Engineering University (Natural Science Edition),2015,16 (3):56-60 (in Chinese).[蘇玉澤,任清華,韓瑩,等.TDCS的壓縮感知稀疏信道估計方法 [J].空軍工程大學學報 (自然科學版),2015,16 (3):56-60.]