無(wú)線傳感器網(wǎng)絡(luò)路由協(xié)議與改進(jìn)
1 引言
無(wú)線傳感器網(wǎng)絡(luò)WSN(Wireless Sensor Network)是傳感器、通信和計(jì)算機(jī)3種技術(shù)相結(jié)合的產(chǎn)物,南于無(wú)線傳感器網(wǎng)絡(luò)將邏輯信息世界與客觀物理世界融合在一起,改變了人類與自然界的交互方式,因而具有廣泛的應(yīng)用前景。無(wú)線傳感器網(wǎng)絡(luò)具有很多不同于傳統(tǒng)網(wǎng)絡(luò)的特點(diǎn),如能量嚴(yán)重受限、拓?fù)浣Y(jié)構(gòu)頻繁變化等。因此,WSN網(wǎng)絡(luò)協(xié)議的設(shè)計(jì)同現(xiàn)有各種網(wǎng)絡(luò)協(xié)議的設(shè)計(jì)大不同,因而面臨著各種新的挑戰(zhàn)。在協(xié)議棧的眾多協(xié)議中,網(wǎng)絡(luò)層路由協(xié)議算法作為一項(xiàng)關(guān)鍵技術(shù)已成為目前研究的熱點(diǎn)。
2 無(wú)線傳感器網(wǎng)絡(luò)的路由協(xié)議
由于WSN路由協(xié)議分類標(biāo)準(zhǔn)有很多,因此路由協(xié)議的分類方法也多種多樣。根據(jù)路由協(xié)議不同的工作原理將路由協(xié)議劃分為兩種類型,并分析每種類型的典型路由協(xié)議。
2.1 平面路由
平面路由認(rèn)為傳感器網(wǎng)絡(luò)中的各節(jié)點(diǎn)具有相同的功能和平等的角色,節(jié)點(diǎn)或?qū)⒆约旱氖录z測(cè)結(jié)果主動(dòng)報(bào)告給其他節(jié)點(diǎn),或者是其他節(jié)點(diǎn)向檢測(cè)事件的節(jié)點(diǎn)發(fā)出查詢信息,數(shù)據(jù)傳輸通過(guò)多節(jié)點(diǎn)的多跳路由協(xié)作轉(zhuǎn)發(fā)完成。信息協(xié)商傳感器SPIN(Sensor Protocols for Information via Negotiation)是平面路由中第一個(gè)以數(shù)據(jù)為中心的算法,通過(guò)節(jié)點(diǎn)問(wèn)的協(xié)商機(jī)制減少數(shù)據(jù)冗余和能量損耗。SPIN是一種基于協(xié)商機(jī)制的以數(shù)據(jù)為中心的路由算法,SPIN先對(duì)節(jié)點(diǎn)收到的數(shù)據(jù)的特點(diǎn)進(jìn)行高層次的抽象,形成描述節(jié)點(diǎn)收到數(shù)據(jù)特點(diǎn)的元數(shù)據(jù)(meta-data)。在轉(zhuǎn)發(fā)收到的數(shù)據(jù)前,節(jié)點(diǎn) A先用元數(shù)據(jù)與相鄰節(jié)點(diǎn)B進(jìn)行協(xié)商,發(fā)送ADV信號(hào)判斷節(jié)點(diǎn)B是否需要該數(shù)據(jù)(圖la)。如果節(jié)點(diǎn)B對(duì)元數(shù)據(jù)代表的數(shù)據(jù)有需求,就發(fā)出反饋信號(hào)REO(圖 lb)。否則就丟棄該ADV信號(hào),然后節(jié)點(diǎn)A就將數(shù)據(jù)DATA轉(zhuǎn)發(fā)給節(jié)點(diǎn)B(圖lc)。節(jié)點(diǎn)B收到從節(jié)點(diǎn)A轉(zhuǎn)發(fā)來(lái)的數(shù)據(jù)后,采用與節(jié)點(diǎn)A相同的處理方法。先用元數(shù)據(jù)與其相連的所有節(jié)點(diǎn)協(xié)商是否需要該數(shù)據(jù),發(fā)送ADV信號(hào)(圖1d)。如果節(jié)點(diǎn)有需求則回復(fù)REQ信號(hào),無(wú)需求則直接將ADV信號(hào)丟棄(圖 1e),然后節(jié)點(diǎn)B將向所有回復(fù)REQ信號(hào)的節(jié)點(diǎn)發(fā)送數(shù)據(jù)DATA(圖1f)。
SPIN算法并沒(méi)有明確定義元數(shù)據(jù)的格式。其具體格式和應(yīng)用相關(guān),如ADV和REQ的格式可根據(jù)具體應(yīng)用做詳細(xì)規(guī)定。另外,當(dāng)拓?fù)浣Y(jié)構(gòu)發(fā)生變化時(shí),每個(gè)節(jié)點(diǎn)只需在局部范圍內(nèi)維護(hù)與其相鄰的節(jié)點(diǎn)狀態(tài),不需全網(wǎng)廣播,既節(jié)省能量又降低對(duì)節(jié)點(diǎn)運(yùn)算能力的要求,這種SPIN稱為SPIN-1。但SPIN-1不能保證遠(yuǎn)程數(shù)據(jù)的正確遞送,如遠(yuǎn)端節(jié)點(diǎn)需要數(shù)據(jù)而與源節(jié)點(diǎn)相鄰的近端節(jié)點(diǎn)則不需要,在轉(zhuǎn)發(fā)的開(kāi)始就將代表該數(shù)據(jù)的元數(shù)據(jù)丟棄,不做REQ回復(fù),造成數(shù)據(jù)遞送失敗。為了解決這一問(wèn)題,在SPIN-2在SPIN-1的基礎(chǔ)上加入了能量門(mén)限機(jī)制。在遞送數(shù)據(jù)前先檢測(cè)相鄰節(jié)點(diǎn)的能量,如果能量值低于某一個(gè)門(mén)限值,則認(rèn)為該節(jié)點(diǎn)沒(méi)有足夠能力完成遠(yuǎn)程遞送任務(wù),將該數(shù)據(jù)轉(zhuǎn)發(fā)給其他有足夠能量的相鄰節(jié)點(diǎn)。除此之外,針對(duì)不同的應(yīng)用情況,SPIN的其他擴(kuò)展協(xié)議,如SPIN- BC和SPIN-RL針對(duì)傳感器網(wǎng)絡(luò)這種多播網(wǎng)絡(luò)、SPIN-PP和SPIN-EC針對(duì)傳統(tǒng)的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)都做出專門(mén)優(yōu)化。
2.2 層次路由
層次路由(也稱為以分簇為基礎(chǔ)的路由)是最早產(chǎn)生并應(yīng)用于有線網(wǎng)絡(luò)的,滿足大規(guī)模網(wǎng)絡(luò)的高效通信。因此層次路由的概念也被引入到WSN中,用于滿足傳感器節(jié)點(diǎn)的低能耗和高效率通信。在層次路由中,高能量節(jié)點(diǎn)可用于數(shù)據(jù)轉(zhuǎn)發(fā)、數(shù)據(jù)查詢、數(shù)據(jù)融合、遠(yuǎn)程通信和全局路由維護(hù)等高耗能應(yīng)用場(chǎng)合;低能量節(jié)點(diǎn)用于事件檢測(cè)、目標(biāo)定位和局部路由維護(hù)等低耗能應(yīng)用場(chǎng)合。這樣,將不同的應(yīng)用按照節(jié)點(diǎn)不同的能力合理分配,使節(jié)點(diǎn)能充分發(fā)揮各自優(yōu)勢(shì),以應(yīng)付大規(guī)模網(wǎng)絡(luò)情況,并有效提高整個(gè)網(wǎng)絡(luò)的生存時(shí)間。層次路由主要包括兩個(gè)層次的路由:一是用于選擇簇頭節(jié)點(diǎn),二是用于路由選擇。LEACH(low-energy adaptiveclustering hierarchy)是一個(gè)提出較早的基于分簇思想的WSN層次路由算法。與傳統(tǒng)網(wǎng)絡(luò)固定網(wǎng)關(guān)節(jié)點(diǎn)能量較充足相比,WSN中的節(jié)點(diǎn)能量有限,故不能用同定簇頭節(jié)點(diǎn)作為網(wǎng)關(guān)。LEACH從WSN中隨機(jī)選擇少數(shù)節(jié)點(diǎn)作簇頭,考慮到網(wǎng)絡(luò)中各節(jié)點(diǎn)能耗的平衡性,讓其他沒(méi)有做過(guò)簇頭的節(jié)點(diǎn)輪流作為簇頭,使網(wǎng)絡(luò)不會(huì)因少數(shù)節(jié)點(diǎn)先耗盡能量造成網(wǎng)絡(luò)癱瘓。
LEACH算法分簇頭建立和穩(wěn)定狀態(tài)兩階段,前者是LEACH算法實(shí)現(xiàn)的關(guān)鍵,后者是數(shù)據(jù)傳輸?shù)谋WC。在簇頭建立階段,節(jié)點(diǎn)隨機(jī)選擇一個(gè)數(shù)值r (Or1),如果該隨機(jī)數(shù)r小于閾值T(n),則該節(jié)點(diǎn)成為這一輪的一個(gè)簇頭。用G表示最后的1/p輪中沒(méi)有被選為簇頭的節(jié)點(diǎn)集合,p表示簇頭節(jié)點(diǎn)濃度(如5%),則T(n)為:
LEACH的分簇機(jī)制可降低網(wǎng)絡(luò)的整體能耗,延長(zhǎng)網(wǎng)絡(luò)生存時(shí)間;在簇內(nèi)節(jié)點(diǎn)間采用TDMA編碼,在簇頭與基站間采用CDMA編碼,保證信息有效傳輸;數(shù)據(jù)采集和簇頭節(jié)點(diǎn)都是周期性的,網(wǎng)絡(luò)適合監(jiān)測(cè)連續(xù)變化事件。
3 結(jié)束語(yǔ)
闡述無(wú)線傳感器網(wǎng)絡(luò)的網(wǎng)絡(luò)層,以路由算法作為研究主線,深入分析WSN的兩種路由算法。路由算法研究主要存在以下難題:(1)在網(wǎng)絡(luò)層或應(yīng)用層進(jìn)行數(shù)據(jù)融合,網(wǎng)絡(luò)層主要依靠路由算法協(xié)調(diào),以丟棄冗余分組,降低節(jié)點(diǎn)能耗和提高數(shù)據(jù)轉(zhuǎn)發(fā)效率。(2)為保證數(shù)據(jù)傳輸?shù)目煽啃?,盡量降低多路徑維護(hù)的開(kāi)銷,算法不應(yīng)太復(fù)雜。(3)對(duì)于WSN,除考慮節(jié)點(diǎn)靜止時(shí)的情況,節(jié)點(diǎn)移動(dòng)性也需考慮。如果不是移動(dòng)跟蹤節(jié)點(diǎn),一般可在節(jié)點(diǎn)移動(dòng)時(shí)關(guān)閉射頻通道。(4)路由算法應(yīng)處理好節(jié)點(diǎn)間的協(xié)調(diào),即使在節(jié)點(diǎn)數(shù)量較大時(shí)也能完成正常數(shù)據(jù)轉(zhuǎn)發(fā),不會(huì)造成在短時(shí)間內(nèi)失效。(5)對(duì)于節(jié)點(diǎn)數(shù)量較大的WSN,由于網(wǎng)絡(luò)拓?fù)浞植嫉碾S機(jī)性,可能出現(xiàn)某些關(guān)鍵節(jié)點(diǎn)能耗較多,而其他節(jié)點(diǎn)能耗較少,網(wǎng)絡(luò)負(fù)載不平衡。因此,有必要用路南算法加強(qiáng)網(wǎng)絡(luò)負(fù)載平衡性。(6)由于WSN的特殊性,必須考慮節(jié)點(diǎn)的能耗。因此,研究WSN路由算法,要盡可能降低節(jié)點(diǎn)能耗,以延長(zhǎng)網(wǎng)絡(luò)生存時(shí)間。
評(píng)論