王磊
(安康學(xué)院電子與信息工程學(xué)院,陜西安康725099)
為了提升多址接入(Medium Access Control,MAC)協(xié)議的效率,IEEE802.11n工作組基于IEEE 802.11 DCF機(jī)制提出了幀聚合思想[1],即僅通過完成一次的信道接入過程來(lái)傳輸多個(gè)子幀,并采用塊確認(rèn)(Block ACK,BA)的方式來(lái)對(duì)多個(gè)數(shù)據(jù)子幀進(jìn)行傳輸確認(rèn),從而可大幅度減少控制分組和幀間間隔開銷,進(jìn)一步提高信道利用率和網(wǎng)絡(luò)吞吐量[2]。在無(wú)線網(wǎng)絡(luò)協(xié)議的研究中,為了評(píng)估無(wú)線網(wǎng)絡(luò)的性能,研究者通常需要采用網(wǎng)絡(luò)仿真工具來(lái)搭建網(wǎng)絡(luò)仿真平臺(tái)[3-4]。本文主要介紹了基于NS-2網(wǎng)絡(luò)仿真平臺(tái)對(duì)IEEE 802.11幀聚合機(jī)制的實(shí)現(xiàn),并對(duì)幀聚合機(jī)制的性能進(jìn)行了仿真驗(yàn)證與評(píng)估。
為了解決無(wú)線通信過程的隱藏站點(diǎn)問題,IEEE 802.11 DCF提出了基于CSMA/CA沖突避免機(jī)制的RTS/CTS握手過程[5-6],如圖1(a)所示??梢钥闯觯瑐鹘y(tǒng)的IEEE 802.11 DCF機(jī)制中完成一次正常的數(shù)據(jù)傳輸,其信道偵聽(偵聽時(shí)長(zhǎng)為DIFS)、退避過程、短幀間間隔(SIFS)以及控制分組傳輸(包括RTS和CTS)均帶來(lái)了大量的信道資源浪費(fèi)[7]。由于這些時(shí)間開銷是無(wú)法避免的,所以只能盡量減少開銷出現(xiàn)的次數(shù),也就是說(shuō),在一定開銷的前提下盡可能提升所傳輸?shù)臄?shù)據(jù)量。
圖1 IEEE 802.11DCF和幀聚合機(jī)制中分別采用RTS/CTS機(jī)制的傳輸流程
為了減小信令開銷并提高系統(tǒng)的吞吐率,IEEE 802.11n[8-9]中提出了基于 A-MPDU(Aggregated MAC Protocol Data Unit)的幀聚合機(jī)制,基通過將多個(gè)上層數(shù)據(jù)幀封裝后的MPDU聚合在一個(gè)MAC幀中進(jìn)行發(fā)送[10]。如圖1(b)所示,當(dāng)接收端在收到包含n個(gè)MP?DU的A-MPDU聚合幀后,從而對(duì)每個(gè)MPDU進(jìn)行解碼并最終對(duì)整個(gè)MAC聚合幀返回一個(gè)BA信息,其中BA攜帶了接收端對(duì)每個(gè)MPDU傳輸正確與否的確認(rèn)。周圍的STA則根據(jù)接收到RTS或CTS幀來(lái)設(shè)置網(wǎng)絡(luò)分配矢量(Network Allocation Vector,NAV)信息并在NAV時(shí)間內(nèi)保持靜默,NAV指示了信道將被占用直至BA幀傳輸結(jié)束,分別如公式(1)和(2)所示。
STA1收到CTS幀之后,等待SIFS之后發(fā)送DATA幀。最后,STA2會(huì)回復(fù)BA幀以確認(rèn)n個(gè)DATA聚合幀的接收。通過建立二維Markov鏈模型,可得到采用幀聚合機(jī)制的網(wǎng)絡(luò)吞吐量為:
其中,n為接收到聚合數(shù)據(jù)幀的個(gè)數(shù),σ表示一個(gè)時(shí)隙的長(zhǎng)度,Ptr和Ps分別表示為一個(gè)時(shí)隙內(nèi)至少有一個(gè)節(jié)點(diǎn)發(fā)送的概率和成功發(fā)送的概率,Ts表示一次成功的數(shù)據(jù)傳輸過程所占用信道的時(shí)間,Tc表示一次失敗的傳輸所占用信道的時(shí)間,E[P]表示每個(gè)數(shù)據(jù)分組載荷的平均大小。
NS-2又稱為Network Simulator-2,是一種基于離散時(shí)間仿真的開源仿真工具,可以很好地模擬實(shí)際網(wǎng)絡(luò)中所發(fā)生的動(dòng)作并進(jìn)行性能統(tǒng)計(jì)[11]。NS-2中的各個(gè)層次是通過接口函數(shù)來(lái)相互調(diào)用,這樣可以相互獨(dú)立進(jìn)行開發(fā),從而可以提高開發(fā)效率[12]。
本文采用的是NS-2.35版本的網(wǎng)絡(luò)仿真平臺(tái),并基于Ubuntu v.12的虛擬機(jī)來(lái)實(shí)現(xiàn)的。本文的主要工作涉及到采用幀聚合機(jī)制的MAC層設(shè)計(jì),其數(shù)據(jù)包在節(jié)點(diǎn)各層的傳遞過程如圖2所示[13]。
圖2 數(shù)據(jù)包在各層間的傳遞過程
在實(shí)際仿真中,各層協(xié)議都有自己獨(dú)特的消息結(jié)構(gòu)。而NS-2提供了一種非常便捷的定義消息的方式,只需在“mac-802_11Ext.h”文件中定義各個(gè)幀所需要的各個(gè)字段,進(jìn)而通過執(zhí)行make命令就會(huì)將其與源程序文件進(jìn)行關(guān)聯(lián)。其中,為了實(shí)現(xiàn)對(duì)AMPDU聚合幀的確認(rèn),需要對(duì)傳統(tǒng)的ACK幀中的進(jìn)行擴(kuò)展,添加對(duì)每個(gè)DATA分組的接收正確與否的信息。Block-ACK的幀格式定義如下:
當(dāng)接收端接收完數(shù)據(jù)包后,根據(jù)Block-ACK的幀格式產(chǎn)生BA幀,同時(shí)將接收到MPDU的成功與否的信息寫入BA幀中的‘ba_information’域中。RTS和CTS幀的幀結(jié)構(gòu)與IEEE 802.11DCF類似,就不在此進(jìn)行贅述了。
當(dāng)發(fā)送端收到接收端回復(fù)的CTS之后,根據(jù)當(dāng)前的物理層速率、TXOP長(zhǎng)度以及數(shù)據(jù)子幀的負(fù)載時(shí)長(zhǎng)來(lái)計(jì)算聚合個(gè)數(shù):
其中,tTXOP表示TXOP的時(shí)長(zhǎng),tBA和tSIFS分別表示BA幀和SIFS時(shí)長(zhǎng),tE[P]表示數(shù)據(jù)子幀的平均傳輸時(shí)長(zhǎng)。進(jìn)而,當(dāng)接收端接收到聚合的數(shù)據(jù)包之后,通過對(duì)數(shù)據(jù)包進(jìn)行解析,得到聚合包中的聚合個(gè)數(shù)n,并依次取出各子包分別進(jìn)行接收。
在原始的NS-2節(jié)點(diǎn)模型中,數(shù)據(jù)分組只能從隊(duì)列單向地向MAC層進(jìn)行發(fā)送,MAC層是無(wú)法直接對(duì)上層隊(duì)列進(jìn)行操作的,從而也就無(wú)法實(shí)現(xiàn)幀聚合機(jī)制。為了克服該問題,本文通過采用跨層設(shè)計(jì)的方法在MAC層創(chuàng)建用于訪問隊(duì)列的指針*Myifq,如圖3所示。這樣可以賦予MAC層操作隊(duì)列的權(quán)限,進(jìn)而通過該指針來(lái)操作上層隊(duì)列類的成員函數(shù),比如resume()出列等函數(shù),實(shí)現(xiàn)MAC層根據(jù)需求來(lái)向隊(duì)列請(qǐng)求n個(gè)數(shù)據(jù)分組。
圖3 對(duì)NS-2節(jié)點(diǎn)模型中隊(duì)列控制的修改
仿真平臺(tái)中幀聚合機(jī)制的實(shí)現(xiàn)過程如圖4所示。為了實(shí)現(xiàn)幀聚合機(jī)制,發(fā)送端首先會(huì)發(fā)送RTS幀來(lái)請(qǐng)求與接收方進(jìn)行通信。而接收方接收到RTS會(huì),首先通過MAC層進(jìn)行信道質(zhì)量(Channel State Informatica,CSI)評(píng)估,并將CSI攜帶在CTS中進(jìn)行發(fā)送。當(dāng)發(fā)送端收到RTS后,通過解析CTS進(jìn)而獲得本次傳輸進(jìn)行幀聚合的個(gè)數(shù)。進(jìn)而,發(fā)送端根據(jù)公式(4)來(lái)計(jì)算可以進(jìn)行幀聚合的個(gè)數(shù)n。比如,當(dāng)n=4時(shí),如圖4所示,發(fā)送端從MAC隊(duì)列中需要再取出3個(gè)數(shù)據(jù)分組,連同生成RTS的那個(gè)數(shù)據(jù)分組一起進(jìn)行聚合,從而產(chǎn)生包括n個(gè)聚合分組的聚合幀進(jìn)行發(fā)送。當(dāng)接收方收到該聚合幀后,通過塊確認(rèn)(BA)幀進(jìn)行回復(fù)確認(rèn)。
在本仿真中,考慮單跳網(wǎng)絡(luò)場(chǎng)景,即所有節(jié)點(diǎn)均能感知到彼此的數(shù)據(jù)傳輸。假設(shè)所有信道均為理想信道,即不考慮物理信道中的差錯(cuò)和誤碼。在本網(wǎng)絡(luò)場(chǎng)景中,50對(duì)收發(fā)節(jié)點(diǎn)隨機(jī)分布在100 m*100 m的矩形區(qū)域內(nèi),所有節(jié)點(diǎn)承載的業(yè)務(wù)類型為恒定比特率業(yè)務(wù)(Constant Bit Rate,CBR),數(shù)據(jù)分組大小為512字節(jié)??刂品纸M傳輸速率為2 Mbps,用于傳輸RTS、CTS以及ACK分組,數(shù)據(jù)分組的傳輸速率則為11 Mbps,用于傳輸DATA分組。TXOP長(zhǎng)度設(shè)置為1.0 ms,MAC隊(duì)列長(zhǎng)度為50,即MAC隊(duì)列中最大能存儲(chǔ)50個(gè)數(shù)據(jù)分組。在隨機(jī)競(jìng)爭(zhēng)過程中所使用的最小競(jìng)爭(zhēng)窗為CWmin=15,最大競(jìng)爭(zhēng)窗為CWmax=1023。其余參數(shù)設(shè)置可依照IEEE 802.11b標(biāo)準(zhǔn)[14]。本文考察的性能指標(biāo)包括網(wǎng)絡(luò)吞吐量和平均分組時(shí)延,其中分組時(shí)延主要包括MAC隊(duì)列時(shí)延、競(jìng)爭(zhēng)時(shí)延以及DATA分組的傳輸時(shí)延[15]。
為了驗(yàn)證本仿真的準(zhǔn)確性,將仿真結(jié)果與公式(4)進(jìn)行了對(duì)比,給出了在IEEE 802.11 DCF協(xié)議上加入幀聚合機(jī)制的飽和吞吐量隨著網(wǎng)絡(luò)中節(jié)點(diǎn)個(gè)數(shù)增加的變化情況,如圖5所示。可以看出,網(wǎng)絡(luò)的吞吐量與分析吻合很好,并且隨著節(jié)點(diǎn)個(gè)數(shù)的逐漸增大,幀聚合機(jī)制的飽和吞吐量呈現(xiàn)出了逐漸下降的趨勢(shì),這主要是由于使用了CSMA/CA機(jī)制,導(dǎo)致節(jié)點(diǎn)間的沖突隨著節(jié)點(diǎn)個(gè)數(shù)的增加而增大,從而降低了吞吐量性能[16]。
圖6比較了幀聚合機(jī)制與IEEE 802.11 DCF之間的吞吐量隨著節(jié)點(diǎn)業(yè)務(wù)量的增加的變化情況,此時(shí)網(wǎng)絡(luò)中存在50對(duì)收發(fā)節(jié)點(diǎn)。
圖5 幀聚合機(jī)制吞吐量仿真結(jié)果與分析結(jié)果對(duì)比
圖6 吞吐量隨節(jié)點(diǎn)業(yè)務(wù)量增加的變化
可以看出,隨著節(jié)點(diǎn)業(yè)務(wù)量的持續(xù)增加,IEEE 802.11 DCF與幀聚合機(jī)制的吞吐量性均呈現(xiàn)出逐漸上升的趨勢(shì),進(jìn)而隨著節(jié)點(diǎn)業(yè)務(wù)量的增加保持平穩(wěn),此時(shí)網(wǎng)絡(luò)達(dá)到了飽和狀態(tài)??梢钥闯觯捎昧藥酆蠙C(jī)制之后,IEEE 802.11 DCF的飽和吞吐量性能提升了約90%。
圖7給出了幀聚合機(jī)制與IEEE 802.11 DCF之間的平均分組時(shí)延隨著節(jié)點(diǎn)業(yè)務(wù)量的增加的變化情況,網(wǎng)絡(luò)中存在50對(duì)收發(fā)節(jié)點(diǎn)。可以看出,當(dāng)節(jié)點(diǎn)業(yè)務(wù)量較小時(shí),即業(yè)務(wù)量不超過10包/秒時(shí),兩種機(jī)制的平均分組時(shí)延均較小,因?yàn)榇藭r(shí)帶來(lái)的排隊(duì)時(shí)延和競(jìng)爭(zhēng)時(shí)延很小。而隨著節(jié)點(diǎn)業(yè)務(wù)量的持續(xù)增加,由于節(jié)點(diǎn)間的沖突加劇,使得兩者的平均時(shí)延均呈現(xiàn)出逐漸急劇上升的趨勢(shì),進(jìn)而達(dá)到飽和狀態(tài)??梢钥闯?,IEEE 802.11 DCF的平均分組時(shí)延比幀聚合機(jī)制高出了約65%。
圖7 分組時(shí)延隨節(jié)點(diǎn)業(yè)務(wù)量增加的變化
本文詳細(xì)介紹了基于IEEE 802.11DCF協(xié)議的幀聚合機(jī)制在NS-2平臺(tái)的實(shí)現(xiàn),并且與分析模型進(jìn)行了對(duì)比,驗(yàn)證了NS-2仿真平臺(tái)的準(zhǔn)確性,進(jìn)而對(duì)幀聚合機(jī)制的性能進(jìn)行了評(píng)估。本文實(shí)現(xiàn)的NS-2仿真與一些傳統(tǒng)的網(wǎng)絡(luò)仿真器相比,具有源代碼開放、功能模塊實(shí)現(xiàn)簡(jiǎn)單清晰、擴(kuò)展性較好等優(yōu)勢(shì),這對(duì)于無(wú)線網(wǎng)絡(luò)MAC協(xié)議的研究具有較強(qiáng)的實(shí)際應(yīng)用價(jià)值。
參考文獻(xiàn):
[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é)議實(shí)驗(yàn)設(shè)計(jì)[J].電子設(shè)計(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仿真實(shí)驗(yàn):多媒體和無(wú)線網(wǎng)絡(luò)通信[M].北京:電子工業(yè)出版社,2009.
[12]王強(qiáng),焦俊,孔文,等.基于NS2的固定和移動(dòng)節(jié)點(diǎn)的無(wú)線傳感網(wǎng)絡(luò)的仿真[J].合肥學(xué)院學(xué)報(bào):自然科學(xué)版,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.