張 瑾,劉會(huì)芳
(武警山西省總隊(duì)通信大隊(duì),太原 030012)
傳統(tǒng)的傳感器節(jié)點(diǎn)通常用于測(cè)量諸如溫度、壓力、濕度等標(biāo)量物理量,但較新版本的無(wú)線多媒體傳感器網(wǎng)絡(luò)(Wireless Multi Sensor Network,WMSN)[1,2]卻能夠傳輸諸如音頻流、靜止圖像、視頻等一系列多媒體數(shù)據(jù)。通常,WMSN是由在網(wǎng)絡(luò)邊緣具有一個(gè)或若干個(gè)接收器的傳感器節(jié)點(diǎn)所組成,這些接收器可以放置在室內(nèi)或室外環(huán)境中,目前,WMSN已經(jīng)被廣泛應(yīng)用于建筑物監(jiān)測(cè)、工廠管理、生物種群或野生生物監(jiān)測(cè)和跟蹤等多個(gè)領(lǐng)域。一方面,WMSN是一種自配置網(wǎng)絡(luò),在配置路由路徑、電源管理、感知事件、周期性數(shù)據(jù)采集、數(shù)據(jù)傳輸過(guò)程中不需要用戶接口;另一方面,WMSN要求高可靠性、高數(shù)據(jù)速率和低計(jì)算能力,并具有便攜性。然而,這些相互沖突和矛盾的需求顯然需要優(yōu)化,并導(dǎo)致了對(duì)服務(wù)質(zhì)量QoS的限制和傳感器壽命的縮短。從硬件組件的物理特性來(lái)看,WMSN參數(shù)的沖突幾乎不可能解決,但在能量消耗和QoS之間的最優(yōu)平衡卻是可以實(shí)現(xiàn)的。傳感器節(jié)點(diǎn)的功耗主要由無(wú)線收發(fā)器和數(shù)據(jù)計(jì)算處理兩部分組成。由于數(shù)字信號(hào)處理器的存在,收發(fā)器消耗放大器、模數(shù)轉(zhuǎn)換器等模擬器件的高功率,而數(shù)據(jù)處理部分僅消耗少量的功率。在后者的基礎(chǔ)上,QoS是衡量傳輸延遲的一個(gè)重要指標(biāo),可以用于糾正在接收器節(jié)點(diǎn)接收到的數(shù)據(jù)包[3-9]。
WMSN路由協(xié)議更注重QoS[10],它支持滿足端到端延遲并提供能量效率的流媒體[11]。
無(wú)線自組網(wǎng)按需平面距離向量路由協(xié)議(Ad hoc on-demand distance vector routing protocol,AODV)[12]使用了兩種路由技術(shù):路由發(fā)現(xiàn)和路由維護(hù),并使用了三種控制信號(hào):路由請(qǐng)求(Route Request,RREQ)、路由應(yīng)答(Route Reply,RREP)和路由錯(cuò)誤(Route Error,RERR)。當(dāng)源結(jié)點(diǎn)開(kāi)始向目標(biāo)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)且沒(méi)有發(fā)現(xiàn)有效路徑時(shí),路由發(fā)現(xiàn)技術(shù)將會(huì)起作用,源結(jié)點(diǎn)將通過(guò)向鄰居結(jié)點(diǎn)發(fā)送路由請(qǐng)求RREQ數(shù)據(jù)包來(lái)開(kāi)始路由發(fā)現(xiàn)步驟,這些數(shù)據(jù)包將被轉(zhuǎn)發(fā)給鄰居結(jié)點(diǎn),直到到達(dá)目標(biāo)結(jié)點(diǎn)或找到具有到達(dá)目標(biāo)結(jié)點(diǎn)的新路由路徑的中間結(jié)點(diǎn)。中間結(jié)點(diǎn)通過(guò)轉(zhuǎn)發(fā)RREQ的過(guò)程,在路由表中記錄廣播包的第一副本中鄰居結(jié)點(diǎn)的地址,并建立反向路徑,隨后源節(jié)點(diǎn)將忽略稍后接收到的任何RREQ數(shù)據(jù)包。使用反向路徑將RREP數(shù)據(jù)包進(jìn)行返回,并在此路徑中結(jié)點(diǎn)的路由表中設(shè)置轉(zhuǎn)發(fā)路由條目,該路由條目將在收到REEP后啟動(dòng)。
AODV中的路由維護(hù)將在連接失敗時(shí)使用RERR包。RERR從連接到相應(yīng)路由源結(jié)點(diǎn)連接失敗的瞬間開(kāi)始,通知源節(jié)點(diǎn)連接失敗,并啟動(dòng)RREQ進(jìn)程加以修復(fù)。
動(dòng)態(tài)按需無(wú)線自組織網(wǎng)絡(luò)(Dynamic MANET On-demand,DYMO)[13]路由協(xié)議主要用于VANETs。DYMO的作用類似于AODV,且對(duì)于AODV協(xié)議沒(méi)有任何額外的特性或增強(qiáng)。相比較而言,DYMO協(xié)議簡(jiǎn)化了AODV,同時(shí)保留了基本的操作步驟。DYMO包括兩個(gè)協(xié)議步驟:路由發(fā)現(xiàn)和路由維護(hù)。當(dāng)源結(jié)點(diǎn)要將數(shù)據(jù)包發(fā)送到一個(gè)不在其路由表內(nèi)的目標(biāo)結(jié)點(diǎn)時(shí),DYMO的路由發(fā)現(xiàn)將會(huì)發(fā)揮作用。當(dāng)路由請(qǐng)求消息通過(guò)廣播被淹沒(méi)于傳感器網(wǎng)絡(luò)中,且當(dāng)數(shù)據(jù)包到達(dá)目標(biāo)結(jié)點(diǎn)時(shí),將返回一條回復(fù)消息,其中包含發(fā)現(xiàn)的路徑信息。
貪婪周邊無(wú)狀態(tài)路由無(wú)線網(wǎng)絡(luò)(Greedy Perimeter Stateless Routing for Wireless Networks,GPSR)[14,15]使 用 結(jié) 點(diǎn) 的 位 置和分組轉(zhuǎn)發(fā)決策,并被用于MANETs。與其他協(xié)議不同的是,GPSR協(xié)議僅利用網(wǎng)絡(luò)拓?fù)渲新酚善鹘彽男畔⑦M(jìn)行貪婪轉(zhuǎn)發(fā)決策,且基于地理位置路由加以工作。GPSR協(xié)議中的每個(gè)結(jié)點(diǎn)都知道自己的位置和直接的單跳鄰居結(jié)點(diǎn)位置,并在每個(gè)包中包含目標(biāo)節(jié)點(diǎn)的地理位置信息。傳感器結(jié)點(diǎn)使用貪婪轉(zhuǎn)發(fā)技術(shù)將數(shù)據(jù)包發(fā)送到距離目標(biāo)結(jié)點(diǎn)最近的近鄰結(jié)點(diǎn)。如果傳感器結(jié)點(diǎn)無(wú)法使用貪婪轉(zhuǎn)發(fā)將數(shù)據(jù)包發(fā)送到其靠近目的地的直接結(jié)點(diǎn),則GPSR將使用周界轉(zhuǎn)發(fā)。周界轉(zhuǎn)發(fā)將數(shù)據(jù)包繞洞路由,直到它到達(dá)距離目標(biāo)最近的結(jié)點(diǎn),貪婪轉(zhuǎn)發(fā)再次接管路由。
然而,AODV,DYMO和GPSR三種路由協(xié)議均存在一定的設(shè)計(jì)不足。在此背景下,本文提出一種基于貪婪轉(zhuǎn)發(fā)的能量感知多路徑路由協(xié)議(Greedy Forward Energy-aware Multipath Routing Protocol,GFEMRP),該協(xié)議能夠有效地克服上述三種路由協(xié)議的不足,具有良好的端到端時(shí)延、丟包率等性能。
GFEMRP協(xié)議主要設(shè)計(jì)思路包括可靠路由和數(shù)據(jù)路由的負(fù)載均衡,從而實(shí)現(xiàn)提升網(wǎng)絡(luò)生存期,并減少整個(gè)網(wǎng)絡(luò)中最常用傳感器節(jié)點(diǎn)的數(shù)據(jù)排隊(duì)時(shí)間。經(jīng)典的貪婪轉(zhuǎn)發(fā)協(xié)議通常使用相同的路由路徑,但這會(huì)導(dǎo)致能量耗盡和一些結(jié)點(diǎn)的關(guān)閉,此外,較為復(fù)雜的過(guò)程也會(huì)造成顯著的端到端延遲。在GFEMRP協(xié)議中,多媒體流通過(guò)不同的路徑加以發(fā)送。在每個(gè)轉(zhuǎn)發(fā)結(jié)點(diǎn)上,基于以下信息決定如何將數(shù)據(jù)發(fā)送到鄰居結(jié)點(diǎn)并建立連接:
(1)GFEMRP是一種地理路由協(xié)議,每個(gè)結(jié)點(diǎn)均知道自己的地理坐標(biāo)和鄰居結(jié)點(diǎn)。
(2)轉(zhuǎn)發(fā)結(jié)點(diǎn)到目的結(jié)點(diǎn)的距離。
(3)轉(zhuǎn)發(fā)結(jié)點(diǎn)及其鄰居結(jié)點(diǎn)的吞吐量。
(4)結(jié)點(diǎn)處的剩余能級(jí)。
(5)數(shù)據(jù)包訪問(wèn)的躍點(diǎn)數(shù)。
(6)鄰居結(jié)點(diǎn)與目的結(jié)點(diǎn)間的距離。
(7)屬于同一流的轉(zhuǎn)發(fā)包的歷史記錄。
(8)傳感器結(jié)點(diǎn)的速度。
GFEMRP路由協(xié)議首先基于使用吞吐量的初始值選擇最短路徑,并假設(shè)所有結(jié)點(diǎn)的吞吐量初始值均相等。通常情況下,這個(gè)初始值是一個(gè)最小值,隨后將計(jì)算得出一個(gè)新的吞吐量值,用于替換初始值。傳感器結(jié)點(diǎn)中的吞吐量將使用信標(biāo)消息與鄰居結(jié)點(diǎn)進(jìn)行交換。起初,轉(zhuǎn)發(fā)結(jié)點(diǎn)將檢查鄰居結(jié)點(diǎn)到目的結(jié)點(diǎn)的距離是否小于自身到目的節(jié)點(diǎn)的距離,若小于則檢查結(jié)點(diǎn)吞吐量,并將其作為最佳值;其次,將在整個(gè)網(wǎng)絡(luò)中存儲(chǔ)結(jié)點(diǎn)的地址、結(jié)點(diǎn)到目的結(jié)點(diǎn)的距離及對(duì)應(yīng)的吞吐量值;最后,將選擇吞吐量大、距離較短的結(jié)點(diǎn)作為下一跳結(jié)點(diǎn)。對(duì)應(yīng)地,信標(biāo)信息將對(duì)傳感器結(jié)點(diǎn)使用新的吞吐量值和其他信息不斷加以更新,其中信標(biāo)信息的間隔時(shí)間將基于傳感器結(jié)點(diǎn)的速度加以變化。顯然,轉(zhuǎn)發(fā)結(jié)點(diǎn)能夠確定下一跳選擇過(guò)程中的局部最優(yōu),GFEMRP協(xié)議的執(zhí)行流程圖如圖1所示。
圖1 GFEMRP協(xié)議流程
然而,在某些情況下,轉(zhuǎn)發(fā)結(jié)點(diǎn)無(wú)法找到下一跳結(jié)點(diǎn),即路由路徑中出現(xiàn)了網(wǎng)絡(luò)黑洞,主要有兩個(gè)原因:靜態(tài)黑洞主要源于結(jié)點(diǎn)所處的結(jié)構(gòu)位置;動(dòng)態(tài)黑洞則是由于能量泄漏導(dǎo)致傳感器結(jié)點(diǎn)關(guān)閉時(shí)而產(chǎn)生的。如果無(wú)線電發(fā)射機(jī)區(qū)域中有工作結(jié)點(diǎn),則GFEMRP能夠?qū)诙醇右蕴幚聿⒛軌蚴褂眯碌穆酚陕窂?。?dāng)轉(zhuǎn)發(fā)結(jié)點(diǎn)在貪婪轉(zhuǎn)發(fā)中找不到下一跳時(shí),將使用周邊轉(zhuǎn)發(fā)。以圖2為例,轉(zhuǎn)發(fā)結(jié)點(diǎn)NF查找路由路徑中的黑洞,而周長(zhǎng)轉(zhuǎn)發(fā)用于根據(jù)結(jié)點(diǎn)的條件將數(shù)據(jù)轉(zhuǎn)發(fā)到Nx1或Ny1,最后一步是GFEMRP將使用貪婪轉(zhuǎn)發(fā)模式查找到下一跳結(jié)點(diǎn)。
圖2 周邊轉(zhuǎn)發(fā)流程
為了驗(yàn)證本文所提出的協(xié)議的有效性,本節(jié)將GFEMRP協(xié)議與AODV、DYMO和GPSR三種路由協(xié)議進(jìn)行了比較。仿真場(chǎng)景為1500×500m的區(qū)域,并發(fā)送20kbps多媒體數(shù)據(jù)的均勻WMSN網(wǎng)絡(luò),傳感區(qū)域邊緣分別有兩個(gè)源結(jié)點(diǎn)和一個(gè)目的結(jié)點(diǎn),并使用OMNET++ 5.0和INET框架對(duì)協(xié)議進(jìn)行了仿真,詳細(xì)的仿真參數(shù)如表1所示。在移動(dòng)速度為5、10、15、20m/s的55個(gè)傳感器結(jié)點(diǎn)場(chǎng)景下,對(duì)GFEMRP協(xié)議在不同流量條件下的有效性進(jìn)行了仿真實(shí)驗(yàn)。
表1 仿真參數(shù)
(1)端到端延遲(End-to-End Delay,E2ED):使用圖2所示的多路徑傳輸拓?fù)淇梢杂行p少E2ED。從圖3所示的仿真結(jié)果不難看出,在傳感器結(jié)點(diǎn)的介質(zhì)密度中,GFEMRP表現(xiàn)出最佳的延遲特性,這是因?yàn)槁窂绞腔谧疃搪窂胶妥罡咄掏铝康泥従咏Y(jié)點(diǎn)來(lái)選擇的;AODV和DYMO路由技術(shù)相似,源結(jié)點(diǎn)需要發(fā)送路由請(qǐng)求并等待,只有在收到RREP后才可以發(fā)送數(shù)據(jù);GPSR僅使用了最短路徑,但由于數(shù)據(jù)包需要在相鄰結(jié)點(diǎn)的緩沖區(qū)排隊(duì),因此最短路徑并非總能提供最快路由。因此,基于結(jié)點(diǎn)的可用性,GFEMRP協(xié)議為多媒體數(shù)據(jù)實(shí)時(shí)傳輸或非延遲容忍業(yè)務(wù)提供了一條特殊的傳輸路徑。
圖3 端到端延遲實(shí)驗(yàn)結(jié)果
(2)丟包率(Packet Loss Radio,PLR):PLR是定義WMSN路由協(xié)議性能的另一個(gè)參數(shù),實(shí)驗(yàn)結(jié)果如圖4所示。與GPSR協(xié)議相比,GFEMRP協(xié)議在中密度網(wǎng)絡(luò)中顯示出更好的性能;由于移動(dòng)性造成了源節(jié)點(diǎn)位置的改變,導(dǎo)致AODV協(xié)議和DYMO協(xié)議的仿真結(jié)果出現(xiàn)了很高的丟包率??傮w來(lái)說(shuō),與其他協(xié)議相比,GFEMRP協(xié)議在延遲和包錯(cuò)誤率方面均給出了最好的結(jié)果,滿足了多媒體數(shù)據(jù)傳輸?shù)囊螅绕涫窃诰哂杏矔r(shí)延約束的應(yīng)用領(lǐng)域。包錯(cuò)誤率的差異主要源于每個(gè)協(xié)議中使用了不同的路由技術(shù)。需要指出的是,GFEMRP協(xié)議需要一個(gè)預(yù)熱期來(lái)計(jì)算吞吐量,在此期間,默認(rèn)吞吐量將被假定為最小值。由實(shí)驗(yàn)結(jié)果得到的最高吞吐量值不會(huì)超過(guò)物理層數(shù)據(jù)速率的60%。
圖4 丟包率實(shí)驗(yàn)結(jié)果
WMSN應(yīng)用程序在許多智能應(yīng)用程序中得到了廣泛地部署和使用,WMSN中的路由協(xié)議設(shè)計(jì)。日益面臨新的挑戰(zhàn)。本文對(duì)GFEMRP、GPSR、AODV、DYMO四種路由協(xié)議的性能進(jìn)行了分析與比較。實(shí)驗(yàn)結(jié)果表明,與其他協(xié)議相比,GFEMRP協(xié)議具有較好的整體性能,能夠滿足WMSN的應(yīng)用需求。