陳晨+楊紅麗

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