李萌 姜慧 李金蔚 劉嬌 周新麗
摘 要:在物聯(lián)網(wǎng)系統(tǒng)中,由于首要要考慮能源效率問題,所以,MAC協(xié)議設(shè)計不同于傳統(tǒng)互聯(lián)網(wǎng)。文中綜述了不同MAC協(xié)議的核心機(jī)制、特點(diǎn)和優(yōu)缺點(diǎn),同時對其競爭式、分配式和混合式中典型的MAC協(xié)議進(jìn)行了闡述。
關(guān)鍵詞:物聯(lián)網(wǎng);MAC協(xié)議;競爭式;分配式;混合式
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2015)12-00-03
0 引 言
目前,物聯(lián)網(wǎng)應(yīng)用較為廣泛,但技術(shù)還未完全成熟,標(biāo)準(zhǔn)也未統(tǒng)一。物聯(lián)網(wǎng)目前主要的技術(shù)有計算與服務(wù)技術(shù)、網(wǎng)絡(luò)與通信技術(shù)、感知與標(biāo)識技術(shù)、管理與支撐技術(shù)[1]。對于以上四個主要技術(shù),都需重點(diǎn)研究如何應(yīng)用MAC協(xié)議。本文對目前典型的MAC協(xié)議進(jìn)行了分類,并從核心機(jī)制、特點(diǎn)和優(yōu)缺點(diǎn)三個角度進(jìn)行分析,力求起到歸納總結(jié)目前已有的MAC協(xié)議的作用。
根據(jù)MAC協(xié)議的信道訪問方式,將MAC協(xié)議分為競爭式、分配式和混合式。其中,競爭式MAC協(xié)議按需分配信道,分配式MAC協(xié)議給不同的節(jié)點(diǎn)分配不同的信道,混合式MAC協(xié)議在了解信道的情況之后,能夠在任何時隙傳送信息。
1 競爭式MAC協(xié)議
基于競爭的MAC協(xié)議有三個優(yōu)點(diǎn):
(1)按需配給信道,故可以較理想地滿足節(jié)點(diǎn)數(shù)和網(wǎng)絡(luò)載荷的變動;
(2)可以較廣泛地應(yīng)對網(wǎng)絡(luò)拓?fù)渥儎樱?/p>
(3)不需要繁瑣的時間同步。
這樣的協(xié)議主要有S-MAC協(xié)議[2]、T-MAC協(xié)議[3]、Sift協(xié)議[4]和WiseMAC 協(xié)議[5]。下面從它們的核心機(jī)制、特點(diǎn)以及優(yōu)缺點(diǎn)分別展開討論。
1.1 S-MAC協(xié)議(Sensor-Multiple Access Control協(xié)議)
在2002年,加州大學(xué)(University of Southern California)的Wei Ye等人主張在以IEEE802.11協(xié)議SC9636-006的鋪墊上,推出一種新的有關(guān)如何在傳感器網(wǎng)絡(luò)中節(jié)省消耗能量的設(shè)計,適用于多跳網(wǎng)絡(luò)。
此協(xié)議利用周期性睡眠、自適應(yīng)監(jiān)聽、串?dāng)_避免和分片傳輸機(jī)制這四種關(guān)鍵技術(shù)來改善能量消耗大這一缺陷。在一個調(diào)度周期內(nèi),會有不同調(diào)度方式的同步信號數(shù)據(jù)包被節(jié)點(diǎn)所接收,節(jié)點(diǎn)會默認(rèn)一種調(diào)度方式并以數(shù)據(jù)包的形式廣播傳送出去。通常情況下,若鄰居節(jié)點(diǎn)只有一個,則節(jié)點(diǎn)會選一種新的調(diào)度方式;若不止一個,則節(jié)點(diǎn)協(xié)調(diào)這兩種不同的調(diào)度方式,然后廣播一種能保持最大長度監(jiān)聽時間的調(diào)度方式。采用流量自適應(yīng)監(jiān)聽是為了防止通信時間延遲,停止通信后,鄰節(jié)點(diǎn)被喚醒來保持一段時間的監(jiān)聽,不需要等到下一個監(jiān)聽周期,而是立即收到信息,最終使得延遲時間縮短。
S-MAC協(xié)議的串?dāng)_避免機(jī)制一方面選用物理偵聽,處理了隱藏節(jié)點(diǎn)問題并避免沖突,另一方面選用虛擬偵聽,節(jié)點(diǎn)在收到NAV(Network Allocation Vector)的時候?qū)⒀杆傩菝?,以防止各信道之間產(chǎn)生不同的信號。此外,該協(xié)議還會采用分片傳輸技術(shù),即把大信息包劃分為若干個小數(shù)據(jù)包并將它們一次傳遞,但是只使用一個RTS/CTS(Request to Send/Clear to Send)控制分組作為交互將它們同時傳遞,使能量的消耗和傳送時間減少。
1.2 T-MAC協(xié)議
T-MAC協(xié)議(Timeout-Multiple Access Control)動態(tài)地調(diào)整一個調(diào)度周期內(nèi)的活躍時間長度,以改變此周期內(nèi)所占的時間比率來傳遞數(shù)據(jù),屬于一種自適應(yīng)調(diào)整占空比的方法。該協(xié)議是以一種突發(fā)的方式來發(fā)送數(shù)據(jù),并不斷在周期時間內(nèi)喚醒節(jié)點(diǎn),使其處于活躍狀態(tài),當(dāng)與鄰居通信后,便進(jìn)入睡眠,當(dāng)開始下一個周期后才被喚醒。同時,又有新的消息將緩存在傳送隊列中,節(jié)點(diǎn)之間使用RTS-CTS-DATA-ACK的方法進(jìn)行單方向通信,來保證消息的可靠傳輸。
此協(xié)議采用同步周期性收聽、RTS操作和選擇,以及可選擇串?dāng)_避免機(jī)制這三種關(guān)鍵技術(shù)來實(shí)現(xiàn)。在數(shù)據(jù)傳輸?shù)倪^程中,采取在每個周期內(nèi)不斷地發(fā)送SYNC幀來維持節(jié)點(diǎn)之間的同步。首先節(jié)點(diǎn)會監(jiān)聽一段時間。當(dāng)在此時間內(nèi),節(jié)點(diǎn)未接收到SYNC幀,將采用某一默認(rèn)的調(diào)度方式,并以SYNC幀形式來廣播。
RTS發(fā)送結(jié)束到開始發(fā)送CTS的過程所用時TA取值范圍為:TA>C+R+T,其中C為競爭信道用時,R為發(fā)送RTS所需要時間。另外,T-MAC協(xié)議中的串?dāng)_避免機(jī)制是可以選擇的。
早睡問題即指節(jié)點(diǎn)在鄰居節(jié)點(diǎn)準(zhǔn)備向其傳送數(shù)據(jù)時進(jìn)入睡眠。解決早睡問題的方式有:
(1)預(yù)請求發(fā)送 FRTS機(jī)制(Future Request-to-Send)的作用機(jī)制如圖1所示。
(2)滿緩存區(qū)優(yōu)先機(jī)制。當(dāng)緩沖區(qū)接近飽和時,節(jié)點(diǎn)不再給RTS幀答復(fù)CTS幀,而是立即把RTS幀發(fā)給緩沖區(qū)內(nèi)數(shù)據(jù)包的目的節(jié)點(diǎn),從而構(gòu)建數(shù)據(jù)傳輸。這個方法降低早睡發(fā)生的頻率,但會在傳送較大的數(shù)據(jù)量時加大產(chǎn)生沖突的風(fēng)險。
1.3 Sift協(xié)議
該協(xié)議充分考慮了WSN的三個特點(diǎn):(1)事件驅(qū)動的WSN分別在事件的檢測和傳遞上有空間、時間的相關(guān)性;(2)并非所有節(jié)點(diǎn)都需要報告事件;(3)感知事件的節(jié)點(diǎn)密度是時變的。而它的設(shè)計目標(biāo)是:當(dāng)共享信道有N個節(jié)點(diǎn)一同檢測到相同事件時,期望有小于N的R個節(jié)點(diǎn)可于盡量短的時間里不沖突的將檢驗過的信息發(fā)出,同時抑制剩余N-R個節(jié)點(diǎn)的消息發(fā)送。
基于事件驅(qū)動的特點(diǎn)和節(jié)點(diǎn)工作的特點(diǎn),Sift協(xié)議避開了發(fā)送窗口的數(shù)量CW較大時導(dǎo)致時間延遲偏長的可能性,而選用CW值不變的方法。先假設(shè)節(jié)點(diǎn)傳送信息時,有N個節(jié)點(diǎn)在競爭發(fā)送,則其工作過程為:如果首時隙內(nèi)原節(jié)點(diǎn)沒有傳達(dá)信息,其他節(jié)點(diǎn)也沒傳達(dá),則節(jié)點(diǎn)就減掉原設(shè)的發(fā)送節(jié)點(diǎn)的個數(shù),同時提高節(jié)點(diǎn)在次時隙中傳輸數(shù)據(jù)的機(jī)率;如果仍然沒有節(jié)點(diǎn)選在第二個時隙,則節(jié)點(diǎn)繼續(xù)減去假定個數(shù),再進(jìn)一步加大選在下一時隙傳輸數(shù)據(jù)的機(jī)率......于是我們得到第r個節(jié)點(diǎn)發(fā)送數(shù)據(jù)時的概率公式:
Sift協(xié)議巧妙地利用WSN流量的突發(fā)性及局部相關(guān)性的特點(diǎn),能夠在各個時隙使用不同的傳輸機(jī)率,從而使短時間里部分節(jié)點(diǎn)可以不沖突地傳播信息,達(dá)到了既節(jié)能又省時的效果。但此協(xié)議只從傳輸數(shù)據(jù)的節(jié)點(diǎn)出發(fā)改善問題,對接收信號節(jié)點(diǎn)的空閑狀態(tài)考慮欠周,要求節(jié)點(diǎn)之間保持同步,而喚醒時間又會隨著節(jié)點(diǎn)周期睡眠用時增大而延長,這樣就加大了傳輸調(diào)控成本,因而仍然需要減短前導(dǎo)序列長度。
1.4 WiseMAC協(xié)議
WiseMAC協(xié)議是針對sift協(xié)議的不足加以改良之后產(chǎn)生的,它采用了動態(tài)調(diào)整前導(dǎo)長度的辦法。接到信號的節(jié)點(diǎn)會在最近一次的ACK報文里夾帶下回喚醒時間,讓傳輸節(jié)點(diǎn)獲知每一個下游節(jié)點(diǎn)的調(diào)度,從而縮短前導(dǎo)長度,而且以隨機(jī)喚醒前導(dǎo)的辦法來降低固定前導(dǎo)沖突的機(jī)率。
這種方法能比較理想的應(yīng)對網(wǎng)絡(luò)的流量變動,不過因為要緩存鄰節(jié)點(diǎn)的信道偵聽時長,使得它的采樣調(diào)度表緩存開銷較大,增加了實(shí)現(xiàn)該協(xié)議的難度,這種缺點(diǎn)在網(wǎng)絡(luò)密度較大時更為突出,而且即使通過非堅持型CSMA訪問去減少空閑監(jiān)聽,依然不能解決隱藏終端的弊端??傊琖iseMAC協(xié)議比較適合用于負(fù)載較小的訪問控制。
2 分配式MAC協(xié)議
分配式MAC協(xié)議的信道訪問方式主要有時分多址(TDMA)、頻分多址(FDMA)和碼分多址(CDMA)。它們分別將不同時槽、頻率、正交碼映射為不同的節(jié)點(diǎn),并分配給不同的客戶。例如,當(dāng)使用時分多址(TDMA)調(diào)度方式的時候,數(shù)據(jù)流分成幀,幀又分成不同的時槽,每個用戶被分配一個時槽,每個節(jié)點(diǎn)通過其特定的時槽即可實(shí)現(xiàn)無沖突訪問信道。
分配式MAC協(xié)議目前主要有LEACH協(xié)議[6]、DEANA協(xié)議[7]、TRAMA協(xié)議[8]、BMA協(xié)議[9]和D-MAC協(xié)議。下面從它們的核心機(jī)制、特點(diǎn)以及優(yōu)缺點(diǎn)分別展開。
2.1 LEACH協(xié)議
LEACH協(xié)議(低功耗自適應(yīng)集簇分層型協(xié)議即Low-Energy Adaptive Clustering Hierarchy)基于LEACH算法。該算法平分整個網(wǎng)絡(luò)的能量負(fù)載于傳感器的每一個節(jié)點(diǎn)中。
該協(xié)議采用基于TDMA/CDMA的MAC層機(jī)制,融合了高效能的集群路由和媒體訪問的思想,以及應(yīng)用程序特定的數(shù)據(jù)聚合。LEACH包含新的、分布式集群形成的技術(shù),這讓它能夠自組織大量的節(jié)點(diǎn),負(fù)載在所有節(jié)點(diǎn)上均勻分布,并且能夠通過分布式信號處理來節(jié)省通信資源。
該協(xié)議可以減少能耗,但由于未說明簇頭節(jié)點(diǎn)的分布情況,可能導(dǎo)致一些節(jié)點(diǎn)的周圍不存在簇頭節(jié)點(diǎn),而另一區(qū)域均為簇頭節(jié)點(diǎn)。此外,因為該協(xié)議假設(shè)全部節(jié)點(diǎn)的初始能量等同,任何節(jié)點(diǎn)均可以與匯聚節(jié)點(diǎn)直接通信,且成為簇頭的節(jié)點(diǎn)均消耗相等的能量,所以該協(xié)議不適合規(guī)模較大的無線傳感網(wǎng)絡(luò)和節(jié)點(diǎn)能量不均衡的網(wǎng)絡(luò)。
2.2 DEANA協(xié)議
圖2所示為DEANA協(xié)議(分布式能量感知節(jié)點(diǎn)活動協(xié)議即Distributed Energy-Aware Node Activation)的時間幀劃分,且兩階段循環(huán)進(jìn)行。在隨機(jī)訪問階段,對節(jié)點(diǎn)進(jìn)行了添加操作、刪除操作以及時間同步操作。其控制時槽長度極短。
該協(xié)議可以排除某些串音問題,但各個節(jié)點(diǎn)要求較精準(zhǔn)的時間同步。
2.3 TRAMA協(xié)議
在TDMA機(jī)制的基礎(chǔ)上,加入流量自適應(yīng)技術(shù),使得節(jié)點(diǎn)根據(jù)實(shí)際流量分配時槽來進(jìn)行無沖突通信,減少空閑偵聽比例,從而降低能量消耗。
通過AEA算法判斷得出,節(jié)點(diǎn)共有三類存在的狀態(tài),依次是發(fā)送、接收和睡眠狀態(tài)。其中,處于發(fā)送狀態(tài)的節(jié)點(diǎn)在兩跳鄰居內(nèi),擁有最高優(yōu)先權(quán);處于接收狀態(tài)的節(jié)點(diǎn)則為目前指定接收方。剩余的節(jié)點(diǎn)均處在睡眠狀態(tài)。
該協(xié)議需要節(jié)點(diǎn)具有較大存儲空間與較高的計算性能,應(yīng)用于周期性數(shù)據(jù)采集及監(jiān)測。
2.4 BMA協(xié)議
BMA協(xié)議(Bit-Map-Assisted)在TDMA機(jī)制基礎(chǔ)上,通過簇內(nèi)分配時隙的方法,節(jié)點(diǎn)可以根據(jù)自身固有時隙實(shí)現(xiàn)與簇頭的交流,從而規(guī)避空閑監(jiān)聽。每個周期由三個階段組成,即簇內(nèi)節(jié)點(diǎn)請求,簇頭廣播,數(shù)據(jù)發(fā)送和接收。
該協(xié)議不能適應(yīng)網(wǎng)絡(luò)流量變動,也不能完全利用信道。同時,簇頭節(jié)點(diǎn)也需有較好的時鐘同步、通信和計算性能,而且耗能較大。
2.5 D-MAC協(xié)議
D-MAC協(xié)議(Data gathering tree-based MAC)是在S-MAC和T-MAC協(xié)議的基礎(chǔ)上,采用ACK應(yīng)答機(jī)制和交錯調(diào)度機(jī)制。節(jié)點(diǎn)被周期性的劃分為三個階段,圖3中所示機(jī)制保證了數(shù)據(jù)的連續(xù)傳播。
該協(xié)議解決了睡眠延時問題和數(shù)據(jù)轉(zhuǎn)發(fā)停頓問題,適用于邊緣節(jié)點(diǎn)數(shù)據(jù)流量較小而中間節(jié)點(diǎn)數(shù)據(jù)流量較大的網(wǎng)絡(luò)。但需較精確的時鐘同步,并且該協(xié)議不適應(yīng)規(guī)模較大的網(wǎng)絡(luò)[10]。
3 混合式MAC協(xié)議
為了解決競爭式MAC協(xié)議能量效率不高,以及分配式MAC協(xié)議不能較好地適應(yīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)變化的問題,混合式MAC協(xié)議綜合以上各協(xié)議的優(yōu)點(diǎn),提升整體性能?;旌鲜組AC協(xié)議主要有Z-MAC協(xié)議。下面從核心機(jī)制、特點(diǎn)、優(yōu)缺點(diǎn)進(jìn)行介紹。
Z-MAC協(xié)議(Zebra MAC)[8]以載波偵聽多路訪問(CSMA)機(jī)制為基礎(chǔ)。當(dāng)競爭激烈時,引入TDMA機(jī)制處理信道沖突問題。競爭有所緩和后,便又采用CSMA機(jī)制,如此往復(fù),在CSMA和TDMA兩種機(jī)制之間轉(zhuǎn)換。
節(jié)點(diǎn)能夠于任何時隙傳送信息,但需先了解信道情況。通過DRAND算法給每一個節(jié)點(diǎn)特定的時隙,使其具有傳送優(yōu)先權(quán)。該協(xié)議的完成主要分為鄰居發(fā)現(xiàn)、時隙分配、本地時間幀交換和全局時間同步四個過程。
Z-MAC協(xié)議在最初階段對全局時鐘同步的精確程度要求較高,并且傳輸延時較長,控制開銷較大。
4 結(jié) 語
本文對目前典型的MAC協(xié)議的核心機(jī)制、特點(diǎn)和優(yōu)缺點(diǎn)進(jìn)行闡述,為日后進(jìn)一步研究如何減少沖突和串音、降低占空比、減少能耗等問題提供參考。
參考文獻(xiàn)
[1]孫其博,劉杰,黎羴.物聯(lián)網(wǎng):概念、架構(gòu)與關(guān)鍵技術(shù)研究綜述[J].北京郵電大學(xué)學(xué)報, 2010,33(3):43-47.
[2]郭彬,李喆,夏鵬.無線傳感器網(wǎng)絡(luò)流量自適應(yīng)混合MAC協(xié)議[J].計算機(jī)工程,2008,34(17):31-33.
[3]周麗敏,田斌,廖婷.無線傳感器網(wǎng)絡(luò)T-MAC協(xié)議的研究[J].傳感器與微系統(tǒng),2007(6):36-38.
[4] Jamieson K,Balakrishnan H,Tay YC.Sift:A MAC protocol for event-driver wireless sensor networks[R].Technical Report, MIT-LCS-TR-894,MIT, 2003.
[5] El-Hoiydi A, Decotignie JD.WiseMAC:An ultra low power MAC protocol for the downlink of infrastructure wireless sensor networks[C].In:Campolargo M, ed.Proc. of the ISCC 2004.Alexandria: IEEE Computer Society,2004:244-251.
[6] Heinzelman W B,Chandrakasan A P,Balakrishnan H.An application-specific protocol architecture for wireless microsensor networks[J].Wireless Communications IEEE Transactions on,2002,1(4):660-670.
[7]朱佳奇,胡鋼,陳世志.基于DEANA協(xié)議的分簇網(wǎng)絡(luò)性能研究[J].計算機(jī)工程,2010, 36(3): 92-93.
[8]蹇強(qiáng),龔正虎,朱培棟.無線傳感器網(wǎng)絡(luò)MAC協(xié)議研究進(jìn)展[J].軟件學(xué)報,2008,19(2):389-403 .
[9]季炎,張維勇,許磊.一種基于時分復(fù)用的BMA協(xié)議改進(jìn)方法[J].合肥工業(yè)大學(xué)學(xué)報,2009,32(12):1842-1845.
[10]侯躍霞.基于S-MAC協(xié)議無線傳感網(wǎng)絡(luò)節(jié)能技術(shù)研究[D].西安:西安電子科技大學(xué), 2010.