劉洋(四川大學計算機學院,成都 610065)
河流水下無線傳感器網(wǎng)絡(luò)中基于河水漲跌的睡眠調(diào)度策略
劉洋
(四川大學計算機學院,成都610065)
近年來,水下無線傳感器網(wǎng)絡(luò)在水質(zhì)檢測、環(huán)境監(jiān)測、海底勘測等領(lǐng)域均具有廣闊的應(yīng)用前景[1]。水下傳感器節(jié)點通常由自身攜帶的微型電池供電且電量有限,一經(jīng)部署,能量難以得到再次補充,因此如何在能量有限的情況下,盡可能地提升節(jié)點的能量利用效率,延長網(wǎng)絡(luò)壽命顯得尤其重要。而在河流的獨特環(huán)境中,若采用分層的路由機制,則靠近河面的上層節(jié)點會承擔更多的數(shù)據(jù)轉(zhuǎn)發(fā)任務(wù),造成能量的過量消耗,如果該區(qū)域節(jié)點過早死亡,則會造成“能量空洞”現(xiàn)象,進而會加劇死亡節(jié)點的鄰近節(jié)點的能耗,出現(xiàn)“漏斗效應(yīng)”[2],最后造成整個網(wǎng)絡(luò)的癱瘓。研究表明,當網(wǎng)絡(luò)出現(xiàn)能量空洞時,網(wǎng)絡(luò)剩余能量為70%以上,大多數(shù)網(wǎng)絡(luò)甚至高達90%;另外,為了獲取整段河流的環(huán)境數(shù)據(jù),需要部署大量的傳感器節(jié)點,由于河流的水位隨著季節(jié)不斷的發(fā)生變化,若在枯水季節(jié),某些上層節(jié)點會浮在水面上,造成不必要的能量消耗。鑒于此,若能提出合適的休眠調(diào)度策略,使得水下傳感器節(jié)點在不同的水位下進行休眠和喚醒的調(diào)度,在不影響整個網(wǎng)絡(luò)QoS的情況下,則能很大程度上降低以上兩種情況下上層節(jié)點的能耗,避免或延遲“能量空洞”現(xiàn)象的發(fā)生,延長網(wǎng)絡(luò)壽命。
本文針對無線傳感器網(wǎng)絡(luò)的能量空洞問題,結(jié)合河流水位變化的特點,為了均衡上層節(jié)點的能量消耗,提出一種基于河水漲跌的睡眠調(diào)度策略。首先對整個河流監(jiān)控網(wǎng)絡(luò)建立三維坐標系,采用流體力學的方法分析節(jié)點受力平衡時粘滯阻力、壓差阻力等流體阻力對節(jié)點運動的影響,模擬真實河流環(huán)境下節(jié)點的運動規(guī)律,進而根據(jù)Sink廣播的河面速度求解出節(jié)點的實時位置;然后對求解出的位置進行分析,若節(jié)點當前位置的Z坐標值大于河流高度,則對節(jié)點進行休眠,以節(jié)省該節(jié)點的能量開銷,然后根據(jù)河流歷史水位數(shù)據(jù),在水位高于高度閾值的時期對休眠節(jié)點進行喚醒。
1.1網(wǎng)絡(luò)與能耗模型
河流水下無線傳感器網(wǎng)絡(luò)是由固定在水底的錨節(jié)點、浮動在水中的動態(tài)節(jié)點、拴住節(jié)點的繩子以及浮在水面的Sink節(jié)點構(gòu)成的3D監(jiān)控網(wǎng)絡(luò)。如圖1所示,網(wǎng)絡(luò)中有x條長度不同的繩子,每條繩子上隨機分布y個傳感器節(jié)點,每段繩長及每條繩子預(yù)部署的位置已知,所有繩子均勻部署在L×W×H的長方體內(nèi),繩子底部被錨固定在河底,k個sink節(jié)點隨機分布在監(jiān)控河流的上表面。
圖1 網(wǎng)絡(luò)模型
假設(shè)本文的網(wǎng)絡(luò)模型具有以下性質(zhì):
(1)河面速度在[Vmin,Vmax]內(nèi)隨機變化。
(2)水流高度在[Hmin,Hmax]內(nèi)隨機變化。
(3)所有非Sink節(jié)點具有相似的通信能力和通信功率,一經(jīng)部署即不再更改。
(4)所有普通節(jié)點的浮力大于重力且主要部件裝置在空心圓柱體內(nèi)。
(5)整個網(wǎng)絡(luò)壽命周期內(nèi),節(jié)點采集到的環(huán)境數(shù)據(jù)到達任一Sink均表示數(shù)據(jù)被成功接收。
(6)每個Sink節(jié)點負責將匯集的數(shù)據(jù)發(fā)送給基站,每個傳感器節(jié)點按照各自的采集周期收集數(shù)據(jù),直至整個網(wǎng)絡(luò)死亡。
1.2能耗模型
由于無線電波在水中衰減嚴重,因此水下傳感器網(wǎng)絡(luò)通常采用水聲通信能耗模型。在通信過程中,節(jié)點的能量消耗主要分為兩部分:節(jié)點接收數(shù)據(jù)所消耗的能量和節(jié)點發(fā)送自身采集的環(huán)境數(shù)據(jù)或轉(zhuǎn)發(fā)其他鄰居節(jié)點數(shù)據(jù)產(chǎn)生的能耗。在能耗模型中,由于節(jié)點發(fā)送數(shù)據(jù)的能耗遠大于接收數(shù)據(jù)的能耗,因此,本文以節(jié)點發(fā)送數(shù)據(jù)的能耗作為衡量整個網(wǎng)絡(luò)的能耗標準。
假設(shè)P0為節(jié)點正常接收數(shù)據(jù)所需要的最小功率、功率對傳輸距離x的衰減函數(shù)為A(x),節(jié)點發(fā)送s bit的數(shù)據(jù)傳輸時延為Tp,其中:
則可計算出發(fā)送s bit數(shù)據(jù)所需要的能量為:
其中k為水聲傳播模型的相關(guān)參數(shù),x為傳輸距離,公式(3)給出的能量吸收系數(shù)為:
2.1基于流體體力學的網(wǎng)絡(luò)建模
由于河流具有垂線速度分布的規(guī)律,使得越靠近河流表面的節(jié)點受到水流的沖擊力越大,所以每條繩子會呈現(xiàn)出一條類拋物線的形式,如圖2所示,公式(4)給出了河流垂線速度分布的對數(shù)形式:
圖2 節(jié)點受力分析
在圖2中,假設(shè)在某個河面速度下,一條繩子上的所有節(jié)點均處于平衡態(tài),當河面速度變化時,節(jié)點受力不均衡,會運動到新的位置重新達到平衡,為了更準確地分析節(jié)點的運動規(guī)律,此時對平衡態(tài)下的節(jié)點進行受力分析,可得到如下方程組:
方程組中,fm表示節(jié)點受到的靠近錨節(jié)點的第一段繩子的拉力,fsi表示節(jié)點受到的第i+1段繩子的拉力,θi表示靠近錨節(jié)點的第i段繩子與第i個節(jié)點在豎直方向上的夾角,F(xiàn)i表示第i個節(jié)點受到的流體阻力,F(xiàn)N和G分別表示傳感器節(jié)點受到的浮力與重力。其中節(jié)點受到的流體阻力主要包括粘滯阻力fn和壓差阻力fy兩種,由于河流環(huán)境下計算出的雷諾數(shù)Re大于4000,節(jié)點處于湍流狀態(tài),節(jié)點受到的粘滯阻力可忽略不計,所以有:
公式中CD為阻力系數(shù),ρ為流體密度,r為節(jié)點圓柱體底面圓的半徑,L為節(jié)點所在圓柱體的高度,μ為節(jié)點當前受到的水流速度。公式(9)給出了本文環(huán)境下雷諾數(shù)Re的計算方法,其中ρ、v、d、μ分別表示流體的密度、物體相對于流體的速度、物體在流體中做相對運動的一個量綱和流體的黏性系數(shù)。
將方程組(7)的一式除以二式,然后將結(jié)果代入方程組(6)和(5),并用每段繩子的長度及節(jié)點距離河底的高度表示,則可得到:
公式(10)中的Li和Zi分別表示距離錨節(jié)點第i條繩子的長度和第i個節(jié)點距離河底的高度。聯(lián)立公式(4),(8),(10)則可得到n個關(guān)于Z1、Z2、…Zn的對數(shù)方程組,求解可得到各個節(jié)點距離河底的高度以及相應(yīng)的tanθn的值,并可根據(jù)錨節(jié)點的坐標及每段繩長求出每個節(jié)點的實時位置,最后完成整個網(wǎng)絡(luò)的建模。
2.2基于河水漲跌的睡眠調(diào)整策略
為了求解節(jié)點的高度閾值,由前面建立的網(wǎng)絡(luò)模型可知,當河面速度最小時,節(jié)點受到水流的沖擊力越小,此時節(jié)點距離河底的高度最大;反之,當河面速度最大時,節(jié)點受到水流的沖擊力越大,偏角也越大,此時節(jié)點距離河底的高度越小。由2.1節(jié)中的方法可求出最小河面速度和最大河面速度下各個節(jié)點分別距離河底的高度,并將喚醒節(jié)點的高度閾值設(shè)為節(jié)點距離河底高度的最大值。
在整個網(wǎng)絡(luò)生命周期內(nèi),節(jié)點根據(jù)Sink廣播的速度消息不斷計算并更新各自的物理坐標。結(jié)合河流歷史水位信息分析,當節(jié)點距離河底的高度大于當前水位時,節(jié)點此時漂浮在河面,它的監(jiān)測范圍被其他處于河內(nèi)的鄰近節(jié)點覆蓋,此時,將該節(jié)點休眠,并在后期的某個時間將該節(jié)點喚醒,而喚醒該節(jié)點的時間依賴于歷史水位數(shù)據(jù)中河流水位高于計算出來的高度閾值的時間,此時,該節(jié)點必處于河流內(nèi)部,將該節(jié)點喚醒后,節(jié)點參與正常的數(shù)據(jù)采集和轉(zhuǎn)發(fā)等工作。具體睡眠調(diào)度過程的偽代碼如算法1所示:
本文用Java語言對RFSS算法進行了仿真實驗,并與RBSS[3]和SSSA[4]算法做了相關(guān)性能的對比,表1為實驗缺省參數(shù),網(wǎng)絡(luò)壽命定義為10%的節(jié)點死亡的時間。
表1 實驗參數(shù)
圖3 網(wǎng)絡(luò)壽命對比
圖4 網(wǎng)絡(luò)能量利用率對比
從圖3可以看出,相比于SSSA算法,RBSS和RF-SS算法具有更長的生命周期。因為SSSA是基于頻譜驅(qū)動的喚醒機制,如果喚醒頻率過快,則將使得上層節(jié)點處于喚醒狀態(tài)的時間過長,過多地承擔任務(wù)會使得節(jié)點能耗速率過快而造成網(wǎng)絡(luò)更早的死亡。而相比于基于網(wǎng)絡(luò)覆蓋率的睡眠調(diào)度算法RBSS,RFSS在保證網(wǎng)絡(luò)QoS的前提下,具有更長的生命周期。
從圖4可以看出,由于RFSS算法中,節(jié)點漂浮在河面時睡眠,水位高于閾值時喚醒的機制,使得上層節(jié)點與其他節(jié)點的能耗相對均衡,故當網(wǎng)絡(luò)死亡時,整個網(wǎng)絡(luò)的能量利用率高于其他兩種算法。
本文通過流體力學的方法對河流水下傳感器網(wǎng)絡(luò)進行建模,計算節(jié)點在整個網(wǎng)絡(luò)生命周期內(nèi)的實時位置,進而提出RFSS睡眠調(diào)度策略。通過實驗仿真可以看出,與RBSS和SSSA算法相比,RFSS可以有效提高網(wǎng)絡(luò)能量利用率、延緩能量空洞的形成、延長了網(wǎng)絡(luò)生命周期。
[1]Capella J V,Bonastre A,ORS R,et al.In Line River Monitoring of Nitrate Concentration By Means of a Wireless Sensor Network with Energy Harvesting[J].Sensors&Actuators B Chemical,2013,177(2):419-427.
[2]Li J,Mohapatra P.Analytical Modeling and Mitigation Techniques for the Energy Hole Problem in Sensor Networks[J].Pervasive and Mobile Computing,2007,3(3):233-254.
[3]Sheltami T,Siddiqui A J,Abbasi H I,et al.Implementation of Rank based Sleep Scheduling(RBSS)Protocol for WSNs in a Fixed Grid Topology[J].Procedia Computer Science,2013,19:348-355.
[4]Qiao J Y,Liu J,Wang W D,et al.Spectrum-Driven Sleep Scheduling Algorithm Based on Reliable Theory in Cognitive Radio Sensor Networks[J].Journal of China Universities of Posts&Telecommunications,2012,19(11):47-51,72.
River UWSN;Fluid Mechanics;Sleeping Scheduling;Network Lifetime
River Water Rise and Fall Based Sleeping Scheduling Strategy in Underwater Wireless Sensor Networks
LIU Yang
(College of Computer Science,Sichuan University,Chengdu 610065)
1007-1423(2016)07-0008-05
10.3969/j.issn.1007-1423.2016.07.002
劉洋(1991-),男,重慶人,碩士研究生,研究方向為無線傳感器網(wǎng)絡(luò)
2016-01-21
2016-02-22
為了求解河流水下傳感器網(wǎng)絡(luò)中節(jié)點在河流環(huán)境下的實時位置,采用流體力學的方法對河流進行建模;在采用分層路由的情況下,為了解決因節(jié)點能耗不均而造成的能量空洞問題,結(jié)合河流的獨特環(huán)境,提出基于河水漲跌的睡眠調(diào)度策略(RFSS)。仿真結(jié)果表明,該算法和RBSS、SSSA算法相比,在網(wǎng)絡(luò)生存周期和能量利用效率方面有顯著提高。
河流水下傳感器網(wǎng)絡(luò);流體力學;睡眠調(diào)度;網(wǎng)絡(luò)生存周期
In order to get the real-time positions of sensor nodes in river Underwater Wireless Sensor Networks(UWSN),uses the method of fluid mechanics to modeling the environment of river.Based on hierarchical routing,in order to solve the problem of energy hole caused by the imbalance energy consume of sensor nodes,combined with the unique environment of river,proposes a river water Rise and Fall based Sleep Scheduling strategy(RFSS).The simulation results show that,compared with RBSS and SSSA,RFSS improves the network lifetime and network energy efficiency.