《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于能量優(yōu)化的ZigBee網絡路由算法
基于能量優(yōu)化的ZigBee網絡路由算法
來源:微型機與應用2013年第3期
劉 政
(桂林航天工業(yè)學院 電子工程系,廣西 桂林 541004)
摘要: 針對AODVjr算法在路由發(fā)現過程中會產生RREQ洪泛,導致節(jié)點能量消耗過快的問題,提出了一種改進的ZigBee網絡路由算法。改進算法通過鄰居表限定RREQ傳輸范圍和父子節(jié)點的傳遞方向,計算路由代價并根據節(jié)點剩余能量動態(tài)劃分所處的能量區(qū)域,根據3種能量區(qū)域進行差異化路由發(fā)現,動態(tài)回避剩余能量較低的節(jié)點并發(fā)現能量較高的節(jié)點。仿真實驗結果表明,改進算法能實現節(jié)點的能量動態(tài)平衡,有效控制網絡的總體能量消耗,減少死點個數和減緩死點出現的頻率。
Abstract:
Key words :

摘  要: 針對AODVjr算法在路由發(fā)現過程中會產生RREQ洪泛,導致節(jié)點能量消耗過快的問題,提出了一種改進的ZigBee網絡路由算法。改進算法通過鄰居表限定RREQ傳輸范圍和父子節(jié)點的傳遞方向,計算路由代價并根據節(jié)點剩余能量動態(tài)劃分所處的能量區(qū)域,根據3種能量區(qū)域進行差異化路由發(fā)現,動態(tài)回避剩余能量較低的節(jié)點并發(fā)現能量較高的節(jié)點。仿真實驗結果表明,改進算法能實現節(jié)點的能量動態(tài)平衡,有效控制網絡的總體能量消耗,減少死點個數和減緩死點出現的頻率。
關鍵詞: ZigBee;能量平衡;剩余能量;路由代價

 ZigBee技術是一種近距離、低復雜度、低功耗、低速率和低成本的雙向無線通信技術,主要用于距離短、功耗低且傳輸速率不高的各種電子設備之間進行數據傳輸以及典型的有周期性數據、間歇性數據和低反應時間數據傳輸的應用[1-2]。它可工作在2.4 GHz、868 MHz和915 MHz 3個頻段上,分別具有最高250 kb/s、20 kb/s和40 kb/s的傳輸速率,傳輸距離在10~75 m的范圍內。
1 問題提出
 ZigBee支持AODVjr算法[3],該算法在路由發(fā)現過程中會產生冗余的RREQ,這些多余的RREQ無助于路由發(fā)現,反而容易引起RREQ洪泛,增加網絡功耗。直接丟棄這些多余的RREQ就能有效避免RREQ洪泛[4-5]。
 與AODVjr算法相比,Clsuter-Tree算法僅考慮轉發(fā)節(jié)點與父節(jié)點和子節(jié)點之間的關系,忽略了鄰居節(jié)點的跳數優(yōu)化。這樣即使目的節(jié)點就在發(fā)送節(jié)點的一跳范圍之內,數據包也必須按照原始拓撲結構傳送到目的節(jié)點,而不能直接傳送到目的節(jié)點,導致RREQ疊加洪泛效應非常嚴重。
 另外,距離中心協調器ZC越近的FFD節(jié)點,網絡深度越小,通信負擔越重,需要轉發(fā)的數據量越多,消耗的能量越多,節(jié)點電池能量會過早耗盡。當節(jié)點剩余能量少于正常工作所需的能量時,節(jié)點自身就不能與其他節(jié)點通信,即產生死點,這樣,網絡斷開的可能性就大大增加。
 基于以上這些問題,本文提出了一種基于能量優(yōu)化的ZigBee網絡路由算法。
2 算法分析
2.1 路由代價

 路由代價是路由發(fā)現中當前節(jié)點被選擇為新路由節(jié)點所消耗的能量。路由代價越大,消耗能量越大,成為路由節(jié)點的可能性就越低。
結合ZigBee網絡,對FFD節(jié)點定義統(tǒng)一的路由代價[6],即:

2.3 差異化能量區(qū)域
 根據最小剩余能量、節(jié)點剩余能量和能量充足閾值的定義,劃分能量值為能量充足、能量低和能量報警3個區(qū)域。
 參考文獻[7]定義的最小剩余能量對節(jié)點網絡深度沒有進行區(qū)分,而網絡深度和能量消耗恰好成反比。深度越小的節(jié)點,轉發(fā)的數據量越多,消耗的能量越多,所以要為深度越小的節(jié)點預留更多的最小剩余能量。
假設節(jié)點初始能量為energy,定義任意節(jié)點i的最小剩余能量Emin residual:

 


