趙 靜, 李瑞芳, 李 莉, 喬光鑫, 楊麗娟
(沈陽化工大學 計算機科學與技術學院, 遼寧 沈陽 110142)
基于NS2的水聲傳感器網絡MAC層協議分析
趙 靜, 李瑞芳, 李 莉, 喬光鑫, 楊麗娟
(沈陽化工大學 計算機科學與技術學院, 遼寧 沈陽 110142)
MAC協議決定了水聲信道的使用方式,作為水聲網絡的關鍵技術之一,它越來越受到人們的普遍關注,它的研究對水聲傳感器網絡的發展具有至關重要的作用.經過分析比較現有的陸上無線通信協議,選取其中性能較適用于水聲信道的TDMA、802.11和S-MAC協議進行研究分析,對三者的各方面性能進行比較,并針對水聲信道特點提出改進方案:利用TDMA的時延,交錯設置幀周期;使IEEE802.11協議一次握手傳輸多個數據并采用周期性睡眠機制;對SMAC協議采用事先預測網絡流量,動態調整占空比.設計了水聲信道MAC層協議的仿真方法,通過修改NS2中已有無線通信協議的物理層和鏈路管理相關代碼,實現了水下通信環境的模擬.
水聲傳感器網絡; MAC協議; NS2
水聲傳感器網絡(Underwater Acoustic Sensor Networks)是水聲通信技術與傳感器網絡結合所產生的一個新的研究領域[1].它為人類探索海洋奧秘、開發利用海洋資源起到關鍵作用.然而,由于水聲信道的有限帶寬、高誤碼率以及長傳播時延,使水聲傳感器網絡相對于地面傳感器網絡的設計面臨著巨大的挑戰.MAC協議在水聲傳感器網絡的設計中起著重要的作用[2],其決定了水聲信道的分配方式,也影響著水聲通信的能量消耗和傳輸效率.一些研究學者已經針對水聲通信提出了幾種MAC協議,但目前該領域還沒有一種完全適合水聲通信并得到廣泛認可的MAC協議.因此,對于水聲傳感器網絡MAC協議的研究仍是現階段該領域的研究熱點.
本文通過對MAC協議相關性能指標的分析和水聲傳感器網絡MAC協議性能要求的研究,設計了水聲信道MAC層協議仿真方法,并對相關協議提出了改進意見.
MAC協議決定著信道的分配方式,解決信道的接入問題.可以根據以下幾個指標對MAC層協議的優劣進行評定,其中包括網絡的吞吐量、網絡的數據丟包率、網絡的平均時延和延時抖動等.網絡環境的多種多樣,并且應用需求的不同,因此設計MAC層時對各項指標的偏重不同.陸地通信時間短,延時可以被忽略,因此對延時要求不高.相比水下通信而言,復雜多變的水聲環境,使通信首要考慮到延時長短、能耗高低、可擴展性情況、吞吐量高低等問題.以下對重要指標進行說明[3]:
(1) 網絡的吞吐量:表示在不丟包情況下,目的節點在單位時間內成功接收到的數據包總數.網絡的平均吞吐量表示網絡成功發送的數據包數,主要用于衡量網絡利用率和網絡數據最大容量.MAC層的吞吐量包含了控制包的流量,與應用層的吞吐量不一樣,在仿真中進行比較的是應用層的吞吐量,指的是目的節點在單位時間里成功接收到的數據報文的總數,它的計算方法是在應用層收到的正確數據包除以仿真時間.
(2) 網絡的數據丟包率:指網絡中丟失的數據包數和總的發送數據包數的比值.
(3) 網絡的平均時延:指數據包從源節點到達目的節點在網絡中的傳播時間.發送節點發送數據幀信息,到達接收節點并實現成功接收所需要的平均時間.網絡時延越小說明網絡性能越好.
(4) 能耗:反映通信過程中網絡節點的耗能問題.通常節點耗能主要來源于數據包沖突、空閑偵聽以及過度偵聽、控制幀負擔過大.對于水聲傳感器網絡,水中的節點能量主要靠電池,而水下的能量更換和補充需要消耗過多的人力和物力資源.因此需將能量問題考慮到MAC 協議設計中,保持節點正常工作效率,延長網絡壽命.
隨著陸上無線網絡的普及,已有多種優秀的MAC協議被提出并得到廣泛使用,按照使用介質的方式,可將MAC協議分為固定訪問方式的MAC協議、隨機競爭訪問方式的MAC協議[4].其中,固定訪問方式的MAC協議主要有:FDMA、TDMA、CDMA.FDMA技術需將頻帶進行劃分,這對于帶寬較窄的水聲信道并不適合.CDMA技術的多徑效應嚴重,并不適合于分布式網絡.TDMA機制沒有數據碰撞重傳現象,并且在數據進行傳輸時不需要太多的控制信息;節點空閑時進入睡眠狀態.隨機競爭訪問方式的MAC協議分為基于ALOHA的MAC 協議、基于握手機制的MAC協議以及基于睡眠機制的 MAC 協議.作為基于握手機制MAC協議代表的IEEE802.11MAC協議其分布式協調(DCF)工作模式采用帶沖突避免的載波偵聽多路訪問(CSMA/CA)協議.基于睡眠機制的S-MAC和T-MAC協議從能量節約角度出發很好地解決了能量受限網絡的耗能問題.除此之外還有MACA協議、MACAW協議等,鑒于水聲傳感器網絡的特點,對其中的TDMA、IEEE802.11和S-MAC三種協議進行分析、比較,研究其在水聲信道中的應用和改進方法.
2.1 TDMA協議
TDMA協議屬于一種固定方式訪問的MAC層協議,按照固定方式進行訪問時避免了數據沖突,并且由數據沖突引起的額外耗能減少,信道利用率由此提高.TDMA技術將時間劃分為眾多時隙,以此供給不同用戶使用,所有用戶共同使用頻帶.圖1為N時間片的TDMA多址方式.從圖1可以看出:該協議將時間分為多個循環周期,每個循環周期又分為N個時間片,各時間片分別由數據包傳送時隙和保護時隙組成,保護時隙確保了數據的正確傳輸.

