文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)04-0094-04
0 引言
在無線傳感器網(wǎng)絡(luò)中可調(diào)度節(jié)點(diǎn)使其輪流工作,以盡可能多地關(guān)閉冗余節(jié)點(diǎn)的無線通信模塊來減少不必要的能量消耗,從而達(dá)到延長網(wǎng)絡(luò)生存時(shí)間的目的[1]。由于空閑偵聽和信道爭(zhēng)用沖突是無線傳感器網(wǎng)絡(luò)中不必要能量消耗的主要來源,因而減少空閑偵聽使節(jié)點(diǎn)轉(zhuǎn)入休眠狀態(tài)是目前研究較多的提高能量效率的方法[2]。在無線傳感器網(wǎng)絡(luò)使用過程中,網(wǎng)絡(luò)用戶對(duì)監(jiān)測(cè)區(qū)域內(nèi)感興趣的目標(biāo)隨查詢?nèi)蝿?wù)而動(dòng)態(tài)地增加或減少,從而使網(wǎng)絡(luò)流量隨之動(dòng)態(tài)地變化[3]。S-MAC[4]協(xié)議采用周期性偵聽和睡眠機(jī)制并提供良好的可擴(kuò)展性,但無法根據(jù)網(wǎng)絡(luò)環(huán)境的動(dòng)態(tài)流量進(jìn)行調(diào)整來提高能量效率。在文獻(xiàn)[5]中基于S-MAC提出自適應(yīng)退避算法,按照負(fù)荷的變化做動(dòng)態(tài)增量或減量調(diào)整退避指數(shù)的最小值。上述算法可根據(jù)負(fù)載變動(dòng)來調(diào)整網(wǎng)絡(luò)參數(shù)以降低節(jié)點(diǎn)的能耗,但未考慮數(shù)據(jù)包傳輸時(shí)延問題。文獻(xiàn)[6]中提出的節(jié)點(diǎn)最佳休眠時(shí)間可通過對(duì)二維馬爾可夫鏈模型分析得出。文獻(xiàn)[7]中分析了采用聚合的DCF機(jī)制的平均時(shí)延和各退避階的平均時(shí)延,而后將時(shí)延約束轉(zhuǎn)化為對(duì)平均時(shí)延的限制,通過保證給定比例的幀來滿足時(shí)延約束。針對(duì)在無線傳感器網(wǎng)絡(luò)流量動(dòng)態(tài)變化的監(jiān)測(cè)環(huán)境中出現(xiàn)的問題,在上述研究工作的基礎(chǔ)上,本文提出了具有平均時(shí)延約束的自適應(yīng)休眠機(jī)制ADC(Adaptive Sleeping Method for Average Delay Constraint),并對(duì)其改進(jìn)的S-MAC協(xié)議進(jìn)行二維馬爾可夫鏈模型分析,從而得到休眠階段的休眠周期來保證分組傳輸過程中的平均端到端時(shí)延,并提高能量效率。
1 機(jī)制描述
在該機(jī)制中,將時(shí)間劃分為連續(xù)的幀后,幀內(nèi)分為活動(dòng)階段和休眠階段,其中活動(dòng)階段可包括傳輸、等待和退避等過程[8]。在活動(dòng)階段開始后,節(jié)點(diǎn)通過CSMA/CA(載波偵聽多點(diǎn)接入/沖突避免)方式發(fā)送同步消息和數(shù)據(jù)。節(jié)點(diǎn)在MTslot時(shí)間內(nèi)一直空閑且無數(shù)據(jù)需發(fā)送,則結(jié)束活動(dòng)階段,轉(zhuǎn)入休眠階段,以降低節(jié)點(diǎn)的能量消耗。休眠階段可劃分為若干個(gè)休眠和蘇醒周期,其中休眠周期Tsleep和蘇醒周期Twake皆設(shè)為系統(tǒng)時(shí)隙Tslot的整數(shù)倍,如圖1所示。在休眠周期內(nèi)節(jié)點(diǎn)關(guān)閉無線通信模塊并緩存采集到的數(shù)據(jù)。處于蘇醒周期內(nèi)節(jié)點(diǎn)需監(jiān)聽信道是否有數(shù)據(jù)要發(fā)給自身。蘇醒周期結(jié)束時(shí),節(jié)點(diǎn)若有數(shù)據(jù)要接收或發(fā)送將立即進(jìn)入退避過程來發(fā)送該數(shù)據(jù),否則進(jìn)入下一個(gè)休眠周期。若在次休眠和蘇醒周期結(jié)束后,節(jié)點(diǎn)仍未收到上層發(fā)來需要發(fā)送的數(shù)據(jù)包或目的節(jié)點(diǎn)為自身的CTS幀,則結(jié)束休眠階段,轉(zhuǎn)入活動(dòng)階段的等待過程。
2 離散馬爾科夫鏈模型分析
為建立離散馬爾科夫鏈模型來簡(jiǎn)化分析該休眠機(jī)制,暫不考慮其同步情形。由于接收狀態(tài)時(shí)節(jié)點(diǎn)能量消耗與等待和退避狀態(tài)的能量消耗近似,可假設(shè)接收數(shù)據(jù)在節(jié)點(diǎn)處于等待過程中完成,則不單獨(dú)考慮接收狀態(tài)。
對(duì)節(jié)點(diǎn)在任何一個(gè)時(shí)隙中可能存在的各個(gè)狀態(tài)可用離散Markov鏈進(jìn)行描述。退避過程可用隨機(jī)過程B(t)表示,與回退計(jì)數(shù)器的計(jì)數(shù)值相對(duì)應(yīng)。可用隨機(jī)過程J(t)表示節(jié)點(diǎn)在t時(shí)刻所處的退避級(jí)數(shù)(0,1,…,m),其中m為最大退避級(jí)數(shù)。設(shè)定在退避過程中每個(gè)分組發(fā)送失敗的概率p為獨(dú)立且恒定的,則可用隨機(jī)過程{J(t),B(t)}表示節(jié)點(diǎn)的退避過程。每個(gè)狀態(tài)的概率用PB(i,k)(0≤i≤m,0≤k≤Wi-1)表示,則可用Markov鏈表示該退避過程,其中i為退避級(jí)數(shù),k為退避計(jì)數(shù)器的值,Wi為退避次數(shù)為i時(shí)的退避窗口。
進(jìn)入等待狀態(tài)的節(jié)點(diǎn),若有數(shù)據(jù)要發(fā)送,則從等待狀態(tài)轉(zhuǎn)移到退避狀態(tài)。設(shè)定平均報(bào)文到達(dá)時(shí)間間隔服從參數(shù)為?姿的泊松分布,則在一個(gè)時(shí)隙中節(jié)點(diǎn)從等待狀態(tài)轉(zhuǎn)移到退避狀態(tài)的概率為。若無數(shù)據(jù)發(fā)送,將進(jìn)入下一個(gè)時(shí)隙,。若經(jīng)過M個(gè)時(shí)隙后節(jié)點(diǎn)仍然沒有數(shù)據(jù)要發(fā)送,則將進(jìn)入到休眠狀態(tài)。
節(jié)點(diǎn)在休眠狀態(tài)時(shí),將進(jìn)行周期性休眠和蘇醒。節(jié)點(diǎn)在休眠周期和蘇醒周期內(nèi)都不改變自身狀態(tài)。若在一個(gè)休眠和蘇醒周期結(jié)束時(shí)有數(shù)據(jù)要發(fā)送,則將由休眠狀態(tài)轉(zhuǎn)移到退避狀態(tài),且在一個(gè)休眠和蘇醒周期的轉(zhuǎn)移概率為,其中Tsleep為休眠周期時(shí)間,Twake為蘇醒周期時(shí)間。若沒有數(shù)據(jù)發(fā)送,則進(jìn)入休眠狀態(tài)的下一個(gè)休眠和蘇醒周期。若經(jīng)過N次休眠和蘇醒周期后,仍然沒有數(shù)據(jù)發(fā)送,則將進(jìn)入等待狀態(tài)。由于只有當(dāng)一個(gè)休眠和蘇醒周期結(jié)束時(shí)才可會(huì)改變自身狀態(tài),可將處于某個(gè)休眠或蘇醒周期結(jié)束時(shí)的時(shí)隙分別表示該休眠或蘇醒周期以簡(jiǎn)化分析。由于休眠過程中進(jìn)入下一個(gè)休眠和蘇醒周期的概率?琢是獨(dú)立且恒定的,因此節(jié)點(diǎn)的休眠過程也可用Markov鏈表示。
進(jìn)入傳輸狀態(tài)的節(jié)點(diǎn)直到數(shù)據(jù)傳輸結(jié)束后才能改變自身狀態(tài),而在傳輸狀態(tài)時(shí)信源產(chǎn)生的數(shù)據(jù)要等傳輸結(jié)束后節(jié)點(diǎn)才能進(jìn)入退避狀態(tài)準(zhǔn)備發(fā)送。在傳輸結(jié)束時(shí),若有數(shù)據(jù)要發(fā)送,則由傳輸狀態(tài)轉(zhuǎn)移到每一個(gè)退避級(jí)數(shù)為0的退避狀態(tài)的概率為,其中K為傳輸過程所需的平均時(shí)隙。因而在傳輸結(jié)束時(shí)沒有數(shù)據(jù)需發(fā)送,則由傳輸狀態(tài)轉(zhuǎn)移到等待狀態(tài)的概率。
節(jié)點(diǎn)從等待狀態(tài)可以轉(zhuǎn)移到退避狀態(tài),從每一個(gè)等待狀態(tài)轉(zhuǎn)移到每一個(gè)退避級(jí)數(shù)為0的退避狀態(tài)的概率均為。節(jié)點(diǎn)傳輸狀態(tài)結(jié)束后將轉(zhuǎn)移到等待或退避狀態(tài),其轉(zhuǎn)移概率分別為及。等待過程結(jié)束后節(jié)點(diǎn)轉(zhuǎn)移到休眠狀態(tài)的轉(zhuǎn)移概率為。可知在設(shè)定條件下,級(jí)聯(lián)后節(jié)點(diǎn)從一種狀態(tài)轉(zhuǎn)移到另外一種狀態(tài)的概率是獨(dú)立且恒定的,則上述過程可級(jí)聯(lián)后為一個(gè)Markov鏈[8],其模型如圖2所示。
對(duì)節(jié)點(diǎn)在任何時(shí)隙內(nèi)可能存在的各個(gè)狀態(tài)用離散Markov鏈進(jìn)行描述后,可通過該Markov 鏈模型求得在穩(wěn)態(tài)時(shí)節(jié)點(diǎn)停留在不同狀態(tài)的概率。由圖2中休眠過程可知,第i個(gè)休眠和監(jiān)聽周期結(jié)束時(shí)節(jié)點(diǎn)所處狀態(tài)的概率PS(i)可用下式表示:
用PI(i),0≤i≤N表示節(jié)點(diǎn)在任意一個(gè)時(shí)隙處于在第i個(gè)空閑狀態(tài)的概率:
在退避過程,用PB(i,k),0≤i≤m,0≤k≤Wi-1表示節(jié)點(diǎn)在任意一個(gè)時(shí)隙處于在第i次退避并且其退避計(jì)數(shù)器為k的狀態(tài)的概率,可用下式表示:
傳輸過程中節(jié)點(diǎn)在任意一個(gè)時(shí)隙處于第i個(gè)傳輸狀態(tài)的概率PT(i)可表示為:
PT(K-1)=(1-pm+1)PB(0,0)
PT(i)=(1-pm+1)PB(0,0)(7)
其中完成數(shù)據(jù)包正確發(fā)送所需的時(shí)隙數(shù):
在平穩(wěn)狀態(tài)時(shí)Markov鏈需滿足下式:
可得節(jié)點(diǎn)處于退避級(jí)數(shù)為0且退避計(jì)時(shí)器為0的狀態(tài)的概率:
由于不論退避級(jí)數(shù)為多少,只要退避計(jì)時(shí)器為0,則傳感器節(jié)點(diǎn)開始傳輸數(shù)據(jù),因此該節(jié)點(diǎn)在任意時(shí)隙的發(fā)送概率可表示為:
在節(jié)點(diǎn)傳輸數(shù)據(jù)時(shí),若相鄰n-1個(gè)節(jié)點(diǎn)中至少有一個(gè)節(jié)點(diǎn)也發(fā)送數(shù)據(jù)則發(fā)生碰撞,而且當(dāng)目的節(jié)點(diǎn)處于休眠時(shí)發(fā)送數(shù)據(jù)也失敗,因此該節(jié)點(diǎn)在任意時(shí)隙發(fā)送失敗的概率為:
由式(11)和式(12)構(gòu)成非線性方程組,可得?子和p[6]。
至少有一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)的概率為:
在系統(tǒng)不空閑的條件下,有一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)成功的概率為:
采用RTS/CTS機(jī)制時(shí),Ts和Tc分別為數(shù)據(jù)成功發(fā)送和數(shù)據(jù)發(fā)送時(shí)分組碰撞所耗費(fèi)的時(shí)間,可用下式表示:
由于計(jì)算平均時(shí)延時(shí)超出重傳次數(shù)而被丟棄的幀不予考慮,則在退避過程或等待過程中數(shù)據(jù)幀到達(dá)發(fā)送節(jié)點(diǎn)的緩沖器隊(duì)首至目的節(jié)點(diǎn)成功接收的平均時(shí)延DelayB為一次成功發(fā)送需要的平均時(shí)隙數(shù)和時(shí)隙的平均長度的乘積[5],可表示為:
其中1-pm+1為包沒有被丟棄的概率,為沒有被丟棄的幀到達(dá)第i階的概率,為第i階的平均退避時(shí)隙數(shù)為信道空閑的時(shí)間。
在傳輸過程或休眠過程中,節(jié)點(diǎn)要發(fā)送數(shù)據(jù)都需轉(zhuǎn)移到退避過程才能將數(shù)據(jù)發(fā)送出去,因此信源在節(jié)點(diǎn)處于傳輸過程或休眠過程中產(chǎn)生而轉(zhuǎn)移到退避過程引起的平均時(shí)延分別可用下式表示:
其中一個(gè)休眠和蘇醒周期的時(shí)隙數(shù)。
數(shù)據(jù)幀到達(dá)發(fā)送節(jié)點(diǎn)的緩沖器隊(duì)首至目的節(jié)點(diǎn)成功接收的平均時(shí)延可用下式表示:
在蘇醒周期時(shí)節(jié)點(diǎn)需完整接收到發(fā)送節(jié)點(diǎn)向其發(fā)送的RTS幀,則Twake可設(shè)定為2(RTS/R)+2·SIFS+DIFS。對(duì)于平均時(shí)延約束為Delayaverage的業(yè)務(wù),則需滿足Delay<Delaymax,將休眠和蘇醒周期次數(shù)N代入式(19)可求出Tsleep最大值。由于節(jié)點(diǎn)處于休眠狀態(tài)時(shí)能量消耗最少,可將休眠周期設(shè)為最大值以提高網(wǎng)絡(luò)的能量效率[7]。由此看出,當(dāng)休眠和蘇醒周期次數(shù)以及休眠周期設(shè)為固定值時(shí),自適應(yīng)休眠機(jī)制則視為在休眠階段采取周期性休眠和偵聽的一般模式。
3 結(jié)論
本文針對(duì)網(wǎng)絡(luò)流量動(dòng)態(tài)變化的監(jiān)測(cè)環(huán)境,提出了一種無線傳感器網(wǎng)絡(luò)中具有平均時(shí)延約束的自適應(yīng)休眠機(jī)制,采取在休眠階段進(jìn)行自適應(yīng)地周期性休眠和蘇醒,并通過馬爾科夫鏈模型分析得到平均時(shí)延約束下的休眠周期。
參考文獻(xiàn)
[1] PANTAZIS N A,NIKOLIDAKIS S A,VERGADOS D D.Energy-Efficient routing protocols in wireless sensor networks:A survey[J].IEEE Communications Surveys & Tutorials,2013,15(2):551-591.
[2] CHUNSHENG Z,YANG L T,LEI S,et al.Sleep schedulingfor geographic routing in duty-cycled mobile sensor net-works[J].IEEE Transactions on Industrial Electronics,2014,61(11):6346-6355.
[3] JAE-HAN J,HEE-JUNG B,JONG-TAE L.Joint contentionand sleep control for lifetime maximization in wireless sensor networks[J].IEEE Communications Letters,2013,17(2):269-272.
[4] YE W,HEIDEMANN J,ESTRIN D.An energy-efficient MAC protocol for wireless sensor networks[C].Proceedings of IEEE INFOCOM,New York,USA,2002:1567-1576.
[5] 李延曉,張?jiān)铝?,管樺,?一種無線傳感器網(wǎng)絡(luò)MAC層能量有效算法[J].西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,39(1):168-171.
[6] 余旭濤,張?jiān)阼?,畢光?一種提高能量效率的Ad Hoc網(wǎng)絡(luò)MAC層協(xié)議[J].計(jì)算機(jī)學(xué)報(bào),2006,29(2):256-266.
[7] 黃愛蘋,張文平.IEEE 802.11 n系統(tǒng)最優(yōu)包長和聚合個(gè)數(shù)調(diào)節(jié)算法[J].東南大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,37(4):554-558.
[8] BIN L,HONGXIANG L,WENJIE W,et al.Performance analysis and optimization for energy-efficient cooperative transmission in random wireless sensor network[J].IEEE Transactions on Wireless Communications,2013,12(9):4647-4657.