無線自組網(wǎng)競爭類MAC協(xié)議分析及研究
2 幾種典型的競爭類MAC協(xié)議
為了避免隱藏終端和暴露終端問題以及信道使用公平性等問題,在無線自組網(wǎng)領(lǐng)域已提出了很多較為高效的MAC協(xié)議,典型的如:MACA,MACAW,802.11MAC,F(xiàn)AMA協(xié)議。本文將對以上幾種協(xié)議進行協(xié)議分析及比較。
2.1 多址訪問與碰撞回避(MACA)協(xié)議
MACA協(xié)議使用控制分組握手診斷來減輕隱藏終端干擾和使暴露終端個數(shù)最少。MACA協(xié)議采用兩種固定長度的短分組,即請求發(fā)送(RTS)和允許發(fā)送(CTS)。節(jié)點A發(fā)送數(shù)據(jù)給節(jié)點B時,首先向B發(fā)送一個RTS分組,RTS分組包括發(fā)送數(shù)據(jù)的長度。節(jié)點B收到RTS分組,并且當(dāng)前不在退避中,則立即應(yīng)答CTS分組,CTS分組也包含發(fā)送數(shù)據(jù)的長度。節(jié)點A收到CTS分組后,立即發(fā)送數(shù)據(jù)。旁聽到RTS分組的任何節(jié)點則推遲其發(fā)送,直到有關(guān)CTS分組發(fā)送完為止。旁聽到CTS分組的任何節(jié)點推遲其發(fā)送,推遲時間長度等于預(yù)定數(shù)據(jù)發(fā)送所需時間。如果發(fā)送節(jié)點沒有收到相應(yīng)的CTS幀,它將認為由于沖突RTS幀已經(jīng)遭到破壞,隨后執(zhí)行一個二進制指數(shù)退避算法BEB,延遲重發(fā)RTS幀。MACA協(xié)議的優(yōu)點是提高了信道的利用率,降低了數(shù)據(jù)幀發(fā)生沖突的概率,通過采用RTS/CTS機制,協(xié)議解決了隱藏終端問題,但暴露終端問題并沒有解決。而且MACA協(xié)議不能避免控制幀之間的沖突,同時使用BEB退避算法將會引發(fā)公平性問題。
2.2 MACAW
MACAW是對MACA的改進,它采取以下措施:1)用載波偵聽來避免RTS控制分組之間的碰撞,使用正確應(yīng)答ACK分組來輔助丟失分組的迅速恢復(fù)。報文的交互順序為RTS—CTS—DS—DATA—ACK。2)為防止正確應(yīng)答ACK分組的碰撞,原節(jié)點發(fā)送一個數(shù)據(jù)發(fā)送(DS)分組來提醒暴露終端正確應(yīng)答ACK分組即將發(fā)送。ACK和DS控制幀的使用,增加了數(shù)據(jù)傳輸?shù)目煽啃???刂茙珹CK作為鏈路層確認幀,它的使用能夠增加傳輸層的吞吐率。3)采用MILD(倍數(shù)遞增線性遞減)退避算法取代BEB退避算法。雖然MILD算法不能完全消除不公平現(xiàn)象,但它要比BEB算法公平的多。但是它仍然不能避免控制幀的沖突。MACAW的改進實際上是以增加協(xié)議開銷為代價的,同時只是部分解決了隱藏終端和暴露終端問題。
2.3 IEEE 802.11MAC協(xié)議
IEEE802.11MAC是以CSMA/CA為基礎(chǔ),具有分布式協(xié)調(diào)功能的MAC協(xié)議。該協(xié)議包括載波檢測(CS)機制、幀間間隔(IFS)和隨機退避(ra-ndom back-off)規(guī)程。站點要發(fā)送數(shù)據(jù)時,按照CSMA/CA的訪問方式接入信道,需要發(fā)送數(shù)據(jù)的終端首先監(jiān)聽信道的忙閑,如果空閑則可以進行發(fā)送處理,但不是馬上發(fā)送數(shù)據(jù)幀,而是由CSMA/CA分布算法,控制各種數(shù)據(jù)幀相應(yīng)的時間間隔(IFS),只有當(dāng)信道空閑的時間長度大于規(guī)定的幀間間隔IFS時,結(jié)點才會認為信道空閑,開始發(fā)送。如檢測到媒體正在傳送數(shù)據(jù),則該節(jié)點將推遲競爭信道,一直延遲到現(xiàn)行的傳輸結(jié)束為止。在延遲之后,該終端要經(jīng)過一個隨機退避時間重新競爭信道使用權(quán)。IEEE802.11MAC仍使用的是RTS/CTS握手機制,碰撞仍然會發(fā)生并且未解決隱藏節(jié)點和暴露節(jié)點問題,同時采用的二進制指數(shù)退避算法容易帶來信道的公平性問題。
2.4 FAMA
FAMA是一個描述一類無線信道接入?yún)f(xié)議的框架,這類協(xié)議在發(fā)送數(shù)據(jù)之前要先使用控制報文預(yù)約信道,該協(xié)議允許一次RTS—CTS成功握手連續(xù)發(fā)送多個數(shù)據(jù)報文,以此來提高信道的利用率。其中FAMA—NCS可被用于無線自組網(wǎng)絡(luò),F(xiàn)AMA—NCS采用了載波監(jiān)聽機制,并通過CTS控制報文的長度,避免了隱發(fā)送終端的影響。
3 OPNET平臺下各協(xié)議進程模型的構(gòu)建
對無線網(wǎng)絡(luò)MAC協(xié)議的研究中,協(xié)議狀態(tài)模型的建立是仿真分析的基礎(chǔ)和前提,本文利用Opnet仿真建模軟件,創(chuàng)建出了上述各協(xié)議的狀態(tài)分析模型。
3.1 Opnet建模環(huán)境
實驗選用opnet網(wǎng)絡(luò)仿真建模軟件來構(gòu)建上述各無線MAC協(xié)議的狀態(tài)模型。OPNET軟件是美國MIL3公司推出的專門用于對通信網(wǎng)進行仿真的軟件包,它可以提供大型通信網(wǎng)絡(luò)和分布系統(tǒng)的仿真建模環(huán)境,可以利用離散事件仿真技術(shù)來分析已建模系統(tǒng)的性能和行為。OPNET建模分為網(wǎng)絡(luò)模型、節(jié)點模型、進程模型三個層次。網(wǎng)絡(luò)模型是最高層次的模型,由網(wǎng)絡(luò)節(jié)點和連接網(wǎng)絡(luò)節(jié)點的通信鏈路組成,由該層模型可直接建立起仿真網(wǎng)絡(luò)的拓撲結(jié)構(gòu)。結(jié)點模型由各種協(xié)議模塊和連接協(xié)議模塊的各種連接方式組成,如物理接口模塊、MAC模塊、IP模塊、路由模塊等。在結(jié)構(gòu)上每個模塊對應(yīng)一個或多個進程模型,而進程模型由有限狀態(tài)機來描述,并采用C語言編程實現(xiàn)。
3.2 各協(xié)議進程模型的構(gòu)建
在Opnet中,是由具體的進程模型來實現(xiàn)各節(jié)點模型的功能。每個進程模型是一個由c代碼實現(xiàn)的有限狀態(tài)機。本文對以上4種協(xié)議進行了分析,并在此基礎(chǔ)構(gòu)建出各自的有限狀態(tài)機模型如下:
1)MACA協(xié)議進程模型狀態(tài)分析如圖2所示。
評論