夏 旭,陳志剛,曾 鋒,吳 嘉
(1.湖南安全技術(shù)職業(yè)學(xué)院電氣與信息工程系,長沙 410151;2.中南大學(xué)軟件學(xué)院,長沙 410083)
?
基于多Sink的長鏈狀無線傳感器網(wǎng)絡(luò)功率控制算法*
夏 旭1,2*,陳志剛2,曾 鋒2,吳 嘉2
(1.湖南安全技術(shù)職業(yè)學(xué)院電氣與信息工程系,長沙 410151;2.中南大學(xué)軟件學(xué)院,長沙 410083)
長鏈狀無線傳感器網(wǎng)絡(luò)常用于礦井、隧道等特殊場景,傳統(tǒng)的無線傳感器網(wǎng)絡(luò)由于只有一個Sink,應(yīng)用在長鏈狀無線傳感器網(wǎng)絡(luò)中容易造成Sink周圍區(qū)域出現(xiàn)“熱區(qū)”現(xiàn)象,影響網(wǎng)絡(luò)整體生存期,為了解決上述問題,降低長鏈狀無線傳感器網(wǎng)絡(luò)的整體能耗,延長網(wǎng)絡(luò)生存期,提出一種多Sink分布式功率控制算法,該算法引入多Sink的網(wǎng)絡(luò)結(jié)構(gòu),同時采用非均勻成簇的思想,將多Sink網(wǎng)絡(luò)結(jié)構(gòu)和分簇的Voronoi scoping路由算法進(jìn)行結(jié)合,為每個Sink分配最優(yōu)的通信半徑和發(fā)射功率,將各Sink作為簇頭,對網(wǎng)絡(luò)進(jìn)行分簇,從而在保證網(wǎng)絡(luò)覆蓋率的前提下,優(yōu)化網(wǎng)絡(luò)拓?fù)?仿真結(jié)果表明,該算法在連通度、能耗有效性、分簇干擾和網(wǎng)絡(luò)性能上具有優(yōu)勢,可以有效的降低網(wǎng)絡(luò)整體能耗、延長網(wǎng)絡(luò)生存期。
長鏈狀;無線傳感器網(wǎng)絡(luò);多Sink;功率控制
基于無線傳感器網(wǎng)絡(luò)的監(jiān)控技術(shù)是一門交叉性強(qiáng)、知識集成度高的新興技術(shù)[1]。由于無線傳感器網(wǎng)絡(luò)本身具有放置靈活、移動性強(qiáng)和自組織等特點,因此,非常適應(yīng)于煤礦巷道環(huán)境監(jiān)控[2]、油氣管道流量監(jiān)控、隧道交通監(jiān)控、橋梁監(jiān)控等長鏈狀的特殊環(huán)境中[3],然而,傳統(tǒng)的無線傳感器(WSN)路由協(xié)議在這種長鏈狀場景下存在一定的局限性。
目前,在WSN的路由協(xié)議研究中,一般分為平面式路由協(xié)議和分簇式路由協(xié)議兩大類,其中,分簇式路由協(xié)議的思想是將網(wǎng)絡(luò)劃分為簇,簇由簇頭節(jié)點和簇內(nèi)成員節(jié)點組成,簇頭負(fù)責(zé)收集簇內(nèi)其他成員節(jié)點的數(shù)據(jù)并進(jìn)行融合,最后將融合后的數(shù)據(jù)發(fā)送到Sink節(jié)點,這種分簇式的路由協(xié)議的優(yōu)點是:成員節(jié)點大部分時間可以關(guān)閉通信模塊,由簇頭負(fù)責(zé)數(shù)據(jù)的遠(yuǎn)距離轉(zhuǎn)發(fā),有利于能耗的均衡,有效延長網(wǎng)絡(luò)生存期;簇內(nèi)成員節(jié)點功能簡單,無須維護(hù)復(fù)雜的路由信息,有效的減少了通信;分簇的方式有利于簇內(nèi)成員節(jié)點的管理,有利于網(wǎng)絡(luò)的穩(wěn)定性,因此,分簇式的路由協(xié)議更適合規(guī)模較大的無線傳感器網(wǎng)絡(luò)[4]。分簇算法中具有代表性的有LEACH[5]、TEEN[6]和PEGASIS[7]等。然而,這些分簇算法都是采用單Sink的網(wǎng)絡(luò)結(jié)構(gòu),簇頭節(jié)點和Sink是一跳直接通信,遠(yuǎn)離Sink的簇頭節(jié)點必須工作在大功率狀態(tài),在規(guī)模較大的網(wǎng)絡(luò)中,需要更大的能耗,將影響網(wǎng)絡(luò)的生存期,同時,長距離傳輸數(shù)據(jù)所帶來的干擾問題也是不能忽視的。因此,本文提出對于長鏈狀的基于WSN的監(jiān)控網(wǎng)絡(luò),采用多Sink的網(wǎng)絡(luò)結(jié)構(gòu),從而解決以上問題。
在已有的多Sink無線傳感器網(wǎng)絡(luò)研究中,大部分研究集中在研究網(wǎng)絡(luò)中Sink的最優(yōu)數(shù)目和最佳部署位置來延長網(wǎng)絡(luò)生存期,研究如何實現(xiàn)Sink之間的負(fù)載均衡,從而減少傳輸過程由于擁塞和碰撞造成的丟包問題。文獻(xiàn)[8]中使用k-均值的迭代聚類技術(shù)獲得最優(yōu)的Sink數(shù),并確定各Sink的最佳位置。文獻(xiàn)[9]提出了一種基于基因表達(dá)式的新方法來解決多Sink網(wǎng)絡(luò)中的Sink最佳部署位置問題,文獻(xiàn)[10]根據(jù)存儲在路由表中的信息素水平值從鄰居節(jié)點中選擇下一跳節(jié)點,文獻(xiàn)[11]同樣也是利用信息素水平值向多Sink轉(zhuǎn)發(fā)數(shù)據(jù)。在最近的研究中,文獻(xiàn)[12]提出了一種基于貪婪算法的多Sink部署位置優(yōu)化算法(MSGA),可以使數(shù)據(jù)的延時最小化,從而更好的支持實時應(yīng)用。以上這些算法,并沒有針對長鏈狀的環(huán)境進(jìn)行研究,難以應(yīng)用到長鏈狀的WSN的監(jiān)控網(wǎng)絡(luò)中。
基于以上分析,本文提出將多Sink網(wǎng)絡(luò)結(jié)構(gòu)和分簇的路由算法進(jìn)行結(jié)合的分布式功率控制算法(DPCA-MS:Distributed power control algorithm in Multi-Sink WSN),其中,分簇路由是采用文獻(xiàn)[13]提出的Voronoi scoping算法,該算法在Voronoi分簇過程中具有零開銷的特點,網(wǎng)絡(luò)數(shù)據(jù)的重疊程度也不會因為網(wǎng)絡(luò)規(guī)模和Sink的數(shù)目增長而發(fā)生變化,有利于減少多Sink網(wǎng)絡(luò)的整體能耗。通過DPCA-MS算法可以在Sink之間協(xié)商最優(yōu)通信半徑,從而獲得最佳的連通性,達(dá)到延長網(wǎng)絡(luò)生存期,及時快速的傳送監(jiān)測數(shù)據(jù)的目的。
1.1 網(wǎng)絡(luò)系統(tǒng)模型
本文所研究的無線傳感器網(wǎng)絡(luò)主要是針對長鏈狀結(jié)構(gòu)的監(jiān)控網(wǎng)絡(luò),這種鏈狀結(jié)構(gòu)的特點是長度遠(yuǎn)遠(yuǎn)大于寬度,因此,需要在鏈路上部署若干個Sink,sensor節(jié)點周期性的采集數(shù)據(jù),并將監(jiān)測數(shù)據(jù)傳送給最近的Sink,DPCA-MS算法是由各Sink協(xié)商確定Sink的最優(yōu)通信半徑和發(fā)射功率,在此基礎(chǔ)上,將各Sink作為分簇的簇頭節(jié)點,利用Voronoi scoping算法[12]進(jìn)行分簇,從而在保證最佳連通性的基礎(chǔ)上,優(yōu)化網(wǎng)絡(luò)拓?fù)?降低網(wǎng)絡(luò)整體能耗,減少分簇干擾,延長網(wǎng)絡(luò)生存期。
本文討論的DPCA-MS算法的長鏈狀監(jiān)控系統(tǒng)結(jié)構(gòu)如圖1所示,在鏈路中央位置每隔一段隨機(jī)距離(不超過Sink最大通信半徑)設(shè)置一個Sink,每個Sink通過GPS或者定位機(jī)制獲得自身位置信息,每個Sink在其通信半徑內(nèi)廣播功率控制消息PCM(power control message),為了保證任意兩個Sink可以交換PCM信息,假設(shè)初始階段,每兩個Sink可以相互通信,每個Sink可以接收某一區(qū)域內(nèi)sensor節(jié)點的監(jiān)控信息。
圖1 長鏈狀多Sink傳感器網(wǎng)絡(luò)結(jié)構(gòu)圖
為了方便研究,假設(shè)網(wǎng)絡(luò)中sensor節(jié)點個數(shù)為N,分布在一個狹長的L×W區(qū)域內(nèi),并且L≥W,sensor節(jié)點和Sink一旦部署完畢,位置固定,不再發(fā)生位置改變;sensor節(jié)點和Sink的發(fā)射功率可控,并且可以根據(jù)接收信號的強(qiáng)度推算出節(jié)點之間的距離和接收功率大小;sensor節(jié)點同構(gòu),初始能量相同,具有數(shù)據(jù)融合和自我剩余能量感知功能,Sink能量不受限制。
1.2 功率控制模型
在文獻(xiàn)[14]中描述了功率控制機(jī)制中如何確定合適的發(fā)射功率值,根據(jù)電波在自由空間傳播損耗的Friis公式,可以得到接收端功率:
(1)
式中:Pr表示節(jié)點的接收功率,Pt表示節(jié)點的發(fā)射功率,gt和gr表示發(fā)送天線和接收天線的增益,d表示發(fā)送節(jié)點和接收節(jié)點之間的距離,λ表示由載波頻率所決定的載波波長,在常用的2.4GHz無線傳感器中,λ的值通常取0.1,n表示信道衰落系數(shù),通常取值為2,由于參數(shù)gt、gr、λ都是傳感器網(wǎng)絡(luò)自身的參數(shù),所以網(wǎng)絡(luò)確定后,這些參數(shù)的值就確定了,因此,對于一個確定的網(wǎng)絡(luò),可以將這些參數(shù)統(tǒng)一用φ表示,即:
(2)
此時,可以將接收端功率公式改寫為:
(3)
由此可以得到分簇中Sink節(jié)點到簇內(nèi)子節(jié)點的發(fā)射功率為:
(4)
顯然,當(dāng)d的值為Sink的最佳通信半徑時,可以通過式(4)計算獲得最優(yōu)的發(fā)射功率,因此,發(fā)射功率的控制問題可以轉(zhuǎn)化為通信半徑的控制問題。
2.1 網(wǎng)絡(luò)覆蓋率分析
定理1 將兩個Sink分別部署在a×b的矩形區(qū)域P內(nèi),且位于矩形區(qū)域的中央線上,為了保證Sink對網(wǎng)絡(luò)的覆蓋率,兩個Sink的無線射程的圓環(huán)必須相交于區(qū)域P外,同時,與Sink對應(yīng)的矩形頂點也必須位于Sink的無線射程內(nèi)。
證明:2個Sink分布在a×b的矩形ABCD內(nèi),如圖2所示,表示兩個Sink的無線射程圓相交于E和F兩點,為了保證網(wǎng)絡(luò)覆蓋率,需要滿足式(5)的關(guān)系:
(AEFB∪EDCF)?ABCD
(5)
EF為兩圓相交的兩交點之間的連線,它和矩形的AD邊相交于E′,和BC邊相交于F′,為了滿足式(5)的關(guān)系,需要滿足EF≥E′F′,因此,兩個Sink的無線射程的圓環(huán)必須相交于區(qū)域P外。
圖2 具有2個Sink的WSN
假設(shè)Sink節(jié)點S2所對應(yīng)的矩形頂點D和C不在其無線射程內(nèi),如圖2所示,此時該矩形頂點延伸為D′和C′,矩形ABC′D′和S2的無線射程圓相交于H、H′、G和G′,顯然,此時兩個Sink的無線射程圓環(huán)所覆蓋的范圍無法包含整個矩形區(qū)域ABC′D′,即:
(AEFB∪EHGF∪HH′GG′)?ABC′D′
(6)
顯然,式(6)不符合式(5)的要求,因此,為了保證網(wǎng)絡(luò)覆蓋率與Sink對應(yīng)的矩形頂點也必須位于Sink的無線射程內(nèi)。
根據(jù)定理1,網(wǎng)絡(luò)中存在兩個Sink,其無線射程分別為RS1和RS2,需要滿足以下公式:
(7)
式中:(x,y)是位于Sink通信范圍內(nèi)的任意sensor節(jié)點,(xs1,ys1)和(xs2,ys2)分別為兩個Sink的坐標(biāo),為了在保證網(wǎng)絡(luò)覆蓋率的前提下,最小化每個Sink的發(fā)射功率,本節(jié)定義了函數(shù)f:
(8)
s.t.
這里是以2個Sink的情況進(jìn)行為例進(jìn)行說明,當(dāng)網(wǎng)絡(luò)中存在更多Sink時,以此類推即可。
2.2 鄰居Sink的發(fā)現(xiàn)
在DPCA-MS算法中,只需要為Sink定義一種數(shù)據(jù)包,如圖3所示,該數(shù)據(jù)包可以被稱為握手包,它包括3個數(shù)據(jù)域:包頭、Sink標(biāo)識ID、Sink位置信息,其中Sink標(biāo)識ID全網(wǎng)唯一,而且呈升序排列。網(wǎng)絡(luò)初始化時,各Sink節(jié)點通過發(fā)送握手包使每個Sink獲知其他Sink的相關(guān)信息。
圖3 DPCA-MS算法中握手包的幀格式
2.3 分布式功率控制算法
在L×W的網(wǎng)絡(luò)中部署k個Sink,其坐標(biāo)用(xsi,ysi)表示,1≤i≤k,為了方便描述,令P(X,Y)為一矩形區(qū)域,X為矩形的長,Y為矩形的寬,且X>Y,Cir(xsi,ysi,rsi)表示以(xsi,ysi)為圓心,以rsi為半徑的圓形區(qū)域,為了保證網(wǎng)絡(luò)覆蓋能夠達(dá)到100%,必須滿足以下條件:
P(X,Y)?Cir(x1,y1,r1)∪Cir
(x2,y2,r2)∪…∪Cir(xk,yk,rk)
(9)
在DPCA-MS中,為了保證在每個Sink控制其發(fā)射功率后,仍能夠100%的覆蓋整個網(wǎng)絡(luò),需要每個Sink節(jié)點互相協(xié)商出合適的發(fā)射功率,根據(jù)式(4)在獲得各Sink的通信半徑后,就可以計算出其發(fā)射功率,因此,發(fā)射功率的計算問題轉(zhuǎn)化為通信半徑的求解問題。
首先,每個Sink利用定位算法獲得自身的坐標(biāo)信息,然后,通過廣播鄰居Sink發(fā)現(xiàn)握手包和PCM消息,告知鄰居Sink各自的位置信息,Sink收到握手包后,根據(jù)握手包中的Sink標(biāo)識ID,由SinkID最小的Sink與矩形區(qū)域相應(yīng)頂點的距離作為無線射程,此時,在該Sink的無線射程圓和矩形邊界有4個交點,如圖4中的S1所示,其他的Sink在選擇合適的無線射程時,與矩形邊界也有4個交點,如圖4中的S2所示。
圖4 具有2個Sink的WSN
本文認(rèn)為,當(dāng)以每個Sink節(jié)點為圓心,相應(yīng)的無線射程為半徑的圓與矩形區(qū)域的邊界相交后,只要切割線段的并集包含整個矩形的4條邊界,則能保證Sink節(jié)點對整個網(wǎng)絡(luò)的覆蓋。此時,從第2個Sink開始的無線射程ri,i∈k,必須滿足以下關(guān)系:
(10)
根據(jù)這一理論,如圖5所示,以網(wǎng)絡(luò)中存在3個Sink為例,說明Sink節(jié)點選擇無線射程的3種情況:(a)選擇偏大;(b)選擇合適;(c)選擇偏小,通過計算可以使各Sink獲得最理性的無線射程,從而使每個Sink自動調(diào)節(jié)選擇合適的發(fā)射功率。
圖5 網(wǎng)絡(luò)中有3個Sink時無線射程的選擇
圖6 Sink無線射程計算過程圖例
圖6是一個簡單說明無線射程計算過程的圖例,S1和S2位置部署了2個Sink,S1的坐標(biāo)為(xs1,ys1),S2的坐標(biāo)為(xs2,ys2),S1為第1個Sink,其Sink標(biāo)識ID為1,該Sink將|S1B|作為自己的無線射程,記為RS1,然后S2根據(jù)RS1計算其無線射程RS2:
(11)
由此可見,各Sink的無線射程RSi,可以表示為:
(12)
在各Sink的發(fā)射功率調(diào)整完畢后,就可以使用文獻(xiàn)[13]提出的Voronoiscoping算法對各Sink所在的區(qū)域進(jìn)行分簇,分簇完成后,各分簇內(nèi)的sensor節(jié)點可以和所在簇的Sink節(jié)點進(jìn)行一跳通信。此時,利用圖論的方法將網(wǎng)絡(luò)描述為:Net=(O,V),其中O表示k個Sink和N個sensor節(jié)點的集合,S?k是SINK的集合,且|S|=k,V表示一條鏈路的權(quán)重系數(shù),dij表示節(jié)點i和j之間的最短距離,此時,某Sink節(jié)點m所對應(yīng)的Voronoi分簇可以表示為:
(13)
在Voronoiscoping分簇算法中,每個sensor節(jié)點必須知道自身以及每個Sink節(jié)點的坐標(biāo)信息,可以通過定位算法或者GPS系統(tǒng)解決該問題。
實際上,發(fā)射功率維持是一個根據(jù)實際工作環(huán)境實時的調(diào)整自身發(fā)射功率的過程,當(dāng)路由失效后,sensor節(jié)點將啟動備用路由或?qū)ぢ窓C(jī)制,從而使每個Sink重新配置發(fā)射功率,DPCA-MS算法對Sink無線射程的估算是基于本地Sink之間的鏈接狀況,于是其功率的維持可以通過周期性的交換廣播功率控制消息PCM(powercontrolmessage)來實現(xiàn)。因此,可以將DPCA-MS算法描述為表1。
表1 DPCA-MS算法
為了驗證DPCA-MS算法適合于長鏈狀無線傳感器網(wǎng)絡(luò)的特殊長帶狀結(jié)構(gòu),本節(jié)將建立多個網(wǎng)絡(luò)仿真環(huán)境,在連通度、能耗有效性和分簇干擾性能上,將DPCA-MS算法分別和MSGA算法以及使用最大發(fā)送功率的情況進(jìn)行對比分析,在網(wǎng)絡(luò)性能上針對延時和網(wǎng)絡(luò)負(fù)載,對比DPCA-MS算法中隨著Sink數(shù)量增加對網(wǎng)絡(luò)性能的影響情況。連通度可以證明算法的可行性和健壯性。由于每個sensor節(jié)點能量有限,能耗的有效性成為算法需要考慮的關(guān)鍵因素,本節(jié)的能耗有效性被定義為所有Sink經(jīng)過DPCA-MS算法對發(fā)射功率進(jìn)行控制后所產(chǎn)生的總能耗最小。分簇干擾是為了考慮傳感器節(jié)點在決定自己所屬簇時受到非自身中心Sink干擾的情況。
實驗中采用Java語言,利用OMNET++4.2作為仿真工具,在Windows操作系統(tǒng)下搭建仿真平臺,實驗中Node和Sink采用簡單模塊,分別定義為node.ned和Sink.ned,實驗的其他參數(shù)如表2所示。
表2 仿真具體參數(shù)
3.1 連通度
為了保證在執(zhí)行DPCA-MS算法后,sensor節(jié)點和Sink之間能正常通信,本節(jié)定義了一個稱為平均連通度的參數(shù),該參數(shù)是指被任一Sink所覆蓋的sensor節(jié)點占全部sensor節(jié)點的比例。所有實驗都是1 000次求平均的結(jié)果。
如圖7所示為DPCA-MS算法在Sink數(shù)量變化時,分別和MSGA算法以及使用最大發(fā)射功率3種情況下網(wǎng)絡(luò)的平均連通度對比情況,顯然,隨著網(wǎng)絡(luò)中Sink的增加,網(wǎng)絡(luò)平均連通度也相應(yīng)增加,當(dāng)Sink數(shù)達(dá)到12個時,平均連通度接近100%,使用DPCA-MS算法后的平均連通度明顯好于MSGA算法和使用最大發(fā)射功率兩種情況,但是,當(dāng)Sink數(shù)達(dá)到6個后,3種算法獲得的網(wǎng)絡(luò)平均連通度差別不大。
圖7 平均連通度對比
3.2 能耗有效性
在長鏈狀的監(jiān)控網(wǎng)絡(luò)環(huán)境中,例如,煤礦、隧道、石油管道等,通常不便于更換電池,因此,為了盡可能的延長網(wǎng)絡(luò)生存期,必須注重能耗的有效性。本節(jié)能耗的有效性被定義為:網(wǎng)絡(luò)中的sensor節(jié)點有多個一跳可達(dá)的Sink節(jié)點,通過對Sink的發(fā)射功率進(jìn)行合適的控制,使所有sensor節(jié)點一跳到達(dá)Sink所用的總能耗最小。
假設(shè)網(wǎng)絡(luò)中有k個Sink,根據(jù)式(4)所描述的發(fā)射功率與接收功率、通信距離之間的關(guān)系,可以將網(wǎng)絡(luò)中的總發(fā)射功率Psum表示為:
當(dāng)通信距離最大時,即為通信半徑,因此,網(wǎng)絡(luò)中總的發(fā)送功率大小可以利用DPCA-MS算法所計算的各Sink通信半徑求和得到。根據(jù)文獻(xiàn)[14]所描述的Sink發(fā)射功率、發(fā)射半徑和能耗之間的關(guān)系,可以得到如圖8所示的仿真結(jié)果,該結(jié)果表示在Sink數(shù)量發(fā)生變化時,使用DPCA-MS算法、MSGA算法以及使用最大發(fā)射功率3種情況下總能耗的對比,顯然,DPCA-MS算法可以帶來更多的能耗節(jié)省,隨著Sink數(shù)量的增加,能耗節(jié)省的量也越多,當(dāng)Sink數(shù)量達(dá)到12時,DPCA-MS算法控制的發(fā)射功率所消耗的能量比Sink使用最大發(fā)射功率所消耗的能量降低了75%,同時,由于網(wǎng)絡(luò)中sensor節(jié)點可以接收到更少的從Sink發(fā)出的廣播包,也能有效的減少sensor節(jié)點接收數(shù)據(jù)包的能耗,從而使網(wǎng)絡(luò)的整體能耗下降。
圖8 Sink總發(fā)射功率對比
3.3 分簇干擾
為了減少簇內(nèi)的干擾,常用的方法是使用文獻(xiàn)[15]提出的基于發(fā)射機(jī)的編碼分配,即每個簇采用獨立的擴(kuò)頻編碼,每個簇內(nèi)節(jié)點與簇頭間的通信都采用唯一的擴(kuò)頻碼,簇內(nèi)節(jié)點使用該擴(kuò)頻碼傳輸數(shù)據(jù)給簇頭,簇頭節(jié)點則根據(jù)擴(kuò)頻碼對接收信號進(jìn)行過濾。
本文將分簇干擾定義為一個sensor節(jié)點一跳內(nèi)的平均Sink數(shù),當(dāng)一個sensor節(jié)點需要選擇一個Sink作為其中心Sink時,它從鄰居Sink收到的廣播包越少,就能越節(jié)省接收數(shù)據(jù)包的能耗。如圖9所示,在Sink數(shù)量發(fā)生變化時,使用MSGA算法和使用最大發(fā)射功率時,每個sensor節(jié)點一跳內(nèi)的平均Sink數(shù)量明顯大于使用DPCA-MS算法時的數(shù)量,當(dāng)Sink數(shù)為12時,使用MSGA算法,每個sensor節(jié)點一跳內(nèi)的Sink數(shù)量約為4個,使用最大發(fā)射功率,每個sensor節(jié)點一跳內(nèi)的Sink數(shù)量約為5個,而使用DPCA-MS算法后,則僅為2個,分簇干擾的可能性降低了50%,因此,sensor節(jié)點只需要在少數(shù)幾個Sink中選擇中心Sink。使用DPCA-MS算法后,每個Sink的通信覆蓋范圍盡可能的縮小,因此,只有少量sensor節(jié)點能收到某一Sink的廣播包,從而減少了網(wǎng)絡(luò)中節(jié)點間的相互干擾,同時也大大降低了sensor節(jié)點在分簇時受到的干擾。
圖9 分簇干擾情況對比
圖10 不同數(shù)目Sink條件下數(shù)據(jù)包的延時對比
3.4 網(wǎng)絡(luò)性能
由于該算法主要針對長鏈狀的監(jiān)控系統(tǒng),因此,在網(wǎng)絡(luò)性能上主要針對數(shù)據(jù)包的延時情況和網(wǎng)絡(luò)MAC層負(fù)載情況進(jìn)行測試。這里的延時是指數(shù)據(jù)包從sensor節(jié)點到Sink的時間,網(wǎng)絡(luò)MAC層負(fù)載是指每秒MAC幀要承載的上層數(shù)據(jù)的數(shù)量,將網(wǎng)絡(luò)場景設(shè)置為100 m×5 m矩形區(qū)域,Sink數(shù)為4個,sensor節(jié)點數(shù)為30個,數(shù)據(jù)包發(fā)送速率均為1 000 bit/s,測試時間為10 min,所有sensor節(jié)點的通信半徑限制為10 m。
如圖10所示是不同數(shù)目Sink條件下數(shù)據(jù)包的延時對比,當(dāng)Sink數(shù)為4時,數(shù)據(jù)包的延時下降幅度最大,可見,隨著Sink數(shù)量的增加,數(shù)據(jù)的延時呈下降趨勢。由于在DPCA-MS算法中,隨著Sink數(shù)量的增加,數(shù)據(jù)傳輸?shù)穆窂綍?負(fù)載將更輕,因此,可以大幅的減少網(wǎng)絡(luò)擁塞,也就是說Sink數(shù)量越少,發(fā)生網(wǎng)絡(luò)擁塞的可能性越大,數(shù)據(jù)包延時的程度也更高。
如圖11所示是不同數(shù)目Sink條件下網(wǎng)絡(luò)負(fù)載情況對比,當(dāng)Sink數(shù)為4時,網(wǎng)絡(luò)負(fù)載的增幅最小,可見,隨著Sink數(shù)量的增加,網(wǎng)絡(luò)負(fù)載呈下降趨勢。當(dāng)更多的Sink部署在網(wǎng)絡(luò)中,源sensor節(jié)點可以選擇距離自己最近的Sink發(fā)送數(shù)據(jù),因此,可以大幅減少整個網(wǎng)絡(luò)的通信跳數(shù),從而降低網(wǎng)絡(luò)的整體負(fù)載,同時也可以降低能耗。
圖11 不同數(shù)目Sink條件下網(wǎng)絡(luò)負(fù)載情況對比
本文根據(jù)長鏈狀無線傳感器網(wǎng)絡(luò)的結(jié)構(gòu)特點,提出了一種將多Sink網(wǎng)絡(luò)結(jié)構(gòu)和分簇路由相結(jié)合的多Sink分布式功率控制算法DPCA-MS,并在仿真工具OMNET++環(huán)境下實現(xiàn)了建模和仿真。仿真結(jié)果證明該算法在連通度、能耗有效性、分簇干擾和網(wǎng)絡(luò)性能上符合長鏈狀結(jié)構(gòu)的多Sink的網(wǎng)絡(luò)環(huán)境,能有效的延長網(wǎng)絡(luò)生存期、降低能耗。
[1] 張蕾. 無線傳感器網(wǎng)絡(luò)中多重覆蓋算法的研究[J]. 傳感技術(shù)學(xué)報,2014,27(6):802-806.
[2] Xia X,Chen Z,Li D,et al. Proposal for Efficient Routing Protocol for Wireless Sensor Network in Coal Mine Goaf[J]. Wireless Personal Communications,2014(77):1699-1711.
[3] 臧哲,齊建東,張曉武,等. 基于智能算法的層次型多鏈WSN路由協(xié)議[J]. 傳感技術(shù)學(xué)報,2013,26(4):558-563.
[4] Manap Z,Ali B M,Ng C K,et al. A Review on Hierarchical Routing Protocols for Wireless Sensor Networks[J]. Wireless Personal Communications,2013,72(2):1-28.
[5] Wendi B H,Anantha P C,Hari B. An Application-Specific Protocol Architecture for Wireless Microsensor Networks[J]. Wireless Communications,2002,1(4):660-670.
[6] Manjeshwar A,Agrawal D P. TEEN:A Routing Protocol for Enhanced Efficiency in Wireless Sensor Networks[C]//Proceedings of IPDPS,San Francisco,CA,USA,April 2000:2009-2015.
[7] Stephanie L,Cauligi S R. PEGASIS:Power-Efficient Gathering in Sensor Information Systems[C]//Proceedings of the IEEE Aerospace Conference,Big Sky,MO,USA,March 2002:1125-1130.
[8] Oyman E I,Ersoy C. Multiple Sink Network Design Problem in Large Scale Wireless Sensor Networks[C]//IEEE International Conference on Communications,2004:3663-3667.
[9] Dai S,Tang C,Qiao S,et al Optimal Multiple Sink Nodes Deployment in Wireless Sensor Networks Based on Gene Expression Programming[C]//International Conference on Communication Software and Networks(ICCSN),2010:355-359.
[10] Paone M,Paladina L,Scarpa,et al. A Multi-Sink Swarmbased Routing Protocol for Wireless Sensor Networks[C]//IEEE Symposium on Computers and Communications(ISCC),2009:28-33.
[11] Wang W,Li W,Chen D,et al. Ant Colony Based Routing Algorithm for Multi-Sink Networks[C]//WRI World Congress on Computer Science and Information Engineering,2009:423-429.
[12] Donghyun Kim,Wei Wang,Nassim Sohaee,et al. Minimum Data-Latency-Boundk-Sink Placement Problem in Wireless Sensor Networks[J]. IEEE/ACM Trans Netw,2011(5):1344-1353.
[13] Henri D F,Deborah E. Efficient and Practical Query Scoping in Sensor Networks[R]. Technical Report 39,CENS,UCLA:Los Angeles,CA,USA,April 2004.
[14] Woo A,Terence T,Culler D. Taming the Underlying Challenges of Reliable Multihop Routing in Sensor Networks[C]//Proc of Conf on Embedded Networked Sensor Systems. New York,USA:ACM Press,2003:14-27.
[15] Hu L. Distributed Code Assignments for CDMA Packet Radio Networks[J]. IEEE/ACM Transactions on Networking,1993,1(6):668-677.
[16] Liu A,Jin X,Cui G,et al. Deployment Guidelines for Achieving Maximum Lifetime and Avoiding Energy Holes in Sensor Network[J]. Information Sciences,2013,230:197-226.
夏 旭(1980-),女,湖南省益陽人,副教授,博士研究生,青年骨干教師,主要研究方向為無線傳感器網(wǎng)絡(luò),wuwuxuxu@163.com;
陳志剛(1964-),男,湖南益陽人,教授,博導(dǎo),主要研究方向為可信計算、網(wǎng)絡(luò)與分布式計算、數(shù)據(jù)庫技術(shù);
曾 鋒(1977-),男,廣東梅州人,副教授,博士,主要研究方向為無線網(wǎng)絡(luò)技術(shù);
吳 嘉(1983-),男,貴州貴陽人,博士研究生,主要研究方向為機(jī)會網(wǎng)絡(luò)、軟件工程,jiawu5110@163.com。
Multi-Sink Distributed Power Control Algorithm for Wireless SensorNetworks with Long-Chain Structure*
XIAXu1,2,CHENZhigang1,ZENGFeng1,WUJIA1
(1.Hunan Vocational College of Security Technology,Changsha 410151,China;2.School of Software,Central South University,Changsha 410083,China)
Long-chain wireless sensor networks are used in special scenes such as mines,tunnels,etc. The traditional wireless sensor network has only one Sink,so it causes the“hot spot”problem easily and reduces the lifetime of the network when it is used in the long-chain scenes. In order to solve these problems,this paper proposes a Multi-Sink distributed power control algorithm. This algorithm uses the Multiple Sink network structure together with the idea of non-uniform cluster,and combines the multi-Sink network with the clustering Voronoi scoping routing algorithm. It allocates the optimal transmission range and power for each Sink,and clusters the network with each Sink as the cluster head,in order that the network topology is optimized on the basis of a good network coverage rate. Simulation results show that the new algorithm exhibits superior connectivity,power consumption validity,clustering interference,and network performance. Thus it can reduce the overall power consumption and prolong the service life of the network.
long-chain;wireless sensor network;Multi-Sink;power control
項目來源:國家自然科學(xué)基金項目(61379057,61309001,61272149);教育部博士點基金優(yōu)先發(fā)展領(lǐng)域課題項目(20120162130008);博士生自主探索創(chuàng)新項目(2014zzts043);2015年安全生產(chǎn)重大事故防治關(guān)鍵技術(shù)科技項目(hunan-0012-2015AQ)
2014-12-28 修改日期:2015-03-12
C:6150M;6150P;7230
10.3969/j.issn.1004-1699.2015.06.024
TP393
A
1004-1699(2015)06-0920-07