摘 要: 在無線傳感器網絡中,基于競爭的S-MAC協議存在無法使節點的活動時間根據通信負載動態變化以及節點休眠帶來的延遲問題。本文結合T-MAC協議和D-MAC協議,提出了自己針對這些問題的改進方法。仿真結果證明,提出的改進方法不僅能夠使節點的活動時間適應通信負載的動態變化,還能夠極大地減少節點休眠帶來的延遲。
關鍵詞 : S-MAC ; 通信負載;延遲 ; NS-2
1 引言
隨著計算機、傳感器和無線通信的發展,出現了一種新興的計算機網絡——無線傳感器網絡[1] 。由于其廣泛的應用前景,無線傳感器網絡受到越來越多研究人員的青睞。介質訪問控制(MAC)協議決定了無線信道使用的方式,在傳感器結點之間分配有限的通信資源,用來構建傳感器網絡系統的底層基礎結構。MAC協議對傳感器網絡的性能有較大影響,是保證無線傳感器網絡高效通信的關鍵網絡協議之一。
S-MAC [2]協議是一種典型的基于競爭的隨機訪問MAC協議,它是建立在IEEE802.11MAC[3] 協議的基礎上,針對傳感器網絡的節省能量需求而提出來的傳感器網絡MAC協議。該協議具有良好的擴展性,不要求嚴格的時間同步,但是它也存在著節點活動時間無法根據通信負載動態變化以及節點休眠帶來的延遲問題。
本文首先解析了S-MAC協議采用的機制,指出其存在的問題,然后結合T-MAC協議和D-MAC協議,提出了改進方法。最后通過仿真分析,證明了改進后的方法能使節點活動時間靈活的適應網絡通信負載的變化,進一步節省了能量,同時能在很大程度上減少節點休眠產生的延遲。
2 S-MAC協議采用機制解析
S-MAC協議是一種基于競爭的控制協議,它主要采用以下機制:
“虛擬簇”機制:每個節點在每個時隙開始的時候廣播含有自己調度信息的同步數據包,接受到同步數據包的節點按需要調整時鐘。這樣具有相同調度的節點形成一個“虛擬簇”。原則上整個網絡應該工作在同一“時隙結構”,但是由于移動性和時隙調度機制,在網絡中可包含許多“虛擬簇”。
周期性活動和休眠機制:S-MAC協議將時間劃分為多個幀,每個幀由兩部分構成:活動狀態和休眠狀態。在活動狀態節點和相鄰節點進行通信,接收或發送數據,活動狀態通常固定在300ms。在休眠狀態節點將其發射接收器關閉,以此減少能量的損耗,如果此時有數據要處理,就被緩存起來,等到節點處于活動狀態再處理,通過周期性的活動/休眠大大減少了空閑監聽造成的能量損耗。
3 S-MAC協議存在問題
S-MAC協議采用周期性的活動/休眠調度機制,活動時間通常是固定不變的,而消息速率是變化的,協議處于活動狀態的時間長度不能根據網絡中業務量的變化動態調整,不能有效的節省能量。
通信模塊處于休眠狀態的節點,如果檢測到事件,就必須等到通信模塊轉換到活動周期才能發送數據,中間節點要轉發數據時,下一跳節點可能處于休眠狀態,此時也必須等到它轉換到活動周期,這種由于節點休眠帶來的延遲會隨著路徑上跳數的增加成比例增加。
4 S-MAC協議的改進
針對無線傳感器網絡S-MAC協議存在無法使節點的活動時間根據通信負載動態變化以及節點休眠帶來的延遲問題,我們首先分析一下T-MAC協議和D-MAC協議對它的改進,然后再提出自己的改進方法。
T-MAC協議主要是針對S-MAC協議活動時間固定、無法適應通信負載變化的問題而提出來的。它在保持周期長度不變的基礎上,根據通信流量動態地調整活動時間。處在活動狀態的節點,如果在一個給定時間TA內沒有發生周期時間定時器溢出或感知網絡發生沖突,就結束活動狀態,進入休眠狀態,但是引入了早睡問題。
D-MAC協議主要是針對節點休眠帶來的延遲問題而提出來得。它采用交錯調度機制,將節點周期劃分為接收時間、發送時間和休眠時間。其中接受時間和發送時間相等,均為發送一個數據分組的時間。每個節點的調度具有不同的偏移,下層節點的發送時間對應上層節點的接收時間。這樣數據能夠連續地從數據源節點傳送到匯聚節點,減少了傳輸延遲,但是D-MAC協議需要嚴格的時間同步。
結合T-MAC協議和D-MAC協議各自的優缺點,下面提出了自己對S-MAC協議的改進方法,改進后的S-MAC協議機制如圖1所示:
[align=center]

