陳晨+楊紅麗
摘要:LEACH(low energy adaptive clustering hierarchy)路由協(xié)議是無線傳感器網(wǎng)絡(luò)里最經(jīng)典的分簇路由協(xié)議,它的“分簇”思想被廣泛應(yīng)用,但是它只能是小規(guī)模無線傳感器網(wǎng)絡(luò)的路由協(xié)議,比如100×100的區(qū)域。提出一種基于LEACH路由協(xié)議的新協(xié)議LEACH-LS(low energy adaptive clustering hierarchy-LargeScale),可應(yīng)用于大規(guī)模的無線傳感器網(wǎng)絡(luò)。用MATLAB工具進(jìn)行仿真,結(jié)果表明新協(xié)議在大規(guī)模無線傳感器網(wǎng)絡(luò)應(yīng)用很好。
關(guān)鍵詞:大規(guī)模無線傳感器網(wǎng)絡(luò); LEACH; LEACH-LargeScale
DOIDOI:10.11907/rjdk.171151
中圖分類號:TP393
文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2017)006-0171-03
0 引言
無線傳感器網(wǎng)絡(luò)(WSNs)是當(dāng)今備受關(guān)注的熱點領(lǐng)域,它將傳感器技術(shù)、嵌入式計算技術(shù)、現(xiàn)代網(wǎng)絡(luò)和無線通信技術(shù)、分布式信息處理技術(shù)有機結(jié)合,通過許多集成的微型傳感器進(jìn)行監(jiān)控和信息采集,通過無線廣播方式將信息發(fā)送到目的地。傳感器網(wǎng)絡(luò)技術(shù)應(yīng)用廣泛,如國防軍事、工業(yè)、農(nóng)業(yè)、城市管理、生物醫(yī)療、環(huán)境監(jiān)測、急救、搶險救災(zāi)、反恐等重要領(lǐng)域,學(xué)術(shù)界和工業(yè)界高度重視,被認(rèn)為是21世紀(jì)最具影響力的技術(shù)之一[1-3]。目前,無線傳感器網(wǎng)絡(luò)研究主要是在網(wǎng)絡(luò)層和鏈路層。路由協(xié)議屬于網(wǎng)絡(luò)層,它是無線傳感器網(wǎng)絡(luò)的核心技術(shù)之一[4]。
LEACH(Low Energy Adaptive Clustering Hierarchy)路由協(xié)議是最經(jīng)典的分層路由協(xié)議。LEACH路由協(xié)議把節(jié)點分為簇頭節(jié)點和簇員節(jié)點。簇員節(jié)點把采集到的數(shù)據(jù)信息發(fā)送給簇頭節(jié)點,簇頭節(jié)點把簇員節(jié)點發(fā)送的數(shù)據(jù)信息和采集的數(shù)據(jù)信息進(jìn)行融合,然后簇頭節(jié)點直接把融合后的數(shù)據(jù)發(fā)送給基站。LEACH協(xié)議的優(yōu)點是運用了數(shù)據(jù)融合技術(shù),去除了冗余的數(shù)據(jù)信息,從而節(jié)省了節(jié)點的剩余能量。隨機產(chǎn)生的簇頭節(jié)點使所有傳感器節(jié)點共同承擔(dān)網(wǎng)絡(luò)能量消耗,避免了某些節(jié)點過快死亡。
但LEACH路由協(xié)議局限性很大。由于LEACH協(xié)議規(guī)定所有傳感器節(jié)點都能與基站直接通信,且傳感器節(jié)點的通信距離有限,所以它只能應(yīng)用在小規(guī)模的無線傳感器網(wǎng)絡(luò)中,不適用于大規(guī)模的無線傳感器網(wǎng)絡(luò)。本文對LEACH協(xié)議進(jìn)行了改進(jìn),提出了新協(xié)議LEACH-LS,LEACH-LS協(xié)議不僅擁有LEACH協(xié)議的優(yōu)點,還能應(yīng)用在大規(guī)模網(wǎng)絡(luò)里,使傳感器節(jié)點能在大規(guī)模網(wǎng)絡(luò)里進(jìn)行數(shù)據(jù)通信。
1 LEACH協(xié)議
1.1 LEACH協(xié)議介紹
WSNs路由協(xié)議有平面型和層次型兩種[5]。LEACH協(xié)議是一種經(jīng)典的分層路由協(xié)議,它把傳感器網(wǎng)絡(luò)分為兩層,基站只和簇頭節(jié)點通信。LEACH協(xié)議與一般的平面型路由協(xié)議相比可提高15%的網(wǎng)絡(luò)壽命。由于LEACH協(xié)議隨機選擇簇頭節(jié)點,從而使所有傳感器節(jié)點共同承擔(dān)網(wǎng)絡(luò)能量消耗。LEACH 協(xié)議的基本單位是“輪”,它由很多輪組成。一輪由建簇和數(shù)據(jù)收集兩個階段組成。為了避免由于建簇造成過多能量消耗,數(shù)據(jù)收集階段時間一般較長[4-5]。
LEACH協(xié)議的前提條件是:①基站位置固定;②所有傳感器節(jié)點有自己的唯一ID標(biāo)位置,一旦固定就不能改變;③所有傳感器節(jié)點都能和基站直接通信,并且能量有限,能量一旦耗盡就不能補充;④傳感器節(jié)點的通信距離有限。
每輪開始時,網(wǎng)絡(luò)開始建簇。所有傳感器節(jié)點都生成一個(0,1)的隨機數(shù)。若某節(jié)點生成的隨機數(shù)小于閾值T(n)則成為簇頭節(jié)點,然后該節(jié)點廣播信號。未成為簇頭的節(jié)點尋找信號最強的簇頭節(jié)點并申請成為它的簇員節(jié)點,最終傳感器網(wǎng)絡(luò)生成了很多簇群,每個簇群里有一個簇頭節(jié)點和若干簇員節(jié)點。最后簇頭節(jié)點為每個簇員節(jié)點分配TDMA信道,每個簇員節(jié)點在自己的時間段給簇頭節(jié)點發(fā)送數(shù)據(jù)信息。如果節(jié)點沒有在本循環(huán)內(nèi)當(dāng)選為簇頭節(jié)點,閾值T(n)公式是 T(n)=p/[1-p*(r mod(1/p))];如果節(jié)點已經(jīng)在本循環(huán)內(nèi)當(dāng)選過簇頭節(jié)點,閾值T(n)公式是T(n)=0。p是簇頭節(jié)點在所有節(jié)點中的比重,r是當(dāng)前輪數(shù)減1,1/p 輪是一個循環(huán)。
建簇完成后即進(jìn)入數(shù)據(jù)收集階段。所有簇員節(jié)點把收集到的數(shù)據(jù)在自己的信道時間內(nèi)發(fā)送給簇頭節(jié)點,簇頭節(jié)點收到所有簇員節(jié)點發(fā)送的數(shù)據(jù)后進(jìn)行數(shù)據(jù)融合,融合完成后把融合數(shù)據(jù)直接發(fā)送給基站。數(shù)據(jù)收集持續(xù)一段時間后再重新建簇,如此循環(huán)。不同的簇采用不同的CDMA碼通信從而減少其它簇的干擾[4,6-7]。
1.2 LEACH協(xié)議的局限性
由于無線傳感器節(jié)點的通信距離有限,而LEACH協(xié)議要求所有傳感器節(jié)點直接和基站通信。因此,LEACH協(xié)議只適用于規(guī)模較小的無線傳感器網(wǎng)絡(luò),不能應(yīng)用在大規(guī)模網(wǎng)絡(luò)中。
2 LEACH-LS協(xié)議
針對LEACH路由協(xié)議不能應(yīng)用在大規(guī)模無線傳感器網(wǎng)絡(luò)的不足,本文提出了LEACH-LS協(xié)議。LEACH-LS協(xié)議與LEACH協(xié)議類似,也是由建簇階段和數(shù)據(jù)收集階段兩部分組成,下面詳細(xì)介紹LEACH-LS協(xié)議。
在一個大規(guī)模的無線傳感器網(wǎng)絡(luò)里,基站位于中間位置。所有傳感器節(jié)點根據(jù)自身位置推出與基站的距離(假設(shè)所有傳感器節(jié)點都知道自己的位置和基站的位置[9]),傳感器節(jié)點根據(jù)自身與基站的距離標(biāo)記序號。標(biāo)號以80m為單位,比如距離大于0小于80的為1號,大于80小于160的為2號,以此類推。之所以選80m為單位,是因為如果傳感器節(jié)點的通信距離超過87m就是遠(yuǎn)距離發(fā)射,能耗會大大增加[8]。
(1)建簇階段。LEACH-LS協(xié)議的建簇階段和LEACH協(xié)議類似。每輪開始時,除了標(biāo)號為1的節(jié)點外,所有傳感器節(jié)點都生成一個大于0且小于1的隨機數(shù),生成的隨機數(shù)與閾值T(n)比較大小,閾值T(n)與LEACH協(xié)議的T(n)相同。未成為簇頭的傳感器節(jié)點選擇距離自己最近的節(jié)點為簇頭節(jié)點。標(biāo)號為1的傳感器節(jié)點不選擇簇頭節(jié)點也不競選簇頭節(jié)點,而是直接把數(shù)據(jù)發(fā)送給基站。
(2)數(shù)據(jù)收集階段。簇頭節(jié)點接收到所有簇員節(jié)點發(fā)來的數(shù)據(jù)后,與收集的數(shù)據(jù)進(jìn)行融合,然后把融合后的數(shù)據(jù)發(fā)送給比自己標(biāo)號小1且距離最近的簇頭節(jié)點。比如某簇頭節(jié)點的標(biāo)號是4,那么它把本簇的數(shù)據(jù)信息融合后發(fā)送給距離自己最近的3號簇頭節(jié)點,以此類推。標(biāo)號為2的簇頭節(jié)點把數(shù)據(jù)發(fā)送給距離自己最近的標(biāo)號為1的普通節(jié)點,所有標(biāo)號為1的普通節(jié)點都擔(dān)當(dāng)轉(zhuǎn)發(fā)數(shù)據(jù)的作用。圖1是600×600的大規(guī)模網(wǎng)絡(luò)LEACH-LS協(xié)議演示。
其中,Etx(k,d)表示傳感器節(jié)點向距離為d meter 的目的地發(fā)送k bit數(shù)據(jù)時的能量消耗,Erx(k)表示節(jié)點接收k bit數(shù)據(jù)的能量消耗,Eelec表示電路的消耗系數(shù),εfs和εamp分別為近距離和遠(yuǎn)距離發(fā)射放大器能耗參數(shù),d是源節(jié)點和目的節(jié)點之間的距離,d0是臨界值。
LEACH-LS協(xié)議的仿真環(huán)境是2 000個節(jié)點隨機分布在600×600的區(qū)域內(nèi),基站位于(300,300)的中間位置,傳感器節(jié)點發(fā)送數(shù)據(jù)包的最遠(yuǎn)距離是180m。一個數(shù)據(jù)包是4 000bit,一個控制包的大小為100bit,所有傳感器節(jié)點的初始能量是0.5J,簇頭節(jié)點數(shù)據(jù)融合的能量消耗是5nJ/bit/message,Eelec為50nJ/bit,εfs為10pJ/bit/m2,εamp為0.0013pJ/bit/m4,d0是87m。簇頭節(jié)點的比例p是0.05[6]。按照節(jié)點與基站的距離大小,把所有傳感器節(jié)點分為1號(距離小于80m)、2號(距離大于80m且小于160m)、3號(距離大于160m小于240m)、4號(距離大于240m)。
LEACH協(xié)議的仿真環(huán)境是100個節(jié)點隨機分布在100×100的區(qū)域里,基站在(50,120)的位置,傳感器節(jié)點的通信半徑是180m,其余的仿真環(huán)境和LEACH-LS一樣。
3.2 仿真結(jié)果分析
圖2和圖3是LEACH協(xié)議在100×100區(qū)域里的仿真實驗結(jié)果。圖2顯示LEACH協(xié)議的存活節(jié)點數(shù)量隨輪數(shù)的增加而減少。實驗數(shù)據(jù)顯示,LEACH協(xié)議的第一個節(jié)點死亡輪數(shù)是786輪,整個網(wǎng)絡(luò)的死亡輪數(shù)是1 175輪。從圖3可以得出,隨著輪數(shù)的增加,基站收集到的數(shù)據(jù)越來越多。直到整個網(wǎng)絡(luò)死亡時,基站收集到的數(shù)據(jù)包個數(shù)接近2×104個。然而,由于傳感器節(jié)點的通信距離有限,并且LEACH協(xié)議要求所有節(jié)點與基站直接通信,所以LEACH協(xié)議不能應(yīng)用在大規(guī)模的網(wǎng)絡(luò)里。
圖4和圖5 是LEACH-LS在600×600區(qū)域里的仿真實驗結(jié)果。圖4的實驗結(jié)果顯示LEACH-LS的第一個死亡節(jié)點輪數(shù)是121輪,整個網(wǎng)絡(luò)的死亡輪數(shù)是139輪。圖5的實驗結(jié)果顯示,隨著運行輪數(shù)的增加,基站收集到的數(shù)據(jù)包個數(shù)越來越多。整個網(wǎng)絡(luò)死亡時,基站收集到的數(shù)據(jù)包個數(shù)接近6×104個。實驗結(jié)果表明,LEACH-LS協(xié)議可以應(yīng)用在大規(guī)模無線傳感器網(wǎng)絡(luò)里,LEACH-LS協(xié)議可以在600×600的區(qū)域里使傳感器節(jié)點正常向基站傳送數(shù)據(jù)。
4 結(jié)語
對LEACH路由協(xié)議的研究發(fā)現(xiàn),由于傳感器節(jié)點的通信范圍有限,LEACH協(xié)議不能應(yīng)用在大規(guī)模無線傳感器網(wǎng)絡(luò)里。本文在LEACH協(xié)議的基礎(chǔ)上進(jìn)行了改進(jìn),提出了新協(xié)議LEACH-LS。仿真實驗表明LEACH-LS協(xié)議可以在600×600的大規(guī)模網(wǎng)絡(luò)里使傳感器節(jié)點正常收集和傳送數(shù)據(jù)。
雖然LEACH-LS可以運用在大規(guī)模無線傳感器網(wǎng)絡(luò)里,但它的生命周期較短,提高LEACH-LS協(xié)議的網(wǎng)絡(luò)壽命是下一步要進(jìn)行的研究工作。
參考文獻(xiàn):
[1]崔莉, 鞠海玲, 苗勇,等. 無線傳感器網(wǎng)絡(luò)研究進(jìn)展[J]. 計算機研究與發(fā)展, 2005,42(1):163-174.
[2]胡鋼, 謝冬梅, 吳元忠. 無線傳感器網(wǎng)絡(luò)路由協(xié)議LEACH的研究與改進(jìn)[J]. 傳感技術(shù)學(xué)報,2007,20(6):1391-1396.
[3]李蘭英, 劉昌東. 一種無線傳感器網(wǎng)絡(luò)路由協(xié)議LEACH的改進(jìn)算法[J]. 哈爾濱理工大學(xué)學(xué)報, 2015, 20(2):75-79.
[4]張偉華, 李臘元, 張留敏,等. 無線傳感器網(wǎng)絡(luò)LEACH協(xié)議能耗均衡改進(jìn)[J]. 傳感技術(shù)學(xué)報, 2009, 21(11):1918-1922.
[5]任豐原,黃海寧,林闖.無線傳感器網(wǎng)絡(luò)[J].軟件學(xué)報,2003,14(7):1282-1291.
[6]HEINZELMAN,WENDI RABINER, CHANDRAKASAN,et al. Energy-efficient communication protocol for wireless microsensor networks[C]. Hawaii International Conference on System Sciences,IEEE,2000.
[7]吳臻, 金心宇. 無線傳感器網(wǎng)絡(luò)的LEACH算法的改進(jìn)[J]. 傳感技術(shù)學(xué)報, 2006,19(1):34-36.
[8]李亞男, 徐夫田, 陳金鑫. 基于LEACH的WSNs分簇優(yōu)化策略[J]. 傳感技術(shù)學(xué)報,2014(5):670-674.
[9]張浩, 李臘元. 基于LEACH協(xié)議的能耗均衡路由算法[J]. 計算機工程, 2011,37(7):91-93.
[10]陳杰. MATLAB 寶典[M]. 北京: 電子工業(yè)出版社, 2011.
[11]王臻躍. 基于LEACH的改進(jìn)路由協(xié)議[J]. 軟件導(dǎo)刊, 2015(3):114-116.
(責(zé)任編輯:杜能鋼)