袁登會
(中國石油大學(xué)(華東)計算機科學(xué)與技術(shù)學(xué)院 青島 266580)
隨著建設(shè)海洋強國的重大國家戰(zhàn)略的推進,目前面向海洋開發(fā)利用的智慧海洋及透明海洋研究的廣度與深度不斷加強。水下傳感器網(wǎng)絡(luò)中,節(jié)點通過水聲信號通信,路由協(xié)議實現(xiàn)了將數(shù)據(jù)包從源節(jié)點經(jīng)過多跳轉(zhuǎn)發(fā)到目標(biāo)節(jié)點的功能。但由于水下環(huán)境復(fù)雜,網(wǎng)絡(luò)拓?fù)涠嘧?,水聲通信存在高時延、高動態(tài)、高衰減、低帶寬、水下節(jié)點能量有限等問題,很多在無線通信中經(jīng)常使用的路由協(xié)議,在水聲通信領(lǐng)域都無法實現(xiàn)預(yù)期的性能。
針對Ad Hoc 網(wǎng)絡(luò)中由于節(jié)點移動性和能量約束而導(dǎo)致的頻繁鏈路中斷和節(jié)點死亡問題。文獻[1]提出了一種基于地理位置的能量和移動性貪心周界無狀態(tài)路由(EM-GPSR)能量均衡路由算法,將正進展區(qū)域劃分為4 個子區(qū)域。根據(jù)源節(jié)點與目標(biāo)節(jié)點之間的歐式距離以及節(jié)點的剩余能量,在候選子區(qū)域中選擇下一跳節(jié)點。文獻[2]提出一種基于權(quán)值函數(shù)的GPSR-W 協(xié)議。在數(shù)據(jù)傳輸過程中,考慮了相鄰船舶的航行方向、鏈路風(fēng)險、相鄰船舶密度和鄰近度等因素。
文獻[3]提出一種基于鄰節(jié)點篩選的GPSR-NS 協(xié)議。預(yù)測鄰節(jié)點當(dāng)前位置并運用空洞節(jié)點篩選機制,降低空洞出現(xiàn)的機率。文獻[4]提出一種切線切換路由空洞處理算法(GTSR)。實時在關(guān)鍵節(jié)點從周邊恢復(fù)算法轉(zhuǎn)換為貪婪算法轉(zhuǎn)發(fā)數(shù)據(jù)包。文獻[5]提出了一種基于無跡卡爾曼濾波預(yù)測周邊節(jié)點鄰居的方法(GPSR-RLP)。文獻[6]在GPSR協(xié)議的基礎(chǔ)上引入速度矢量對中繼節(jié)點選擇方法進行優(yōu)化。
在機會路由[7]協(xié)議中,候選項的選擇通?;诘乩硇畔⒒蚓W(wǎng)絡(luò)拓?fù)洹;谑噶康霓D(zhuǎn)發(fā)(VBF)[8]是第一個為基于坐標(biāo)信息的無線傳感器網(wǎng)絡(luò)開發(fā)的機會路由協(xié)議。自適應(yīng)逐跳矢量轉(zhuǎn)發(fā)(AHHVBF)[9]通過動態(tài)調(diào)整每個轉(zhuǎn)發(fā)區(qū)域解決了水下稀疏網(wǎng)絡(luò)中的冗余傳輸問題。文獻[10]提出了一種編碼感知的水下無線傳感器網(wǎng)絡(luò)的機會路由方法(CORS),使用拓?fù)湫畔⒆赃m應(yīng)地擴展候選集?;谏疃鹊穆酚桑―BR)[11]是一種典型的基于接收端的機會路由協(xié)議,它使用深度信息來選擇候選集。EEDBR[12]在候選集選擇過程中考慮了剩余能量,這在降低分組投遞率的同時優(yōu)化了網(wǎng)絡(luò)壽命。
移動自組網(wǎng)[13]是一種自組織的網(wǎng)絡(luò)。它不需要基礎(chǔ)設(shè)施的支持。文獻[14]提出了一種改進的AOMDV協(xié)議,在路由發(fā)現(xiàn)階段,選擇最先到達的一條路徑作為主路徑進行傳輸數(shù)據(jù),再選擇一條路徑作為備份路徑。
EEGPSR 協(xié)議在原有GPSR 路由協(xié)議的基礎(chǔ)上進行改進,通過選擇鄰近節(jié)點方向、鄰居節(jié)點與目的節(jié)點的相對距離等兩個指標(biāo)對鏈路質(zhì)量進行評價,對GPSR 路由協(xié)議的周邊轉(zhuǎn)發(fā)過程進行有效的改進,基于權(quán)值函數(shù)選取最優(yōu)周邊轉(zhuǎn)發(fā)節(jié)點;其次,設(shè)置空洞標(biāo)記,當(dāng)節(jié)點陷入路由空洞時,此節(jié)點的空洞標(biāo)記加1,當(dāng)標(biāo)記大于10 后,該節(jié)點不再作為中繼節(jié)點,可以有效地解決路由空洞問題。
建立水下傳感器網(wǎng)絡(luò),設(shè)置大量的移動傳感器節(jié)點,節(jié)點應(yīng)用OPNET 中的Random Way Point 移動模型。同時,不考慮水面設(shè)置聲納浮標(biāo)或聲納匯聚節(jié)點,節(jié)點處于相同的水平面。所有節(jié)點在能量消耗和傳輸范圍方面都是相同地位。
對于能耗模型,只考慮數(shù)據(jù)包發(fā)送與接收所消耗的能量。此外,發(fā)送數(shù)據(jù)包的過程中。傳輸k bit所消耗的能量[15]可表示為
OPNET采用的14個管道階段對于水聲信道并不適用。重新設(shè)計水聲信道模型[16]如下。
1)傳播時延:不再選取固定的聲速經(jīng)驗值采用更精確的經(jīng)驗計算公式如式(4)所示:
式中,T為溫度,S為鹽度千分?jǐn)?shù),D為深度。
2)接收功率:傳播損失TL的計算公式如下:
其中α為吸收因子,單位為dB/km,取值為
3)背景噪聲:由Wenz模型進行描述,即
式(7)中,NLT、NLS、NLW與NLT?分別是湍流噪聲、航運噪聲、海面噪聲與熱噪聲[17]。總噪聲表示為
在本節(jié)中,給出了所提出的UWSN中的路由協(xié)議EEGPSR。
GPSR周期性地向鄰居節(jié)點發(fā)送信標(biāo)(Beacon)[18]信號得到鄰居節(jié)點信息。Beacon 中包含節(jié)點標(biāo)識和節(jié)點位置信息。在[0.5B,1.5B]上服從均勻分布隨機選取信標(biāo)發(fā)送間隔。通過該方法,可以有效地降低多個鄰居節(jié)點同時發(fā)送Beacon 沖突。同時,檢測到鄰居節(jié)點遠離或新節(jié)點加入。
1)鄰近節(jié)點方向
如圖1所示,A為當(dāng)前節(jié)點,B是A的鄰居節(jié)點,D 為目的節(jié)點。通過計算中繼節(jié)點、鄰居節(jié)點以及目的節(jié)點之間夾角的余弦值hi作為衡量指標(biāo)的一項標(biāo)準(zhǔn)。
圖1 鄰近節(jié)點位置
2)鄰居節(jié)點與目的節(jié)點的相對距離
d 為鄰居節(jié)點與目的節(jié)點的距離,threshold_distance 表示的是當(dāng)前節(jié)點與目的節(jié)點的歐式距離。
最終,構(gòu)造當(dāng)前節(jié)點的下一跳中繼節(jié)點的權(quán)值函數(shù)為
對此進行了眾多仿真實驗,獲取最優(yōu)的權(quán)重為a=0.43,b=0.57。
算法流程如圖2所示。
圖2 EEGPSR協(xié)議的算法流程圖
使用OPNET 對GPSR、EEGPSR 進行仿真。比較了該策略與GPSR 地理路由算法的性能,以及該策略在不同移動速度下的性能。仿真參數(shù)設(shè)置如表1。
表1 仿真參數(shù)
圖3 顯示了兩種路由協(xié)議在不同網(wǎng)絡(luò)節(jié)點數(shù)下的數(shù)據(jù)包成功投遞率。隨著節(jié)點密度的增加,數(shù)據(jù)包成功投遞率增加。由于GPSR 只采用貪婪轉(zhuǎn)發(fā),所以GPSR 的包分發(fā)率是最低的,而且所選鏈路的穩(wěn)定性不如EEGPSR 算法。其中,EEGPSR 的包成功率最高。這是因為EEGPSR 將節(jié)點的移動性作為首要考慮因素,并且考慮了鄰居節(jié)點的密度,從而提高了鏈路的穩(wěn)定性及數(shù)據(jù)包傳送率。
圖3 數(shù)據(jù)包成功投遞率1
圖4顯示了GPSR,EEGPSR路由算法的端到端時延與節(jié)點移動速度之間的關(guān)系。節(jié)點移動速度從0.5 m/s 增加到1.2 m/s 時,端到端延遲發(fā)生了對應(yīng)的提高。這是因為當(dāng)節(jié)點具有移動性時,鄰居節(jié)點獲得的路由信息可能會過時,節(jié)點必須重新發(fā)現(xiàn)路由才能進行數(shù)據(jù)傳輸。而當(dāng)移動速度越快,下一跳節(jié)點越容易脫離出當(dāng)前節(jié)點的轉(zhuǎn)發(fā)范圍,此時數(shù)據(jù)重傳的幾率大大增加。
圖4 端到端時延
圖5為GPSR,EEGPSR路由協(xié)議在不同移動速度下的數(shù)據(jù)包成功傳遞率。節(jié)點移動速度從0.5 m/s 增加到1.2 m/s 時,包成功傳遞率降低。這是因為當(dāng)節(jié)點具有移動性時,鄰居節(jié)點獲得的路由信息可能會過時,而當(dāng)移動速度越快,下一跳節(jié)點越容易脫離出當(dāng)前節(jié)點的轉(zhuǎn)發(fā)范圍,從而發(fā)生鏈路中斷現(xiàn)象,此時路由空洞出現(xiàn)的幾率大大增加。
圖5 數(shù)據(jù)包成功投遞率2
圖6為GPSR,EEGPSR路由協(xié)議在不同節(jié)點通信范圍下的能量消耗。從圖中可以看出,節(jié)點通信范圍從400 m 增加到800 m 時,能量消耗降低。這是因為隨著節(jié)點通信范圍的提升,逐漸降低了由于某些節(jié)點通信半徑過小不足以尋找到下一跳中繼節(jié)點而造成路由空洞的風(fēng)險,從而減少數(shù)據(jù)包的多次重傳問題、造成多次能量消耗。
圖6 能量消耗
為了解決水聲自組織網(wǎng)絡(luò)中由于節(jié)點移動和能量約束引起的頻繁鏈路中斷和節(jié)點死亡問題,提出了一種基于地理位置的高效節(jié)能的路由算法EEGPSR。傳統(tǒng)的地理路由算法沒有充分考慮能源消耗的不平衡造成的連續(xù)運動和能量約束的節(jié)點,而該算法考慮了節(jié)點的移動性、節(jié)點的能量狀態(tài),同時考慮限制單跳轉(zhuǎn)發(fā)區(qū)域來選擇下一跳。仿真結(jié)果表明,該算法具有較低的能量消耗、較低的端到端時延、較高的數(shù)據(jù)包成功投遞率,能有效規(guī)避路由空洞的發(fā)生。