王磊
(安康學院電子與信息工程學院,陜西安康725099)
為了提升多址接入(Medium Access Control,MAC)協(xié)議的效率,IEEE802.11n工作組基于IEEE 802.11 DCF機制提出了幀聚合思想[1],即僅通過完成一次的信道接入過程來傳輸多個子幀,并采用塊確認(Block ACK,BA)的方式來對多個數(shù)據(jù)子幀進行傳輸確認,從而可大幅度減少控制分組和幀間間隔開銷,進一步提高信道利用率和網絡吞吐量[2]。在無線網絡協(xié)議的研究中,為了評估無線網絡的性能,研究者通常需要采用網絡仿真工具來搭建網絡仿真平臺[3-4]。本文主要介紹了基于NS-2網絡仿真平臺對IEEE 802.11幀聚合機制的實現(xiàn),并對幀聚合機制的性能進行了仿真驗證與評估。
為了解決無線通信過程的隱藏站點問題,IEEE 802.11 DCF提出了基于CSMA/CA沖突避免機制的RTS/CTS握手過程[5-6],如圖1(a)所示。可以看出,傳統(tǒng)的IEEE 802.11 DCF機制中完成一次正常的數(shù)據(jù)傳輸,其信道偵聽(偵聽時長為DIFS)、退避過程、短幀間間隔(SIFS)以及控制分組傳輸(包括RTS和CTS)均帶來了大量的信道資源浪費[7]。由于這些時間開銷是無法避免的,所以只能盡量減少開銷出現(xiàn)的次數(shù),也就是說,在一定開銷的前提下盡可能提升所傳輸?shù)臄?shù)據(jù)量。
圖1 IEEE 802.11DCF和幀聚合機制中分別采用RTS/CTS機制的傳輸流程
為了減小信令開銷并提高系統(tǒng)的吞吐率,IEEE 802.11n[8-9]中提出了基于 A-MPDU(Aggregated MAC Protocol Data Unit)的幀聚合機制,基通過將多個上層數(shù)據(jù)幀封裝后的MPDU聚合在一個MAC幀中進行發(fā)送[10]。如圖1(b)所示,當接收端在收到包含n個MP?DU的A-MPDU聚合幀后,從而對每個MPDU進行解碼并最終對整個MAC聚合幀返回一個BA信息,其中BA攜帶了接收端對每個MPDU傳輸正確與否的確認。周圍的STA則根據(jù)接收到RTS或CTS幀來設置網絡分配矢量(Network Allocation Vector,NAV)信息并在NAV時間內保持靜默,NAV指示了信道將被占用直至BA幀傳輸結束,分別如公式(1)和(2)所示。
STA1收到CTS幀之后,等待SIFS之后發(fā)送DATA幀。最后,STA2會回復BA幀以確認n個DATA聚合幀的接收。通過建立二維Markov鏈模型,可得到采用幀聚合機制的網絡吞吐量為:
其中,n為接收到聚合數(shù)據(jù)幀的個數(shù),σ表示一個時隙的長度,Ptr和Ps分別表示為一個時隙內至少有一個節(jié)點發(fā)送的概率和成功發(fā)送的概率,Ts表示一次成功的數(shù)據(jù)傳輸過程所占用信道的時間,Tc表示一次失敗的傳輸所占用信道的時間,E[P]表示每個數(shù)據(jù)分組載荷的平均大小。
NS-2又稱為Network Simulator-2,是一種基于離散時間仿真的開源仿真工具,可以很好地模擬實際網絡中所發(fā)生的動作并進行性能統(tǒng)計[11]。NS-2中的各個層次是通過接口函數(shù)來相互調用,這樣可以相互獨立進行開發(fā),從而可以提高開發(fā)效率[12]。
本文采用的是NS-2.35版本的網絡仿真平臺,并基于Ubuntu v.12的虛擬機來實現(xiàn)的。本文的主要工作涉及到采用幀聚合機制的MAC層設計,其數(shù)據(jù)包在節(jié)點各層的傳遞過程如圖2所示[13]。
圖2 數(shù)據(jù)包在各層間的傳遞過程
在實際仿真中,各層協(xié)議都有自己獨特的消息結構。而NS-2提供了一種非常便捷的定義消息的方式,只需在“mac-802_11Ext.h”文件中定義各個幀所需要的各個字段,進而通過執(zhí)行make命令就會將其與源程序文件進行關聯(lián)。其中,為了實現(xiàn)對AMPDU聚合幀的確認,需要對傳統(tǒng)的ACK幀中的進行擴展,添加對每個DATA分組的接收正確與否的信息。Block-ACK的幀格式定義如下:
當接收端接收完數(shù)據(jù)包后,根據(jù)Block-ACK的幀格式產生BA幀,同時將接收到MPDU的成功與否的信息寫入BA幀中的‘ba_information’域中。RTS和CTS幀的幀結構與IEEE 802.11DCF類似,就不在此進行贅述了。
當發(fā)送端收到接收端回復的CTS之后,根據(jù)當前的物理層速率、TXOP長度以及數(shù)據(jù)子幀的負載時長來計算聚合個數(shù):
其中,tTXOP表示TXOP的時長,tBA和tSIFS分別表示BA幀和SIFS時長,tE[P]表示數(shù)據(jù)子幀的平均傳輸時長。進而,當接收端接收到聚合的數(shù)據(jù)包之后,通過對數(shù)據(jù)包進行解析,得到聚合包中的聚合個數(shù)n,并依次取出各子包分別進行接收。
在原始的NS-2節(jié)點模型中,數(shù)據(jù)分組只能從隊列單向地向MAC層進行發(fā)送,MAC層是無法直接對上層隊列進行操作的,從而也就無法實現(xiàn)幀聚合機制。為了克服該問題,本文通過采用跨層設計的方法在MAC層創(chuàng)建用于訪問隊列的指針*Myifq,如圖3所示。這樣可以賦予MAC層操作隊列的權限,進而通過該指針來操作上層隊列類的成員函數(shù),比如resume()出列等函數(shù),實現(xiàn)MAC層根據(jù)需求來向隊列請求n個數(shù)據(jù)分組。
圖3 對NS-2節(jié)點模型中隊列控制的修改
仿真平臺中幀聚合機制的實現(xiàn)過程如圖4所示。為了實現(xiàn)幀聚合機制,發(fā)送端首先會發(fā)送RTS幀來請求與接收方進行通信。而接收方接收到RTS會,首先通過MAC層進行信道質量(Channel State Informatica,CSI)評估,并將CSI攜帶在CTS中進行發(fā)送。當發(fā)送端收到RTS后,通過解析CTS進而獲得本次傳輸進行幀聚合的個數(shù)。進而,發(fā)送端根據(jù)公式(4)來計算可以進行幀聚合的個數(shù)n。比如,當n=4時,如圖4所示,發(fā)送端從MAC隊列中需要再取出3個數(shù)據(jù)分組,連同生成RTS的那個數(shù)據(jù)分組一起進行聚合,從而產生包括n個聚合分組的聚合幀進行發(fā)送。當接收方收到該聚合幀后,通過塊確認(BA)幀進行回復確認。
在本仿真中,考慮單跳網絡場景,即所有節(jié)點均能感知到彼此的數(shù)據(jù)傳輸。假設所有信道均為理想信道,即不考慮物理信道中的差錯和誤碼。在本網絡場景中,50對收發(fā)節(jié)點隨機分布在100 m*100 m的矩形區(qū)域內,所有節(jié)點承載的業(yè)務類型為恒定比特率業(yè)務(Constant Bit Rate,CBR),數(shù)據(jù)分組大小為512字節(jié)??刂品纸M傳輸速率為2 Mbps,用于傳輸RTS、CTS以及ACK分組,數(shù)據(jù)分組的傳輸速率則為11 Mbps,用于傳輸DATA分組。TXOP長度設置為1.0 ms,MAC隊列長度為50,即MAC隊列中最大能存儲50個數(shù)據(jù)分組。在隨機競爭過程中所使用的最小競爭窗為CWmin=15,最大競爭窗為CWmax=1023。其余參數(shù)設置可依照IEEE 802.11b標準[14]。本文考察的性能指標包括網絡吞吐量和平均分組時延,其中分組時延主要包括MAC隊列時延、競爭時延以及DATA分組的傳輸時延[15]。
為了驗證本仿真的準確性,將仿真結果與公式(4)進行了對比,給出了在IEEE 802.11 DCF協(xié)議上加入幀聚合機制的飽和吞吐量隨著網絡中節(jié)點個數(shù)增加的變化情況,如圖5所示??梢钥闯觯W絡的吞吐量與分析吻合很好,并且隨著節(jié)點個數(shù)的逐漸增大,幀聚合機制的飽和吞吐量呈現(xiàn)出了逐漸下降的趨勢,這主要是由于使用了CSMA/CA機制,導致節(jié)點間的沖突隨著節(jié)點個數(shù)的增加而增大,從而降低了吞吐量性能[16]。
圖6比較了幀聚合機制與IEEE 802.11 DCF之間的吞吐量隨著節(jié)點業(yè)務量的增加的變化情況,此時網絡中存在50對收發(fā)節(jié)點。
圖5 幀聚合機制吞吐量仿真結果與分析結果對比
圖6 吞吐量隨節(jié)點業(yè)務量增加的變化
可以看出,隨著節(jié)點業(yè)務量的持續(xù)增加,IEEE 802.11 DCF與幀聚合機制的吞吐量性均呈現(xiàn)出逐漸上升的趨勢,進而隨著節(jié)點業(yè)務量的增加保持平穩(wěn),此時網絡達到了飽和狀態(tài)??梢钥闯觯捎昧藥酆蠙C制之后,IEEE 802.11 DCF的飽和吞吐量性能提升了約90%。
圖7給出了幀聚合機制與IEEE 802.11 DCF之間的平均分組時延隨著節(jié)點業(yè)務量的增加的變化情況,網絡中存在50對收發(fā)節(jié)點??梢钥闯?,當節(jié)點業(yè)務量較小時,即業(yè)務量不超過10包/秒時,兩種機制的平均分組時延均較小,因為此時帶來的排隊時延和競爭時延很小。而隨著節(jié)點業(yè)務量的持續(xù)增加,由于節(jié)點間的沖突加劇,使得兩者的平均時延均呈現(xiàn)出逐漸急劇上升的趨勢,進而達到飽和狀態(tài)。可以看出,IEEE 802.11 DCF的平均分組時延比幀聚合機制高出了約65%。
圖7 分組時延隨節(jié)點業(yè)務量增加的變化
本文詳細介紹了基于IEEE 802.11DCF協(xié)議的幀聚合機制在NS-2平臺的實現(xiàn),并且與分析模型進行了對比,驗證了NS-2仿真平臺的準確性,進而對幀聚合機制的性能進行了評估。本文實現(xiàn)的NS-2仿真與一些傳統(tǒng)的網絡仿真器相比,具有源代碼開放、功能模塊實現(xiàn)簡單清晰、擴展性較好等優(yōu)勢,這對于無線網絡MAC協(xié)議的研究具有較強的實際應用價值。
參考文獻:
[1]IEEE 802.11n TGn Sync.TGn Sync proposal techni?cal specification[S].[S.l.]:IEEE,2005:30-40.
[2]Saif A,Othman M.SRA-MSDU:Enhanced A-MS?DU frame aggregation with selective retransmission in 802.11 n wireless networks[J].Journal of Net?work and Computer Applications,2013,36(4):1219-1229.
[3]Bhaskar D,Mallick B.Performance evaluation of mac protocol for IEEE 802.11,802.11Ext.WLAN and IEEE 802.15.4 WPAN Using NS-2[J].Inter?national Journal of Computer Applications,2015,119(16):25-30.
[4]張雅瓊.基于NS2模擬軟件的TCP協(xié)議實驗設計[J].電子設計工程,2013,21(9):27-29.
[5]Abbas A M H,Ali J,Rahman M A,et al.Compar?ative Investigation on CSMA/CA-Based MAC Pro?tocols for Scalable Networks[C]//International Con?ference on ICCCE.IEEE,2016:428-433.
[6]Kim M,Choi C H.Hidden-node detection in ieee 802.11n wireless lans[J].IEEE Transactions on Vehicular Technology,2013,62(6):2724-2734.
[7]Dai L,Sun X.A unified analysis of IEEE 802.11 DCF networks:stability,throughput,and delay[J].IEEE Transactions on Mobile Computing,2013,12(8):1558-1572.
[8]Perahia E,Stacey R.Next generation wireless LANs:802.11 n and 802.11 ac[M].Cambridge uni?versity press,2013.
[9]Tramarin F,Vitturi S,Luvisotto M,et al.On the use of IEEE 802.11n for industrial communications[J].IEEE Transactions on Industrial Informatics,2016,12(5):1877-1886.
[10]LiuJ,YaoM,QiuZ.EnhancedBlockACKmethodfor A-MPDU transmission in IEEE 802.11 n/ac/ad WLANs[J].ElectronicsLetters,2015,52(2):159-161.
[11]柯志亨,程榮祥,鄧德雋.NS-2仿真實驗:多媒體和無線網絡通信[M].北京:電子工業(yè)出版社,2009.
[12]王強,焦俊,孔文,等.基于NS2的固定和移動節(jié)點的無線傳感網絡的仿真[J].合肥學院學報:自然科學版,2015,25(2):24-28.
[13]Nagalakshmi S,Poonia R.Packet flow analysis using NS2 simulation[J].International Journal of Applied Research in Science and Engineering.2016,124(11):68-72.
[14]IEEE 802.11,Part 11:Wireless LAN medium access control(MAC)and physical layer(PHY)specifications[S].IEEE 802.11 Std.Mar.2012.
[15]Bozkurt A.Optimal delay analysis for real-time traffics over IEEE 802.11 wireless LANs[J].EURA?SIP Journal on Wireless Communications and Net?working,2016,2016(1):52-65.
[16]Bellalta B.Throughput analysis in high density WLANs[J].IEEE Communications Letters,2017,21(3):592-595.