李萌 姜慧 李金蔚 劉嬌 周新麗



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