林銘瀚,胡永洪,薛毓強,凌飛鴻
(1.福州大學電氣工程與自動化學院,福建 福州 350116; 2.國網福建省電力有限公司,福建 福州 350002)
?
無線傳感器網絡的SMAC協議跨層優化
林銘瀚1,胡永洪2,薛毓強1,凌飛鴻1
(1.福州大學電氣工程與自動化學院,福建福州350116; 2.國網福建省電力有限公司,福建福州350002)
針對無線傳感器網絡中,由于個別節點因能量消耗大而加快網絡消亡問題。本文采用能量均衡思想對SMAC協議進行跨層優化,提出了b-SMAC協議,節點可根據路徑能耗來更新路由表,有效優化選擇下一跳的節點,達到無線傳感器網絡中節點能耗均衡的目的。NS-2軟件仿真結果表明,b-SMAC比SMAC協議更有效解決能量非均衡消耗問題,減少了網絡消耗,延長了網絡生存周期。
WSN;熱點問題;SMAC;跨層優化
無線傳感器網絡(WSN)是由大量傳感器節點所組成的 “多跳”傳輸的自組織網絡。無線傳感器網絡具有易布署,覆蓋范圍廣,可進行遠程監測,成本低廉等優點,因此被廣泛應用于環境監測、軍事、工業控制等多種領域。可以預見的是,WSN因其優良特性在未來將擁有更加廣泛的應用空間[1-3]。
因布署環境限制,無線傳感器網絡中的節點絕大部分由電池供電。此外,布署節點的數量多,環境復雜,后期電池更換不便,而節點能量是有限的,如何在節點能量有限的情況下,提高節點的續航能力成為當今研究的熱點。在物理層(MAC)當中,節點的主要能耗主要來自①數據發送;②載波偵聽;③數據重發;④協議開銷等[4]。現如今,應用較多的MAC協議有SMAC協議、TMAC協議、DMAC協議等。
本文基于SMAC協議的特點,提出了b-SMAC(balanced-SMAC)協議。該協議的主體思想是節點根據路徑能耗來更新路由表,優化選擇了下一跳的節點,進而使網絡能量均衡,延長了網絡生存周期。
SMAC協議是一種基于競爭的媒體訪問控制協議,其主要功能是降低節點的能耗,以延長節點的生存周期。其基本思想是每個節點在網絡初始化時,就通過SYNC廣播包以同步調度表,并結成同步調度表虛擬簇。每個節點基于同步調度表進入睡眠—偵聽的工作機制以降低節點能耗[5-6]。節點在進行數據傳輸時,需先通過握手機制競爭到傳輸信道,在其他節點的睡眠時段進行數據傳輸直至傳輸完成。
2.1周期性的睡眠—偵聽
周期性的睡眠—偵聽是讓每個節點間歇性的進入睡眠狀態以節約能量,當定時器時間到的時候則喚醒偵聽信道。SMAC協議睡眠機制如圖1所示。

圖1SMAC協議睡眠機制
為了保證數據傳輸,SMAC協議引入調度表制度用以同步節點之間的睡眠時間。每個節點廣播同步包(SYNC)來告知鄰居節點自己的調度表,用來保持相同的喚醒時間。其中,SYNC中包含的內容為節點ID,以及從發包時刻距下次睡眠的時間Tre。因此節點在接收到同步包時應減去傳輸時間Tdu,才為節點的休眠時間Tsleep。
Tsleep=Tre-Tdu
(1)
SMAC協議為了避免串音以及沖突,引入NAV定時器以及RTS/CTS握手機制。此外,引入能量自適應偵聽機制,能有效降低通信延時累加效應,從而減少數據分組的延遲。
2.2虛擬簇機制
節點在生成并廣播自己的調度表后,若又收到其他節點發來的調度表后,有兩種處理方式。若節點收與自己調度相同的其他鄰居的廣播,就在調度表中記錄該調度表,以期與非同步節點通信。若節點沒有收到與自己相同的調度表,則采用鄰居節點的調度表而丟棄自己的調度表。若節點采用同一調度表則形成一個虛擬簇,邊界節點則同時擁有多個調度表。如圖2在廣闊的WSN區域中,可能存在眾多不同的虛擬簇即調度1與調度2,中間節點則同時擁有2種調度表,則優先選擇更早接收到的調度表,節點定期廣播自己的調度表。這使得SMAC協議擁有良好的拓展性。
SMAC協議當中引入了周期性的睡眠—偵聽,用以節約傳感器的能量。不足在于節點之間的不同步會導致數據延遲會累加,睡眠機制也會有較大差異導致節點能量不均衡。為了更好保持網絡節點之間的能量均衡。利用路由層與物理層之間的數據交互,在SMAC協議的SYNC廣播包中加入路徑能耗以及能量字段,實現節點能量信息的共享。最后,收到SYNC廣播包得節點根據其能量信息更新其路由表。