?。?)更新路由代價、剩余能量值。
?。?)方向標志位mark判斷。
 如果mark=0,說明目的節(jié)點位置處于當前節(jié)點的后裔節(jié)點。如果當前節(jié)點是上一節(jié)點的父節(jié)點,當前節(jié)點立即丟棄RREQ;如果當前節(jié)點不是上一節(jié)點的父節(jié)點,則判斷目的節(jié)點是否是當前節(jié)點的后裔節(jié)點。如果是,當前節(jié)點直接轉發(fā)RREQ,并更新自身Eresidual;如果不是,更新mark=1,當前節(jié)點繼續(xù)轉發(fā)RREQ,并更新自身Eresidual。
 如果mark=1,說明目的節(jié)點位置處于當前節(jié)點的父節(jié)點。如果當前節(jié)點是上一節(jié)點的后裔節(jié)點,當前節(jié)點立即丟棄RREQ;如果當前節(jié)點不是上一節(jié)點的后裔節(jié)點,則判斷目的節(jié)點是否是當前節(jié)點的父節(jié)點。如果是,當前節(jié)點直接轉發(fā)RREQ,并更新自身Eresidual;如果不是,更新mark=0,當前節(jié)點繼續(xù)轉發(fā)RREQ,并更新自身Eresidual。
?。?)按照上述流程繼續(xù)轉發(fā)RREQ,直到到達目的節(jié)點。
?。?)目的節(jié)點收到RREQ,不再判斷剩余能量在哪個能量區(qū)域,直接返回RREP。
?。?)源節(jié)點收到目的節(jié)點返回的RREP,即表示當前路由發(fā)現成功,立即按照該路徑進行數據傳輸。
4 仿真實驗結果
 將改進算法與原AODVjr算法以及參考文獻[6]算法進行數據比對,得出網絡總體能耗以及死點個數比對數據。
 仿真試驗基于OMNET++平臺實現,網絡覆蓋面積為100 m×100 m,網絡節(jié)點數為50個,節(jié)點隨機分布,網絡參數Cm=5,Rm=4,Lm=5,每個節(jié)點的初始能量為1 000 J。仿真實驗結果如圖2和圖3所示。

 仿真結果表明,隨著網絡持續(xù)運行,網絡深度較低的節(jié)點頻繁轉發(fā)數據,能量消耗逐漸增大。改進算法引入跳數限制和鄰居表,將節(jié)點剩余能量進行網絡深度動態(tài)劃分,選擇局部最小路由跳數的路徑進行傳輸數據,避免把數據傳送給能量較低的節(jié)點,從而達到節(jié)省能量的目的。
 在初始階段,每個節(jié)點的能量都處于能量充足區(qū)域,沒有死點產生。隨著時間推移,改進算法能夠平衡節(jié)點剩余能量,所以出現死點的時間最晚,添加深度影響因子能更有效避開剩余能量低的節(jié)點,繼而選擇能量多的節(jié)點進行數據轉發(fā),避免網絡深度較低的節(jié)點過早死亡。
 針對ZigBee網絡AODVjr算法所產生的RREQ洪泛,提出一種改進路由算法,引入鄰居表限定RREQ傳輸范圍和父子節(jié)點的傳遞方向,計算路由代價并根據節(jié)點剩余能量動態(tài)劃分所處的能量區(qū)域,根據3種能量區(qū)域進行差異化路由發(fā)現,動態(tài)回避剩余能量較低的節(jié)點并發(fā)現能量較高的節(jié)點。收集所有FFD節(jié)點能量,將節(jié)點最小剩余能量匹配到網絡深度進行動態(tài)調整,并動態(tài)更新能量區(qū)域以優(yōu)化死點出現頻率,根據所處能量區(qū)域選擇路由策略。
參考文獻
[1] ZigBee Alliance. ZigBee specification 2008[DB/OL]. http://www.zigbee.org,2012-08-01.
[2] 瞿雷,劉盛德,胡咸斌.ZigBee技術及應用[M].北京:北京航空航天大學出版社,2007.
[3] AKKAYA K, YOUNIS M. A survey on routing protocols for wireless sensor networks[J]. Ad Hoc Networks, 2005, 3(3): 325-349.
[4] IEEE STD 802.15.4-2006, Wireless Medium Access Control (MAC) and Physical Layer(PHY) Specifications for Low Rate Wireless Personal Area Networks(WPANs)[S].
[5] FECHNER J. Using ZigBee for industrial control systems[C]. International Conference on Power Electronics Intelligent Motion and Power Quality, 2006:61-62.
[6] 李予東,黃宏光,向西西. 基于能量平衡的ZigBee路由算法優(yōu)化[J].計算機工程與設計,2011,32(2):397-400.
[7] 班艷麗,柴喬林,王琛.基于能量平衡的ZigBee網絡樹路由算法[J].計算機應用,2008,28(11):2791-2794.
[8] 謝川.基于ZigBee的AODVjr算法研究[J].計算機工程,2011,37(10):87-89.

此內容為AET網站原創(chuàng),未經授權禁止轉載。