WSN的一種基于能量估算的集中式分簇路由協(xié)議
引言
無線傳感器網(wǎng)絡(Wireless Sensor Network,WSN)是由部署在監(jiān)測區(qū)域內(nèi)的大量廉價微型傳感器節(jié)點,通過無線通信方式形成的一個自組織的網(wǎng)絡系統(tǒng),其目的是協(xié)作地感知、采集和處理網(wǎng)絡覆蓋區(qū)域中感知對象的信息,并發(fā)送給觀察者。由于無線傳感器網(wǎng)絡節(jié)點的能量、存儲空間、計算能力等的限制,使得傳統(tǒng)的無線路由協(xié)議不適合無線傳感器網(wǎng)絡。因此,設計能夠有效節(jié)約能量、延長網(wǎng)絡生命周期的路由協(xié)議,對無線傳感器網(wǎng)絡來說意義重大。分簇路由協(xié)議在這方面具有很好的性能。
LEACH(Low Energy Adaptive Clustering Hierarchy)協(xié)議是無線傳感器網(wǎng)絡中第一個基于分簇的路由協(xié)議,通過周期性地隨機選舉簇首來保證節(jié)點有相等的機會成為簇首,均衡節(jié)點能量的消耗,從而達到延長網(wǎng)絡生命周期的目的。其成簇思想貫穿于其后提出的很多分簇路由協(xié)議中,如TEEN(Threshold—sensitive Energy Efficient sensor Network protoc01)、PEGASIS(Power Efficient GAthering in Sensor Information System)等。LEACH-C(Low Energy Adaptive Clustering Hierarchy—Centralized)是LEACH協(xié)議的一個特定版本,是一種集中式的簇首產(chǎn)生算法。在LEACH—C中,當每輪開始時,每個節(jié)點將自身地理位置和剩余能量等信息報告給基站,基站根據(jù)這些全局信息挑選簇首,能夠確保簇首的數(shù)量和位置最優(yōu),性能比LEACH協(xié)議有了顯著提高。但是,這種算法由于每次都與基站進行交互,增加了不少的能量消耗。
針對無線傳感器網(wǎng)絡中LEACH—C協(xié)議存在的不足,本文在對LEACH—C協(xié)議研究的基礎上提出一種基于能量估算的集中式分簇路由協(xié)議LEACH—EE(Low Energy Adaptive Clustering Hierarchy—Energy Estimate)。該協(xié)議通過對能量消耗進行估算,減少傳感器節(jié)點與基站的通信量,從而節(jié)約整個網(wǎng)絡的能耗。
1 網(wǎng)絡模型及無線通信能耗模型
1.1 網(wǎng)絡模型
本文假設n個傳感器節(jié)點隨機分布在區(qū)域A內(nèi),并且該傳感器網(wǎng)絡具有如下特性:
①網(wǎng)絡部署完畢后,所有節(jié)點都是靜止不動的,節(jié)點能夠獲知其位置信息。
②網(wǎng)絡規(guī)模小,所有節(jié)點都可以直接與基站通信?;疚ㄒ磺椅恢霉潭?。
③普通節(jié)點能量有限,且具有相同的計算、通信能力和初始能量,而基站的能量和計算能力沒有限制。
④傳感器網(wǎng)絡是主動型的傳感器網(wǎng)絡,負責持續(xù)監(jiān)測周圍環(huán)境現(xiàn)象并以恒定速率發(fā)送數(shù)據(jù)。
⑤傳感器節(jié)點的數(shù)據(jù)融合比例系數(shù)為β,即ktrans=krec/β,其中krec、ktran分別表示傳感器節(jié)點接收到的數(shù)據(jù)包長度和融合后形成的數(shù)據(jù)包長度。
1.2 無線通信能耗模型
采用與參考文獻相同的無線能耗模型。發(fā)送數(shù)據(jù)時的能量消耗為:
其中,k為發(fā)送數(shù)據(jù)bit值;d為實際通信距離;d0為距離閾值,當傳輸距離小于d0時,功率放大損耗采用自由空間模式,否則采用多路徑衰減模式;Eelec表示節(jié)點電路發(fā)送和接收每bit數(shù)據(jù)的耗能;εfx和εamp分別表示放大器在2種衰減模型下的能耗系數(shù)。
2 基于能量估算的集中式分簇路由協(xié)議
本文提出的基于能量估算的集中式分簇路由協(xié)議LEACH—EE的思想如下:
①網(wǎng)絡部署完畢后,每個節(jié)點將自己的位置和當前能量等信息發(fā)送給基站,基站運用類似LEACH—C的思想選擇合適的簇首并進行簇的劃分,并給每個簇加上簇標識,如c1,c2,c3,…,cn等。最后基站將簇首、簇標識、簇結(jié)構(gòu)等信息廣播出去,分簇完成。
②接著是一輪數(shù)據(jù)傳輸?shù)姆€(wěn)定階段。在這一階段,傳感器節(jié)點將監(jiān)測數(shù)據(jù)傳輸給簇首,簇首將數(shù)據(jù)融合后加上簇標識,然后把數(shù)據(jù)傳輸給基站,基站統(tǒng)計每個簇發(fā)送過來的數(shù)據(jù)量。當一輪數(shù)據(jù)傳輸結(jié)束后,基站根據(jù)這輪接收到的每一個簇的數(shù)據(jù)量估算出本輪中這個簇內(nèi)所有節(jié)點的能量剩余情況。具體如下:
假設第m(m=1,2,3,…)輪基站接收到簇標識為ci的簇的數(shù)據(jù)量為k bit,那么該簇內(nèi)節(jié)點的能量剩余情況估算分兩種情況:
a)簇首的能量剩余。簇首的能量消耗包括以下三部分:接收簇成員節(jié)點發(fā)送過來的數(shù)據(jù)的能耗、融合數(shù)據(jù)需要的能耗和將融合后的數(shù)據(jù)轉(zhuǎn)發(fā)給基站的能耗。因此簇首的能耗為:
b)簇內(nèi)其他成員節(jié)點的能量剩余情況估算。簇內(nèi)其他成員節(jié)點的能量消耗只有發(fā)送數(shù)據(jù)時的能量消耗。由于采用的網(wǎng)絡模型中各個傳感器節(jié)點以恒定的速率發(fā)送數(shù)據(jù),所以本文近似認為簇內(nèi)每個成員節(jié)點發(fā)送的數(shù)據(jù)量是均衡的。因此,假設簇ci內(nèi)有ni個成員節(jié)點,則該輪中每個簇內(nèi)成員節(jié)點發(fā)送數(shù)據(jù)量k’近似為k’=k/ni。
記該簇內(nèi)成員節(jié)點j到簇首的距離為dij(為了節(jié)省網(wǎng)絡能耗,要求dijd0),根據(jù)能量消耗公式(1),則該成員節(jié)點第m輪的數(shù)據(jù)能耗為:
這樣,一輪數(shù)據(jù)傳輸結(jié)束之后,基站可以近似估算出所有節(jié)點的剩余能量,并根據(jù)這些估算值重新選擇合適的簇首并進行簇的劃分,開始新一輪的工作。
③當間隔一定的輪數(shù)(相當長的一段時間),或者傳感器節(jié)點的能量低于一定的值,或者有新成員節(jié)點加入時,基站再要求傳感器節(jié)點匯報自己的能量等信息,并根據(jù)接收到的信息重新校正估算的各個節(jié)點的剩余能量,使這些數(shù)值精確,然后再重新進行簇首的選擇和簇的劃分。
比起LEACH—C,LEACH—EE協(xié)議不需要傳感器節(jié)點每輪結(jié)束后向基站匯報自己的位置、能量等信息,節(jié)省了能量開銷。同時,由于間隔一定的時間會對估算值進行精度調(diào)整,所以LEACH—EE協(xié)議的性能比較好。
3 仿真及結(jié)果分析
本文使用Matlab對LEACH—EE協(xié)議進行仿真,并和LEACH、LEACH—C協(xié)議進行比較。仿真場景設置如下:100 m×100 m的區(qū)域內(nèi)隨機部署50個傳感器節(jié)點,基站位于坐標(50,50)處,節(jié)點的初始能量為1 J,數(shù)據(jù)包大小為2000 bit,Eelec=50 nJ/bit,εfx=10 pJ/(bit·m2),εamp=0.0013 pJ/(bit·m4),d0=87.7 m,β=1000,數(shù)據(jù)融合的能耗EDA=5 nJ/bit。本文從簇首的分布位置、網(wǎng)絡總能量消耗、網(wǎng)絡的節(jié)點存活數(shù)三方面對比了LEACH、LEACH—C和LEACH—EE協(xié)議,并給出了LEACH—EE協(xié)議中不同時刻能量估算的誤差圖。
評論