圖1 TDMA協議時間分片
TDMA技術通信時間短,用戶對信道無競爭,所以數據沖突較少.水聲傳播速率約為1 500 m/s,相比于光速3×108m/s低很多,因此水聲通信時延變大,加之時延動態變化,TDMA協議時間片內的保護時隙會變長,整個時間片由此變大,致使網絡吞吐量降低.TDMA協議要求嚴格的時間同步,這對于時延動態變化的水下網絡是非常困難的,該協議的另一缺點是它通常用在固定拓撲結構的網絡中,因此不能處理好節點移動、失效和新節點加入的情況,綜上而言傳統的TDMA協議不能直接應用于水聲通信網絡[5],需要進一步的改進.
2.2 IEEE802.11協議
IEEE802.11協議目前被廣泛應用于無線網絡.它采用載波偵聽多路復用和沖突避免協議(Carrier Sense Multiple Access with Collision Avoidance,CSMA/CA),以此當作接入方式,此外還采用了停止等待協議(Stop & wait).
IEEE802.ll 協議支持兩種模式:分布式協調功能DCF(Distributed Coordination Function)和點協調功能 PCF(Point Coordination Function).其具體架構如圖2[6]所示.

圖2 IEEE802.11協議結構框架
DCF數據傳輸技術:基本接入方式和請求發送/允許發送(Request To Send/Clear To Send,RTS/CTS)方式[4].這兩種模式基于CSMA/CA機制,在計算隨機退避時間時都采用二進制退避算法.
這里主要介紹RTS/CTS的接入模式,DCF
的RTS/CTS的接入模式如圖3[7]所示.首先,等待DCF幀間隔(DCF Inter-frame Space,DIFS)后,發送節點向目的節點發送RTS信號,表明發送節點要向目的節點發送若干數據,收到這個RTS的每個節點都根據持續時間域(Duration field)來設置它的NAV.目的節點收到RTS后,在等待短幀間間隔(Short Inter-frame Space,SIFS)后,向所有節點發出CTS信號,表明已準備就緒,發送節點可以發送數據,而其他節點停止向該目的節點發送數據;雙方在成功交換RTS/CTS信號后才開始傳送數據,從而保證數據的正確傳遞,減少沖突發生.在SIFS間隔后,發送節點向目的節點發送數據.目的節點在接收到數據后等待SIFS,返回給發送節點應答幀,表明數據接收完畢.此時傳輸過程完成,這時每個節點的NAV為0,表明介質空閑,可以開始下一個傳輸周期.

