何傳波 覃琪
摘要:針對非均勻分簇(EEUC)路由協(xié)議僅考慮節(jié)點與基站距離決定簇半徑以及選擇簇頭時僅考慮節(jié)點剩余能量等不足,在其基礎(chǔ)上進行改進,利用節(jié)點與基站的距離、節(jié)點相鄰節(jié)點數(shù)量決定成簇半徑,綜合考慮節(jié)點剩余能量、節(jié)點相鄰區(qū)域節(jié)點數(shù)量和成簇通信代價以及到基站的距離等因素進行分簇,路由協(xié)議還考慮中繼節(jié)點數(shù)和傳送信息次數(shù)等。通過MATLAB仿真驗證了改進協(xié)議較EEUC協(xié)議更能延長網(wǎng)絡(luò)壽命。
關(guān)鍵詞:EEUC路由協(xié)議;剩余能量;通信代價;路由協(xié)議
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2017)08-0039-03
1概述
近年來,由于物聯(lián)網(wǎng)的發(fā)展與應(yīng)用,無線傳感器網(wǎng)絡(luò)(Wireless SensorNetwork,WSN)受到了國內(nèi)外學者的廣泛關(guān)注,WSN通過大量分布于不同區(qū)域的傳感器節(jié)點感知、收集信息并分析處理,進而實現(xiàn)對遠程目標的監(jiān)控,是集信息采集、傳輸與處理于一體的綜合智能信息系統(tǒng)。傳感器節(jié)點體積小,能夠攜帶的能量有限,所以選擇一種合理的路由協(xié)議,降低能耗,延長整個WSN的生存時間是當前WSN的主要研究方向之一。
層次路由協(xié)議因能量利用率高、網(wǎng)絡(luò)拓撲易于控制、數(shù)據(jù)融合技術(shù)應(yīng)用其中等特點聊,整體性能優(yōu)于平面路由協(xié)議,因而它在WSN網(wǎng)絡(luò)中得到廣泛研究與應(yīng)用。LEACH協(xié)議是最早提出的層次路由協(xié)議,該協(xié)議設(shè)定一個閾值,每個節(jié)點通過一個0到1間且大于閾值的隨機數(shù)決定簇頭并進行分簇,當沒有考慮網(wǎng)絡(luò)簇頭的分布均衡和簇頭間路由。李在分析分簇路由基礎(chǔ)上提出了EEUC協(xié)議,利用節(jié)點與基站的距離不同來決定簇的大小,距離基站近的成簇半徑小,以便騰出更多能量進行路由轉(zhuǎn)發(fā),當節(jié)點剩余能量高于半徑內(nèi)其他節(jié)點則能夠當選簇頭。EEUC協(xié)議雖然解決了均勻分簇中擔任路由節(jié)點的簇頭能耗過大、全網(wǎng)能耗不均衡等問題,但沒有很好的考慮簇內(nèi)成員節(jié)點數(shù)量以及通信代價等問題。
本文針對非均勻分簇協(xié)議EEUC的不足,對EEUC協(xié)議進行改進。改進協(xié)議利用節(jié)點與基站的距離、節(jié)點相鄰節(jié)點數(shù)量來決定成簇半徑,綜合考慮節(jié)點剩余能量、節(jié)點相鄰區(qū)域節(jié)點數(shù)量和成簇通信代價以及到基站的距離等因素進行分簇。在中繼路由節(jié)點的選擇上,除了考慮簇頭選擇的因素外,還增加中繼節(jié)點數(shù)和傳送信息次數(shù)作為參考,優(yōu)化路由節(jié)點選擇協(xié)議,均衡路由節(jié)點通信能耗。
2參數(shù)設(shè)計與計算方式
2.1非均勻競爭半徑計算方式
半徑的大小決定該簇內(nèi)節(jié)點數(shù)量或簇內(nèi)通信開銷,因而針對EEUC協(xié)議在競爭半徑的確定中只考慮節(jié)點到基站距離的不足進行改進,加入節(jié)點相鄰節(jié)點數(shù)量因素。改進算法的競爭半徑計算公式如下:
(1)
其中,dmax和dmin分別為網(wǎng)絡(luò)節(jié)點距離基站的最大和最小距離。di為節(jié)點i與基站距離,Nmax為最大節(jié)點數(shù)量,Ni為節(jié)點i相鄰節(jié)點數(shù)量,為大于0小于1的參數(shù)。R0為最大競爭半徑。
2.2簇頭選擇閾值定義
簇頭的選擇不應(yīng)該僅僅由剩余能量來決定,還應(yīng)該綜合考慮成簇半徑內(nèi)節(jié)點數(shù)量、各節(jié)點到簇頭的通信代價以及簇頭與基站的距離等因素,以確保簇內(nèi)節(jié)點不能過多或通信距離過遠而增加能量損耗。所以簇頭選擇閾值Tnew定義如下:
(2)
(3)
其中a+b+e=1,En為節(jié)點i當前剩余能量值,EA為網(wǎng)絡(luò)平均能量。由公式可知,節(jié)點乘0余能量越多當選簇頭概率越大,距離基站越近、節(jié)點相鄰區(qū)域節(jié)點數(shù)量越大且簇內(nèi)通信代價越小越容易成為簇頭。
2.3路由閾值定義
路由節(jié)點擔負則中繼信息傳遞的重任,若能量過低或頻繁的承擔中繼任務(wù)都會導致該節(jié)點過早失效,因而,簇頭在選擇路由節(jié)點時除了考慮剩余能量等綜合信息外,還要考慮該路由節(jié)點為多少個簇頭傳遞消息給基站,傳遞了多少次消息等。因此,路由閾值的定義為:
(4)
其中,β+γ+ω=1,Nr為中繼節(jié)點服務(wù)簇頭數(shù)量,nr輪數(shù),ni為中繼路由擔任次數(shù)。當服務(wù)簇頭個數(shù)M越大,該節(jié)點添加新簇頭的概率越小,傳遞的信息越頻繁,成為中繼路由的概率就越小。以此來降低中繼節(jié)點的能量損耗。
3協(xié)議設(shè)計
在網(wǎng)絡(luò)部署開始階段,基站BS首先要向網(wǎng)絡(luò)發(fā)送廣播信號,每個節(jié)點根據(jù)接收到的信號強弱計算自己與基站的距離,用于計算節(jié)點組網(wǎng)半徑。本節(jié)分別對簇頭競選、分簇和簇頭間通信路由選擇兩個部分對改進協(xié)議進行描述。
3.1簇的建立
第一步:首輪所有節(jié)點根據(jù)接收到的基站廣播信息獲取到dmax和dmin信息并計算出自己的成簇半徑Rnew。
第二步:判斷節(jié)點剩余能量是否大于平均能量,如果是則根據(jù)自己的計算出來的成簇半徑Rnew廣播自己的簇頭競爭閾值Tnew,否則節(jié)點進入睡眠等待簇頭節(jié)點喚醒成簇。
第三步:所有競爭簇頭的節(jié)點根據(jù)接收到的Tnew值決策是否成為簇頭。若相鄰的節(jié)點Tnew值比自己高,則判斷其是否成簇頭,若成則直接加入該簇,否則自己成為簇頭。
第四步:競爭過程結(jié)束后,簇頭節(jié)點廣播成簇信息,未參與競爭的節(jié)點被喚醒,選擇距離自己最近即通信代價最小的簇加人。并建立簇內(nèi)時分復用時隙通信機制,所有簇頭收集并進行數(shù)據(jù)融合才向路由節(jié)點或BS發(fā)送數(shù)據(jù),減少能耗。
在首輪過后并非每輪都進行分簇,也不是全網(wǎng)所有節(jié)點都重新分簇,而是簇頭節(jié)點能量En小于平均能量匠的簇重新選擇簇頭,需要重新分簇的節(jié)點根據(jù)上面2到4步重新進行非全局分簇。如此小范圍的重新分簇,即減少需要組網(wǎng)節(jié)點數(shù)量,較大程度提升了成簇速度,又降低了因全局分簇而導致的能量不必損耗,優(yōu)化網(wǎng)絡(luò)能量。
3.2簇間路由選擇
簇頭節(jié)點除了負責本簇內(nèi)成員信息的收集與融合,還有可能擔任其他簇頭與基站通信的橋梁即中繼節(jié)點作用,因而每個簇頭還要設(shè)置兩個參數(shù),一個是幾個節(jié)點通過自己向基站方向發(fā)送消息,另一個是自己發(fā)送了幾次消息。引入一個閾值D,若簇頭節(jié)點與基站的距離小于D,則直接與基站進行通信,否則通過多跳與基站通信。簇頭節(jié)點在選擇基站方向上那個節(jié)點作為自己的中繼節(jié)點時,根據(jù)接收到的Eroute信息中選擇最大的節(jié)點作為自己的中繼節(jié)點。若有信息通過自己發(fā)送向基站發(fā)送消息,如果是首次接收到該節(jié)點的消息,則增加自己的Nr值和ni值,否則只增加ni值。如此,某個簇頭節(jié)點的Eroute值越大,表明其剩余能量越多、為其他節(jié)點擔任中繼節(jié)點的數(shù)量越少或中繼發(fā)送的消息量少等,被新節(jié)點作為中繼節(jié)點的概率越大,反正,該節(jié)點越不容易增加新中繼信息,從而達到均衡中繼節(jié)點信息量,優(yōu)化節(jié)點能量損耗,延長節(jié)點壽命的目的。
4實驗與分析
4.1仿真參數(shù)設(shè)置
本文通過Matlab對改進的分簇協(xié)議、經(jīng)典EEUC協(xié)議和LEA CH協(xié)議進行模擬仿真。實驗有關(guān)參數(shù)設(shè)置如下表1所示,協(xié)議中其他參數(shù)的取值均通過多次模擬運行后取較優(yōu)的值。
4.2實驗與分析
將200個節(jié)點隨機分布在200*200的區(qū)域中,分別使用LEACH協(xié)議、EEUC協(xié)議和改進協(xié)議進行仿真模擬。圖1給出了改進協(xié)議在200輪網(wǎng)絡(luò)節(jié)點以及簇頭節(jié)點分布情況。其中,“0”表示普通節(jié)點,“*”表示簇頭節(jié)點,sink基站在左下角原點。
由簇頭分布情況可以知道整個網(wǎng)絡(luò)簇頭節(jié)點分布還算比較均勻,沒有簇頭節(jié)點過于集中或某些區(qū)域無簇頭節(jié)點的情況。
圖2和圖3分別給出了EEUC協(xié)議在343輪和改進協(xié)議在456輪死亡節(jié)點情況,EEUC協(xié)議死亡節(jié)點分布還是比較均勻,沒有出現(xiàn)集中在某部分區(qū)域情況。改進協(xié)議在450輪節(jié)點死亡數(shù)量還是不太大,但在460輪以后節(jié)點開始快速死亡,導致整個網(wǎng)絡(luò)迅速癱瘓,由圖3看出,改進協(xié)議節(jié)點死亡會比較集中而且迅速擴散至全網(wǎng)。
圖4給出了LEACH協(xié)議、EEUC協(xié)議和改進的EEUC協(xié)議的仿真比較圖,由于節(jié)點能耗不均衡,LEACH協(xié)議在120多輪的時候開始有節(jié)點死亡,在250輪左右節(jié)點死亡過半,到500輪左右節(jié)點幾乎全部死亡,節(jié)點開始死亡到全部死亡跨度比EEUC協(xié)議和改進協(xié)議都大。EEUC協(xié)議自270輪左右出現(xiàn)節(jié)點死亡情況,在360輪到430輪區(qū)間節(jié)點迅速死亡,網(wǎng)絡(luò)癱瘓。而改進的EEUC協(xié)議,在430輪左右出現(xiàn)死亡節(jié)點,在470輪節(jié)點幾近全部死亡,跨度較小,也體現(xiàn)出了網(wǎng)絡(luò)能耗相對比較均衡。因而,改進的EEUC協(xié)議有效的均衡了網(wǎng)絡(luò)能耗,延長整個網(wǎng)絡(luò)壽命。
5結(jié)束語
本文對非均勻分簇EEUC協(xié)議進行研究并提出改進,改進協(xié)議通過節(jié)點與基站距離、相鄰節(jié)點數(shù)量兩個因素來決定成簇半徑。改進協(xié)議的分簇閾值綜合考慮了節(jié)點剩余能量、相鄰節(jié)點數(shù)、簇內(nèi)通信代價以及節(jié)點與基站距離等因素,使得簇頭選擇更加合理分布更均衡。中繼路由節(jié)點的選擇上,除了考慮簇頭選擇因素外,還添加了中繼節(jié)點數(shù)量和信息量兩個因素,優(yōu)化各中繼節(jié)點通信信息量,均衡中繼節(jié)點能量損耗。仿真結(jié)果表明,改進的協(xié)議更好的優(yōu)化網(wǎng)絡(luò)分簇,均衡路由節(jié)點通信信息量,提升網(wǎng)絡(luò)能量利用率,延長網(wǎng)絡(luò)壽命。