摘 要:本文基于典型的無(wú)線傳感器網(wǎng)絡(luò)路由算法LEACH,針對(duì)其在簇頭選舉和數(shù)據(jù)傳輸方式兩個(gè)方面存在的關(guān)鍵性缺陷提出改進(jìn)措施。分析與仿真結(jié)果表明,改進(jìn)后的路由算法不僅能夠保證簇頭的選舉更加合理,同時(shí)也有效的提高網(wǎng)絡(luò)能耗的均衡性,延長(zhǎng)了網(wǎng)絡(luò)生存時(shí)間30%。
關(guān)鍵詞:無(wú)線傳感器網(wǎng)絡(luò);路由算法;LEACH;能耗均衡
中圖分類號(hào):TP212
1 無(wú)線傳感器網(wǎng)絡(luò)LEACH路由協(xié)議
1.1 LEACH協(xié)議的算法描述
LEACH全稱為L(zhǎng)ow Energy Adaptive Clustering Hierarchy(低能量自適應(yīng)成簇分層路由協(xié)議),該算法每一輪執(zhí)行都分為“簇的建立”和“穩(wěn)定數(shù)據(jù)通信”兩個(gè)階段。雖然簇的建立過(guò)程比較耗能,但是,穩(wěn)定數(shù)據(jù)通信階段所持續(xù)的時(shí)間要比簇的建立階段長(zhǎng)很多[1]。
在LEACH協(xié)議中,簇頭與Sink節(jié)點(diǎn)之間采用單跳的方式直接進(jìn)行通信,Sink節(jié)點(diǎn)通常與檢測(cè)區(qū)域的距離較遠(yuǎn)。
1.2 LEACH算法的存在的缺點(diǎn)
LEACH算法在執(zhí)行過(guò)程中通過(guò)循環(huán)選舉簇頭的方式將網(wǎng)絡(luò)能耗分配到網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn),在一定程度上提高了網(wǎng)絡(luò)的能耗均衡性[2]。在數(shù)據(jù)傳輸過(guò)程中LEACH算法還采取了數(shù)據(jù)融合機(jī)制,有效較低了網(wǎng)絡(luò)通信數(shù)據(jù)量[3],但是,也存在以下關(guān)鍵性缺點(diǎn):(1)簇頭節(jié)點(diǎn)隨機(jī)選??;(2)簇頭節(jié)點(diǎn)的個(gè)數(shù)也就不能與動(dòng)態(tài)變化的網(wǎng)絡(luò)拓?fù)湎噙m應(yīng);(3)容易因簇頭節(jié)點(diǎn)失效導(dǎo)致網(wǎng)絡(luò)中出現(xiàn)盲區(qū);(4)網(wǎng)絡(luò)的可擴(kuò)展性隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大會(huì)越來(lái)越低。
2 LEACH算法具體改進(jìn)方案
2.1 節(jié)點(diǎn)選舉簇頭的權(quán)利
在選舉簇頭開始階段,Sink節(jié)點(diǎn)向各節(jié)點(diǎn)發(fā)送命令,要求各節(jié)點(diǎn)以統(tǒng)一的信號(hào)強(qiáng)度P向周圍廣播測(cè)試信息并通過(guò)當(dāng)前簇頭返回各節(jié)點(diǎn)所能接收的、信號(hào)強(qiáng)度在一定[Pmin,Pmax]的鄰居節(jié)點(diǎn)數(shù)量以及各節(jié)點(diǎn)的剩余能量值(Cneighbor-node,Pavailable)。
根據(jù)各個(gè)節(jié)點(diǎn)所返回參數(shù)中的鄰居節(jié)點(diǎn)數(shù)Cneighbor-node,設(shè)置最少鄰居節(jié)點(diǎn)數(shù)Cmin(根據(jù)具體情況而定)。Sink節(jié)點(diǎn)通過(guò)各節(jié)點(diǎn)返回的剩余能量值,就能計(jì)算出節(jié)點(diǎn)的平均剩余能量Paverage:
設(shè)置參數(shù)(參考值為0.8),利用下面的判定原則:
ifPavailable≥λPaveragethenBavailable=ture
elsePavailable<λPaveragethenBavailable=1
只有當(dāng)節(jié)點(diǎn)的剩余能量不少于λPaverage時(shí),節(jié)點(diǎn)才具備當(dāng)選為簇頭的權(quán)利。
節(jié)點(diǎn)通過(guò)以上三種方式的判定,不僅能將剩余能量較少、處于網(wǎng)絡(luò)邊緣的節(jié)點(diǎn)不考慮在簇頭選舉的范圍內(nèi),還能夠通過(guò)控制節(jié)點(diǎn)個(gè)數(shù)使得簇頭的選舉更加科學(xué)合理。
2.2 數(shù)據(jù)傳輸方式
LEACH路由算法中,簇頭節(jié)點(diǎn)直接與Sink節(jié)點(diǎn)進(jìn)行通信,當(dāng)簇頭與Sink節(jié)點(diǎn)間的距離較近時(shí),采用自由空間信道模型,所消耗的能量較少。當(dāng)簇頭與Sink節(jié)點(diǎn)相距較遠(yuǎn)時(shí),采用多路徑衰減信道模型,然而,單跳機(jī)制直接限制了LEACH算法的實(shí)際應(yīng)用。為了解決這一問(wèn)題,本文結(jié)合PEGASIS路由算法的多跳機(jī)制,基于Dijkstra算法的思想,設(shè)計(jì)一種多路徑傳輸方式。簇頭選舉和路由建立這兩個(gè)關(guān)鍵性步驟完成之后,整個(gè)網(wǎng)絡(luò)就會(huì)進(jìn)入穩(wěn)定的數(shù)據(jù)傳輸階段。
3 仿真及性能分析
圖1 LEACH與改進(jìn)協(xié)議在死亡節(jié)點(diǎn)與輪數(shù)上的對(duì)比
如圖1仿真顯示,改進(jìn)型算法相比于LEACH算法,網(wǎng)絡(luò)生存周期提高約30%。無(wú)線傳感器網(wǎng)絡(luò)的整體能耗能夠直接反映出路由算法的能耗均衡性。在改進(jìn)型算法中,網(wǎng)絡(luò)整體能耗比LEACH路由算法更低,并且各個(gè)節(jié)點(diǎn)的能耗也更加均衡。
4 結(jié)束語(yǔ)
本文通過(guò)綜合考慮各個(gè)節(jié)點(diǎn)的剩余能量、鄰居節(jié)點(diǎn)個(gè)數(shù)、確定最佳簇頭節(jié)點(diǎn)的個(gè)數(shù),以降低剩余能量少、處于網(wǎng)絡(luò)邊緣位置的節(jié)點(diǎn)當(dāng)選為簇頭節(jié)點(diǎn)的概率,同時(shí)還能防止網(wǎng)絡(luò)中出現(xiàn)簇頭節(jié)點(diǎn)過(guò)多或過(guò)少情況的出現(xiàn)。通過(guò)軟件仿真和性能分析顯示,改進(jìn)后的協(xié)議能夠有效保證簇頭的均勻分布、提高網(wǎng)絡(luò)能耗均衡性,并提高網(wǎng)絡(luò)生存時(shí)間約30%。
參考文獻(xiàn):
[1]Wendi B Heinzelman,Anantha P Chandrakasan,Hari Balakrishnan.An Application-Specific Protocol Architecture for Wireless Microsensor Networks[J].IEEE Transactions on Wireless Communications,2002(04):660-670.
[2]Cheng Z,Perillo M,Tavli B,Heinzelman W,Tilak S,Abu-Ghazaleh N.Protocols for local data delivery in Wireless Micro-sensor Networks.The 2002 45th Midwest Symposium on Circuits and System,2002(01):I-623-6.
[3]Lindsey S,Raghavendra C,Sivalingam K M.Data gathering algorithms in sensor networks using energy metrics[J].IEEE Transactions on Parallel and Distributed Systems,2002(09):924-935.
作者簡(jiǎn)介:陳良文(1987-),男,計(jì)算機(jī)科學(xué)與工程學(xué)院碩士研究生,主要研究方向:物聯(lián)網(wǎng)技術(shù)、無(wú)線傳感器網(wǎng)絡(luò)技術(shù);李敬兆(1964-),男,博士,教授,博士生導(dǎo)師,主要研究方向:礦山物聯(lián)網(wǎng)、計(jì)算機(jī)監(jiān)控技術(shù)。
作者單位:安徽理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽淮南 232001
基金項(xiàng)目:本課題得到國(guó)家自然科學(xué)基金(項(xiàng)目編號(hào):61170060);安徽省自然科學(xué)基金(項(xiàng)目編號(hào):11040606M135);安徽省高等學(xué)校自然科學(xué)基金資助(項(xiàng)目編號(hào):KJ2011A083)。