圖3 RTS/CTS接入模式
RTS/CTS機制可有效解決隱藏終端,數據沖突減少,提高了正確數據傳輸率.在水聲傳感器網絡中,節點間因接收數據產生的能耗最多,而采用預先握手機制的RTS/CTS模式,降低了數據沖突,一方面既降低了無效數據的發送,另一方面又確保了數據傳輸正確率,但是該協議采用了載波偵聽機制,其缺點是空閑偵聽造成更多的能量消耗,所以需要對該協議進行改進,從而解決水聲通信環境中頻繁的空閑偵聽產生的能量消耗.
2.3 S-MAC協議
S-MAC協議是一種節能MAC協議,在2003年由南加州大學的weiye等人提出,它繼承了IEEE802.11協議和RAMAS協議的基本思想,并在此為基礎以提高能效為目標進行了相關改進,很好地解決了能量損耗問題,并保證了網絡的可擴展性[8].S-MAC協議采用4種主要機制[4]:周期性偵聽和睡眠機制;流量自適應偵聽機制;串音避免機制;消息傳遞.S-MAC協議的基本調度周期[6]如圖4所示.

圖4 S-MAC基本調度周期
S-MAC協議將時間分為若干幀,每幀包括偵聽階段和睡眠階段.偵聽階段中同步階段節點廣播SYNC保持同步,包含了節點的時間表.活動階段中主要完成數據通信,并發送(或轉發)在睡眠階段發送隊列內積存的數據分組.睡眠階段中節點進入睡眠狀態以節省能量.其中:tlisten是節點偵聽時間;tsleep是節點睡眠時間;tSYNC是節點發送同步幀的時間;tRTS/CTS是節點收發RTS/CTS的時間.則有如下公式[6]:
tlisten=tSYNC+tRTS/CTS.
(1)
(1) 傳統的TDMA協議不能直接用于水聲傳感器網絡.利用集中式控制結構特點,命名一個協調節點作為中心節點來控制整個網絡中的其他節點,例如控制同步時間,充分利用水下通信時延長的特點,交錯設置幀周期,接收上一個周期的其余數據,使得中心節點一直接收數據,以此充分利用時延.各數據時隙之間設有保護時隙.控制中心可以利用一定算法預知各檢測節點的傳輸時延,并將時延按從小到大排序,有效預防數據重疊.另外還可以從載波偵聽機制聯合TDMA協議對MAC層協議進行設計,這是MAC協議涉及的另一方向.
(2) IEEE802.11協議采用載波偵聽機制,而載波的空閑偵聽對水聲網絡產生巨大的能量消耗.針對能耗問題,可以引進周期性的睡眠偵聽機制,S-MAC協議就是在IEEE802.11基礎上進行相關的改進,有效解決了能耗問題.除此之外,還可以允許一次握手期間傳送多個數據幀,達到數據的高效傳輸.
(3) S-MAC協議具有很好的節能特性,很好地解決了水聲網絡的耗能問題.相比于協議IEEE802.11,S-MAC協議通過延長其他節點的睡眠時間,數據碰撞率得以降低,從而減少了因空閑偵聽產生的能耗;該協議因周期休眠使得時延顯著,并且會出現延遲每跳積聚現象,對此可利用流量自適應機制,減少數據傳輸延遲;但是當信道中無數據傳輸時,該協議固定不變的占空比使得一些節點仍處于偵聽狀態,不能及時進入睡眠狀態,該協議對網絡流量的動態變化適應能力較弱.針對這個問題,可以事先預測網絡流量,對占空比進行動態調整.若網絡中數據傳輸增加,對S-MAC的單個長周期進行n個短周期的劃分,通過一劃多的方法提高占空比來適應流量的增加[6].
目前沒有特定的水聲傳感器網絡的MAC協議,只有在現有的無線MAC層協議的基礎上做一些改進來適應水聲通信的要求,對水聲MAC協議的設計仍需要更深一步的研究.
4.1 仿真軟件介紹
為比較上述協議在水聲傳感器網絡中的優劣,利用仿真軟件對網絡性能進行分析.目前比較流行的仿真軟件有OPNET,NS2,OMNET++等,NS2[9]是一款開放源代碼的網絡模擬軟件,它支持眾多的協議,并提供了豐富的測試腳本,可以在計算機上動態仿真有線網絡或無線網絡的運行,由此選用NS2作為實驗仿真平臺.
NS2(Network Simulator version 2)最初由UC Berkeley開發,是面向對象的網絡模擬工具,可以模擬整個網絡的運行狀態,其本身有一個模擬時鐘,由離散事件驅動所有的模擬,由C++語言實現網絡元素,由OTcl語言編寫網絡模擬過程腳本文件.
如圖5[9]所示,使用NS2模擬網絡環境,首先考慮要仿真的網絡類型、拓撲結構和源代碼修改或添加等問題.