圖2 虛擬簇機制
3.1路徑選擇
在路徑選擇當中,引入路徑能耗模型[8]。
E=Ecost〈h〉
(2)
其中
Ecost=ETX+ERX
=2Eelecn+εampnd?
(3)
式(2)~(3)中,E為路徑能耗值,h為跳轉數,Ecost為單跳能耗值。設相距為d的兩節點之間傳輸的數據量為n bit,發送節點能耗為ETX,接收節點能耗為ERX,則發射和接收的總能耗為Ecost。Eelec表示發射節點和接收節點每發送單位或接收單位比特的能耗;εamp表示發射增益電路將每bit傳送單位平方米所耗的能量;?為傳播衰減指數,2≤?≤5,取值范圍由現場環境決定,當周圍處于平坦無障礙環境時,?取值為2。
(4)
式(4)中,節點剩余能量為Ers。Perr為鏈路丟包率;?、β的取值為[0,1],它們是衡量鏈路能耗和節點能耗的相關參數,式(4)由節點的鄰居計算。
3.2SYNC廣播字段更新
原先SYNC廣播字段中的僅包含發送節點的標識和從發包時刻距離下次睡眠的時間。為實現層間的數據共享,主要通過修改smac.cc里sendSYNC()子函數實現。將式(4)計算得的單跳路徑能耗參數r_cost加入到SYNC字段中形成新的字段SYNCenr即:{ID號,下次睡眠時間,r_cost,剩余能量}。
在節點接收到SYNCenr包時,根據節點的下一跳路徑能耗進行從小到大排列,并將其加入路由表當中。
在ns-2.34平臺上[9],對SMAC協議以及b-SMAC協議進行仿真驗證比較。
主要仿真參數如下,節點數10個,初始能量1000J,傳輸耗能1.2J,接收耗能1.0J,數據量512kb,方向為0到9號節點,發包間隔1s,最大通信距離30m。
節點剩余能量對比如圖3所示。從10個節點的情況來看,b-SMAC協議剩余能量平均值383.5J,極差為15J,標準差為4.88;SMAC協議剩余能量平均值為363.4J,極差為34J,標準差為10.72。因此使用b-SMAC協議,剩余能量離散程度低,能量均衡性要好于SMAC協議。

圖3 剩余能量對比圖
抖動率即延遲時間變化量,如圖4所示。使用b-SMAC協議后傳輸路徑的每一跳都要依據路徑能耗大小進行選擇,導致抖動率要高于改進錢。以節點0為例,隨著節點的能量消耗,節點1與2的能量能量消耗有變化,故存在下一跳節點選擇的變化。在無線傳感器網絡中,端到端延時的變化稍高對網絡穩定影響不大。

圖4 抖動率對比圖
使用b-SMAC協議與SMAC協議的吞吐量均在300s左右達到飽和,二者的吞吐量比較接近如圖5所示。因基于剩余能量機制的SMAC協議會根據下一跳節點的位置,優化自身調度表,以最優路徑發送數據,減少節點自身的沖突域,降低節點間沖突后重發率。在負載較低時,需要發送的數據包減少,兩種協議的平均吞吐量差不多。

圖5 網絡吞吐量對比圖
本文針對無線傳感器網絡中由于節點能耗不均衡而縮短整個網絡生存周期,產生的“熱點”問題,提出了引入路徑能耗模型的改進SMAC協議b-SMAC。根據NS-2仿真平臺的驗證,結果表明改進后的協議更能降低能耗、均衡網絡節點的能量、提高網絡的吞吐量,延長了網絡生存周期。綜合上述分析表明,b-SMAC協議在能量有效性上明顯超越SMAC協議。
[1]劉敏.無線傳感器網絡的SMAC協議的研究與改進[J].計算機測量與控制,2013,21(5):1400-1403.
[2]陳國銘等.基于節點剩余能量的無線傳感器網絡MAC協議[J].上海交通大學學報,2007,41(11):1788-1791.
[3]沈明玉,丁紅雨.基于跨層優化的能量均衡WSN通信協議[J].計算機應用研究,2011,28(5):1816-1818.
[4]劉艷明.基于S-MAC的無線傳感器網絡MAC協議的改進及仿真實現[D].河北:華北電力大學,2008.
[5]DEMIRKOL I,ERSOY C.MAC protocols for wireless sensor networks[J].A Survey Communications Magazine,2006(8): 115-121
[6]王鑫,等.無線傳感器網絡SMAC協議的研究與改進[J].現代電子技術,2013,36(1):32-35.
[7]劉浩然,等.具有路徑能耗優化特性的WSN無標度容錯拓撲控制算法[J].通信學報,2014,35(6):64-72.
[8]KIM J,et al.An Enhanced Cross-Layer Protocol for Energy Efficiency in Wireless Sensor Networks[C].proc of the 3rd International conference on senor technologies and application,2009:657-664.
[9]柯志亨,程榮祥,鄧德雋,等.NS2仿真實驗:多媒體和無線網絡通信[M].電子工業出版社,2009.
[10]YE W,HEIDEMANN J,ESTRIN D.Medium access control with coordinated,adaptive sleeping for wireless sensor networks[J].ACM/IEEE Trans.on Networking,2004,12(3):493-506.
[11]廖先林,等. 基于節點流量的低能耗無線傳感器網絡MAC協議[J].東北大學學報,2007,28(10):1458-1461.
Cross Layer Optimization of SMAC Protocol Based on Energy Balanced
LINMing-han1,HUYong-hong2,XUEYu-qiang1,LINGFei-hong1
(1.College of Electrical Engineering and Automation,Fuzhou University,Fuzhou 350116,Fujian China;2.Fujian Electric Power Company Limited,Fuzhou 350002,Fujian China)
In wireless sensor network,as for individual nodes energy consumption which accelerate the demise of the network.Based on energy balanced idea to cross layer optimization of SMAC protocol,the b-SMAC protocol is proposed.To achieve the purpose of balancing the energy consumption of nodes,the node can update the routing table on the basis of energy consumption of path,optimal selection of next hop effectively.The NS-2 software simulation result shows that,b-SMAC protocol is more efficient than SMAC to solve the energy consumption problem of non-balanced in the network,extend the network life cycle.
WSN;hotspot problem;SMAC;cross layer optimization
1004-289X(2016)02-0016-03
國網福建省電力有限公司科技項目(編號:521309135004)
TP212
B
2015-04-22