陳亞楠
摘要:為了提高無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的生存周期和數(shù)據(jù)通信的效率,設(shè)計(jì)優(yōu)質(zhì)路由非常重要。首先提出了設(shè)計(jì)路由協(xié)議所面臨的問(wèn)題;然后介紹了平面路由協(xié)議和層次路由協(xié)議中幾種典型協(xié)議,并分析各協(xié)議的優(yōu)缺點(diǎn);接著通過(guò)實(shí)驗(yàn)分析和仿真,對(duì)各路由協(xié)議做比較;結(jié)果表明SPIN和GASA協(xié)議較好。
關(guān)鍵詞:無(wú)線(xiàn)傳感網(wǎng)網(wǎng)絡(luò);路由協(xié)議;層次路由;平面路由
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)23-0050-02
Abstract: In order to improve the life cycle of wireless sensor networks and data communication efficiency, it is very important to design high-quality routing. Firstly, the problems of designing routing protocols are proposed; and next several typical protocols in plane routing protocols and hierarchical routing protocols are introduced, and the advantages and disadvantages of each protocol are analyzed; then through the experimental analysis and simulation, each routing protocol is compared; It shows that the SPIN and GASA protocols are better.
Key words: wireless sensor network; routing protocol; hierarchical routing; plane routing
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)[1](Wireless Sensor Networks,WSNs)中部署著許多廉價(jià)的節(jié)點(diǎn),在監(jiān)測(cè)區(qū)域中這些節(jié)點(diǎn)收集相關(guān)信息,通過(guò)無(wú)線(xiàn)的方式發(fā)送給基站,基站把接收到的信息處理之后發(fā)送給用戶(hù),從而達(dá)到對(duì)目標(biāo)區(qū)域的監(jiān)測(cè)。而節(jié)點(diǎn)通過(guò)什么樣的路由發(fā)送信息給基站,在短時(shí)間內(nèi)并且高效率的送至目標(biāo)節(jié)點(diǎn),說(shuō)明路由協(xié)議的選取很重要。
組成網(wǎng)絡(luò)的普通節(jié)點(diǎn)大多數(shù)體積小、能量有限,而且沒(méi)有固定的路由能適用任何情況下的網(wǎng)絡(luò),所以網(wǎng)絡(luò)路由設(shè)計(jì)也是目前研究的重點(diǎn)。
1 路由技術(shù)涉及的問(wèn)題
網(wǎng)絡(luò)中生成通信路徑時(shí),具體涉及的問(wèn)題:
1) 網(wǎng)絡(luò)節(jié)點(diǎn)的部署問(wèn)題。一種通過(guò)手工方式部署,手工部署使得節(jié)點(diǎn)在網(wǎng)絡(luò)覆蓋情況比較好,但這種方式的效率不高。另一種是隨機(jī)部署方式,可以通過(guò)飛機(jī)隨機(jī)將節(jié)點(diǎn)拋灑到監(jiān)測(cè)環(huán)境中,雖然隨機(jī)部署的效率不高,但不能保證節(jié)點(diǎn)在部署環(huán)境下分布的均勻性,也就影響了網(wǎng)絡(luò)的性能。
2) 節(jié)點(diǎn)能耗問(wèn)題。網(wǎng)絡(luò)中的節(jié)點(diǎn)能量?jī)H僅通過(guò)有限的電池來(lái)供應(yīng),由于一些環(huán)境比較惡劣,節(jié)點(diǎn)的能量得不到及時(shí)的補(bǔ)充,如果網(wǎng)絡(luò)中有節(jié)點(diǎn)能量多早消耗,網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)就會(huì)相應(yīng)的發(fā)生變化,網(wǎng)絡(luò)的路由就需重新生成。
3) 網(wǎng)絡(luò)魯棒性問(wèn)題。在數(shù)據(jù)傳輸?shù)倪^(guò)程中,可能會(huì)出現(xiàn)某些節(jié)點(diǎn)能量消耗完而死亡,那這個(gè)節(jié)點(diǎn)的死亡不能影響整個(gè)網(wǎng)絡(luò)的服務(wù),所以若某個(gè)節(jié)點(diǎn)失效,就會(huì)有新的路由來(lái)完成傳輸信息的任務(wù)。
4) 數(shù)據(jù)融合問(wèn)題。節(jié)點(diǎn)會(huì)收到許多鄰居節(jié)點(diǎn)發(fā)送過(guò)來(lái)的信息,這些信息可能很多部分存在重合的情況,那么發(fā)送相同的信息,不僅會(huì)增加信息的通信量,可能會(huì)發(fā)生重要信息丟失的情況,多次發(fā)送相同信息,還會(huì)增加網(wǎng)絡(luò)能量消耗。所以節(jié)點(diǎn)可以將相同數(shù)據(jù)分組進(jìn)行數(shù)據(jù)融合,減少信息的傳輸量。
2 典型的網(wǎng)絡(luò)路由協(xié)議
無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的路由協(xié)議依據(jù)拓?fù)浣Y(jié)構(gòu)分平面路由和層次路由兩種,一般平面路由包括泛洪法(Flooding)、Gossiping協(xié)議、信息協(xié)商傳感器協(xié)議(Sensor Protocols for Information via Negotiation, SPIN)等。層次路由包括低能自適應(yīng)聚類(lèi)體系(Low-Energy Adaptive Clustering Hierarchy,LEACH)、高效能量收集算法(Power-Efficient Gathering in Sensor Information Systems, PEGASIS)、GASA協(xié)議等。
2.1平面路由協(xié)議
1)ooding路由協(xié)議[2]
Flooding路由協(xié)議是最為經(jīng)典的路由協(xié)議,該協(xié)議不需要考慮網(wǎng)絡(luò)結(jié)構(gòu)和具體計(jì)算問(wèn)題。完成從源節(jié)點(diǎn)到目標(biāo)節(jié)點(diǎn)的信息傳輸。一個(gè)節(jié)點(diǎn)從它的鄰居節(jié)點(diǎn)接收信息,然后再負(fù)責(zé)把接收的信息傳送給除源節(jié)點(diǎn)以外的其他鄰居節(jié)點(diǎn),直到信息已經(jīng)送至目標(biāo)節(jié)點(diǎn)或信息已過(guò)期,傳送過(guò)程才完全截止。
該協(xié)議的優(yōu)點(diǎn)是協(xié)議實(shí)現(xiàn)的條件簡(jiǎn)單,完全適合用于大規(guī)模或者復(fù)雜的環(huán)境中。當(dāng)然也存在缺點(diǎn):信息爆炸、消耗大量空間存儲(chǔ)相同信息的副本、網(wǎng)絡(luò)能耗高。節(jié)點(diǎn)A發(fā)送信息給它的鄰居節(jié)點(diǎn),即節(jié)點(diǎn)B、C、D收到節(jié)點(diǎn)A發(fā)送的信息,然后節(jié)點(diǎn)B、C、D再把信息發(fā)送給它們的鄰居節(jié)點(diǎn),即節(jié)點(diǎn)D收到一份信息的三個(gè)副本。
2)ssiping協(xié)議[3]
該協(xié)議和泛洪協(xié)議一樣,不涉及網(wǎng)絡(luò)結(jié)構(gòu)和路由計(jì)算問(wèn)題。對(duì)于洪泛協(xié)議的信息爆炸問(wèn)題,Gossiping協(xié)議考慮隨機(jī)原則。當(dāng)一個(gè)節(jié)點(diǎn)收到一份信息時(shí),隨機(jī)選擇它的一個(gè)鄰居節(jié)點(diǎn)來(lái)接收它發(fā)送的信息。而當(dāng)一個(gè)節(jié)點(diǎn)收到相同信息時(shí),該節(jié)點(diǎn)拒絕接收這份信息,反送給發(fā)此信息的鄰居節(jié)點(diǎn)。這種隨機(jī)原則有效避免了信息內(nèi)爆問(wèn)題。但這種拒絕接受信息,反送回信息的方式,增加了網(wǎng)絡(luò)的延時(shí)。
3)IN協(xié)議[4]
SPIN協(xié)議是對(duì)Flooding協(xié)議和Gossiping協(xié)議的改進(jìn),SPIN協(xié)議負(fù)責(zé)發(fā)送ADV、REQ和DATA三個(gè)信息。節(jié)點(diǎn)A向它的鄰居節(jié)點(diǎn)發(fā)送ADV信息,比如節(jié)點(diǎn)C想接收DATA數(shù)據(jù)包,向A發(fā)送REQ數(shù)據(jù)包,然后節(jié)點(diǎn)C向它的鄰居節(jié)點(diǎn)發(fā)送ADV信息,直至DATA數(shù)據(jù)包傳送到目標(biāo)節(jié)點(diǎn)。
SPIN協(xié)議通過(guò)協(xié)商機(jī)制,避免信息重復(fù)發(fā)送,不僅均衡網(wǎng)絡(luò)能耗,還克服了節(jié)點(diǎn)中信息冗余的問(wèn)題。但是SPIN協(xié)議未考慮如何節(jié)能,還是存在缺點(diǎn)。
2.2 層次路由協(xié)議
1) LEACH協(xié)議[5]
該協(xié)議采用輪的方式工作,輪包括簇的建立和穩(wěn)定階段兩個(gè)部分。簇的建立是將網(wǎng)絡(luò)中所有節(jié)點(diǎn)先分成簇結(jié)構(gòu),每個(gè)簇選取一個(gè)簇頭。穩(wěn)定階段是每個(gè)簇頭收集本簇中非簇頭節(jié)點(diǎn)的信息,然后進(jìn)行數(shù)據(jù)融合,最后把數(shù)據(jù)傳送給目標(biāo)節(jié)點(diǎn),實(shí)現(xiàn)與目標(biāo)節(jié)點(diǎn)的通信。簇頭節(jié)點(diǎn)要進(jìn)行數(shù)據(jù)融合和數(shù)據(jù)通信操作,所以與普通節(jié)點(diǎn)相比,簇頭節(jié)點(diǎn)消耗的能量會(huì)比較多。為了延長(zhǎng)網(wǎng)絡(luò)的生命周期,LEACH協(xié)議采用輪換簇頭的方式防止節(jié)點(diǎn)長(zhǎng)期擔(dān)任簇頭,消耗完節(jié)點(diǎn)的有限能量而死亡導(dǎo)致網(wǎng)絡(luò)癱瘓。
LEACH協(xié)議優(yōu)點(diǎn)是簇頭負(fù)責(zé)收集和融合信息后,再與目標(biāo)節(jié)點(diǎn)通信,有效降低了網(wǎng)絡(luò)的通信量。定期輪換簇頭節(jié)點(diǎn),均衡了網(wǎng)絡(luò)中各節(jié)點(diǎn)的能耗。但選擇一個(gè)小于某隨機(jī)數(shù)的節(jié)點(diǎn)擔(dān)任簇頭,會(huì)導(dǎo)致生成的簇大小不均勻,也會(huì)存在能量較少的節(jié)點(diǎn)擔(dān)任簇頭。這些都影響無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的性能。
2) PEGASIS協(xié)議[6]
PEGASIS協(xié)議是在LEACH協(xié)議的基礎(chǔ)上發(fā)展而來(lái)的。該協(xié)議要求網(wǎng)絡(luò)中節(jié)點(diǎn)是同構(gòu)的且靜止的,與貪婪算法原理相似,生成一條鄰節(jié)點(diǎn)間距離之和最小的一條路徑,然后隨機(jī)選取路徑中的一個(gè)節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)通信,路徑中的所有節(jié)點(diǎn)都有可能成為簇頭。
PEGASIS協(xié)議中節(jié)點(diǎn)只和自己的鄰居節(jié)點(diǎn)通信,延長(zhǎng)了網(wǎng)絡(luò)的生命周期。該算法的優(yōu)點(diǎn)是與LEACH相比,降低了網(wǎng)絡(luò)的開(kāi)銷(xiāo),提高的網(wǎng)絡(luò)的生存周期。但PEGASIS設(shè)定網(wǎng)絡(luò)中所有節(jié)點(diǎn)有相同級(jí)別的能量,所以會(huì)出現(xiàn)某個(gè)時(shí)刻大量節(jié)點(diǎn)死亡的現(xiàn)象。
3) GASA路由算法[7]
與LEACH、PEGASIS兩種協(xié)議相比,GASA克服了LEACH算法簇頭選取不考慮能量的問(wèn)題,克服了PEGASIS算法已陷入局部最優(yōu)解的問(wèn)題。該算法在貪婪算法的基礎(chǔ)上做了改進(jìn),綜合利用遺傳算法和模擬退火算法生成一條各鄰點(diǎn)之間距離最小的路徑,同時(shí)選取路徑中剩余能量最多的作為鄰居節(jié)點(diǎn)實(shí)現(xiàn)與目標(biāo)節(jié)點(diǎn)的通信。
3 路由協(xié)議的比較
3.1 平面路由協(xié)議的比較
和其他兩種協(xié)議相比,F(xiàn)looding協(xié)議的生存時(shí)間最少,但健壯性最好。Flooding實(shí)現(xiàn)條件簡(jiǎn)單,不需要維護(hù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和形成路由相關(guān)計(jì)算問(wèn)題,所以它的健壯性最優(yōu),適用于各種大規(guī)模和復(fù)雜的網(wǎng)絡(luò)環(huán)境中。SPIN協(xié)議在Flooding協(xié)議與Gossiping協(xié)議的基礎(chǔ)上做了改進(jìn),所以SPIN協(xié)議生存時(shí)間較長(zhǎng),還考慮了節(jié)點(diǎn)的能耗問(wèn)題。
3.2 層次路由協(xié)議的比較
網(wǎng)絡(luò)中節(jié)點(diǎn)隨機(jī)分布,節(jié)點(diǎn)位置固定。根據(jù)層次路由的特點(diǎn),比較三種協(xié)議經(jīng)過(guò)不同通信次數(shù)后,網(wǎng)絡(luò)中存活節(jié)點(diǎn)的能量占初始能量的百分比,LEACH協(xié)議能量消耗較快,相比LEACH協(xié)議,PEGASIS協(xié)議在一定程度上提高了網(wǎng)絡(luò)的生存周期,網(wǎng)絡(luò)能量消耗相對(duì)比較慢。但PEGASIS協(xié)議中設(shè)定網(wǎng)絡(luò)中所有節(jié)點(diǎn)具有相同能量級(jí),簇頭選取不合理等問(wèn)題,在通訊輪數(shù)較多時(shí),出現(xiàn)大量節(jié)點(diǎn)死亡。與LEACH、PEGASIS相反,GASA協(xié)議的網(wǎng)絡(luò)能耗較少,網(wǎng)絡(luò)剩余的能量最多。
4 總結(jié)
由于無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)的能量不是無(wú)限多,要實(shí)現(xiàn)從源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)之間長(zhǎng)時(shí)間數(shù)據(jù)通信,就需要研究網(wǎng)絡(luò)的路由協(xié)議。本文分析了路由算法面臨的一些問(wèn)題。從層次路由和平面路由兩個(gè)角度介紹了幾種經(jīng)典的路由協(xié)議。通過(guò)數(shù)據(jù)分析和仿真來(lái)比較這幾種路由協(xié)議的優(yōu)劣。從經(jīng)典路由算法中得出它們的不足,為以后研究路由協(xié)議打下了夯實(shí)的基礎(chǔ)。
參考文獻(xiàn):
[1] 畢燁,陳麗娜,苗春雨.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位與漂移檢測(cè)[J].小型微型計(jì)算機(jī)系統(tǒng),2018, 39(1):156-160.
[2] 唐堅(jiān)剛, 潘銳. Flooding算法改進(jìn)及其應(yīng)用[J]. 軟件導(dǎo)刊, 2016, 15(8):6-9.
[3] 戴思思.無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中的高效率定向擴(kuò)散和分布式勢(shì)能路由算法[D].上海交通大學(xué), 2010.
[4] 方旺盛,孫建.狹長(zhǎng)直巷道中WSN的SPIN路由算法的改進(jìn)[J].傳感技術(shù)學(xué)報(bào), 2014(4):564-569.
[5] 林楠,史葦杭.無(wú)線(xiàn)傳感器LEACH算法的優(yōu)化及仿真[J].計(jì)算機(jī)仿真,2011, 28(1):178-181.
[6] 胡峻浩,劉興長(zhǎng),談昨非.基于禁忌算法的無(wú)線(xiàn)傳感器網(wǎng)絡(luò)PEGASIS算法改進(jìn)[J]. 后勤工程學(xué)院學(xué)報(bào), 2013(4):91-96.
[7] 趙永波,李慧,覃春淼.基于GASA算法的DFCW-LFM波形設(shè)計(jì)[J].系統(tǒng)工程與電子技術(shù), 2014, 36(11):2186-2191.
【通聯(lián)編輯:代影】