圖5 NS2基本操作流程
如果仿真涉及到新協議的編寫或對現有協議的修改,則需要對NS2的C++源碼層進行添加、修改、重新編譯和調試;如果仿真只涉及到解釋層,無需修改代碼,用戶可直接編寫Tcl/OTcl代碼,利用現有的仿真元素進行仿真即可.仿真結束后會將生成的仿真結果存放在對應的Trace文件中,通過NAM進行生動的動態展現;通過GAWK工具對該仿真結果的內容進行分析從而得到想要的最終結果;可通過XGraph或GNUPLOT得到靜態圖形.
4.2 仿真實驗舉例
通過簡單的仿真實驗模擬網絡的數據傳輸過程,并通過現有工具分析得到仿真結果,展示NS2仿真模擬的大致過程.實驗設置仿真模型,MAC協議設置為SMAC協議,并得到網絡仿真結果.
4.2.1 水聲環境建模
水聲信道受海底和海面環境影響較大,時延長且動態變化、噪聲強、多途效應、多普勒頻移等問題尤為嚴重.聲波在水中的傳播速度主要受深度、鹽度、溫度等因素影響,且這些因素互相關聯,可以通過MacKenzie公式[10]計算水聲速率.聲傳播損失主要來源于幾何衰減、吸收衰減和散射.Thorp公式總結了海水對聲波的吸收系數,并且根據傳播的幾何形狀有不同種情況的幾何衰減.水聲信道受環境噪聲的影響較大,例如潮汐現象、雷雨天氣、海浪及船只噪聲等.水下環境噪聲主要有四部分:渦流噪聲、船運行噪聲、風噪聲以及熱噪聲.深海環境不同于淺海,很少受到港口地理位置和周圍環境的影響.除此之外多徑效應嚴重,由此產生的多普勒頻移也很難避免.
水聲環境建模是一個復雜的過程,但可以通過修改NS2中已有無線網絡通信協議的相關代碼,構建水下網絡通信模擬環境.為簡化實驗過程,實驗選取水聲傳播速率1 500 m/s,通信頻率范圍設置為3~13 kHz,帶寬為10 kHz.節點的通信半徑為1 000 m.仿真網絡中的每個節點都采用統一的能量模型,初始能量是15 J,節點發送報文時的功率是0.386 W,接收報文時的功率是0.368 2 W,空閑偵聽狀態下的功率是0.344 2 W,睡眠狀態下的功率是0.000 05 W.整個網絡的仿真時間設定為400 s,仿真實驗網絡層采用AODV路由協議.
set opt(rp) AODV; # routing protocol script
set opt(stop) 400.0; # simulation time
set opt(energymodel) EnergyModel
set opt(initialenergy) 15
$ns_ node-config-adhocRouting $opt(rp)
……
-energyModel $opt(energymodel)
-idlePower 0.3442
-rxPower 0.3682
-txPower 0.386
-sleepPower 0.00005
-transitionPower 0.05
-transitionTime 0.0005
-initialEnergy $opt(initialenergy)
4.2.2 網絡拓撲結構
網絡拓撲結構是指網絡節點的部署方式,它影響著網絡的容量、能量消耗、以及網絡可靠性等網絡特性.一般網絡拓撲結構主要分為3種:集中式拓撲結構;分布式拓撲結構;多跳式拓撲結構.多跳式拓撲結構是更適合水聲環境的拓撲結構.目前研究較多的水聲傳感器網絡主要有二維靜態網絡、三維靜態網絡和帶有UAVs的三維網絡.二維靜態網絡的傳感器節點被固定在海底,主要用于海底環境監視.三維靜態網絡的傳感器被部署在水中,主要用于監測海洋環境.帶有UAVs的三維網絡主要由固定傳感器和移動的UAVs組成.網絡拓撲的好壞直接影響整個水聲網絡的性能.
4.2.3 仿真過程及結果
為簡化實驗,采用二維拓撲結構,設置600×200的3節點場景模型,如圖6所示.其中節點0的位置代碼為:
$node_(0) setX_ 100
$node_(0) setY_ 100
$node_(0) setZ_ 0.0
利用NS2對上述網絡經行仿真,可得到生動的動畫NAM文件并生成Trace文件.模擬網絡的一系列動作全部保存在Trace文件中,通過AWK代碼分析相應的網絡的吞吐量、網絡的數據丟包率、網絡的平均時延性能指標.

圖6 3節點數據傳輸過程
網絡平均時延性能指標如圖7所示.圖中展示的是SMAC協議包延時隨包id號變化的過程,第4個包延時較小,第3個和第5個包延時均較大.延時抖動性能指標如圖8所示,吞吐量性能指標如圖9所示.

