無線傳感器網(wǎng)絡(luò)分層路由協(xié)議的研究
引言
無線傳感器網(wǎng)絡(luò)是由部署在監(jiān)測區(qū)域內(nèi)的大量的、具有通信與計算能力的無線傳感器節(jié)點組成,通過無線通信方式形成一個大規(guī)模的多跳自組織監(jiān)控傳輸系統(tǒng)。節(jié)點對自己覆蓋區(qū)域進行監(jiān)控和數(shù)據(jù)收集,通過多跳無線傳輸方式,將所收集的數(shù)據(jù)發(fā)送到匯聚節(jié)點,最后匯聚節(jié)點通過互聯(lián)網(wǎng)或其他方式與用戶交互。隨著微電子技術(shù)、傳感器技術(shù)、計算機技術(shù)和無線通信技術(shù)等的進一步發(fā)展,無線傳感器網(wǎng)絡(luò)在世界各主要發(fā)達國家受到廣泛關(guān)注叫目前無線傳感器網(wǎng)絡(luò)已被應(yīng)用于環(huán)境監(jiān)測、農(nóng)業(yè)、軍事領(lǐng)域、災(zāi)難救援、智能家居等各個領(lǐng)域。
無線傳感器網(wǎng)絡(luò)一般規(guī)模較大,節(jié)點能量有限并且不易更換,能量消耗在無線傳感器網(wǎng)絡(luò)中顯得尤為重要,如何設(shè)計簡單、有效的路由協(xié)議是無線傳感器網(wǎng)絡(luò)需首要考慮的問題。另外,由于無線傳感器網(wǎng)絡(luò)其自身的特點,傳統(tǒng)無線Ad-hoc網(wǎng)絡(luò)的協(xié)議并不能直接用于無線傳感器網(wǎng)絡(luò)。因此,如何設(shè)計符合無線傳感器網(wǎng)絡(luò)的路由協(xié)議是研究的熱點之一。
1無線傳感器網(wǎng)絡(luò)路由協(xié)議的設(shè)計要求
針對無線傳感器網(wǎng)絡(luò)路由機制的上述特點,設(shè)計時需滿足如下設(shè)計要求:
能量高效。無線傳感器網(wǎng)絡(luò)節(jié)點能量有限,路由協(xié)議不僅要選擇能量消耗小的傳播路徑,還要考慮整個網(wǎng)絡(luò)的能量消耗,使整個網(wǎng)絡(luò)能量消耗均衡,防止出現(xiàn)網(wǎng)絡(luò)空洞。因此,無線傳感器網(wǎng)絡(luò)的路由協(xié)議要能夠簡單高效地實現(xiàn)信息傳輸。
可擴展性。在無線傳感器網(wǎng)絡(luò)中,由于節(jié)點分布密度不同,造成網(wǎng)絡(luò)規(guī)模大小不一。另外,由于能量耗盡導(dǎo)致節(jié)點死亡,作為補充的新節(jié)點的加入以及節(jié)點的移動等,都會使網(wǎng)絡(luò)拓撲結(jié)構(gòu)發(fā)生變化,這就要求路由協(xié)議能夠適應(yīng)網(wǎng)絡(luò)結(jié)構(gòu)的不斷變化,具有可擴展性。
魯棒性。由于節(jié)點能量耗盡或環(huán)境因素導(dǎo)致傳感器節(jié)點失效,或者周圍環(huán)境對無線鏈路的通信質(zhì)量產(chǎn)生影響以及無線傳感器網(wǎng)絡(luò)本身的缺點等,這些導(dǎo)致無線傳感器網(wǎng)絡(luò)的不可靠特性,這就要求路由機制具有一定的容錯能力。
快速收斂性。由于無線傳感器網(wǎng)絡(luò)的拓撲結(jié)構(gòu)具有動態(tài)變化性,并且節(jié)點能量和通信帶寬等資源也十分有限,因此路由機制必須能夠快速收斂,以減少通信協(xié)議開銷,提高消息傳輸?shù)男省?
2無線傳感器網(wǎng)絡(luò)路由協(xié)議分析
2.1平面路由協(xié)議
在平面路由中,所有節(jié)點的地位都是一樣的,具有相同的功能。具有代表性的平面路由協(xié)議有:洪泛式路由協(xié)議(Flooding)、信息協(xié)商式路由協(xié)議(SensorProtocolsforInformationviaNegotiation,SPIN)、定向擴散路由協(xié)議(DirectedDiffusion,DD)等。洪泛式路由協(xié)議以廣播的方式向所有相鄰節(jié)點發(fā)送數(shù)據(jù),并重復(fù)執(zhí)行此步驟,直到數(shù)據(jù)包到達目的地或者達到預(yù)先設(shè)定的最大跳數(shù)。信息協(xié)商式路由協(xié)議是一種對洪泛路由的改進,使用元數(shù)據(jù)進行協(xié)商通信。定向擴散路由協(xié)議是一種基于查詢的路由機制,數(shù)據(jù)傳輸分為興趣擴散、建立梯度和路徑加強三個階段。
平面路由協(xié)議最突出的優(yōu)點就是算法簡單,但是缺少能有效均衡能量的策略,能量消耗較快,可兼容性和靈活性比較差,不適合在大規(guī)模網(wǎng)絡(luò)中使用。
2.2層次路由協(xié)議
在層次路由協(xié)議中,網(wǎng)絡(luò)通常被劃分為簇,每個簇由一個簇頭和多個簇成員組成,多個簇頭又可形成高一級的網(wǎng)絡(luò),在高一級的網(wǎng)絡(luò)中,又可以形成分簇,再組成更高一級的網(wǎng)絡(luò),直至最高級。層次路由適合大規(guī)模的無線傳感器網(wǎng)絡(luò),可擴展性好。
LEACH協(xié)議
低功耗自適應(yīng)分簇算法(LowEnergyAdaptiveClusteringHierarchy,LEACH)是最早提出的無線傳感器網(wǎng)絡(luò)分層路由協(xié)議。LEACH算法定義了“輪”的概念來周期性執(zhí)行,每輪中包括簇的建立和穩(wěn)定的數(shù)據(jù)傳輸兩個階段。
在簇建立階段:每一輪開始時設(shè)定一個閾值,每個節(jié)點產(chǎn)生一個[0,1]之間的隨機數(shù),如果隨機數(shù)小于閾值T(n),那么這個節(jié)點在本輪就被選為簇頭。T(n)的計算公式為:
集合G是指在最近的1/p輪中沒有當(dāng)選過簇頭的節(jié)點集。如果節(jié)點在最近的1/p輪中已經(jīng)當(dāng)選過簇頭,則T(n)的值便設(shè)置為0,這樣在下一輪中不再當(dāng)選簇頭節(jié)點,此種做法能夠保證網(wǎng)絡(luò)中每個節(jié)點都有當(dāng)選為簇頭節(jié)點的機會。當(dāng)選為簇頭的節(jié)點廣播其是簇頭的信息,其余節(jié)點會根據(jù)收到的信號強弱選擇它所要加入的簇。節(jié)點確定要加入哪個簇后,便發(fā)送數(shù)據(jù)包告知,其中包括自己的節(jié)點ID和所要加入的簇頭ID。當(dāng)所有節(jié)點都加入到簇后,即完成簇的建立過程。
在穩(wěn)定的數(shù)據(jù)傳輸階段:簇內(nèi)節(jié)點將采集到的數(shù)據(jù)發(fā)送給簇頭節(jié)點,簇頭節(jié)點首先對收到的數(shù)據(jù)進行融合處理,然后再將數(shù)據(jù)發(fā)送到匯聚節(jié)點。但頻繁的簇頭選舉會增加能量開銷,為避免這種現(xiàn)象,穩(wěn)定的數(shù)據(jù)傳輸階段一般會持續(xù)相對較長的時間。
TEEN協(xié)議
TEEN協(xié)議(ThresholdsensitiveEnergyEfficientsensorNetworkProtocol)是對LEACH協(xié)議的改進,是一種事件觸發(fā)式信息報告的路由協(xié)議,它采用了與LEACH協(xié)議相同的分簇結(jié)構(gòu)。
初始階段,簇頭向成員節(jié)點發(fā)送一個硬門限值(測量值)和一個軟門限值(測量值的變化值)。當(dāng)監(jiān)測數(shù)據(jù)首次超過設(shè)定的硬門限值時,節(jié)點便將它作為新的硬門限,并把數(shù)據(jù)發(fā)送到簇頭節(jié)點。接下來,如果監(jiān)測數(shù)據(jù)與硬門限的差值大于軟門限界定的范圍,則節(jié)點將最新采集的數(shù)據(jù)發(fā)送到簇頭節(jié)點,并將最新監(jiān)測數(shù)據(jù)設(shè)定為新的硬門限。
其他分層路由協(xié)議
PEGASISAS協(xié)議是在LEACH協(xié)議的基礎(chǔ)上建立的一種基于鏈的優(yōu)化協(xié)議,首先在網(wǎng)絡(luò)中選取一個節(jié)點作為首領(lǐng)節(jié)點構(gòu)建一條最優(yōu)回路鏈。HEED協(xié)議對LEACH協(xié)議的簇頭選擇算法做了改進,解決了簇頭分布不均和簇頭能量負擔(dān)不均衡問題。EARSN協(xié)議是簇頭固定的路由協(xié)議,由匯聚節(jié)點來劃分簇,并廣播每個簇頭節(jié)點的ID和所分配的簇內(nèi)節(jié)點的位置信息。還有一些基于LEACH的改進算法,如DCHS,該算法在選舉簇頭時考慮了能量因素;LEACH-C和LEACH-F算法采用由基站選舉簇頭的方式。
在層次路由中,簇頭節(jié)點負責(zé)路由信息的發(fā)送,并進行數(shù)據(jù)融合,減少冗余數(shù)據(jù),能有效延長網(wǎng)絡(luò)周期,具有較好的兼容性和靈活性,適用于大規(guī)模無線傳感器網(wǎng)絡(luò)。但在分層路由協(xié)議中,簇頭節(jié)點由于能量消耗大,很容易成為網(wǎng)絡(luò)中的瓶頸。
3分簇算法的不足及基于LEACH協(xié)議的改進方案
3.1分簇算法的不足
經(jīng)分析目前分簇算法仍存在以下問題:
第一,分簇大小不均。在實際應(yīng)用中,傳感器節(jié)點一般分布不均勻,如果某個分簇內(nèi)節(jié)點數(shù)目較大,則該簇頭接收數(shù)據(jù)就會耗費很大能量,縮短網(wǎng)絡(luò)生存周期。在這種情況下,如何分簇才能達到最優(yōu)是一個需要考慮的問題。
第二,能量消耗不均。在多跳路由機制中,匯聚節(jié)點附近的簇頭節(jié)點將會轉(zhuǎn)發(fā)較多的數(shù)據(jù)包,能量損耗大,容易導(dǎo)致能量空洞的形成,縮短整個網(wǎng)絡(luò)的生命周期。
第三,簇頭能量消耗過大。在分層路由協(xié)議中,簇頭節(jié)點既要接收、融合數(shù)據(jù),又要進行數(shù)據(jù)轉(zhuǎn)發(fā),能量消耗遠遠大于其他節(jié)點,容易導(dǎo)致簇頭節(jié)點能量耗盡而過早死亡。
3.2基于LEACH協(xié)議的改進
根據(jù)當(dāng)前分層算法的不足,提出以下基于LEACH協(xié)議的改進算法:
(1)分簇策略的改進
在新算法中,先按LEACH算法計算出最優(yōu)簇頭比例p,則最優(yōu)簇頭個數(shù)為k=N*p(其中N為總節(jié)點數(shù),p=4.5%)。再把整個區(qū)域劃分成k個區(qū)域,并在每個區(qū)域選出一個節(jié)點作為初始凝聚點。然后使用K-means聚類算法形成k個分簇。K-means算法是一種迭代算法,通過不斷迭代得到一個分簇的最優(yōu)解。由于初始凝聚點對K-means算法的結(jié)果有很大影響,所以為保證分簇均勻,在聚類前先劃分區(qū)域。
(2)簇頭選舉策略的改進
分簇形成后,開始選舉簇頭,選舉簇頭時考慮節(jié)點剩余能量和節(jié)點到簇中心的距離兩個因素。簇頭選舉按照如下公式計算。
其中,^current為節(jié)點當(dāng)前能量,Eve為簇內(nèi)節(jié)點平均能量,為簇內(nèi)節(jié)點到簇中心的最大距離,Dave為簇內(nèi)節(jié)點到簇中心的平均距離,d為節(jié)點到簇內(nèi)中心的距離。在每簇內(nèi)選出T值最大的節(jié)點作為簇頭,這樣做能保證盡量選舉剩余能量大、靠近簇中心的節(jié)點作為簇頭。關(guān)于a的取值問題,根據(jù)以往研究結(jié)果,先令a分別為0.7,0.8,0.9,通過反復(fù)實驗的方式確定,取使網(wǎng)絡(luò)生存周期最長的a值。
(3)路由形成策略的改進
分簇成功后,簇頭節(jié)點基于到匯聚節(jié)點的距離形成最佳路徑。為延長網(wǎng)絡(luò)生存周期,在數(shù)據(jù)轉(zhuǎn)發(fā)時考慮到簇頭節(jié)點的剩余能量,如果簇頭節(jié)點能量過少就不會再轉(zhuǎn)發(fā)數(shù)據(jù)包。每輪結(jié)束后,檢查各簇頭節(jié)點的剩余能量,如果簇頭節(jié)點能量小于閾值』(設(shè)原始能量為E,A=0.3E),則更新最優(yōu)路徑,小于閾值A(chǔ)的簇頭不再轉(zhuǎn)發(fā)其他節(jié)點的數(shù)據(jù);如果簇頭節(jié)點能量小于某個閾值B(B=0.2E),該簇按照(2)中的描述重新選擇簇頭。當(dāng)小于閾值B的簇頭數(shù)目達到所有簇頭數(shù)目的2/3時就重新分簇。
改進方案使分簇更加均勻,并且控制了離匯聚節(jié)點近的簇頭的能量消耗,以達到使整個網(wǎng)絡(luò)能量消耗均衡,延長網(wǎng)絡(luò)生存周期的目的。
4結(jié)語
目前,無線傳感器網(wǎng)絡(luò)已經(jīng)有越來越廣泛的應(yīng)用,人們對無線傳感器網(wǎng)絡(luò)的研究也逐漸深入。但仍然有許多方面有待改進,尤其是由于無線傳感器網(wǎng)絡(luò)所固有的特性,極易受到攻擊,因此,對無線傳感器網(wǎng)絡(luò)路由協(xié)議安全性的研究將是今后的研究重點。
20211223_61c42262a4f24__無線傳感器網(wǎng)絡(luò)分層路由協(xié)議的研究