摘 要: 通過分析LEACH協(xié)議的優(yōu)缺點,,提出了一種改進的基于位置的水聲傳感器網(wǎng)絡(luò)分簇路由協(xié)議——PBCP,。該協(xié)議對LEACH的簇首選擇機制進行了改進,同時基于位置信息將簇首與Sink節(jié)點之間的通信由單跳改為多跳,。仿真結(jié)果表明,,與LEACH協(xié)議相比,PBCP協(xié)議能夠有效節(jié)約節(jié)點能量,,平衡網(wǎng)絡(luò)負載,,延長網(wǎng)絡(luò)生存時間。
關(guān)鍵詞: 水聲傳感器網(wǎng)絡(luò),;位置,;分簇;路由協(xié)議
水聲傳感器網(wǎng)絡(luò)(Underwater Acoustic Sensor Networks)是水聲通信技術(shù)與無線傳感器網(wǎng)絡(luò)結(jié)合所產(chǎn)生的一個新的研究領(lǐng)域,,經(jīng)常應(yīng)用于對固定海域的長期監(jiān)測,。這種網(wǎng)絡(luò)一旦部署完畢,就需要在水下長期工作,,而且,,在此期間一般不會更換節(jié)點電池,因此延長網(wǎng)絡(luò)生命期成為水聲傳感器網(wǎng)絡(luò)的一個熱點問題,。在路由協(xié)議中,,合理地選擇路由對提高節(jié)點的能量效率、延長網(wǎng)絡(luò)生命期十分重要[1],。LEACH協(xié)議分簇概念被引入之后,,使得網(wǎng)絡(luò)在節(jié)能以及網(wǎng)絡(luò)壽命方面得到了很大提高,然而LEACH協(xié)議在水聲傳感器網(wǎng)絡(luò)中的應(yīng)用也有其自身不可忽略的局限性[2],。本文在LEACH算法的基礎(chǔ)上介紹了一種改進的路由算法PBCP(Position-based Clustering Protocol),,該算法在簇首選舉過程中充分考慮節(jié)點的能量因素,避免剩余能量較低的節(jié)點成為簇首節(jié)點,。
1 LEACH協(xié)議及性能分析
1.1 LEACH算法描述
LEACH協(xié)議的全稱是“低功耗自適應(yīng)集群分層協(xié)議”(Low Energy Adaptive Clustering Hierarchy),,它采用動態(tài)分簇技術(shù),使網(wǎng)絡(luò)中的所有節(jié)點輪換充當簇首,,以均衡網(wǎng)絡(luò)中的能量消耗,,延長整個網(wǎng)絡(luò)的生命周期,。在LEACH算法中,節(jié)點自組織成不同的簇,,每個簇只有一個簇首,。所有非簇首節(jié)點將自己的數(shù)據(jù)發(fā)給所屬簇的簇首節(jié)點,為減少冗余數(shù)據(jù)的傳輸,,簇首節(jié)點在數(shù)據(jù)融合后將數(shù)據(jù)發(fā)送給遠方的Sink節(jié)點[3],。這樣,每個非簇首節(jié)點都只需要知道自己所屬簇的簇首信息即可,,簇首也只需要維持很小的路由表,,為了避免簇首能量消耗過快,每個節(jié)點須輪流擔任簇首,。
因此LEACH算法的實現(xiàn)分成若干輪,,每一輪又可分成簇形成階段和簇傳輸階段,而簇傳輸階段遠遠長于簇形成階段,。在簇形成階段,,每一個還沒有擔任過簇首的節(jié)點分別生成0~1之間的隨機數(shù),如果生成的隨機數(shù)小于給定的閾值T(n),,則選擇為簇首,。T(n)的計算方法如下:
其中,p是簇首在所有節(jié)點中所占的百分比,,r是選舉輪數(shù),,G代表最近l/p輪中還沒有當選過簇首的節(jié)點集合。
一旦節(jié)點被選定為簇首后,,就向外發(fā)送簇首廣播信息,。非簇首節(jié)點根據(jù)收到的簇首廣播信息的信號強弱決定要加入哪個簇,并向?qū)⒁尤氪氐拇厥装l(fā)送入簇請求,。簇首在收到請求后將該節(jié)點加入自己的路由表并為每個節(jié)點設(shè)定一個TDMA定時消息,,并且通知該簇中所有節(jié)點。此后的簇傳輸階段,,簇內(nèi)節(jié)點按照該TDMA時間表與簇首進行通信,,簇首節(jié)點接收簇內(nèi)其他節(jié)點發(fā)送的數(shù)據(jù),并將這些數(shù)據(jù)進行融合,,然后發(fā)送給Sink節(jié)點,。每隔一定時問,整個網(wǎng)絡(luò)重新進入簇形成階段開始新一輪的簇首選舉過程,。
1.2 LEACH算法的不足
LEACH協(xié)議采用層次結(jié)構(gòu),,與平面路由相比簡化了路徑的選擇及路由信息的存儲,同時自適應(yīng)隨機選取簇首節(jié)點,,利于實現(xiàn)全網(wǎng)負載的均衡,。但是LEACH協(xié)議存在下列3個方面的問題,,制約著網(wǎng)絡(luò)能量的均衡消耗。
(1)節(jié)點擔任簇首是嚴格的等概率選擇,,能量較低的節(jié)點一旦成為簇首很容易耗盡能量而死亡;
(2)每一輪通信結(jié)束后都要重新執(zhí)行簇首選擇和簇內(nèi),、簇間路由的建立,,導(dǎo)致了大量的能量消耗;
(3)簇首節(jié)點以單跳形式向基站傳送數(shù)據(jù),,不僅會導(dǎo)致距離基站較遠節(jié)點的能量消耗過大,,也不利于網(wǎng)絡(luò)的大規(guī)模擴展。
2.2 鏈路層協(xié)議
2.2.1 鏈路層協(xié)議的選擇
與陸地傳感器網(wǎng)絡(luò)不同,,水聲傳感器網(wǎng)絡(luò)具有傳輸時延大,、可用頻帶有限、嚴重的時變多途影響等,。因此選取合理有效的鏈路層協(xié)議顯得至關(guān)重要,。鏈路層協(xié)議的基本任務(wù)是為傳感器節(jié)點分配有限的水聲信道資源,避免沖突,。
由于水聲信道為共享介質(zhì),,節(jié)點發(fā)送數(shù)據(jù)的過程中可能會與其他節(jié)點發(fā)送的數(shù)據(jù)產(chǎn)生碰撞,造成發(fā)送包被丟棄,,需重傳發(fā)送的數(shù)據(jù),,導(dǎo)致碰撞節(jié)點發(fā)送這些數(shù)據(jù)消耗更多額外的能量,同時節(jié)點會接收并處理不必要的數(shù)據(jù),,然后再將其丟棄,,造成節(jié)點的無線接收模塊和處理器模塊消耗更多的能量。因此需要考慮采用信道復(fù)用技術(shù)來合理分配水聲信道,。常用的信道復(fù)用技術(shù)包括頻分多址FDMA,、時分多址TDMA和碼分多址CDMA[5]。由于水聲信道的通信帶寬非常有限,,通常只有幾千赫量級,,基本無法使用頻分多址技術(shù)實現(xiàn)多用戶通信;而時分多址要求有時間保護間隔,,且對時間同步的要求非常高,,所以不適合大范圍的水聲通信;碼分多址是實現(xiàn)水下多用戶通信的可行技術(shù)選擇[6],。
碼分多址具有系統(tǒng)容量高,、功耗低、抗干擾性好,、抗多徑衰落,、保密安全性高,、擴展性好等優(yōu)點[7]。碼分多址系統(tǒng)為每個用戶分配了各自特定的地址碼,,利用地址碼序列的正交性和準正交性來區(qū)分不同用戶,,在同頻、同時的條件下,,各接收機根據(jù)不同信號碼型之間的差異分離出需要的信號[8],。
基于以上因素,本文考慮采用基于時分多址和碼分多址的混合信道復(fù)用技術(shù),,即Sink節(jié)點采用一個彼此共知的CDMA擴頻碼(以下簡稱公共信道)與所有節(jié)點之間通信,,每個簇內(nèi)采用唯一的CDMA擴頻碼進行通信,避免簇間的信道沖突,。簇內(nèi)節(jié)點與簇首之間的通信采用時分復(fù)用技術(shù),,簇內(nèi)節(jié)點只在規(guī)定的時隙向簇首節(jié)點發(fā)送數(shù)據(jù)。簇首與Sink節(jié)點之間進行多跳傳輸時每個簇首節(jié)點都將要傳輸?shù)臄?shù)據(jù)通過下一跳節(jié)點的跳頻碼字發(fā)送,。
2.2.2 擴頻地址碼的分配
由于碼分多址要求每條信道所采用的擴頻地址碼唯一,,故考慮在簇首選出后由Sink節(jié)點對擴頻地址碼進行統(tǒng)一分配。簇首節(jié)點在收到分配給本簇的擴頻碼后將自身當選簇首的消息連同自身位置信息和該擴頻碼通過公共信道進行廣播,,為了避免多個簇首節(jié)點在同一時刻廣播自己的消息造成信道沖突,,本文考慮采用MACA協(xié)議中的RTS/CTS握手機制[9]:每個節(jié)點在當選簇首后通過公共信道向Sink節(jié)點發(fā)送一個RTS請求,Sink節(jié)點在收到所有的請求后為每個簇首節(jié)點分配一個唯一的CDMA擴頻碼,,并按照請求的順序依次給相應(yīng)簇首發(fā)送攜帶其擴頻碼的CTS回應(yīng),,簇首節(jié)點在收到CTS后,使用公共信道向全網(wǎng)廣播自己當選簇首的消息,,Sink節(jié)點在收到這一廣播后繼續(xù)給下一個簇首節(jié)點發(fā)送CTS回應(yīng),直到所有的簇首節(jié)點都將自己的消息廣播出去,。
2.3 網(wǎng)絡(luò)模型假設(shè)
(1)水聲傳感器網(wǎng)絡(luò)是同構(gòu)網(wǎng)絡(luò),Sink節(jié)點沒有能量限制,;
(2)本文討論的水聲無線傳感器網(wǎng)絡(luò)為二維靜態(tài)網(wǎng)絡(luò),,不考慮節(jié)點的移動性;
(3)各節(jié)點的初始能量相等,,各節(jié)點都有功率調(diào)節(jié)裝置,,可以根據(jù)距離的遠近調(diào)整發(fā)射功率;
(4)傳感器節(jié)點可以通過外部設(shè)施或是其他的定位機制獲得其地理位置信息,;
(5)每個傳感器節(jié)點都有一個唯一的ID作為其在網(wǎng)絡(luò)中的標識,;
(6)網(wǎng)絡(luò)規(guī)模較小,每個傳感器節(jié)點的通信范圍都可以覆蓋整個網(wǎng)絡(luò),。
2.4 改進算法的描述
2.4.1 簇首節(jié)點的選擇
在每一輪的信息傳遞中,,所有節(jié)點都把自身的當前能量值隨采集到的數(shù)據(jù)信息發(fā)送給簇首,簇首在進行數(shù)據(jù)融合后連同自己的剩余能量信息發(fā)送給Sink節(jié)點,Sink節(jié)點在每輪通信結(jié)束后便掌握了所有節(jié)點的剩余能量信息,。這樣Sink節(jié)點便可以計算出當前網(wǎng)絡(luò)中節(jié)點的平均能量Eavg并在發(fā)出開始下一輪簇首選舉的命令中攜帶這一參數(shù),。所有節(jié)點在收到簇首選舉命令后將自身能量E與Eavg進行比較,若E>Eavg,,則參與簇首選舉,,反之,放棄選舉簇首,。簇首的選舉依據(jù)式(6):
由于所選出的簇首節(jié)點能量均高于節(jié)點的平均能量,,這樣便可以保證整個網(wǎng)絡(luò)的結(jié)構(gòu)在一定時期內(nèi)相對穩(wěn)定。在出現(xiàn)了能量過低的簇首節(jié)點而執(zhí)行簇內(nèi)簇首重選時,,只更改了本簇內(nèi)的網(wǎng)絡(luò)結(jié)構(gòu)和上一跳簇首節(jié)點的路由表,,分簇結(jié)構(gòu)的主體結(jié)構(gòu)并沒有改變,,避免了每輪重選簇首造成的大量能耗和長時延,。
3 算法的仿真分析
3.1 仿真參數(shù)
為了驗證PBCP算法的性能, 在MATLAB環(huán)境中對PBCP和LEACH協(xié)議進行了仿真比較。網(wǎng)絡(luò)規(guī)模為一個Sink節(jié)點和100個sensor節(jié)點,,分布在20 km×20 km的區(qū)域內(nèi),。仿真參數(shù)如表1所示。
從圖3中可以看出,,PBCP協(xié)議的死亡節(jié)點達到一半時,,LEACH協(xié)議的節(jié)點數(shù)已經(jīng)接近全部死亡。與應(yīng)用LEACH協(xié)議相比網(wǎng)絡(luò)生存期延長了約45%,,并且大大推遲了第一個節(jié)點死亡的時間,,仿真結(jié)果表明,應(yīng)用PBCP協(xié)議能夠有效節(jié)約節(jié)點能量,,平衡網(wǎng)絡(luò)負載,,延長網(wǎng)絡(luò)生存時間。
延長網(wǎng)絡(luò)生命期成為水聲傳感器網(wǎng)絡(luò)的一個熱點問題,。在路由協(xié)議中,,合理地選擇路由,對提高節(jié)點的能量效率,,延長網(wǎng)絡(luò)生命期十分重要,。本文在LEACH算法的基礎(chǔ)上,介紹了一種改進的路由算法PBCP,,該算法在簇首選舉過程中充分考慮節(jié)點的能量因素,,避免剩余能量較低的節(jié)點成為簇首節(jié)點。下一步的研究包括:在簇首節(jié)點的選舉中綜合考慮能量位置等因素,;保證簇首節(jié)點在地理上均勻分布,;驗證該協(xié)議在三維環(huán)境中的能耗性能;優(yōu)化執(zhí)行簇內(nèi)簇首重選、簇結(jié)構(gòu)重新建立的閾值參數(shù)等,。
參考文獻
[1] 魏昕,,趙力,李霞,,等.水聲通信網(wǎng)綜述[J].電路與系統(tǒng)學(xué)報,,2009,14(6):98-106.
[2] 張光旭.水聲傳感器網(wǎng)絡(luò)可靠路由協(xié)議的研究[D].中國海洋大學(xué)碩士學(xué)位論文.青島:中國海洋大學(xué),,2008.
[3] 邢達波.水聲傳感器網(wǎng)絡(luò)路由算法仿真研究[D].哈爾濱工程大學(xué)碩士學(xué)位論文.哈爾濱:哈爾濱工程大學(xué),,2009.
[4] SOZER E M,STOJANOVIC M,,PROAKIS J G.Underwater acoustic networks[J].IEEE Journal of Oceanic Engineering,,2000,25(1):72-83.
[5] 張林波,,劉彤,,劉國枝.水聲通信網(wǎng)路由協(xié)議比較研究[J].哈爾濱理工大學(xué)學(xué)報,2004,,9(5):39-42.
[6] AKYILDIZ,,POMPILI D,MELODIA T.Underwater acoustic sensor networks:Research challenges[J].Elsevier's Journal of Ad Hoc Networks,,2005,,3(3):257-279.
[7] STOJANOVIC M.On the relationship between capacity and distance in an underwater acoustic communication channel[C].ACM WUWNet. Los Angeles:[s.n.],2006:41-47.
[8] BANEOEE S,,MISRA A.Minimum energy paths for reliable communication in multi-hop wireless networks[C].Proceedings of the ACM International Symposium on Mobile Ad Hoc Networking and Computing(MobiHoc).Lausanne:ACM,,2002.
[9] LINDSEY S,RAGHAVENDRA C,,SIVALINGAM K.Data gathering in sensor networks using the energy delay metric[C].In 15th IPDPS Workshop on Issues in Wireless Networks and Mobile Computing,,2001.