圖7 SMAC協議的網絡延時

圖8 SMAC協議的延時抖動

圖9 SMAC協議的網絡吞吐量
水聲傳感器網絡技術受到人們的日益關注,但在國內對它的研究仍處于起步階段,特別是網絡通信協議.水聲信道復雜,為簡化實驗,采用三節點二維拓撲結構,通過修改已有代碼模擬水聲環境.實驗過程中的初始場景和仿真中的移動路徑采用隨機生成方式,即通過NS2的setdest和cbrgen工具生成水聲節點場景和數據流.仿真結果分別展示了延時、延時抖動和吞吐量性能.如何設計出適合水聲傳感器網絡的MAC協議更為重要.對TDMA、IEEE802.11、S-MAC協議進行了分析,比較它們在水下通信的優缺點,并提出對上述3種協議的改進意見.IEEE802.11協議和S-MAC協議在節省能量方面體現出較強的優勢,可以從載波偵聽機制方向對TDMA協議進行改進.
[1] 白潔音,梁韡,于海斌,等.水聲傳感器網絡仿真框架UASNSF的設計[J].計算機仿真,2007,24(10):252-256.
[2] 羅娜,陳名松,王方,等.水聲傳感器網絡MAC協議的能效分析與仿真[J].傳感器與微系統,2011,30(3):10-15.
[3] 吳云.基于時分的水聲傳感器網絡MAC協議的研究[D].廣州:華南理工大學電子與信息學院,2011:12-16.
[4] 許毅.無線傳感器網絡原理及方法[M].北京:清華大學出版社,2012:123-135.
[5] Lu Hong,Feng Hong,Zhong Wenguo.The Fourth Session of the IEEE International Conference on Wireless Communications,Network Technology and Mobile Computing(WiCOM2008)[C].Dalian:Dalian University of Technology Press,2008:1-4.
[6] 趙占偉.水聲通信網絡MAC協議研究[D].哈爾濱:哈爾濱工程大學計算機科學與技術學院,2011:26-37.
[7] 孟艷君.水聲通信網MAC層協議的研究與仿真[D].哈爾濱:哈爾濱工程大學水聲工程學院,2006:40-48.
[8] Proakis J G,Sozer E M,Rice J A,et al.Shallow Water Acoustic Networks[J].IEEE Communications Magazine,2001,39(11):114-119.
[9] 吉祖勤,蔡長安.NS2仿真技術在網絡實驗教學中的應用[J].實驗技術與管理,2011,28(12):96-99.
[10]Herman M.Speed of Sound in Water:A Simple Equation for Realistic Parameters[J].The Journal of the Acoustical Society of America,1975,58(6):1318.
Analysis of UWASN MAC Layer Protocol Based on NS2
ZHAO Jing, LI Rui-fang, LI Li, QIAO Guang-xin, YANG Li-juan
(Shenyang University of Chemical Technology, Shenyang 110142, China)
MAC protocol determines the way of using multipath underwater acoustic channel.As one of the key technology of underwater acoustic networks,it gets more and more attention of people.The MAC protocol research plays the vital role in the development of underwater acoustic sensor networks.Through the analysis and comparison of the existing land wireless communication protocol,this paper chooses and analyzes the performance of TDMA,802.11 and S-MAC protocol which is suitable for underwater acoustic channel.By comparing the performance of the three protocols and combined with the characteristics of underwater acoustic channel,improvements are suggested:Using TDMA time delay,the frame period can be setted; Transmitting more data in a handshake and using the periodic sleep mechanism in IEEE802.11 protocol; Predicting network traffic in advance,and adjusting the duty ratio dynamically in the SMAC protocol.Thesis designs the simulation method of MAC layer protocol in underwater acoustic channel.By modifying the existing wireless communication protocol and link management related code in NS2,this paper realizes the simulation of physical in underwater communication environment.
underwater acoustic sensor networks; MAC protocol; NS2
2013-12-30
國家自然科學基金項目(61102041); 遼寧省高等學校優秀人才支持計劃(LJQ2013043)
趙靜(1988-),女,河北滄州人,碩士研究生在讀,主要從事水聲傳感器網絡方面的研究.
李莉(1978-),女吉林通化人,副教授,博士,主要從事水聲換能器,水聲傳感器網絡方面的研究.
2095-2198(2015)01-0075-07
10.3969/j.issn.2095-2198.2015.01.016
TN929.3
A