葉夢雄
(西安航空職業(yè)技術(shù)學(xué)院 計(jì)算機(jī)工程學(xué)院, 西安 710089)
在LEACH中WSN路由協(xié)議屬于比較典型的分層路由協(xié)議,這種協(xié)議還存在選舉簇頭、分簇過多等缺陷,本文將會(huì)根據(jù)剩余能量和距離相關(guān)協(xié)議,對LEACH-EG協(xié)議算法進(jìn)行改進(jìn)[1-2]。首先分析剩余平均能量節(jié)點(diǎn)、最優(yōu)簇頭數(shù)量,構(gòu)建一個(gè)簇頭集合,選擇最高剩余能量節(jié)點(diǎn),在根據(jù)相關(guān)算法,建立一個(gè)基站,實(shí)現(xiàn)多跳數(shù)據(jù)的傳輸[3-4]。對LEACH-EG協(xié)議進(jìn)行完善,可以有效減少WSN能耗,同時(shí)延長WSN生存周期。
一般WSN包括基站、終端節(jié)點(diǎn)、任務(wù)管理節(jié)點(diǎn)三個(gè)模塊,傳統(tǒng)的方式就是在檢測區(qū)進(jìn)行節(jié)點(diǎn)傳感器部署,在無線網(wǎng)絡(luò)下實(shí)現(xiàn)通信,而且每個(gè)節(jié)點(diǎn)頭可以通過多跳方式將收集到的數(shù)據(jù)傳輸給基站,然后用戶在互聯(lián)網(wǎng)環(huán)境下,利用節(jié)點(diǎn)管理實(shí)現(xiàn)WSN的配置,對采集到的數(shù)據(jù)進(jìn)行檢測和廣播[5-6]。如圖1所示。
(1)節(jié)點(diǎn)傳感器可以看做是嵌入式小型系統(tǒng),該系統(tǒng)處理數(shù)據(jù)的能力比較差,進(jìn)而造成通信和儲(chǔ)存數(shù)據(jù)的能力也比較差,節(jié)點(diǎn)是使用電池供電,而電池能力是有限的;在WSN中節(jié)點(diǎn)具有終端作用和CH作用,每個(gè)節(jié)點(diǎn)可以實(shí)現(xiàn)數(shù)據(jù)采集,同時(shí)也能傳輸數(shù)據(jù),完成數(shù)據(jù)儲(chǔ)存、融合和處理,同時(shí)也能與其他節(jié)點(diǎn)合作。
圖1 無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)
(2)連接因特網(wǎng)和WSN的是基站,基站具有很強(qiáng)的通信和儲(chǔ)存能力,它可以對網(wǎng)絡(luò)和WSN之間的協(xié)議進(jìn)行轉(zhuǎn)換,同時(shí)廣播檢測終端節(jié)點(diǎn)任務(wù),之后將數(shù)據(jù)傳輸?shù)酵獠烤W(wǎng)絡(luò)上。
(3)無線傳感網(wǎng)絡(luò)協(xié)議棧類似于互聯(lián)網(wǎng)協(xié)議棧,但是它還具有自身的特色。如圖2所示。
圖2 無線傳感器網(wǎng)路協(xié)議棧
該協(xié)議棧包括以下幾個(gè)部分:
① 數(shù)據(jù)鏈路層:具有媒體訪問、數(shù)據(jù)成幀、差錯(cuò)控制等性能,每個(gè)功能都有自己的信道。
② 傳輸層:控制轉(zhuǎn)發(fā)數(shù)據(jù),提高用戶獲取的信息質(zhì)量,保證數(shù)據(jù)傳輸?shù)陌踩涂煽啃浴?/p>
③ 移動(dòng)管理平臺(tái):注冊和實(shí)時(shí)檢測移動(dòng)節(jié)點(diǎn),實(shí)現(xiàn)實(shí)時(shí)維護(hù)匯聚節(jié)點(diǎn)、動(dòng)態(tài)跟蹤傳感器周圍節(jié)點(diǎn)。
④ 網(wǎng)絡(luò)層:找到每個(gè)節(jié)點(diǎn)上的數(shù)據(jù)傳輸通道,同時(shí)保護(hù)路由通道,在傳輸數(shù)據(jù)中,避免該層路由協(xié)議出現(xiàn)沖突。
⑤ 任務(wù)管理平臺(tái):對監(jiān)測任務(wù)進(jìn)行調(diào)度和平衡。
⑥ 物理層:負(fù)責(zé)傳輸信號,同時(shí)收發(fā)數(shù)據(jù)。一般比較常用的是Sensor Node,其價(jià)格比較低廉、體積小而且能耗低。
⑦ 應(yīng)用層:主要是解決工作中遇到的問題,屬于基礎(chǔ)性應(yīng)用。
⑧ 能量管理層:給傳感器節(jié)點(diǎn)提供能源使用的方法,同時(shí)考慮每個(gè)協(xié)議節(jié)能的方法。
平面路由協(xié)議具有結(jié)構(gòu)簡單、穩(wěn)定性良好的特點(diǎn),但是基站收到的無效數(shù)據(jù)非常多,同時(shí)應(yīng)變網(wǎng)絡(luò)能力比較差。(1)Gossiping和Flooding協(xié)議是屬于比較典型的平面路由協(xié)議。Flooding協(xié)議可以收集該節(jié)點(diǎn)以及其周圍節(jié)點(diǎn)的數(shù)據(jù),之后將數(shù)據(jù)廣播給周圍節(jié)點(diǎn),一直傳到死亡節(jié)點(diǎn)為止。(2)PIN協(xié)議是在協(xié)調(diào)機(jī)制和資源管理中使用。每個(gè)節(jié)點(diǎn)會(huì)同資源管理進(jìn)行協(xié)商,收集數(shù)據(jù),之后給下一個(gè)節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)。(3)DD協(xié)議是一種定向傳播協(xié)議,它經(jīng)過數(shù)據(jù)傳輸、興趣擴(kuò)散、路徑增強(qiáng)等三個(gè)階段。(4)Runmor是一種謠傳路由,比較適合在數(shù)據(jù)量傳輸較少的WSN網(wǎng)絡(luò)中使用。
分簇路由協(xié)議比較典型的就是LEACH-C和LEACH協(xié)議。(1)LEACH協(xié)議是一種低功耗且自適應(yīng)低的分簇路由協(xié)議,是WSN中非常重要的根基。LEACH使用輪循方法來選擇簇頭,這樣可以保證每個(gè)節(jié)點(diǎn)都能獲取CH傳輸來的數(shù)據(jù),但是因?yàn)殚L期處于工作狀態(tài)的CH節(jié)點(diǎn),耗能比較多,選擇輪循可以平衡每個(gè)節(jié)點(diǎn)傳感器負(fù)載情況,從增加網(wǎng)絡(luò)生存時(shí)間。(2)LEACH-C可以有效減少CH節(jié)點(diǎn)的能耗,但是LEACH無法自由選擇成為CH,而且形成的簇也會(huì)存在不均勻情況。
LEACH協(xié)議及時(shí)網(wǎng)絡(luò)層次結(jié)構(gòu),它具有自適應(yīng)、低耗能的分層絡(luò)協(xié)議。如果將整個(gè)WSN分成多個(gè)簇,在從每個(gè)簇中選擇節(jié)點(diǎn)傳感器作為簇頭,其他節(jié)點(diǎn)作為簇內(nèi)節(jié)點(diǎn),這種原理就是分簇路由協(xié)議[7-8]。在簇內(nèi)的每個(gè)成員都可以給簇頭傳輸數(shù)據(jù),簇頭接收到數(shù)據(jù)后,再將數(shù)據(jù)進(jìn)行融合,之后將數(shù)據(jù)傳給基站,這樣可以看出產(chǎn)生的CH工作量比較大,進(jìn)而造成的能耗也比較多。
對于LEACH協(xié)議來說典型的特征就是隨機(jī)性選擇簇頭,造成CH數(shù)量過多,產(chǎn)生能量浪費(fèi)情況,如果CH較少,會(huì)造成部分簇頭節(jié)點(diǎn)消耗能量過快,造成節(jié)點(diǎn)死亡過早。簇分布比較中,距離比較遠(yuǎn)的節(jié)點(diǎn)在傳輸數(shù)據(jù)時(shí)會(huì)浪費(fèi)較多的資源。本文主要對LEACH協(xié)議簇頭位置和數(shù)量進(jìn)行改進(jìn)。
關(guān)于簇頭數(shù)量最優(yōu)計(jì)算,這里使用接收數(shù)據(jù)和轉(zhuǎn)發(fā)數(shù)據(jù)公式進(jìn)行節(jié)點(diǎn)計(jì)算,得到無線通信一階模型。為式(1)和式(2)。
(1)階段發(fā)送消耗的能量是:
(1)
(2)階段接收消耗能量是
Erx(i,j)=l×Eelec
(2)
(3)
(4)
在真?zhèn)€一輪中包括簇成員和CH等整個(gè)能耗是Ecluster,表示為式(5)。
(5)
也就說在WSN整個(gè)一輪K簇中能耗是如式(6)。
(6)
(7)
選擇公式(7)中各項(xiàng)參數(shù)就可以對WSN進(jìn)行設(shè)置,從而得到最優(yōu)的CH數(shù)量。
根據(jù)拓?fù)渚W(wǎng)絡(luò)結(jié)構(gòu),計(jì)算CH之間最小間距,對閾值T(n)進(jìn)行優(yōu)化實(shí)現(xiàn)競選CH如式(8)。
(8)
其中初始節(jié)點(diǎn)能量是E0,當(dāng)前節(jié)點(diǎn)能量是Ecur,CH論述沒有連續(xù)表示;rs,rs重置為0,是在CH當(dāng)選節(jié)點(diǎn),這時(shí)沒有當(dāng)選的節(jié)點(diǎn)CH會(huì)在連續(xù)1/p(p指經(jīng)過的輪數(shù))輪中成為CH概率。
想要得到最優(yōu)CH術(shù),首先要分成Kopt個(gè)簇把WSN區(qū),這時(shí)不限制基站衡量,而且提供提供較強(qiáng)的儲(chǔ)存和計(jì)算能力,滿足用戶的需求。在搭建完成整個(gè)WSN后,所有節(jié)點(diǎn)會(huì)將當(dāng)前信息位置和能量信息傳給基站。其中有BS對Node信息進(jìn)行匯總,在計(jì)算之后,按照面積將整個(gè)WSN評分分成Kopt個(gè)簇,之后BS會(huì)根據(jù)當(dāng)前Node所在的簇和能量值,在多個(gè)節(jié)點(diǎn)簇中選擇簇頭,數(shù)據(jù)傳輸?shù)耐緩绞菑牡湍芰肯蚋吣芰浚娨粋€(gè)基站在每個(gè)簇頭方向?qū)崿F(xiàn)多跳傳輸方式。在當(dāng)前相同能量位置,CID表示較小的CH接收同一級和低一級的簇頭信息,之后給高一級簇頭發(fā)送信息。之后,基站將所有的信息反饋給傳感器節(jié)點(diǎn),節(jié)點(diǎn)接收信息后,會(huì)根據(jù)每個(gè)傳輸路徑進(jìn)行數(shù)據(jù)傳輸,如圖3所示。
圖3 固定簇指示圖
(1)LEACH-EH是對LEACH進(jìn)行加權(quán)改進(jìn)的思想,明確概率權(quán)值Ti(t)′,根據(jù)隨機(jī)出現(xiàn)的概率閾值進(jìn)行CH選舉,將固定簇中節(jié)點(diǎn)剩余能量和地理位置使用Ti(t)′進(jìn)行劃分,之后使用Ti(t)′對簇頭節(jié)點(diǎn)進(jìn)行篩選,這樣可以保證每個(gè)簇內(nèi)都有相同空間距離,避免簇頭不合理分布情況,增加某些部分節(jié)點(diǎn)的能耗,造成節(jié)點(diǎn)死亡時(shí)間過早,是WSN不通暢,如式(9)。
其中:Ti(t)′=α*f(d)+(1-a)*f(e)
(9)
公式(9)是對節(jié)點(diǎn)i概率權(quán)值進(jìn)行完善的方法,其中α表示因數(shù)權(quán)值,Ti(t)′可以對f(e) 和f(d)權(quán)重進(jìn)行調(diào)整,f(d)是一個(gè)距離函數(shù),它決定這節(jié)點(diǎn)的位置,而f(e)是函數(shù)能量,被節(jié)點(diǎn)生命狀態(tài)影響。不同的WSN,存在不同的α,如果WSN節(jié)點(diǎn)密度比較大,這時(shí)α?xí)饾u減少,這樣就可以增加節(jié)點(diǎn)剩余能量CH概率;在初始WSN階段,可以隨意對α值進(jìn)行調(diào)整,調(diào)大α,在分促使可以減少剩余能量權(quán)重,便于分簇。
節(jié)點(diǎn)距離函數(shù)和競選簇頭關(guān)系,如式(10)。
(10)
結(jié)語:本分基于LEACH算法對路由協(xié)議進(jìn)行改進(jìn),主要分析了簇頭數(shù)量最優(yōu),競選簇頭,節(jié)約LEACH能耗等,并提出了多跳傳輸在能量和位置上的LEACH-EG改進(jìn)算法。
本文基于LEACH算法對路由協(xié)議進(jìn)行改進(jìn),主要分析了每個(gè)虛擬的網(wǎng)絡(luò)形成一個(gè)簇,并且選出一個(gè)簇頭,所有的簇頭形成了一個(gè)骨干,擔(dān)當(dāng)路由查找和傳輸功能,利用網(wǎng)絡(luò)劃分網(wǎng)絡(luò),一個(gè)優(yōu)點(diǎn)就是每個(gè)節(jié)點(diǎn)能夠根據(jù)自己的坐標(biāo)信息可以計(jì)算出自己的網(wǎng)絡(luò)編號,有利于分簇辨認(rèn)。并且提出了多跳傳輸在能量和位置上的LEACH-EG改進(jìn)算法。