張曉青,黎作鵬,李志華,趙繼軍
(河北工程大學信息與電氣工程學院,河北邯鄲056038)
在采用協(xié)作路由的無線傳感器網(wǎng)絡(luò)中,節(jié)點之間相互協(xié)作共同完成監(jiān)測任務,這樣不僅可以延長網(wǎng)絡(luò)生命周期[1],而且可以保障網(wǎng)絡(luò)吞吐量[2]。以減少能量消耗、降低丟包率、優(yōu)化平均傳輸時延[3]、降低路徑損耗[4]為目標的現(xiàn)有算法,均是在尋找最短路徑的基礎(chǔ)上優(yōu)化網(wǎng)絡(luò)性能指標,但最短路徑不一定是最優(yōu)路由。關(guān)于如何保障數(shù)據(jù)傳輸可靠性的問題,文獻[5-6]側(cè)重研究如何最小化中斷概率和優(yōu)化源節(jié)點與中繼節(jié)點的發(fā)送功率等問題。文獻[7]則重點闡述了如何保證每條鏈路所需的誤碼率和網(wǎng)絡(luò)吞吐量。文獻[8-9]提出了優(yōu)化網(wǎng)絡(luò)資源的數(shù)據(jù)信息傳輸策略。上述所提到的路由算法都忽略了網(wǎng)絡(luò)節(jié)點的分布狀況對數(shù)據(jù)傳輸可靠性的影響,因此存在路由效率低,擴展性差等缺陷。針對上述策略的不足,本文綜合考慮網(wǎng)絡(luò)節(jié)點分布狀況對數(shù)據(jù)傳輸可靠性的影響,將協(xié)作路由和分簇拓撲結(jié)構(gòu)相結(jié)合,實現(xiàn)多跳網(wǎng)絡(luò)中成員節(jié)點間的協(xié)作通信,達到優(yōu)化源-目的節(jié)點路徑,提高網(wǎng)絡(luò)頻譜利用率,增強網(wǎng)絡(luò)數(shù)據(jù)信息傳輸?shù)目煽啃?,提出了一種基于協(xié)作通信的分簇路由算法。
WSNs由傳感器節(jié)點和sink節(jié)點組成,節(jié)點集合則稱為簇。傳感器節(jié)點隨機分布在監(jiān)測區(qū)域內(nèi),這些節(jié)點在分簇機制作用下組成不同的簇,每個簇選取一個節(jié)點作為簇首節(jié)點,簇中其余節(jié)點則稱之為成員節(jié)點。
WSNs均采用正交信道,即網(wǎng)絡(luò)中每個節(jié)點用于發(fā)送和接收數(shù)據(jù)信息的信道相互獨立,協(xié)作通信網(wǎng)絡(luò)模型如圖1所示。在協(xié)作通信網(wǎng)絡(luò)模型中,協(xié)作節(jié)點r首先將來自于源節(jié)點s的數(shù)據(jù)信息解碼、檢測估計處理,然后將其傳送至目的節(jié)點d。d將來自s的信息和來自r的信息進行融合處理后得到最終數(shù)據(jù)。研究表明協(xié)作路由可以提高系統(tǒng)吞吐量、增大網(wǎng)絡(luò)系統(tǒng)容量、提升數(shù)據(jù)傳輸速率、有效地對抗衰落并提高系統(tǒng)的頻譜利用率,優(yōu)化系統(tǒng)的服務質(zhì)量和提高網(wǎng)絡(luò)數(shù)據(jù)信息傳輸可靠性。
在分簇過程中,依據(jù)權(quán)值In選取簇首節(jié)點,權(quán)值In為
式中Dn-該節(jié)點通信半徑范圍內(nèi)的鄰居節(jié)點個數(shù),即該節(jié)點的度數(shù);Pn-該節(jié)點的鄰居節(jié)點與其距離之和;Bn-該節(jié)點剩余的可用帶寬。
系數(shù)a、b和c滿足a+b+c=1,用戶可以根據(jù)具體應用需求調(diào)整系數(shù)a、b和c分配比例。
當節(jié)點i(s,r∈i)將信息發(fā)送到節(jié)點j(r,d∈j)時,節(jié)點j的信噪比SNRi.j[5]為
式中節(jié)點i和節(jié)點j-信道中的路徑損耗系數(shù)為- 節(jié)點i的發(fā)送功率- 節(jié)點j的協(xié)方差;hi,j-信道本身的衰減及衰落特性。
信道增益hi,j[5]為
由Shannon信道容量公式可知,C=Wlog(1+SNR)中的信道帶寬W通過歸一化可得到信道頻譜利用率
本文在將節(jié)點的分布密度和協(xié)作通信相結(jié)合的基礎(chǔ)上進行路由算法優(yōu)化。為降低路由計算的復雜度,本文中的WSNs采用分簇拓撲結(jié)構(gòu),來尋找頻譜利用率最大的協(xié)作路徑。該算法分為以下三個步驟:
1)分簇。WSNs的分簇拓撲結(jié)構(gòu)包括簇首和成員兩類節(jié)點。在選簇過程中主要研究鄰居節(jié)點數(shù)量、節(jié)點的發(fā)送功率和信道的剩余帶寬,且根據(jù)用戶具體要求調(diào)整其各自的權(quán)重因子。分簇的具體過程如下:(1)網(wǎng)絡(luò)中節(jié)點周期性交換HELLO信息,確定鄰居節(jié)點的位置。(2)選取鄰居節(jié)點中權(quán)值In最大的作為簇首節(jié)點,并向其他節(jié)點廣播自己的身份信息。(3)重復上述步驟,直到所有節(jié)點找到歸屬的簇,分簇完成。簇首節(jié)點之間廣播消息,并收集其他簇首節(jié)點的位置信息建立簇間拓撲。至此,分簇過程結(jié)束,如圖2所示。
2)簇間路由。分簇完成后,當簇中有成員節(jié)點需要將數(shù)據(jù)信息發(fā)送至其他簇中的目的節(jié)點時,s所在簇的簇首節(jié)點需要確定該數(shù)據(jù)信息要通過哪個簇的轉(zhuǎn)發(fā),其路徑如圖3所示。簇間路由分為兩個進程:(1)簇間路由選擇。s所在簇中的簇首節(jié)點依據(jù)分簇過程中建立的簇間拓撲信息,確定到d所在簇簇首節(jié)點之間的路徑。然后根據(jù)公式(2)和公式(4)計算每條路徑的SNR和η,并選取η最大的路徑作為傳輸路徑;(2)協(xié)作通信優(yōu)化路由。首先在選擇的簇間路徑上確定每一跳中可以作為備選協(xié)作節(jié)點的傳感器節(jié)點;在簇間通信過程中,簇首節(jié)點之間可以選取兩種傳輸方式:直接傳輸方式和協(xié)作傳輸方式。由于傳輸路徑中存在多個備選協(xié)作節(jié)點,因此通過計算公式(2)和(4)得出SNR和η,進而確定簇首節(jié)點之間的傳輸方式。
簇首節(jié)點通過以上步驟可以獲得一條從A簇的簇首節(jié)點到C簇的簇首節(jié)點的簇間路由。
3)簇內(nèi)路由。簇間路由確定后需要通過簇內(nèi)路由算法確定簇內(nèi)路徑,具體過程如圖4所示。s在A簇中需要經(jīng)過簇內(nèi)路由將數(shù)據(jù)信息發(fā)送至A簇的簇首節(jié)點,同樣C簇的簇首節(jié)點也需要經(jīng)過簇內(nèi)路由將數(shù)據(jù)信息發(fā)送至C簇的d。此時簇內(nèi)路由的傳輸方式可以采取協(xié)作傳輸或直接傳輸方式中的任意一種。
簇內(nèi)路由算法具體描述如下:(1)分別計算s到本簇內(nèi)簇首節(jié)點采取直接傳輸和協(xié)作傳輸?shù)腟NR和η,并比較計算結(jié)果,若最大η對應一個中繼節(jié)點則選取該中繼節(jié)點作為r,為了提高網(wǎng)絡(luò)可靠性,此時系統(tǒng)將采取協(xié)作傳輸方式進行網(wǎng)絡(luò)信息通信,反之則采取直接傳輸方式。(2)同樣,d所在簇的簇首節(jié)點依據(jù)SNR和η選擇直接傳輸或協(xié)作傳輸方式將數(shù)據(jù)信息發(fā)送至d,至此數(shù)據(jù)信息傳輸完成。
采用MATLAB仿真平臺,針對文獻[7]中未分簇的協(xié)作路由算法和所提的基于協(xié)作通信的分簇路由算法分別在SNR和η方面進行了性能比較。
具體仿真環(huán)境設(shè)定如下:無線傳感器網(wǎng)絡(luò)為同構(gòu)型網(wǎng)絡(luò),每個傳感器節(jié)點具有相同的初始功率,在網(wǎng)絡(luò)拓撲范圍為1 000 m×1 000 m的監(jiān)測區(qū)域內(nèi)隨機分布多個傳感器節(jié)點。假設(shè)任意兩個傳感器節(jié)點之間通信的信道是瑞利慢衰落信道,且符合相互獨立同分布的循環(huán)對稱復高斯隨機變量。噪聲變量為-70 dbm,功率分配系數(shù)為0.5。
圖5為基于協(xié)作通信的分簇路由算法與未分簇協(xié)作路由算法的SNR和η性能對比圖。在網(wǎng)絡(luò)中節(jié)點數(shù)量較少時,基于協(xié)作通信的分簇路由算法的SNR和未分簇協(xié)作路由算法相比優(yōu)勢并不明顯。這是由于節(jié)點數(shù)量較少時,兩種算法都沒有足夠多的r協(xié)助系統(tǒng)完成數(shù)據(jù)信息的傳輸。但當傳感器節(jié)點數(shù)量足夠多時,隨著可備選的r數(shù)量增多,SNR迅速增大,且逐漸趨于平滑。這是由于當網(wǎng)絡(luò)規(guī)模變大時未分簇協(xié)作路由算法不能根據(jù)網(wǎng)絡(luò)具體變化做出迅速反應,且不能借助其他節(jié)點傳輸數(shù)據(jù),導致傳輸可靠性偏低。而分簇協(xié)作路由算法根據(jù)分簇拓撲減少節(jié)點的通信量,且擁有足夠多的鄰居節(jié)點協(xié)作傳輸數(shù)據(jù)信息,更充分地利用了網(wǎng)絡(luò)資源,提高了數(shù)據(jù)信息傳輸可靠性。
基于協(xié)作通信的分簇路由算法和未分簇協(xié)作路由算法的頻譜利用率性能對比圖如圖6所示。由圖可知,在無線傳感器節(jié)點數(shù)量較少時,由于基于協(xié)作通信的分簇路由算法中簇首節(jié)點沒有足夠多的協(xié)作節(jié)點來協(xié)助傳輸數(shù)據(jù),所以性能優(yōu)勢并不明顯。隨著無線傳感器節(jié)點數(shù)量的增多,該算法在頻譜利用率方面有了顯著的提升。
基于協(xié)作的分簇路由算法在無線傳感器節(jié)點數(shù)量較少時,沒有足夠多的協(xié)作節(jié)點來協(xié)助傳輸數(shù)據(jù),信噪比和頻譜利用率的性能優(yōu)勢并不明顯;隨著節(jié)點數(shù)量的增多,該算法降低了路由通信的功耗,并提升了協(xié)作帶來的路由增益,提高了無線傳感器網(wǎng)絡(luò)傳輸?shù)目煽啃浴?/p>
[1]張晚生,劉凱.無線網(wǎng)絡(luò)中基于位置的能量高效協(xié)作路由算法[J].電子與信息學報,2012,34(1):63-68.
[2]喬宏,張大方,謝鯤,等.分布式多網(wǎng)關(guān)無線mesh網(wǎng)公平協(xié)作路由算法[J].通信學報,2015,36(2):1-11.
[3]吳開興,張榮華.基于信息分組的TDOA安全定位算法[J].河北工程大學學報:自然科學版 ,2011,28(2):60-63.
[4]BABAEE R,BEAULIEU N C.Joint routing and power allocation optimization for multi-h(huán)op wireless networks[C]//Wireless Communications and Networking Conference(WCNC),2010,1-6.
[5]MANSOURKIAIE F,AHMED M H.Joint Cooperative Routing and Power Allocation for Collision Minimization in Wireless Sensor Networks With Multiple Flows[J].IEEE Wireless Communications Letters,2015,4(1):6-9.
[6]SHARMA S,SHI Y,HOU Y T,et al.Joint flow routing and relay node assignment in cooperative multi-h(huán)op networks[J].IEEE Journal on Selected Areas in Communications,2012,30(2):254 -262.
[7]ZHAI C,LIU J,ZHENG L,et al.Maximise lifetime of wireless sensor networks via a distributed cooperative routing algorithm[J].Transactions on Emerging Telecommunications Technologies,2012,23(5):414-428.
[8]LI P,GUO S,CHENG Z.Max-min lifetime optimization for cooperative communications in multi-channel wireless networks[J].IEEE Transactions on Parallel and Distributed Systems,2014,25(6):1533 -1542.
[9]SHARMA S,SHI Y,HOU Y T,et al.An optimal algorithm for relay node assignment in cooperative ad hoc networks[J]. IEEE/ACM TransactionsonNetworking(TON),2011,19(3):879-892.