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