馮馨于,仇英輝
(華北電力大學(xué)電氣與電子工程學(xué)院,北京 102206)
低功耗有損網(wǎng)絡(luò)[1]LLNs(Low Power and Lossy Networks),一種比較特殊的無(wú)線傳感器網(wǎng)絡(luò)。由于構(gòu)成該網(wǎng)絡(luò)的嵌入式設(shè)備在功率、存儲(chǔ)空間、處理能力等資源方面受到制約,容易造成數(shù)據(jù)在網(wǎng)絡(luò)傳輸過(guò)程中的丟失。為了設(shè)計(jì)適用于 LLNs的路由協(xié)議,IETF(Internet Engineering Task Force)的ROLL(Routing Over Low power and Lossy)工作組提出了一種針對(duì)LLNs的路由協(xié)議RPL[2](Routing Protocol for Low-Power and Lossy Networks)。RPL路由協(xié)議對(duì)節(jié)點(diǎn)能量受限、鏈路不穩(wěn)定等網(wǎng)絡(luò)有較強(qiáng)的適應(yīng)能力,因此有十分廣闊的應(yīng)用前景。
目前,國(guó)內(nèi)外學(xué)者針對(duì)RPL的研究主要集中在能量均衡、負(fù)載均衡等方面。能量均衡方面,文獻(xiàn)[3]提出了一種基于三角模算子的 RPL 協(xié)議路由優(yōu)化算法,基于三角模融合算法,重新定義了網(wǎng)絡(luò)節(jié)點(diǎn)的能量指標(biāo)和邏輯距離隸屬度并進(jìn)行了融合,更為合理地進(jìn)行父節(jié)點(diǎn)選定,降低了能量損耗。在負(fù)載均衡方面,文獻(xiàn)[4]提出了一種基于普通節(jié)點(diǎn)負(fù)載均衡的RPL路由協(xié)議OLB-RPL,采用劃分能量級(jí)別和改變通信半徑兩重負(fù)載均衡辦法。但是文章對(duì)能量級(jí)別的劃分不夠靈活,這樣在負(fù)載均衡進(jìn)行到一定程度的時(shí)候無(wú)法繼續(xù)進(jìn)行負(fù)載均衡。為了更好地實(shí)現(xiàn)負(fù)載均衡,本文提出了一種基于剩余級(jí)別進(jìn)行負(fù)載均衡的RPL路由協(xié)議的優(yōu)化算法WLB-RPL。
RPL是規(guī)定在IPV6無(wú)線傳感器網(wǎng)絡(luò)WSN(Wireless Sensor Networks)中的一種距離路由矢量協(xié)議。RPL的核心思想是通過(guò)建立面向根節(jié)點(diǎn)的有向無(wú)環(huán)圖DODAG(Destination Oriented Directed Acyclic Graph),最終實(shí)現(xiàn)網(wǎng)絡(luò)中每一個(gè)節(jié)點(diǎn)都有一條到達(dá)根節(jié)點(diǎn)的路徑,進(jìn)而完成整個(gè)網(wǎng)絡(luò)的路由拓?fù)鋱D[5-6]。在這一過(guò)程中,RPL是通過(guò)使用目標(biāo)函數(shù)和路由度量約束條件來(lái)完成DODAG構(gòu)建的。
1.1.1 RPL控制消息
在RPL路由協(xié)議的整個(gè)組網(wǎng)過(guò)程中,DODAG拓?fù)涞臉?gòu)建依靠RPL控制消息的交互。RPL嚴(yán)格的遵從IPV6架構(gòu),主要使用3種控制消息,分別是DIO,DAO,DIS。
①DODA信息對(duì)象DIO(DODAG Information Objection):是DODAG向下路徑中的消息,主要包含節(jié)點(diǎn)所在DODAG相關(guān)的信息,比如DODAGID,Rank值等。
②DODAG目的廣播對(duì)象DAO(Destination Advertisement Object):沿DODAG向上傳播目的地信息通告。
③DODAG請(qǐng)求信息DIS(DODAG Information Solicitation):節(jié)點(diǎn)未收到DIO消息時(shí),可以向周圍節(jié)點(diǎn)廣播DIS,用來(lái)請(qǐng)求DIO消息。
1.1.2 DODAG構(gòu)建過(guò)程
DODAG的構(gòu)建過(guò)程基于鄰居發(fā)現(xiàn)機(jī)制,步驟具體如下:
①DODAG根節(jié)點(diǎn)廣播DIO消息;
②節(jié)點(diǎn)A、B收到來(lái)自根節(jié)點(diǎn)的DIO消息,包括DODAGID、Rank值、目標(biāo)函數(shù)等信息,節(jié)點(diǎn)據(jù)此判斷是否加入該DODAG。如果節(jié)點(diǎn)決定加入該DODAG,就將帶有自身路由前綴信息的DAO消息回復(fù)給根節(jié)點(diǎn)。節(jié)點(diǎn)B在決定加入DODAG之后,更新自己的Rank值并繼續(xù)周期性的廣播DIO消息。
③同理,節(jié)點(diǎn)C在收到來(lái)自節(jié)點(diǎn)B的DIO消息之后,判斷是否加入該DODAG,若加入,則回復(fù)給父節(jié)點(diǎn)B一個(gè)DAO消息。
④節(jié)點(diǎn)B收到來(lái)自節(jié)點(diǎn)C的路由前綴信息DAO后,節(jié)點(diǎn)B也重復(fù)這一步驟,傳回到根節(jié)點(diǎn)。
⑤假設(shè)節(jié)點(diǎn)D一直沒(méi)有收到來(lái)自DODAG中的DIO消息,節(jié)點(diǎn)D可以主動(dòng)給節(jié)點(diǎn)A發(fā)送一個(gè)DIS請(qǐng)求信息,請(qǐng)求加入DODAG。
⑥節(jié)點(diǎn)A發(fā)送DIO消息給節(jié)點(diǎn)D。
⑦節(jié)點(diǎn)將整合之后的路由前綴信息(包括自己及子節(jié)點(diǎn)的信息)傳給父節(jié)點(diǎn),該父節(jié)點(diǎn)再傳給其父節(jié)點(diǎn),節(jié)點(diǎn)反復(fù)重復(fù)這一步驟,直到根節(jié)點(diǎn)已經(jīng)獲得整個(gè)DODAG的前綴信息。至此,DODAG構(gòu)建完成。
1.1.3 路由構(gòu)建過(guò)程
①向上路由:由葉子節(jié)點(diǎn)向根節(jié)點(diǎn)的數(shù)據(jù)傳輸過(guò)程。
②向下路由:由根節(jié)點(diǎn)向葉子節(jié)點(diǎn)的數(shù)據(jù)傳輸過(guò)程。向下路由按照實(shí)際情況可以分為非存儲(chǔ)模式和存儲(chǔ)模式。
(a)非存儲(chǔ)模式:所有的前綴信息由DODAG根節(jié)點(diǎn)保存,普通節(jié)點(diǎn)不保存任何子節(jié)點(diǎn)的前綴信息。例如圖1中的C,傳送DAO消息直到到達(dá)根節(jié)點(diǎn)。需要向下路由時(shí),需要從根節(jié)點(diǎn)處查詢到目的節(jié)點(diǎn)的轉(zhuǎn)發(fā)路徑。
圖1 DODAG構(gòu)建過(guò)程
(b)存儲(chǔ)模式:節(jié)點(diǎn)保存其子節(jié)點(diǎn)的前綴信息。在構(gòu)建向下路由的時(shí)候,只需要查找路由表,匹配子節(jié)點(diǎn)的前綴信息即可。父節(jié)點(diǎn)在收到子節(jié)點(diǎn)的DAO消息后,會(huì)將DAO消息中的地址信息存儲(chǔ)在路由表中,整合之后傳給根節(jié)點(diǎn)。據(jù)此,根節(jié)點(diǎn)和每個(gè)路由節(jié)點(diǎn)均知道通往子孫節(jié)點(diǎn)的下一跳信息。需要向下路由時(shí)直接查詢路由表項(xiàng)即可。
RPL的路由策略,取決于RPL關(guān)于目標(biāo)函數(shù)OF(Objection Function)的定義。在同一個(gè)RPL實(shí)例中,必須使用同一個(gè)于目標(biāo)函數(shù)。OF定義了怎么選取最佳父節(jié)點(diǎn),怎么確定每個(gè)節(jié)點(diǎn)的Rank值以及根據(jù)哪一種路由度量和約束條件進(jìn)行路徑的選擇。值得注意的是,OF表明了應(yīng)該采用哪一種路由選取策略。此外,OF本身是多個(gè)函數(shù)的集合體,而不是指某一個(gè)單一的函數(shù)。不同的目標(biāo)函數(shù)對(duì)應(yīng)不同的應(yīng)用場(chǎng)景。
1.2.1 RPL的路由度量和約束條件
無(wú)線傳感器網(wǎng)絡(luò)WSN(Wireless Sensor Network)不同于傳統(tǒng)的網(wǎng)絡(luò)以及ad hoc網(wǎng)絡(luò),據(jù)此,RPL在進(jìn)行路徑計(jì)算的時(shí)候采用的是特殊的度量和路由約束條件。
WSN中存在多種路由度量[7],主要分類如表1所示。
節(jié)點(diǎn)度量包括節(jié)點(diǎn)狀態(tài)和屬性、節(jié)點(diǎn)能量及節(jié)點(diǎn)跳數(shù)。節(jié)點(diǎn)能量描述的是和節(jié)點(diǎn)能量相關(guān)的信息,比如剩余能量所占百分比的估值以及供電模式(電源供電還是電池供電等)。
鏈路度量則包括節(jié)點(diǎn)的吞吐量、時(shí)延、可靠性等。
表1 不同的路由度量
在構(gòu)建DODAG的時(shí)候,不同的應(yīng)用場(chǎng)景要求不同的路由選擇標(biāo)準(zhǔn)。例如在對(duì)網(wǎng)絡(luò)生存時(shí)間要求較高或者能量極度受限的情況下,節(jié)點(diǎn)選擇最佳路由的標(biāo)準(zhǔn)是剩余能量。
1.2.2 目標(biāo)函數(shù)的實(shí)施
父節(jié)點(diǎn)的選取是目標(biāo)函數(shù)的重要任務(wù)之一。任何可能會(huì)引起下一跳信息更新的事件比如父節(jié)點(diǎn)失效、定時(shí)器過(guò)期等,都會(huì)引發(fā)目標(biāo)函數(shù)進(jìn)行父節(jié)點(diǎn)的選擇。
而Rank值也取決于目標(biāo)函數(shù)。節(jié)點(diǎn)Rank值的計(jì)算方法如下面公式所示:
newRank=Rank+RankIncrease
(1)
newRank表示節(jié)點(diǎn)的新Rank值,Rank表示候選節(jié)點(diǎn)的Rank值,RankIncrease表示路由度量的增量值,即節(jié)點(diǎn)到候選父節(jié)點(diǎn)的相對(duì)位置的值。RankIncrease的具體數(shù)值取決于目標(biāo)函數(shù)。
典型的目標(biāo)函數(shù)如表2所示,主要包括OF0[8]、MRHOF[9]以及 ETXOF這3種。
表2 幾種典型的目標(biāo)函數(shù)
目前提到的諸多RPL路由協(xié)議在一定程度上延長(zhǎng)了網(wǎng)絡(luò)壽命,但仍存在諸多能量消耗不均勻,負(fù)載不均衡等問(wèn)題。文獻(xiàn)[3]中提到的OLB-RPL引入剩余能量級(jí)別,以尋找最優(yōu)傳感器網(wǎng)絡(luò)鄰居節(jié)點(diǎn)范圍為路由算法來(lái)實(shí)現(xiàn)RPL網(wǎng)絡(luò)中普通節(jié)點(diǎn)的負(fù)載均衡。當(dāng)負(fù)載數(shù)大于設(shè)置的對(duì)應(yīng)閾值的時(shí)候,采取的辦法是調(diào)整當(dāng)前節(jié)點(diǎn)的通信半徑(縮小通信半徑)。因?yàn)槟芰康南?節(jié)點(diǎn)剩余能量級(jí)別會(huì)越來(lái)越小,對(duì)應(yīng)的閾值也會(huì)相應(yīng)的減小,所以在節(jié)點(diǎn)輪數(shù)更新的時(shí)候,會(huì)及時(shí)調(diào)整通信半徑減少負(fù)載數(shù)來(lái)達(dá)到相應(yīng)的負(fù)載均衡的效果。但是隨著輪數(shù)的增加,剩余能量級(jí)別的下降趨勢(shì)會(huì)趨于穩(wěn)定,不利于負(fù)載均衡的繼續(xù)進(jìn)行。本文提出統(tǒng)計(jì)節(jié)點(diǎn)當(dāng)前剩余能量的分布情況,然后對(duì)能級(jí)密集分布的節(jié)點(diǎn)進(jìn)行更細(xì)的能量分級(jí),以期達(dá)到更好的負(fù)載均衡。
文獻(xiàn)[3]RPL路徑選擇的主要依據(jù)是節(jié)點(diǎn)鄰居距離di以及節(jié)點(diǎn)剩余能量級(jí)別REL,然而在考慮到節(jié)點(diǎn)能耗問(wèn)題時(shí)應(yīng)該考慮到節(jié)點(diǎn)的總能耗會(huì)隨著鄰居節(jié)點(diǎn)距離的增大而增大,所以定義了新的參考度量:節(jié)點(diǎn)剩余級(jí)別RL,在考慮節(jié)點(diǎn)的剩余能量的同時(shí)也考慮到了鄰居節(jié)點(diǎn)的平均距離,通過(guò)加權(quán)來(lái)完善這一參考度量。
2.1.1 節(jié)點(diǎn)鄰居距離
在網(wǎng)絡(luò)初始時(shí)刻,設(shè)每個(gè)節(jié)點(diǎn)的通信半徑為R0,也就是每個(gè)節(jié)點(diǎn)的功率發(fā)送的半徑范圍。每個(gè)節(jié)點(diǎn)都有自己的鄰居節(jié)點(diǎn)集,對(duì)節(jié)點(diǎn)i而言,鄰居節(jié)點(diǎn)集是指處于自己通信半徑范圍之內(nèi)的節(jié)點(diǎn)的集合。通過(guò)測(cè)試信號(hào)i來(lái)記錄各鄰居節(jié)點(diǎn)到該節(jié)點(diǎn)的距離,該距離即為節(jié)點(diǎn)鄰居距離d(i)neighbor:
d(i)neighbor=Dist(nodei,nodeineighbork)
(2)
式中:k表示第k個(gè)鄰居節(jié)點(diǎn)。
2.1.2 剩余級(jí)別RL
本文引入剩余級(jí)別RL,通過(guò)對(duì)節(jié)點(diǎn)的的當(dāng)前剩余能量以及節(jié)點(diǎn)之間的平均距離進(jìn)行加權(quán)[10-14]來(lái)綜合考慮能耗。另外,文章設(shè)置了每個(gè)能級(jí)RL對(duì)應(yīng)的負(fù)載數(shù)目閾值Fi來(lái)實(shí)現(xiàn)負(fù)載均衡,即剩余能量少且平均鄰居距離大的節(jié)點(diǎn)對(duì)應(yīng)的負(fù)載少一點(diǎn),剩余能量多且平均距離小的節(jié)點(diǎn)對(duì)應(yīng)的負(fù)載相對(duì)多一點(diǎn)。剩余級(jí)別定義如下:
(3)
式中:Eicur(r)表示每個(gè)節(jié)點(diǎn)i的當(dāng)前剩余能量,Eaverage表示每個(gè)等級(jí)的能量,其定義為:
Eaverage=E0/m
(4)
式中:E0表示節(jié)點(diǎn)最初能量,m表示節(jié)點(diǎn)有m個(gè)能量級(jí)別,D為到鄰居節(jié)點(diǎn)的平均距離,其定義為:
(5)
式中:d(i)neighbor為節(jié)點(diǎn)鄰居距離,n為周圍鄰居節(jié)點(diǎn)的總數(shù)。
(6)
式中:α是自適應(yīng)調(diào)節(jié)因子,β為能量調(diào)節(jié)因子。隨著采集輪數(shù)r的逐漸增加,節(jié)點(diǎn)當(dāng)前剩余能量Eiour(r)逐漸減小。與此對(duì)應(yīng)的是,β在區(qū)間[0,1]內(nèi)逐漸減小,而a在區(qū)間[1/2,1]呈現(xiàn)逐漸增大的趨勢(shì)。這樣隨著信息采集輪數(shù)的增多,a的逐漸增大,剩余能量這一權(quán)值因子在剩余級(jí)別中所占的比例會(huì)越來(lái)越大,以保證剩級(jí)別這一參數(shù)的合理性。
圖2 流程圖
圖2為改進(jìn)之后的動(dòng)態(tài)的m的流程圖。
步驟如下:
S1 初始化,設(shè)置節(jié)點(diǎn)初始半徑。發(fā)送測(cè)試信號(hào),統(tǒng)計(jì)鄰居節(jié)點(diǎn)及節(jié)點(diǎn)鄰居距離di;
S2 對(duì)每個(gè)節(jié)點(diǎn)進(jìn)行能級(jí)劃分,設(shè)每個(gè)節(jié)點(diǎn)有m個(gè)能量級(jí)別,取m=10;
S3 統(tǒng)計(jì)每個(gè)節(jié)點(diǎn)的當(dāng)前剩余能量,記為Ei_cur;
S4 找出最多節(jié)點(diǎn)數(shù)的能級(jí),記為n;
S5 統(tǒng)計(jì)該能級(jí)以及該能級(jí)前后的能級(jí),即能級(jí)數(shù)分別為n,n+1,n-1這3個(gè)能級(jí)的節(jié)點(diǎn)總數(shù),若節(jié)點(diǎn)總數(shù)沒(méi)有占到當(dāng)前存活節(jié)點(diǎn)總數(shù)的一半以上,如下公式所示。
(7)
則每個(gè)節(jié)點(diǎn)各自計(jì)算自己的剩余級(jí)別RLi_cur,并確認(rèn)當(dāng)前剩余能量級(jí)別RELi_cur所對(duì)應(yīng)的負(fù)載門(mén)限Fi。統(tǒng)計(jì)自己所攜帶的負(fù)載數(shù)fi,判斷Fi是否小于fi;
S6 若Fi小于fi,則對(duì)當(dāng)前通信半徑進(jìn)行調(diào)整,減少通信半徑。通信半徑調(diào)整策略描述如下:
設(shè)某一時(shí)刻節(jié)點(diǎn)i的通信半徑為Ri,調(diào)整后的通信半徑為Ri+1,起初節(jié)點(diǎn)i通信半徑范圍覆蓋的子節(jié)點(diǎn)有節(jié)點(diǎn)1~n,當(dāng)檢測(cè)到負(fù)載門(mén)限Fi小于攜帶負(fù)載數(shù)fi時(shí),計(jì)算通信半徑的調(diào)整值Δ:
Δ=(d1+d2+d3+…+dn)/n
(8)
則新的通信半徑為
Ri+1=Ri-Δ
(9)
顯然,Ri+1 若Fi大于fi,則保持通信半徑不變,不必進(jìn)行接下來(lái)的負(fù)載均衡機(jī)制。 S7 若這3個(gè)能級(jí)的節(jié)點(diǎn)總數(shù)占到了當(dāng)前存活節(jié)點(diǎn)總數(shù)的一半以上,如下公式所示。 (10) 則對(duì)位于這3個(gè)能級(jí)的節(jié)點(diǎn)進(jìn)行更細(xì)的節(jié)點(diǎn)能量分級(jí)(取m=20),負(fù)載均衡機(jī)制參考S5,S6。 本文對(duì)算法性能進(jìn)行了評(píng)估,通過(guò)與RPL相比較,驗(yàn)證了WLB-RPL在數(shù)據(jù)采集輪數(shù)下的網(wǎng)絡(luò)總能耗、網(wǎng)絡(luò)死亡節(jié)點(diǎn)數(shù)等方面的性能。 本文通過(guò)MATLAB仿真平臺(tái)進(jìn)行仿真實(shí)驗(yàn),在實(shí)驗(yàn)中設(shè)置了250個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),隨機(jī)分布在100×100的區(qū)域內(nèi)。把區(qū)域劃分成兩個(gè)DODAG,并手動(dòng)選取區(qū)域內(nèi)橫縱坐標(biāo)最小的節(jié)點(diǎn)作為DODAG分區(qū)內(nèi)各自的Sink節(jié)點(diǎn)。Sink節(jié)點(diǎn)的初始能量設(shè)置為1.0,普通節(jié)點(diǎn)的能量則設(shè)置為0.45~1.0之間的隨機(jī)值。 表3 仿真參數(shù)設(shè)置 仿真參數(shù)的設(shè)置能夠根據(jù)網(wǎng)絡(luò)大小等具體情況來(lái)實(shí)現(xiàn)靈活地配置,但也應(yīng)該擬合實(shí)際系統(tǒng)的通信的需求。因此,仍需要增加以下假設(shè):①當(dāng)節(jié)點(diǎn)剩余能量小于5%時(shí),即認(rèn)為節(jié)點(diǎn)失效死亡。②仿真中RPL和WLB-RPL的更新周期都是96,但WLB-RPL也是實(shí)時(shí)更新的,每50輪更新一次。③發(fā)送信息能耗采用的能量模型是E=δ·d3,δ取值為δ=0.000 1(1/253)。 負(fù)載均衡的主要指標(biāo)有網(wǎng)絡(luò)總能耗以及網(wǎng)絡(luò)死亡節(jié)點(diǎn)數(shù)目。網(wǎng)絡(luò)總能耗可以直觀反映節(jié)點(diǎn)能量消耗的平均情況。由于負(fù)載過(guò)重的節(jié)點(diǎn)容易提前死亡,所以網(wǎng)絡(luò)節(jié)點(diǎn)死亡數(shù)目可以體現(xiàn)網(wǎng)絡(luò)的通信負(fù)載均衡性能。 為了驗(yàn)證WLB-RPL性能的優(yōu)越性,本文分別比較了RPL和WLB-RPL在一定數(shù)據(jù)采集輪數(shù)下的網(wǎng)絡(luò)死亡節(jié)點(diǎn)數(shù)和網(wǎng)絡(luò)總能耗。 圖3 網(wǎng)絡(luò)平均能耗對(duì)比圖 WLB-RPL和RPL的網(wǎng)絡(luò)平均能量消耗對(duì)比圖如圖3所示。由圖3可知改進(jìn)的算法能量消耗更加均衡,各個(gè)階段的能量消耗都少于RPL算法。網(wǎng)絡(luò)初始化階段,由于RPL和WLB-RPL使用相同的路由建立過(guò)程,因此初始能耗一致。隨著采集輪數(shù)的增加,RPL的網(wǎng)絡(luò)總能耗穩(wěn)步增加,而WLB-RPL出現(xiàn)了一段驟降。本文的WLB-RPL算法中網(wǎng)絡(luò)的拓?fù)涓轮芷谑?0,即每50輪重新進(jìn)行一次動(dòng)態(tài)路由選擇。依據(jù)算法的原理,網(wǎng)絡(luò)中的節(jié)點(diǎn)負(fù)載數(shù)超過(guò)能級(jí)對(duì)應(yīng)的閾值時(shí),節(jié)點(diǎn)通過(guò)調(diào)整通信半徑的方法把自己的負(fù)載數(shù)調(diào)整到閾值范圍內(nèi),網(wǎng)絡(luò)得到均衡優(yōu)化,這就是出現(xiàn)驟降的原因;隨著時(shí)間的推移,能耗逐漸增加,直至最后達(dá)到動(dòng)態(tài)平衡。 圖4呈現(xiàn)的是數(shù)據(jù)采集輪數(shù)和網(wǎng)絡(luò)死亡節(jié)點(diǎn)數(shù)目的關(guān)系。由圖4可得,RPL最早出現(xiàn)死亡節(jié)點(diǎn)數(shù)出現(xiàn)在105輪,而WLB-RPL的死亡節(jié)點(diǎn)數(shù)最早出現(xiàn)在227 輪,比未改進(jìn)的RPL延遲了122輪;而同一輪內(nèi)的死亡節(jié)點(diǎn)數(shù)也明顯減少,相比RPL平均減少39.6%的死亡節(jié)點(diǎn)。從縱向的角度觀察可得出,在橫坐標(biāo)相同的時(shí)候,即同樣的數(shù)據(jù)采集輪數(shù)下,WLB-RPL的網(wǎng)絡(luò)死亡節(jié)點(diǎn)數(shù)也少的多。由此證明達(dá)到了網(wǎng)絡(luò)負(fù)載均衡的效果。 圖4 網(wǎng)絡(luò)節(jié)點(diǎn)死亡數(shù)對(duì)比圖 從橫向的角度觀察可得出,當(dāng)網(wǎng)絡(luò)的死亡節(jié)點(diǎn)數(shù)達(dá)到同樣的水平時(shí),WLB-RPL所完成的數(shù)據(jù)采集輪數(shù)遠(yuǎn)遠(yuǎn)大于RPL協(xié)議。從這個(gè)角度來(lái)說(shuō),該算法大大提高了網(wǎng)絡(luò)的生命周期。同時(shí),當(dāng)死亡節(jié)點(diǎn)數(shù)分別為50,100,150的時(shí)候,WLB-RPL相對(duì)RPL算法的數(shù)據(jù)采集輪數(shù)提高的比例分別是49.27%,33.89%,41.79%??傊?可見(jiàn)本算法有效提升了網(wǎng)絡(luò)的生命周期,延長(zhǎng)了節(jié)點(diǎn)平均壽命,保證了系統(tǒng)的經(jīng)濟(jì)性和環(huán)保性。 本文針對(duì)低功耗有損網(wǎng)絡(luò)的特點(diǎn),在原有負(fù)載均衡的基礎(chǔ)上,提出了一種基于加權(quán)的WLB-RPL路由協(xié)議,降低了網(wǎng)絡(luò)能耗,實(shí)現(xiàn)了更好的負(fù)載均衡。本文提出的算法針對(duì)能級(jí)降到一定程度無(wú)法繼續(xù)進(jìn)行負(fù)載均衡的情況,對(duì)于能級(jí)分布過(guò)于密集的節(jié)點(diǎn)采用更細(xì)的能級(jí)劃分,并提出了關(guān)于能級(jí)的新的加權(quán)的函數(shù),更好的完善了負(fù)載均衡機(jī)制。仿真實(shí)驗(yàn)表明,算法有效均衡了網(wǎng)絡(luò)負(fù)載,降低了能量損耗,延長(zhǎng)了網(wǎng)絡(luò)生命周期。 參考文獻(xiàn): [1] Kulau U,Müller S,Schildt S,et al. Energy Efficiency Impact of Transient Node Failures when Using RPL[C]//IEEE,International Symposium on A World of Wireless,Mobile and Multimedia Networks. IEEE,2017:1-6. [2] Tahir Y,Yang S,Mccann J A. BRPL:Backpressure RPL for High-Throughput and Mobile IoTs[J]. IEEE Transactions on Mobile Computing,2017,PP(99):1-1. [3] 仇英輝,何霖. 基于三角模算子的RPL協(xié)議路由優(yōu)化算法[J]. 傳感技術(shù)學(xué)報(bào),2015,28(12):1861-1866. [4] 仇英輝,陳玲. 基于普通節(jié)點(diǎn)負(fù)載均衡的RPL路由協(xié)議[J]. 傳感技術(shù)學(xué)報(bào),2016,29(7):1077-1082. [5] 楊及開(kāi). 無(wú)線傳感器網(wǎng)絡(luò)中的RPL路由協(xié)議研究[D]. 重慶:重慶郵電大學(xué),2016. [6] 高筱菲. 基于RPL的無(wú)線傳感器網(wǎng)絡(luò)分簇路由研究與實(shí)現(xiàn)[D]. 北京:北京交通大學(xué),2014. [7] 周蘭. IPv6無(wú)線傳感網(wǎng)網(wǎng)絡(luò)層協(xié)議研究[D]. 南京:南京郵電大學(xué),2013. [8] Thubert P. Objective Function Zero for the Routing Protocol for Low-Power and Lossy Networks(RPL)[J]. 2012,rfc 6552. [9] Gnawali O. The Minimum Rank with Hysteresis Objective Function The[J]. RFC 6719(Proposed Standard,2012.). [10] 張祎江,余金森,郝平. 基于線性參數(shù)加權(quán)評(píng)估機(jī)制的無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位[J]. 計(jì)算機(jī)工程,2017,43(2):156-162. [11] 周蘭. IPv6無(wú)線傳感網(wǎng)網(wǎng)絡(luò)層協(xié)議研究[D]. 南京:南京郵電大學(xué),2013. [12] 胥楚貴,鄧曉衡,鄒豪杰. 無(wú)線傳感器網(wǎng)絡(luò)通信半徑動(dòng)態(tài)調(diào)整的能耗均衡策略[J]. 傳感技術(shù)學(xué)報(bào),2009,22(5):712-716. [13] 朱光輝,張修如,劉衛(wèi)彪. 無(wú)線傳感器網(wǎng)絡(luò)中能量有效的加權(quán)分簇算法[J]. 傳感器世界,2007,26(4):102-105. [14] 陳海坤. 基于通信半徑動(dòng)態(tài)調(diào)整的無(wú)線傳感器網(wǎng)絡(luò)密鑰管理方案[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2007.3 仿真實(shí)驗(yàn)結(jié)果
4 結(jié)論