• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種結合休眠機制的改進Epidemic機會網(wǎng)絡 節(jié)能路由算法

      2019-06-01 07:19:48周春月董耀聰
      北京交通大學學報 2019年2期
      關鍵詞:休眠狀態(tài)路由機會

      周春月,董耀聰,田 慧

      (北京交通大學 電子信息工程學院,北京 100044)

      無線傳感器網(wǎng)絡(Wireless Sensor Networks,WSNs)作為21世紀最具影響力的技術之一,自問世以來,由于其應用廣泛,學術拓展性強、學科交叉廣等特點一直都是無線通信領域的研究熱點.但許多移動無線傳感器網(wǎng)絡(Mobile Wireless Sensor Networks,MWSNs)的應用場景中,如復雜自然環(huán)境中的手持設備組網(wǎng),自然保護區(qū)野生動物行為特性觀測組網(wǎng)、災難后的迅速組網(wǎng)等,傳感器節(jié)點移動的不確定性會帶來網(wǎng)絡的連通性下降甚至連接中斷等現(xiàn)象,這將導致整體網(wǎng)絡的性能下降,下降的原因在于傳統(tǒng)的路由方法在不連通的網(wǎng)絡中無法起到作用.

      一般的WSNs網(wǎng)絡層路由算法中,如AODV,LEACH協(xié)議等,源節(jié)點到目的節(jié)點必須存在至少一條完整的通信路徑.而在上述的場景中,這種方法顯然不可行,所以研究者們提出了機會網(wǎng)絡(Opportunistic Networks)的概念[1].機會網(wǎng)絡是一種節(jié)點移動性較強的WSNs,節(jié)點之間靠移動帶來的相遇機會進行通信,源節(jié)點和目的節(jié)點可以位于兩個不同的網(wǎng)絡區(qū)域,可以不存在完整的路由路徑,節(jié)點以“存儲—攜帶—轉發(fā)”的方式進行分組交換,但這種網(wǎng)絡的延遲會大幅度上升(幾分鐘至幾小時都有可能).不過在某些對延遲容忍程度較高的移動場景中,機會網(wǎng)絡是非常合適的組網(wǎng)形式.

      比較經(jīng)典的機會網(wǎng)絡的路由算法有Epidemic算法[2]、Spray and Wait算法[3]等,其中Epidemic算法簡單易實現(xiàn),是許多應用場景中的首選.Epidemic算法的目標是最大化數(shù)據(jù)分組的傳輸率、最小化網(wǎng)絡延遲,其主要思想是讓兩個相遇的節(jié)點交換彼此沒有的數(shù)據(jù)分組,理論上只要時間充足,網(wǎng)絡中的每個節(jié)點都將擁有所有的數(shù)據(jù)分組.數(shù)據(jù)分組的副本會大量充斥在網(wǎng)絡中,過多的數(shù)據(jù)交換會導致節(jié)點能量的大量消耗.而機會網(wǎng)絡的應用場景中,一般難以隨時更換傳感器節(jié)點的能源,節(jié)點能量耗盡后就會進入死亡狀態(tài),一些轉發(fā)任務較多的節(jié)點則會更早的進入死亡狀態(tài),造成整個網(wǎng)絡的壽命減小,因此能耗問題一直都是機會網(wǎng)絡路由算法首要考慮的問題之一[4].Epidemic算法作為最可能進行部署實現(xiàn)的算法之一,其資源消耗過大和節(jié)點傳輸容易過度洪泛的問題亟待解決.

      關于Epidemic算法的改進一直都是學者們研究的熱點.文獻[3]提出的Spray and Wait算法也是基于洪泛策略,但它限制了數(shù)據(jù)分組的副本數(shù)量從而避免了過度洪泛.它將數(shù)據(jù)交換過程分為了Spray和Wait兩個階段,Spray階段中,依舊使用洪泛,源節(jié)點向鄰節(jié)點發(fā)送數(shù)目為L的數(shù)據(jù)分組的副本,L可根據(jù)網(wǎng)絡節(jié)點密度設定;Wait階段中,停止洪泛,如果數(shù)據(jù)分組已經(jīng)送達目的節(jié)點,則停止轉發(fā)該分組,如果沒送達目的節(jié)點,則通過直傳的方式,等遇到目的節(jié)點再轉發(fā)出去.這種算法顯著地降低了分組傳輸量,并且具有較強的適應性和魯棒性,無論網(wǎng)絡負載和節(jié)點密度如何變化都可通過設置不同的L來進行調(diào)整.但節(jié)點在Spray階段仍會消耗不少的能量.

      文獻[5]以節(jié)點剩余能量和節(jié)點緩存區(qū)大小為標準對Epidemic算法進行了改進,提出了EAE算法,它規(guī)定只有當鄰節(jié)點的剩余能量和空閑緩存比自己大時,才進行信息的傳送,但是在一些移動性比較強的網(wǎng)絡中,僅僅因為這兩個指標就拒絕鄰節(jié)點的通信可能會導致節(jié)點喪失大量的通信機會.

      文獻[6]提出了一種結合休眠制度的算法ERASA,該算法主要是令孤立節(jié)點進入到低功耗的休眠狀態(tài),并將概要向量(Summary Vector,SV)分組的單播方式改為廣播,雖然在網(wǎng)絡整體的能量平衡方面能夠達到節(jié)省開銷、延長網(wǎng)絡壽命的目的,但針對的主要是孤立節(jié)點和特定場景,實際上節(jié)點更多的是處在一種運動的狀態(tài),孤立節(jié)點的數(shù)量在整個網(wǎng)絡中也并不是多數(shù),因此該算法有局限性.此外還有許多通過如限制跳數(shù)[7]、限制數(shù)據(jù)分組生存時間[8]、或根據(jù)節(jié)點活躍度[9]選擇下一跳節(jié)點等方式來減小Epidemic算法開銷的研究.

      關于Epidemic算法的改進方法,一般是在網(wǎng)絡性能與資源消耗之間做取舍與平衡,本文作者以減小節(jié)點能耗、延長網(wǎng)絡壽命為主要目標,為提高Epidemic算法在機會網(wǎng)絡中的整體效率與表現(xiàn),結合實際應用場景中節(jié)點的特性,對Epidemic算法做出改進,提出一種結合休眠機制的機會網(wǎng)絡節(jié)能路由(Energy-saving Opportunistic Networks Routing based on Sleeping Mechanism and Epidemic Routing,ERSE)算法.

      1 Epidemic算法研究

      Epidemic算法的每個節(jié)點緩存區(qū)內(nèi),都保存一個獨特的散列表,稱為概要向量或SV向量[2],用來記錄該節(jié)點中存有哪些數(shù)據(jù)分組.每個數(shù)據(jù)分組都會帶有一個32位的全局唯一標識,數(shù)據(jù)分組將自己的全局唯一標識映射成為SV向量.

      如圖1所示,A、B兩個節(jié)點在進入各自的通信范圍后,分組交換的過程可分為3個步驟:

      1)節(jié)點A將自己的概要向量SVA發(fā)送給節(jié)點B,SVA代表了節(jié)點A緩存區(qū)中的全部分組.

      3)A接收到該分組后,根據(jù)其中的信息可知曉哪些分組是節(jié)點B需要的,隨后將這些分組發(fā)送給節(jié)點B.

      圖1 Epidemic算法路由過程Fig.1 Epidemic routing process

      實際上這只是整個通信過程的一半,節(jié)點B也會按這個步驟重復一遍,向節(jié)點A發(fā)送其沒有的數(shù)據(jù)分組,才算完成整個信息交換過程.

      Epidemic算法雖然簡單,但需要考慮許多問題,如:

      1)路由的不確定性:源節(jié)點并不清楚目的節(jié)點與其他中繼節(jié)點的位置,因此在數(shù)據(jù)傳輸過程中存在隨機性因素,會影響分組的傳輸成功率.

      2)資源分配:因為信息交換是基于對數(shù)據(jù)分組的復制,所以需要網(wǎng)絡在性能和資源消耗之間進行選擇.

      3)可靠性和安全性問題:源節(jié)點無法立即收到目標節(jié)點發(fā)來的ACK信息,所以不能對網(wǎng)絡進行QoS等方面的評價,并且因為數(shù)據(jù)分組長期存在于網(wǎng)絡中,理論上可以從任何節(jié)點處進行竊取.

      2 ERSE算法

      2.1 算法模型

      ERSE參照一般的無線傳感器網(wǎng)絡,對節(jié)點的通信模型做了簡化,并借鑒文獻[10]給出的關于通信范圍、感知范圍和干擾范圍的定義.

      通信范圍(Communication Range)Rc是指兩個節(jié)點可以正常進行數(shù)據(jù)收發(fā)并正確編解碼的范圍;感知范圍(Searching Range)Rs指的是根據(jù)天線的靈敏度等硬件條件計算得出的節(jié)點能感知到的最大區(qū)域;干擾范圍(Interference Range)RI指通信范圍和感知范圍之間的區(qū)域,在這個區(qū)域內(nèi)節(jié)點能感知到其他節(jié)點的信號,但無法進行通信,見圖2.

      圖2 節(jié)點通信系統(tǒng)模型Fig.2 Node communication model

      通信范圍和感知范圍都與節(jié)點的功率相關,一般感知范圍大于等于通信范圍,即

      Rs=γRc,γ≥1

      (1)

      為了討論和計算方便,假設Rc=Rs(即γ=1),也就是當節(jié)點感知到有其他節(jié)點進入自己的通信范圍時,兩者就可以進行數(shù)據(jù)交換,并忽略可能的邊界效應對通信過程帶來的影響.

      節(jié)點的狀態(tài)分為休眠狀態(tài)和激活狀態(tài),休眠狀態(tài)就是節(jié)點進入休眠、關閉自身大多數(shù)模塊的狀態(tài),而節(jié)點正常進行監(jiān)測、數(shù)據(jù)收發(fā)等動作的狀態(tài)則為激活狀態(tài).設T為一個休眠期,則

      T=T休眠+T激活

      (2)

      機會網(wǎng)絡中節(jié)點移動性比較強,數(shù)據(jù)傳輸機會與其他網(wǎng)絡相比較少,休眠算法也應保證在減小節(jié)點能耗的同時盡量不錯過節(jié)點可能遇到的通信機會.

      2.2 休眠狀態(tài)的判決條件

      ERSE算法中節(jié)點判決自己是否進入休眠的流程分為3個步驟,設當前節(jié)點處在t0時刻并處于激活狀態(tài).

      1)如果從(t0-TA)至t0時刻,節(jié)點進行的數(shù)據(jù)交換次數(shù)(與一個節(jié)點交換多個數(shù)據(jù)分組記為1次)n滿足如下條件

      n≤Ns

      (3)

      則節(jié)點進入步驟2),Ns的取值視不同的網(wǎng)絡場景而定,一般設置為0;如果不滿足,則節(jié)點保持激活狀態(tài).即,如果處在激活狀態(tài)的節(jié)點某一段時間TA內(nèi)并未進行數(shù)據(jù)交換或數(shù)據(jù)交換次數(shù)有限(遇到的節(jié)點數(shù)量有限),則節(jié)點進入休眠判決的第一步.

      2)計算當前t0時刻節(jié)點剩余能量百分比εt.

      (4)

      假設網(wǎng)絡中部署的每個節(jié)點的初始能量Et都是一致且已知的,部署后節(jié)點的當前能量可量化為

      Ep=Et-Eb-Ed

      (5)

      式中:Eb是節(jié)點維護緩存區(qū)及自身其他元器件等方面的硬件消耗;Ed是數(shù)據(jù)傳輸過程中的能量消耗,與傳輸次數(shù)和節(jié)點的發(fā)射、接收功率相關,每個節(jié)點由于其所處的外部環(huán)境不同、相遇節(jié)點的通信情景不同等原因,相同時刻的剩余能量都會不同.

      節(jié)點計算出t0時刻的εt后,按以下條件判斷

      (6)

      此強制休眠狀態(tài)與步驟3)要討論的休眠狀態(tài)并不相同,強制休眠狀態(tài)的持續(xù)時間為一個固定的時間段TC,但一般都比較長.β為固定值,可以根據(jù)實際網(wǎng)絡場景取值[11],影響β取值的因素為網(wǎng)絡節(jié)點密度,單位時間節(jié)點平均能耗等,其默認取值為0.15~0.25,即當節(jié)點能量少于15%~25%時會進入強制休眠狀態(tài).

      3)根據(jù)緩存區(qū)內(nèi)的TV向量判斷節(jié)點是否進入休眠.ERSE算法規(guī)定節(jié)點除了使用SV向量記錄數(shù)據(jù)分組的標識以外,還需維護一個散列表時間向量(Time Vector,TV)用來記錄節(jié)點最近一段時間內(nèi)收到的SV向量的個數(shù)和標識,與SV向量不同,TV向量并不需要發(fā)送給其他節(jié)點.TV向量的長度能記錄最近一段時間ΔT內(nèi)收到的SV向量即可.

      節(jié)點讀取TV向量后,可以得到ΔT時間段內(nèi)接收SV向量的數(shù)量NΔT,之后節(jié)點按以下規(guī)則判決是否進入休眠:

      (7)

      式中:Nl可根據(jù)不同的網(wǎng)絡場景中的節(jié)點密度來設置.ERSE算法通過對歷史信息的查詢,做出判斷:如果節(jié)點在ΔT內(nèi)接收了數(shù)量比較少的SV分組,因為SV向量是單播發(fā)送且每個節(jié)點的SV向量都是不同且唯一的.雖然機會網(wǎng)絡中假定節(jié)點的運動是隨機的,但在實際場景中,兩個相鄰的較短的時間段內(nèi)(這兩段時間可以不相等),大部分節(jié)點的運動規(guī)律并不會出現(xiàn)太大的偏差,因此,預測節(jié)點在未來的一段時間里也有很大的可能遇到的節(jié)點數(shù)量較少,這段時間就用來讓節(jié)點休眠.如果節(jié)點在這段時間里接收到了比較多的SV向量分組,則預測節(jié)點在未來一段時間也會有比較大的可能性遇到更多的節(jié)點,這樣ERSE算法就盡量保證了節(jié)點在不喪失大多數(shù)通信機會的情況下能夠進入休眠狀態(tài),從而盡最大可能節(jié)省自己的能量.

      2.3 休眠狀態(tài)的喚醒條件

      機會網(wǎng)絡中的節(jié)點都是移動的,所以休眠狀態(tài)Ts的大小由每個節(jié)點各自的運動速度和通信模型所決定.因此ERSE算法休眠時間為

      (8)

      式中:RCR為節(jié)點的通信范圍的半徑;vi為節(jié)點i的移動速度,一般情況下設置為節(jié)點當前的移動速度.

      這樣計算休眠時間是因為ERSE假設了一個比較特殊的情況,如圖3所示.

      圖3 ERSE算法設想的極端情況Fig.3 An extreme situation in ERSE Routing

      其中,節(jié)點A的通信范圍用實心圓表示,節(jié)點B的通信范圍用空心圓表示,t0時刻的節(jié)點用A、B表示,t1時刻的節(jié)點用A′,B′表示.假設t0時刻,節(jié)點B剛好進入節(jié)點A的通信范圍內(nèi),同時節(jié)點A按判決條件進入了休眠狀態(tài),雖然節(jié)點移動的軌跡一般不會是一條直線,但假設節(jié)點A正以其當前的移動速度(或其他合理的速度)直線運動,這樣節(jié)點A可以移動理論上最遠的距離,同時假設節(jié)點B正以任意速度向遠離A的方向移動,這樣如果節(jié)點B的速度不大于節(jié)點A的速度,那么在t1時刻,由休眠狀態(tài)喚醒的節(jié)點A仍然處在可以和節(jié)點B進行通信的范圍內(nèi).也就是說,首先假設兩個節(jié)點同向而行并移動了最遠的直線距離,然后保證兩個節(jié)點依然可以進行通信,那么在大多數(shù)情況下節(jié)點并非直線移動,兩個節(jié)點移動后的距離可能更近,節(jié)點的休眠并不會影響它與其他節(jié)點通信的機會.當然在某些情況下,如節(jié)點B保持大于節(jié)點A的速度同向直線遠離A,那么節(jié)點A就會喪失與節(jié)點B的通信機會,不過在隨機移動的實際場景中,節(jié)點并不會時刻保持直線運動.

      節(jié)點結束一個休眠時間后,將自動喚醒并感知節(jié)點通信范圍內(nèi)的其他節(jié)點數(shù)量,此步驟與上一小節(jié)的步驟1是基本是相同的.如果節(jié)點喚醒后通信范圍內(nèi)的其他節(jié)點數(shù)量n大于一個閾值NA(設置條件與Ns相同,通常設置為0)則節(jié)點進入激活狀態(tài)與其他節(jié)點進行正常的數(shù)據(jù)交換;如果不超過該閾值,則節(jié)點繼續(xù)進入下一次休眠,此休眠時間與上次休眠時間相同;如果激活狀態(tài)下的節(jié)點在一段時間TA內(nèi)沒有進行數(shù)據(jù)交換或者說數(shù)據(jù)交換的次數(shù)不超過某個設定的閾值(此規(guī)則同樣適用于強制休眠狀態(tài)),則節(jié)點重新進入休眠判決的步驟1).TA可根據(jù)節(jié)點的移動速度和實際網(wǎng)絡場景來設置,通常情況下,TA與Ts有著正相關的關系,即

      TA=αTs,

      (9)

      式中:α一般默認設置為0.5~1,表示當節(jié)點移動出一個通信半徑一半以上的距離時如果依然沒有遇到通信的機會,那么節(jié)點可以開始判決自己進行休眠,影響α取值的因素主要為節(jié)點密度,如果節(jié)點密度特別大,那么α的取值可適當減小,這是因為節(jié)點密度比較小時,節(jié)點可能很長一段時間都碰不到其他節(jié)點,但為了不錯過通信的機會,仍然要保持激活的狀態(tài)持續(xù)一個適當?shù)臅r間后再進行休眠;而當節(jié)點密度比較大時,節(jié)點遇到其他節(jié)點的概率大大增加,因此可以減小α值,以讓節(jié)點有機會可以進行休眠,否則節(jié)點可能會一直處于激活狀態(tài).當然如果將TA時間段內(nèi)數(shù)據(jù)交換次數(shù)的閾值設為0,步驟1)節(jié)點t0時刻的節(jié)點數(shù)量參數(shù)Ns也設置為0.

      2.4 ERSE算法流程及復雜度分析

      圖4為算法節(jié)點可能出現(xiàn)的狀態(tài).

      圖4 節(jié)點隨時間的狀態(tài)變化Fig.4 Node state changes when time flows

      圖4中橫坐標為時間,縱坐標為節(jié)點能耗.判決步驟3)中的ΔT取值范圍一般包括上一次節(jié)點的激活狀態(tài),可令

      (10)

      節(jié)點不同時間的移動速度可能不同,所以圖4(b)中前后兩對Ts的長度并不相同(假設由當前移動速度計算得出).兩個圖中節(jié)點從休眠狀態(tài)醒來,感知周圍節(jié)點并做出繼續(xù)休眠的判決的這段時間記為TD,TD的時間一般很短,圖4為了顯示清楚而拉長了這段流程的寬度.

      整個ERSE算法流程的偽代碼如下.

      1:For each Nodeiin activation state,When in a period of timeTA

      2: Ifn>Ns

      3: Thenimaintain the activation state and make data switch with others

      4: Else ifεt<β

      5: Thenienter the forced sleeping state

      6:Ts=TC

      7: Else ifNΔT≥Nl

      8: Thenimaintain the activation state for a timeTA

      9:TA=αTs,α≤1

      10: Elseienter the normal sleeping state

      12: End if

      13: End if

      14: End if

      15: For each Nodeiin sleeping state,Wheniawakes att0

      16: Ifn

      17: Thenienter the sleeping state

      18:Ts=Tsbefore

      19: Elseienter the activation state and make data switch with others

      20: End if

      可以看到,因為不存在循環(huán)操作,對于每一個節(jié)點,ERSE算法的時間復雜度為O(1),但對節(jié)點數(shù)為n的網(wǎng)絡,若每個節(jié)點都參與轉發(fā),算法復雜度則為O(n).

      3 仿真結果及分析

      本文選用ONE(Opportunistic Network Environment)仿真平臺對ERSE算法進行仿真.ONE是基于Java語言開發(fā)的開源仿真平臺,主要功能是搭建機會網(wǎng)絡環(huán)境,對網(wǎng)絡各參數(shù)進行仿真模擬.本文選取節(jié)點的運動模型為基于地圖約束的隨機模型,路由算法為ERSE算法.

      其他參數(shù)方面,節(jié)點總數(shù)設置為100~300個,節(jié)點初始能量為2 000 mAh,掃描一次的能耗為0.2 mAh,傳輸一個數(shù)據(jù)分組的能耗為1 mAh,節(jié)點最大可通信范圍為20 m,緩存區(qū)大小為100 MB,傳輸速率500 KB/s,數(shù)據(jù)分組大小為100 KB~1 MB不等.

      為了全面的比較ERSE算法的優(yōu)劣之處,本文選取了Epidemic算法和Spray and Wait算法作為比較對象.而結果方面則選取了分組傳輸成功率,傳輸延遲,節(jié)點剩余能量3個指標來衡量路由算法的性能.圖5為這3種算法在分組傳輸成功率方面的表現(xiàn).

      圖5 分組傳輸成功率Fig.5 Message delivery rate

      從圖5中可以看出,Spray and Wait算法因為采用了一部分直傳的路由策略,所以在節(jié)點數(shù)量比較少的時候體現(xiàn)出比較高的數(shù)據(jù)傳輸成功率.由于ERSE算法采取的是與Epidemic算法一致的洪泛策略,所以在節(jié)點數(shù)量較多時,只要保證節(jié)點能把握住與其他節(jié)點的通信機會,就能夠在長時間的通信過程中呈現(xiàn)出比較高的分組傳輸成功率,而ERSE算法采取了節(jié)點間非同步的休眠機制,只讓節(jié)點在確定通信范圍內(nèi)沒有其他節(jié)點時才進入休眠,這就保證了整個網(wǎng)絡中處在通信范圍內(nèi)的兩個節(jié)點幾乎不會錯過通信的機會,因此,ERSE算法在仿真中體現(xiàn)出的分組傳輸成功率與Epidemic算法接近.在多次仿真中,在節(jié)點密度增加時,3種算法表現(xiàn)出的傳輸成功率幾乎不相上下,而當節(jié)點密度上升時,由于可中繼的節(jié)點變多了,傳輸成功率也會上升.

      圖6為3種算法在傳輸延遲方面的性能表現(xiàn).

      圖6 傳輸時延比較Fig.6 Delay of message transmission

      網(wǎng)絡時延是網(wǎng)絡的一個重要性能之一,但機會網(wǎng)絡屬于延遲容忍網(wǎng)絡(DTN)的一種,不論采取何種類型的路由算法,時延都會比較高.圖6中,3種算法的網(wǎng)絡時延大小與節(jié)點的數(shù)量關系不大,Spray and Wait算法的傳輸時延要優(yōu)于其他算法,這是因為該算法在第二階段采取了直傳方式,因此延時會較前兩者有所降低.理論上,節(jié)點數(shù)量變得越來越多后,可中繼的節(jié)點數(shù)目變多了,所以傳輸時延應該會有比較明顯的下降,但在仿真場景里,300個節(jié)點還達不到高節(jié)點密度的要求,因此并未顯示出較明顯的變化.仿真結果表明:ERSE算法并未因節(jié)點進入休眠而使傳輸延遲增加太多,但是有少量的增加,這是因為在ERSE算法中,一旦某個轉發(fā)任務重的節(jié)點剩余能量超過了規(guī)定的閾值,該節(jié)點會強制進入休眠時間固定的休眠狀態(tài),而在節(jié)點數(shù)量不多時,或多或少都會影響到網(wǎng)絡的傳輸時延,不過由于機會網(wǎng)絡中節(jié)點的運動性較強,因此中心節(jié)點的作用被弱化,只需保證節(jié)點不過快的進入死亡狀態(tài),就能夠使傳輸時延不過多的增加,這也是ERSE算法在休眠判決條件中加入能量閾值判斷條件的原因.

      圖7表示了3種算法節(jié)點的平均能耗隨時間變化的表現(xiàn).

      圖7 節(jié)點平均能耗比較Fig.7 Node energy consumption

      可以看出,ERSE通過采用休眠機制,大大減小了節(jié)點的能耗,并延長了網(wǎng)絡的生命周期.反觀Epidemic算法,在仿真進行到一半時已經(jīng)基本耗光了節(jié)點內(nèi)的所有能量,而選擇性進行數(shù)據(jù)發(fā)送的Spray and Wait算法由于前期采用的是與Epidemic算法一樣的洪泛策略,所以它的能耗也是比較高的,但是比Epidemic算法要好.在仿真將要結束時,ERSE算法的節(jié)點仍保持有平均約30%左右的能量.這里要說明的是,由于仿真時間有限,所以本文中節(jié)點總能量設置是偏低的,節(jié)點發(fā)送和掃描的能耗設置則偏高.實際場景中節(jié)點的能量會有很大程度的增強,而能耗方面也會因工業(yè)工藝的發(fā)展而降低不少,所以實際應用場景中ERSE能夠讓節(jié)點保持更長時間的活躍狀態(tài),保證網(wǎng)絡的性能在長時間內(nèi)不會下降.

      4 結論

      機會網(wǎng)絡作為無線傳感器網(wǎng)絡的一種,其路由算法需要重點解決兩個方面的問題:節(jié)點能耗和節(jié)點運動性,本文主要針對能耗問題做了研究,具體結論如下.

      1)在分析機會網(wǎng)絡經(jīng)典的洪泛路由Epidemic算法的基礎上,針對Epidemic算法的洪泛特性消耗了大量網(wǎng)絡資源,及算法缺少判斷機制等缺點,綜合考慮機會網(wǎng)絡無中心節(jié)點的分布式結構和節(jié)點移動性較強的特點,在前人研究的基礎上,對Epidemic算法做了新的改進,提出了一種結合休眠機制并同時結合了節(jié)點運動特性的節(jié)能路由算法—ERSE,

      2)算法的核心思想是讓節(jié)點通過三個步驟判斷自身是否進入休眠,具體做法是在節(jié)點緩存區(qū)內(nèi)維護一個TV向量表,用來記錄節(jié)點過去一段時間的數(shù)據(jù)交換信息,以此判斷節(jié)點未來一段時間可能的狀態(tài);同時對節(jié)點的休眠時間做了科學的假設和討論,提出了以節(jié)點的移動速度和通信模型為參數(shù),動態(tài)調(diào)整休眠時間的方法.

      3)仿真結果表明,ERSE算法在保證Epidemic算法原有的優(yōu)點上,通過動態(tài)調(diào)整休眠時間和喚醒時機,可以讓節(jié)點不錯過大多數(shù)的通信機會,同時讓空閑的節(jié)點進入休眠狀態(tài)保存自己的能量,并極大延長了轉發(fā)任務較重的核心節(jié)點的生存時間,由這兩點改進出發(fā),從整體上提高了網(wǎng)絡的壽命,提升了網(wǎng)絡的穩(wěn)定性和效率.

      關于機會網(wǎng)絡路由算法,未來工作是設計一種節(jié)點能夠判斷和預測自己可能的運動路徑的路由機制,讓節(jié)點優(yōu)先選擇符合自己運動規(guī)律的中繼轉發(fā)節(jié)點,從而降低轉發(fā)分組的次數(shù),達到節(jié)省能量和提高轉發(fā)效率的目標.

      猜你喜歡
      休眠狀態(tài)路由機會
      靶向治療下乳腺癌干細胞發(fā)生發(fā)展動力學分析
      水稻種子休眠調(diào)控與破除技術的發(fā)展
      癌細胞從“休眠”到“蘇醒”重大謎團獲解
      給進步一個機會
      海峽姐妹(2020年3期)2020-04-21 09:27:40
      最后的機會
      NBA特刊(2018年17期)2018-11-24 02:45:44
      探究路由與環(huán)路的問題
      給彼此多一次相愛的機會
      海峽姐妹(2018年6期)2018-06-26 07:27:20
      沒機會下手
      基于分離樹的能量有效數(shù)據(jù)轉發(fā)機制*
      PRIME和G3-PLC路由機制對比
      曲周县| 柘荣县| 无极县| 罗定市| 永靖县| 宜春市| 玉树县| 甘孜县| 毕节市| 清苑县| 遂平县| 盐城市| 庄河市| 甘洛县| 吴江市| 梨树县| 昭苏县| 吉林省| 增城市| 扶绥县| 武安市| 黔东| 镇康县| 秀山| 观塘区| 桑植县| 桐乡市| 南召县| 左贡县| 锡林郭勒盟| 股票| 富川| 盐津县| 阳原县| 铁力市| 富宁县| 鲜城| 周口市| 宁强县| 寿宁县| 盖州市|