引言
無線傳感器網(wǎng)絡(luò)(WSN, Wireless Sensor Network)采用微小型的傳感器節(jié)點獲取信息,節(jié)點之間具有自動組網(wǎng)和協(xié)同工作能力,網(wǎng)絡(luò)內(nèi)部采用無線通信方式,采集和處理網(wǎng)絡(luò)中的信息,發(fā)送給觀察者。目前WSN 使用的無線通訊技術(shù)過于復(fù)雜,非常耗電,成本很高。而ZigBee是一種短距離、低成本、低功耗、低復(fù)雜度的無線網(wǎng)絡(luò)技術(shù),在無線傳感器網(wǎng)絡(luò)應(yīng)用領(lǐng)域極具發(fā)展?jié)摿Α?/p>
路由協(xié)議是無線傳感器網(wǎng)絡(luò)中一個關(guān)鍵技術(shù),其優(yōu)劣直接影響著網(wǎng)絡(luò)的性能。這里的工作就是在分析研究了多種應(yīng)用在WSN 上的路由協(xié)議之后,對比分析ZigBee 路由算法,分析得出各自優(yōu)劣及其適用的環(huán)境,為路由協(xié)議設(shè)計人員提供參考。
1 WSN中路由算法研究
1.1 AODV 協(xié)議
AODV是逐跳的按需距離向量路由協(xié)議。當(dāng)源節(jié)點沒有已知的路由到達目的節(jié)點時,廣播一個請求消息(RREQ),每個接收到RREQ 的中間節(jié)點記錄下到源節(jié)點的逆向路徑(以便為之后的應(yīng)答消息(RREP)提供路由),然后重新廣播RREQ.當(dāng)RREQ 到達目的節(jié)點時,目的節(jié)點利用記錄在報文中的逆向路徑發(fā)送RREP.如果中間節(jié)點知道最新的指向目的節(jié)點的路由,它就代替目的節(jié)點發(fā)送RREP.每個接收到RREP 的節(jié)點以相同的方式記錄下本節(jié)點到目的節(jié)點的路徑,以便為將來數(shù)據(jù)分組報文的到來提供路由服務(wù)。
1.2 LEACH 路由協(xié)議
LEACH[5]是MIT 的Heinzelman 等人提出的基于簇的數(shù)據(jù)融合的層次型路由算法。該算法以輪為單位計算網(wǎng)絡(luò)周期。每一輪從建立階段開始,即節(jié)點自組織成一個一個的簇,然后進入穩(wěn)定階段,即成員節(jié)點將其數(shù)據(jù)發(fā)送給其簇首節(jié)點,然后簇首節(jié)點將所收成員的數(shù)據(jù)進行數(shù)據(jù)融合,發(fā)送給基站。
2 ZigBee無線傳感器網(wǎng)絡(luò)
ZigBee 網(wǎng)絡(luò)支持兩種類型的物理設(shè)備:全功能設(shè)備節(jié)點(FFD)和半功能設(shè)備節(jié)點(RFD)。FFD 節(jié)點通常作為網(wǎng)絡(luò)協(xié)調(diào)器或路由,能和任何設(shè)備通信;RFD 節(jié)點只能作為網(wǎng)絡(luò)的終端節(jié)點,負責(zé)本地信息收集和數(shù)據(jù)處理,只能和FFD 節(jié)點通信。ZigBee 網(wǎng)絡(luò)支持三種節(jié)點類型:主節(jié)點、路由節(jié)點以及終端節(jié)點。主節(jié)點即協(xié)調(diào)器,必須由FFD 節(jié)點構(gòu)成,它是網(wǎng)絡(luò)的核心,負責(zé)建立一個網(wǎng)絡(luò)并下發(fā)地址。路由節(jié)點也是FFD 節(jié)點,搜索網(wǎng)絡(luò)并加入,給加入路由的終端節(jié)點分配地址。終端節(jié)點可以是FFD 節(jié)點或者RFD 節(jié)點。ZigBee 的網(wǎng)絡(luò)拓撲結(jié)構(gòu)有三種:星型網(wǎng)絡(luò)、樹簇型網(wǎng)絡(luò)、網(wǎng)型網(wǎng)絡(luò),如圖1 所示。
圖1 ZigBee 三種網(wǎng)絡(luò)拓撲結(jié)構(gòu)
另外,每個節(jié)點都維護有一個目的序列號用于判斷更新路由。節(jié)點廣播HELLO 消息來維護本地鄰居表及其一跳內(nèi)的鏈路。
2.1 ZigBee 中的路由算法
ZigBee 網(wǎng)絡(luò)常見的路由算法有Cluster-Tree、AODVjr 和Cluster-Tree+AODVjr 等。ZigBee 路由通常采用Cluster-Tree與AODVjr 相結(jié)合的路由算法。
2.1.1 Cluster-Tree
Cluster-Tree 是一種邏輯鏈路和網(wǎng)絡(luò)層協(xié)議,使用鏈路狀態(tài)數(shù)據(jù)包建立一個簡單的簇網(wǎng)絡(luò)或是一個潛在的更大型的簇樹網(wǎng)絡(luò)。該網(wǎng)絡(luò)具有自組織能力,并支持網(wǎng)絡(luò)冗余,有一定的錯誤冗余度和自修復(fù)能力。網(wǎng)絡(luò)中的節(jié)點形成父子關(guān)系,當(dāng)有節(jié)點加入網(wǎng)絡(luò)時,父節(jié)點將為其分配地址。分配機制如下:根據(jù)式(1),父節(jié)點為節(jié)點分配地址,其中C 為父節(jié)點包容的最大節(jié)點數(shù),R 為參與路由的最大子節(jié)點數(shù),L 為網(wǎng)絡(luò)的最大深度,d 為當(dāng)前網(wǎng)絡(luò)深度,A 為節(jié)點地址。為第n個RFD 分地址為式(2);為第n 個FFD 分配地址為式(3)。
網(wǎng)絡(luò)路徑上的下一跳節(jié)點地址分配如下:對于地址為A的節(jié)點,如果滿足式(4),則地址為D 的節(jié)點為該節(jié)點后代:
如果滿足式(5),則下一跳為終端后代,地址為N = D ,否則,地址為式(6)。
2.1.2 AODVjr
AODVjr 具有AODV 的主要功能,但考慮到降低成本、節(jié)能、使用的方便性等因素,對AODV 作了一些簡化。①沒有使用目的節(jié)點序列號,并規(guī)定只有目的節(jié)點可以回復(fù)RREP;②不存在"先驅(qū)節(jié)點列表",簡化了路由表結(jié)構(gòu);③節(jié)點不發(fā)送HELLO 分組,僅根據(jù)收到的分組或者MAC 層提供的信息更新鄰居節(jié)點列表;④RERR 消息格式僅包含一個不可到達的目的節(jié)點。
另外,每個節(jié)點都維護有一個目的序列號用于判斷更新路由。節(jié)點廣播HELLO 消息來維護本地鄰居表及其一跳內(nèi)的鏈路。
3 路由仿真
文中基于NS-2.34 模擬仿真軟件對路由協(xié)議進行仿真。
NS即網(wǎng)絡(luò)模擬,是面向?qū)ο蟮摹㈦x散事件驅(qū)動的網(wǎng)絡(luò)環(huán)境模擬器,可以完整地模擬整個網(wǎng)絡(luò)環(huán)境。主要用于解決網(wǎng)絡(luò)研究方面的問題。
在NS2 下分別仿真ZigBee 路由和AODV 協(xié)議,以比較兩者的實現(xiàn)效果。采用101 個節(jié)點隨機分布在(100m×100m)的空間中, 消息長度設(shè)置為500 byte,運行時間200 s.每個節(jié)點的初始能量相同,均為2 J.rxPower 和txPower 都設(shè)為0.3 W.通訊距離設(shè)為25 m,消息發(fā)送間隔設(shè)為0.05 s,以802.15.4 為底層。ZigBee 簇樹數(shù)量為:set Cm 4;set Lm 7.源節(jié)點(84.124781416787201, 85.201271942444734),目的節(jié)點(0,0)。
在仿真運行到151 s 時,ZigBee 和AODV 中各節(jié)點的剩余能量如圖2 所示,除了一部分節(jié)點的剩余能量大致相同外,大部分AODV 節(jié)點的剩余能量比ZigBee 節(jié)點多,即ZigBee能量消耗相比AODV 較多。這表明采用Cluster-Tree+AODVjr的ZigBee 路由算法在能量損耗上,并不比AODV 節(jié)省,反而消耗更多能量。
圖2 節(jié)點剩余能量
圖3 顯示,Zigbee 節(jié)點在151 s 之后有71 個存活節(jié)點;AODV 節(jié)點在151 s 之后有80 個存活節(jié)點,在181 s 之后仍有70 個存活節(jié)點。Zigbee 在151 s 之后,網(wǎng)絡(luò)活動停止,而AODV 在181 s 之后網(wǎng)絡(luò)活動才停止。可知,AODV 網(wǎng)絡(luò)在151 s 之后發(fā)現(xiàn)第二條路徑,繼續(xù)傳輸數(shù)據(jù),使網(wǎng)絡(luò)存活時間延長。
圖3 網(wǎng)絡(luò)存活節(jié)點
4 結(jié)語
由于AODVjr 主要適用于動態(tài)網(wǎng)絡(luò)中發(fā)現(xiàn)最新的轉(zhuǎn)發(fā)路徑,但在網(wǎng)絡(luò)拓撲變化很慢的無線傳感器網(wǎng)絡(luò)中,AODVjr就顯得太過復(fù)雜,導(dǎo)致Zigbee 路由能耗過大。而LEACH 協(xié)議實現(xiàn)了所有節(jié)點間能量均勻分布的分群自適應(yīng)算法和群首位置循環(huán)算法,節(jié)省了通信資源,降低了節(jié)點能耗,大大提高系統(tǒng)壽命。因此,以LEACH 為參照修改Zigbee 路由協(xié)議,將更有利于延長網(wǎng)絡(luò)的生存時間。
仿真結(jié)果表明,采用Cluster-Tree+AODVjr 的Zigbee 路由,沒有考慮到節(jié)點在通信和路由處理過程中能量的變化,能量損耗超過了AODV,限制了網(wǎng)絡(luò)的生存時間。因此,Zigbee 路由算法應(yīng)更注重節(jié)能設(shè)計。
-
傳感器
+關(guān)注
關(guān)注
2562文章
52482瀏覽量
763255 -
無線
+關(guān)注
關(guān)注
31文章
5532瀏覽量
175329 -
ZigBee
+關(guān)注
關(guān)注
158文章
2276瀏覽量
245325
發(fā)布評論請先 登錄
傳感器網(wǎng)絡(luò)通信協(xié)議的核心技術(shù)要素

無線傳感器網(wǎng)絡(luò):智能監(jiān)測的未來
BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計原則
Zigbee智能家居自動化設(shè)置步驟
談?wù)?b class='flag-5'>無線傳感器網(wǎng)絡(luò)的關(guān)鍵技術(shù)

評論