李丹
(1.北部灣大學(xué)電子與信息工程學(xué)院,廣西 欽州 535011;2.欽州市物聯(lián)網(wǎng)先進(jìn)技術(shù)重點(diǎn)實(shí)驗室,廣西 欽州 535011)
關(guān)鍵字:水聲傳感器網(wǎng)絡(luò);北部灣;Aqua-Sim;動態(tài)拓?fù)?/p>
水流和生物活動等因素會造成水聲傳感器網(wǎng)絡(luò)(Underwater Acoustic Sensor Networks,UASNs)節(jié)點(diǎn)發(fā)送移動[1]。網(wǎng)絡(luò)中大量節(jié)點(diǎn)的偏移會導(dǎo)致網(wǎng)絡(luò)拓?fù)洳环€(wěn)定,分組投遞率降低,甚至影響網(wǎng)絡(luò)連通性[2]。通過實(shí)驗了解UASNs節(jié)點(diǎn)移動速度對網(wǎng)絡(luò)性能的影響情況,有助于研究UASNs領(lǐng)域的相關(guān)問題。本文以北部灣海域環(huán)境參數(shù)作為基礎(chǔ),基于改進(jìn)的Aqua-Sim水聲信道仿真平臺[3]進(jìn)行水聲動態(tài)拓?fù)涞姆抡鎸?shí)驗,并通過數(shù)據(jù)分析驗證節(jié)點(diǎn)的運(yùn)動會導(dǎo)致網(wǎng)絡(luò)穩(wěn)定性下降。
Aqua-Sim是NS2用于實(shí)現(xiàn)水聲信道通信仿真的一個獨(dú)立的程序模塊[3]。改進(jìn)的Aqua-Sim水聲信道仿真平臺在原Aqua-Sim 1.0模塊加入與溫度、鹽度、維度、深度、航運(yùn)密度和風(fēng)速有關(guān)的參數(shù)、程序和接口,用水流噪聲、船只或生物噪聲、海風(fēng)噪聲和熱噪聲的累加值來模擬不同海域環(huán)境背景噪聲對信號接收造成的影響,采用Del Grosso公式的簡化結(jié)構(gòu)計算海水聲速,能夠使仿真效果更加接近海洋水聲信道。
根據(jù)改進(jìn)的Aqua-Sim水聲信道仿真平臺要求,在仿真環(huán)境中需要設(shè)置溫度、鹽度、維度、深度、航運(yùn)密度和風(fēng)速的值。仿真實(shí)驗從北部灣北部海域夏季水流環(huán)境情況中提取相關(guān)參數(shù),實(shí)驗具體參數(shù)見表1。
表1 實(shí)驗參數(shù)
實(shí)驗程序分為兩個部分,一個是平臺程序庫,另一個是TCL仿真腳本。在仿真開始前,需要在實(shí)驗平臺中添加LEACH協(xié)議的相關(guān)程序文件作為仿真實(shí)驗的路由協(xié)議。TCL仿真腳本需要完成三個任務(wù),分別是環(huán)境參數(shù)設(shè)置、網(wǎng)絡(luò)拓?fù)涑跏蓟凸?jié)點(diǎn)運(yùn)動軌跡設(shè)計。
(1)環(huán)境參數(shù)值主要按照表1的內(nèi)容進(jìn)行設(shè)置,關(guān)鍵代碼如下:
(2)網(wǎng)絡(luò)拓?fù)涑跏蓟^程需要指定各節(jié)點(diǎn)的初始化坐標(biāo)。將節(jié)點(diǎn)的初始坐標(biāo)記為Ni=(xi,yi,zi),其中,i是節(jié)點(diǎn)編號,i∈[0,18];xi、yi和zi是節(jié)點(diǎn)Ni的X、Y和Z軸坐標(biāo)。將整個拓?fù)淇臻g分為三層:第一層的節(jié)點(diǎn)N0位于海平面拓?fù)鋮^(qū)域的正中央,其初始化坐標(biāo)為N0=(400,400,0);第二層的節(jié)點(diǎn)深度為250m,整個平面區(qū)域被劃分成6×6的行列矩陣,行高和列寬用a表示,9個節(jié)點(diǎn)均勻分布在矩陣中;第三層的節(jié)點(diǎn)深度為500m,節(jié)點(diǎn)分布模型與第二層相同。第二層和第三層的節(jié)點(diǎn)坐標(biāo)見表2。
表2 第二層和第三層的節(jié)點(diǎn)初始化坐標(biāo)
(3)為了防止節(jié)點(diǎn)被水流沖走,部署在水中的節(jié)點(diǎn)主要以浮標(biāo)和鎖鏈牽引的方式錨定在水中[7]。在具有潮汐等水流運(yùn)動的環(huán)境中,錨定節(jié)點(diǎn)的運(yùn)動呈現(xiàn)半周期性特征[8],加上北部灣北部海域夏季的水流處于氣旋式環(huán)流狀態(tài)[9],使得本實(shí)驗?zāi)M的海域中存在旋渦,因此可以假設(shè)節(jié)點(diǎn)在浮標(biāo)、鎖鏈和旋渦水流的作用下進(jìn)行深度不變的圓周運(yùn)動,錨定節(jié)點(diǎn)運(yùn)動模型如圖1所示。
圖1 錨定節(jié)點(diǎn)運(yùn)動模型
L是牽引鎖鏈的長度,H是錨定節(jié)點(diǎn)隨海水?dāng)[動時距離海面的高度,R是錨定節(jié)點(diǎn)在二維平面做圓周運(yùn)動的半徑。錨定節(jié)點(diǎn)的運(yùn)動方向和R的取值應(yīng)該由實(shí)際的水流運(yùn)動情況決定。為了方便計算和編程,將節(jié)點(diǎn)N1~N18的運(yùn)動方向設(shè)置為順時針,以初始坐標(biāo)為圓心,只設(shè)定4個關(guān)鍵坐標(biāo),分別是(xi,yi+R,zi)、(xi+R,yi,zi)、(xi,yi-R,zi)和(xi-R,yi,zi)。
仿真過程采用分組對照的方式,分別模擬網(wǎng)絡(luò)在節(jié)點(diǎn)靜止和運(yùn)動狀態(tài)下,網(wǎng)絡(luò)分組投遞率的變化情況,具體的實(shí)驗分組情況見表3。
表3 實(shí)驗分組情況表
按照實(shí)驗分組編寫testj.tcl文件,進(jìn)行3組實(shí)驗,每組實(shí)驗運(yùn)行3600s,分別生成tracej.tr和namj.nam文件,其中j表示分組編號。testj.tcl是實(shí)驗的執(zhí)行文件,tracej.tr是實(shí)驗數(shù)據(jù)記錄文件,namj.nam是動畫演示程序文件。
本實(shí)驗是通過對分組投遞率的統(tǒng)計來分析網(wǎng)絡(luò)的連通狀態(tài)。從tracej.tr文件中提取事件類型、節(jié)點(diǎn)編號、Trace類型、分組類型、分組源IP地址和分組目的IP地址信息,分別用event、node_id,trace_type,packet_type,packet_src和packe_dest表示。根據(jù)event來判斷當(dāng)前記錄是分組發(fā)送,還是分組接收。根據(jù)trace_type和packet_type過濾網(wǎng)絡(luò)維護(hù)分組,只保留數(shù)據(jù)分組。根據(jù)node_id、packet_src和packe_dest來判斷當(dāng)前記錄屬于源節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn),還是Sink節(jié)點(diǎn)。具體數(shù)據(jù)處理程序流程如圖2所示。
圖2 數(shù)據(jù)處理程序流程圖
變量num_fs和num_rx分別用來統(tǒng)計所有錨定節(jié)點(diǎn)發(fā)送的數(shù)據(jù)分組數(shù)和Sink節(jié)點(diǎn)成功接收的數(shù)據(jù)分組數(shù)。將統(tǒng)計后的數(shù)據(jù)按照公式(1)計算,得出分組投遞率delivery_rate。
設(shè)300s為一個統(tǒng)計周期,將每組實(shí)驗的數(shù)據(jù)分為36個周期,按照公式(1)計算每個周期內(nèi)的分組投遞率。
圖3是三種拓?fù)錉顟B(tài)的網(wǎng)絡(luò)分組投遞率統(tǒng)計情況。在網(wǎng)絡(luò)運(yùn)行初期,網(wǎng)絡(luò)節(jié)點(diǎn)處于組網(wǎng)階段,信道沖突相對較小,三種拓?fù)錉顟B(tài)的分組投遞率在80%~100%之間。隨著網(wǎng)絡(luò)的不斷運(yùn)行,信道沖突增大,各實(shí)驗組的分組投遞率都有所下降。當(dāng)網(wǎng)絡(luò)運(yùn)行進(jìn)入穩(wěn)定期時,節(jié)點(diǎn)靜止網(wǎng)絡(luò)的分組投遞率可維持在70%~80%之間,而動態(tài)網(wǎng)絡(luò)的分組投遞率下降較為明顯。節(jié)點(diǎn)低速運(yùn)動網(wǎng)絡(luò)的分組投遞率維持在50%~60%之間,整個運(yùn)行過程較為穩(wěn)定。節(jié)點(diǎn)高速運(yùn)動網(wǎng)絡(luò)的分組投遞率維持在20%~40%之間,且變化幅度較大。通過實(shí)驗數(shù)據(jù)說明,網(wǎng)絡(luò)節(jié)點(diǎn)的運(yùn)動對網(wǎng)絡(luò)連通性具有一定影響,且運(yùn)動速度越快,網(wǎng)絡(luò)的穩(wěn)定性越差。
圖3 分組投遞率對比圖
水下環(huán)境復(fù)雜多變,UASNs節(jié)點(diǎn)因水流或生物活動等因素發(fā)生運(yùn)動,造成網(wǎng)絡(luò)拓?fù)涞母淖?。針對UASNs節(jié)點(diǎn)運(yùn)動影響網(wǎng)絡(luò)穩(wěn)定性的問題,本文基于北部灣海域環(huán)境參數(shù),采用改進(jìn)的Aqua-Sim水聲信道仿真平臺,進(jìn)行UASNs的動態(tài)拓?fù)浞抡妗J紫?,在平臺中加載LEACH協(xié)議。其次,以北部灣北部海域夏季水流環(huán)境為基礎(chǔ),設(shè)計節(jié)點(diǎn)運(yùn)動模型。再次,設(shè)計TCL腳本程序?qū)崿F(xiàn)網(wǎng)絡(luò)運(yùn)行仿真。最后,進(jìn)行分組對照實(shí)驗,對靜態(tài)拓?fù)?、低速運(yùn)動拓?fù)浜透咚龠\(yùn)動拓?fù)涞姆纸M投遞率進(jìn)行對比分析,證明網(wǎng)絡(luò)節(jié)點(diǎn)的運(yùn)動對UASNs網(wǎng)絡(luò)連通性具有一定影響,且運(yùn)動速度越快,網(wǎng)絡(luò)的穩(wěn)定性越差。