摘 要: 針對無線傳感器網(wǎng)絡(luò)典型分簇協(xié)議LEACH簇首隨機選擇和頻繁分簇的問題,提出一種基于LEACH的改進協(xié)議。簇首的選擇分為奇數(shù)輪和偶數(shù)輪,在奇數(shù)輪簇首的選擇時,節(jié)點生成一個隨機數(shù),將此隨機數(shù)和閾值進行比較,小于閾值的節(jié)點成為簇首節(jié)點,其中閾值的生成考慮了節(jié)點的能量。在偶數(shù)輪簇首選擇時,每個簇選擇上輪中簇內(nèi)能量最高的節(jié)點作為本輪簇首。協(xié)議能夠有效均衡網(wǎng)絡(luò)的能量,延長了網(wǎng)絡(luò)的生命周期。
關(guān)鍵詞: 無線傳感器網(wǎng)絡(luò);分簇;LEACH;剩余能量
0 引言
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)是由部署在監(jiān)測區(qū)域內(nèi)大量的廉價微型傳感器節(jié)點通過無線通信方式連接形成的一個多跳的自組織的網(wǎng)絡(luò)系統(tǒng),其目的是協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對象的信息,并發(fā)送給觀察者[1]。WSN不需要固定的網(wǎng)絡(luò)支持,具有快速展開、抗毀性強等特點,可廣泛應(yīng)用于軍事偵察、環(huán)境監(jiān)測、醫(yī)療監(jiān)護和其他商業(yè)領(lǐng)域[1]。
在WSN體系結(jié)構(gòu)中,網(wǎng)絡(luò)層的路由技術(shù)對WSN性能的好壞有重要影響。隨著國內(nèi)外對WSN的研究,許多路由協(xié)議被提了出來,從網(wǎng)絡(luò)拓撲結(jié)構(gòu)可以分為兩類:平面路由協(xié)議和分簇路由協(xié)議。在WSN的實際應(yīng)用中,由于通信損耗能量與傳送的數(shù)據(jù)量和到達目標的距離平方成正比,因此采用基于分簇的路由協(xié)議相對平面路由協(xié)議具有更好的適應(yīng)性和節(jié)能性[2]。
本文提出的路由協(xié)議是基于最經(jīng)典的分簇路由協(xié)議LEACH(Low Energy Adaptive Clustering Hierarchy)提出的,協(xié)議中簇首的選擇分為奇數(shù)和偶數(shù)輪。奇數(shù)輪簇首選擇中引入節(jié)點能量等參數(shù),避免低能量的節(jié)點成為簇首。簇首確定后,簇首廣播自己為簇首的消息,其他節(jié)點根據(jù)接收到的信號強度加入不同的簇。在偶數(shù)輪簇首的選擇時,網(wǎng)絡(luò)不再大規(guī)模地動態(tài)生成簇,只是選擇上一輪中簇內(nèi)節(jié)點能量最大的節(jié)點作為本輪的簇首節(jié)點,簇首節(jié)點選擇后,通過廣播通知其簇內(nèi)節(jié)點自己成為簇首節(jié)點。通過能量參數(shù)的引入使得簇首選擇避免了低能量節(jié)點成為簇首節(jié)點,而且引入奇數(shù)和偶數(shù)輪降低了簇的生成開銷,有效節(jié)省了網(wǎng)絡(luò)的能量,延長了網(wǎng)絡(luò)的生命周期。
1 LEACH協(xié)議
該協(xié)議使用自適應(yīng)成簇和簇首節(jié)點輪換技術(shù),周期性地執(zhí)行任務(wù),每一個周期分為兩個階段,分別是簇的建立階段和穩(wěn)定運行階段,這兩個階段的時間比在協(xié)議中是1:19,穩(wěn)定運行時間要遠遠長于建簇時間,這可避免分簇過于頻繁造成過多的能量損失。在穩(wěn)定運行階段,各個非簇首節(jié)點將按簇首分給的時隙來發(fā)送數(shù)據(jù)給簇首,簇首收到各個簇成員發(fā)來的數(shù)據(jù)進行綜合處理后再發(fā)給Sink節(jié)點。
LEACH[3]協(xié)議選擇簇首策略具體如下:在建簇中的簇首選擇階段,每個節(jié)點在0~1之間隨機選擇一個數(shù)與閾值T(n)進行大小比較,如果小于閾值,則其將被選中成為新一輪的簇首,并廣播自己是簇首的消息。如果節(jié)點已經(jīng)被當選過簇首,則將T(n)置為0,這樣將不可能再當選簇首了。閾值T(n)表示為:
其中,n表示傳感器節(jié)點數(shù),k表示簇頭節(jié)點數(shù),r為輪數(shù),G為網(wǎng)絡(luò)生存期的總回合數(shù)。
LEACH協(xié)議適用于大型的無線傳感器網(wǎng)絡(luò),與平面路由協(xié)議相比,LEACH協(xié)議在節(jié)能方面有比較突出的表現(xiàn),但也存在一些問題,比如LEACH算法簇頭的選擇沒有考慮到節(jié)點的能量問題,如果一些能量較低的節(jié)點成為了簇首節(jié)點,那么此節(jié)點很快就會將能量耗盡而退出網(wǎng)絡(luò),降低了網(wǎng)絡(luò)的壽命;同時LEACH算法簇的生成過于頻繁,按照輪的方式運行,每輪完成后,網(wǎng)絡(luò)將重新進入簇的生成階段,簇的頻繁生成將會增大網(wǎng)絡(luò)的能量消耗。
2 LEACH-OE
在研究了LEACH協(xié)議存在的一些問題后,本文提出了一種基于奇偶輪選擇簇首的協(xié)議LEACH-OE(Odd and Even number round of LEACH)。該協(xié)議大大降低了成簇的輪數(shù),只有在奇數(shù)輪才會進行簇首的隨機選擇和簇內(nèi)節(jié)點入簇操作,而且簇首選擇時,考慮了能量因素,使得能量高的節(jié)點成為簇首節(jié)點的概率更大,在偶數(shù)輪僅僅是選擇簇內(nèi)能量最高的節(jié)點作為本輪的簇首節(jié)點,之后通知其他簇內(nèi)節(jié)點自己為簇首節(jié)點,節(jié)省了成簇時的能量消耗。
2.1 模型介紹
?。?)網(wǎng)絡(luò)模型:基站(BS)固定且能量供應(yīng)充足;各節(jié)點同構(gòu)且具有節(jié)點編號;各節(jié)點可感知它的剩余能量;各節(jié)點可以與基站直接通信;各節(jié)點可根據(jù)接收者距離調(diào)整發(fā)射功率[4]。
?。?)信道模型:傳感器節(jié)點發(fā)送k bit消息d距離時消耗的能量ETX(k,d):
接收k bit消息消耗的能量ETR(k)是:
ETR(k)=ERXelec(k)=kEelec(3)
在式(2)中,發(fā)送與接收節(jié)點距離大于臨界值d0=時,使用多路徑模型;否則使用自由空間模型。Eelec是發(fā)射電路和接收電路消耗的能量,εfs和εamp都是發(fā)射放大器所消耗的能量。
2.2 算法思想
?。?)基于剩余能量的簇首選舉
本協(xié)議在簇首的選擇和成簇機制上進行了改進,簇首選擇時,分為奇數(shù)輪和偶數(shù)輪。當奇數(shù)輪時(r mod 2==1)采用簇首的隨機生成,此過程中,不但考慮節(jié)點是否當選過簇首節(jié)點,還考慮節(jié)點的能量因素,降低了低能量節(jié)點優(yōu)先成為簇首節(jié)點的概率。由各個傳感器節(jié)點隨機生成一個[0,1]之間的隨機數(shù),比較此隨機數(shù)與閾值F(n)的大小,如果小于F(n)則成為簇首節(jié)點,然后廣播自己成為簇首節(jié)點的信息,而其他節(jié)點根據(jù)接收到的信息的強度自主加入相應(yīng)的簇。閾值F(n)表示如下:
當偶數(shù)輪(r mod 2==0)時,根據(jù)各個簇內(nèi)節(jié)點的能量信息,由上輪簇首節(jié)點決定本輪簇首節(jié)點的選擇,上輪簇首根據(jù)簇內(nèi)節(jié)點能量Ecur(i)的大小將簇內(nèi)節(jié)點進行排序,然后簇首將能量最大節(jié)點的編號ID向簇內(nèi)進行廣播,簇內(nèi)各個節(jié)點根據(jù)接收到的信息和自己節(jié)點ID進行比較,當節(jié)點ID與接收到的信息中的節(jié)點ID相同時,該節(jié)點廣播自己成為本輪簇首節(jié)點的信息,各個簇僅僅是改變了簇首而簇內(nèi)節(jié)點不發(fā)生變化。圖1是簇首選擇流程圖。
?。?)數(shù)據(jù)發(fā)送階段
在簇首選擇成功后,簇首根據(jù)成員節(jié)點數(shù)目創(chuàng)建TDMA時間表,并告知成員節(jié)點發(fā)送數(shù)據(jù)的時隙,成員節(jié)點只有在所分配的時隙內(nèi)發(fā)送數(shù)據(jù),其余時間則處于休眠狀態(tài)以節(jié)約能量,成員節(jié)點發(fā)送的數(shù)據(jù)在簇首處融合并最終由簇首發(fā)送至基站。在數(shù)據(jù)的傳送中為了防止簇與簇之間的通信干擾,每個簇都使用一個特殊的代碼,簇頭到基站的數(shù)據(jù)發(fā)送采用載波檢測多址接入技術(shù)(CSMA)。當簇頭有數(shù)據(jù)發(fā)送時,先檢測信道是否空閑,當信道有數(shù)據(jù)傳送時節(jié)點等待,直到信道空閑一段時間后再進行數(shù)據(jù)的發(fā)送。
?。?)能耗分析
在M×M的區(qū)域部署N個無線傳感器節(jié)點,分為k個簇,每個簇中有N/K個節(jié)點(一個簇首節(jié)點,其余為非簇首節(jié)點),傳感器節(jié)點發(fā)送l bit數(shù)據(jù),簇首在一輪中消耗的能量為:
從以上可知,傳感器網(wǎng)絡(luò)中,網(wǎng)絡(luò)的能耗主要是簇傳輸數(shù)據(jù)能量消耗和成簇的能量消耗。在已知網(wǎng)絡(luò)中,節(jié)點數(shù)N、發(fā)送和接收電路的能耗Eelec、功率放大系數(shù)εamp和εfs、數(shù)據(jù)融合能耗EDA都是一定的,而簇數(shù)k、簇首節(jié)點到基站的距離dtoBS、簇內(nèi)成員到簇首的距離dtoCH是不確定的,但是在本文討論的網(wǎng)絡(luò)中因為都是隨機的,假設(shè)其差別不大?,F(xiàn)在能量消耗的節(jié)省主要從成簇方面進行考慮,Etotal是一定的,因為引入奇數(shù)、偶數(shù)輪成簇機制,每兩輪才產(chǎn)生一輪成簇的能量消耗,很顯然延長了總的網(wǎng)絡(luò)壽命,同時,在簇首的選擇時,只有那些剩余能量較高的節(jié)點優(yōu)先選為簇首節(jié)點,可以有效均衡網(wǎng)絡(luò)能耗,進一步延長網(wǎng)絡(luò)壽命。
3 仿真結(jié)果及其分析
3.1 仿真環(huán)境
為了驗證本文算法的性能,在MATLAB平臺上進行仿真比較。100個無線傳感器節(jié)點隨機分布在100 m×100 m的區(qū)域內(nèi),根據(jù)參考文獻[5]的分析,LEACH算法每輪最佳簇首個數(shù),約為節(jié)點總數(shù)的5%,仿真中選擇k為5,仿真參數(shù)如表1所示。
3.2 LEACH和LEACH-OE性能的比較
在MATLAB環(huán)境下仿真LEACH-OE與LEACH協(xié)議,兩種協(xié)議運行5 000輪后生存和死亡節(jié)點的分布如圖2所示。LEACH協(xié)議在1 127輪開始有節(jié)點死亡,而LEACH-OE在1 435輪開始有節(jié)點死亡,這是因為在簇首選擇時LEACH-OE考慮了能量因素。而節(jié)點完全死亡LEACH-OE達到了2 782輪,遠遠大于LEACH的2 237輪,輪數(shù)提高了24.5%左右。因為LEACH-OE協(xié)議引入了奇數(shù)輪成簇機制,更節(jié)省網(wǎng)絡(luò)的整體能量,延緩節(jié)點死亡的時間,從而使網(wǎng)絡(luò)生命周期得到延長。
兩種協(xié)議能量的消耗如圖3所示,比較可知在運行同等輪數(shù)的情況下,LEACH-OE能量的消耗明顯比LEACH要小,在運行輪數(shù)為1 000的情況下,LEACH-OE比LEACH能量消耗要少21%左右,如圖可知,最終網(wǎng)絡(luò)中節(jié)點全部死亡的時候網(wǎng)絡(luò)總的能量消耗是相等的,運行的時間越長,網(wǎng)絡(luò)更有優(yōu)勢。
4 結(jié)論
為提高網(wǎng)絡(luò)的生存時間,平衡節(jié)點的能量消耗,本文提出了一種基于能量和奇偶輪的分簇式無線傳感器網(wǎng)絡(luò)路由協(xié)議(LEACH-OE),在奇數(shù)輪成簇的過程中,簇首的選擇考慮到節(jié)點的能量因素,選擇能量更高的節(jié)點作為簇首,在偶數(shù)輪直接選擇能量最高節(jié)點作為簇首節(jié)點。通過MATLAB仿真實驗,對LEACH和LEACH-OE在能量消耗、運行輪數(shù)方面進行比較。結(jié)果表明,LEACH-OE協(xié)議在負載均衡和能量消耗方面有很大的改善,可以有效地延長網(wǎng)絡(luò)生存時間。
參考文獻
[1] 孫利民,李建中,陳渝,等.無線傳感器網(wǎng)絡(luò)[M].北京:清華大學出版社,2005.
[2] AKYKLDIZ I F. Wireless sensor networks: a survey[J]. Computer Network, 2002,38(4):393-422.
[3] HEINZELMAN W, CHANDRAKASAN A, BALAKRISHNAN H. An application-specific protocol architecture for wireless microsensor networks[J]. IEEE Transaction on Wireless Communications,2002,1(4):660-670.
[4] BANDYOPADHYAY S, COYLE E J. Minimizing communication costs in hierarchically clustered networks of wireless sensors[J]. Wireless Communications and Networking,2003(2):1274-1279.
[5] 張輝,許峰.WSN中基于權(quán)值的Leach協(xié)議的研究與改進[J].微計算機信息,2010,26(8):199-201.