圖1 S-MAC改進[/align]
節點周期仍然劃分為活動時間和休眠時間兩部分,活動時間和休眠時間都不是固定的。在改進后的協議中節點周期性喚醒進行監聽,如果在Δt時間內沒有發生任何一個激活事件,則提前結束活動周期,減少能量的損耗。激活事件為:感知網絡上發生沖突;周期的幀定時器打開;傳送數據結束,等待對方發送確認信息;監聽網絡上的RTS和CTS數據包,與相鄰節點進行數據交換。每個節點的調度具有不同的偏移,下層節點的活動時間和上層節點的活動時間相對應,這樣當下層節點有數據需要發送給目的節點或從目的節點接收數據時,它就能夠及時迅速的和上層鄰居節點進行數據傳遞,最終像爬樓梯或下樓一樣到達目的節點,這樣大大減少了節點休眠帶來的延遲問題。改進后的S-MAC協議采用ACK應答機制,發送節點如果沒有收到ACK應答,要在下一個發送時間重發。節點正確接收到數據后,立刻發送ACK消息給發送數據的節點。為了減少發送數據產生的沖突,節點在等待固定的后退時間后,在沖突窗口內隨機選擇發送等待時間。
此外采用自適應占空比機制,根據網絡流量變化動態調整整條路徑上節點的活動時間。當傳輸的數據量比較大時,節點可能需要在一個發送周期內發送多個分組,此時需要增加節點的占空比,并請求傳輸路徑上的節點也相應的增加占空比。通過在傳輸路徑上進行逐跳預約,能夠大大提高網絡的數據傳輸率。
5 仿真分析
本文采用了由UC Berkeley 開發的、面向對象的、離散事件驅動的網絡環境模擬器NS-2對改進的S-MAC協議進行了仿真,也可以用TOSSIM作為無線傳感器網絡仿真環境[4]。NS-2這種仿真軟件以腳本作為輸入,腳本描述了網絡拓撲結構、網絡協議、網絡負載,以及一些控制參數。NS-2輸出的是一系列的數據,如每個數據源所發送的數據包數量,每個網絡節點處的延遲等等。
在仿真實驗中我們對原S-MAC協議和改進的S-MAC協議分別收集以下性能評價參數來比較分析:能量開銷和延遲,根據消耗的能量多少來判斷活動時間是否改進。其定義分別為:
能量開銷(energy overhead):從源點到目的節點發送一定數量的包的總的花費。
延遲(latency):傳輸一個包端到端的時延。
仿真中有關參數設置如下:
無線設備帶寬100kbps,傳輸范圍250m,干擾范圍550m,包長度100字節,傳輸功率0.66瓦,接收功率0.395瓦,空閑監聽時耗電0.35瓦,休眠時耗電忽略不計設為0。根據無線參數和包的長度,S-MAC協議的活動時間設為20ms。改進后的S-MAC協議的活動時間不固定,受其周圍環境和鄰居節點收發數據的影響,其值應小于20ms。
下面在簡單的多跳鏈式拓撲結構和隨機分布的拓撲結構中分別進行仿真。
為了在一個相對可靠的環境下研究驗證S-MAC協議改進后的性能,我們首先在一個簡單多跳的、11個節點組成的鏈式拓撲邏輯結構中進行測試。鄰居節點的距離被配置為100米。
模擬結果如圖2所示:
[align=center]

圖2.1 能量分析

圖2.2延遲分析[/align]
圖2.1描述了多跳鏈式拓撲結構中S-MAC協議和改進后的S-MAC協議在能量開銷上的對比,兩種MAC協議的能量開銷都隨著跳數的增加而增加。從圖2.1看出當跳數增大到5以后,改進后的S-MAC協議幾乎比原來的S-MAC節省了近一半的能量。因為改進后的S-MAC協議的活動時間根據通信量的多少變化,原S-MAC協議對一些不是下一跳的節點也發送數據包,占用了額外的活動時間,造成了能量的浪費。
為了驗證改進后的S-MAC協議在減少節點休眠延遲方面的能力,我們測量在輕負載的情況下數據包端到端的延遲。圖2.2顯示了在不同跳數情況下的模擬結果,改進后的S-MAC協議比原來的S-MAC 協議在延遲方面有明顯好轉,特別是在4跳以后,改進后的S-MAC協議比原來減少了大約60%的延遲。因為采用交錯調度機制使數據能夠連續的從源節點傳送到目的節點,減少節點的休眠帶來的傳輸延遲。
議改進后的效果。50個節點隨機的配置在100*500m2的區域,我們通過在網絡邊緣的節點中隨機選擇來改變源節點的數目,所有的源節點每3秒產生一條消息。
[align=center]

圖3.1 能量分析

圖3.2 延遲分析[/align]
圖3.1和3.2分別在能量和延遲方面對S-MAC協議及其改進后的協議進行分析。這是在更為真實復雜的環境下對協議進行的仿真。從圖3.1可以看出原S-MAC協議隨著源節點數目的增加,消耗的能量線性上升,而改進后的S-MAC協議能量消耗的曲線近似平滑直線,大致在500焦耳左右。圖3.2反映了改進前后的S-MAC協議延遲的對比,隨著源節點數目的增加干擾增加,導致原S-MAC延遲的不斷增加,在36個源節點的時候延遲達到2.7s,而改進后的S-MAC協議因為使數據連續傳輸受干擾較小,最大延遲只有1.6s。
6 結束語
本文對無線傳感器網絡S-MAC協議進行了深入的分析,指出了S-MAC協議存在的問題,然后結合無線傳感器網絡T-MAC協議和D-MAC協議,提出了自己的改進方法。通過仿真分析,結果表明該方法有效地減少了節點空閑監聽造成的能量損耗,緩解了節點休眠引起的傳輸延遲問題,改進效果明顯,具有實際意義。
參考文獻
[1] Akyildiz LF, Su WL, Sankarasubramaniam Y, Cayirci E. A survey on sensor networks[J]. IEEE Communications Magazine, 2002, 40(8):102~114.
[2] Ye W, Heidemann J , Estrin D.An energy-efficient MAC protocol for wireless sensor network[C] . In: Proc 21st Int’l Annual Joint Conf IEEE Computer and Communication Societics (INFOCOM 2002),New York ,NY, June 2002
[3] IEEE802.11 Wireless LAN Medium Access Control and Physical Layer Specifications[S],1997
[4] 袁紅林,徐晨,章國安. TOSSIM:無線傳感器網絡仿真環境[J].微計算機信息,2006,7-1:154-156