李道德
(軌道交通工程信息化國(guó)家重點(diǎn)實(shí)驗(yàn)室(中鐵一院),陜西西安 710043)
無(wú)線傳感網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)是由大量傳感節(jié)點(diǎn)以自組織方式分布,且節(jié)點(diǎn)間能相互通信的無(wú)線網(wǎng)絡(luò)[1]。目前,WSNs 已在多個(gè)領(lǐng)域內(nèi)廣泛使用,如智慧交通物聯(lián)網(wǎng)、野外環(huán)境監(jiān)測(cè)等。WSNs 中的多數(shù)節(jié)點(diǎn)是由電池供電。由于多數(shù)WSNs部署于惡劣和偏遠(yuǎn)地區(qū),給節(jié)點(diǎn)補(bǔ)給電能的可操作性低。因此,提高能量效率是延長(zhǎng)WSNs網(wǎng)絡(luò)壽命[2-4]的關(guān)鍵。
目前,影響能量效率的因素主要有:數(shù)據(jù)包傳輸碰撞、開(kāi)銷(xiāo)、控制數(shù)據(jù)包開(kāi)銷(xiāo)和空閑偵聽(tīng)時(shí)長(zhǎng)。在IEEE 802.11 協(xié)議標(biāo)準(zhǔn)中,空閑偵聽(tīng)所消耗的能量幾乎與數(shù)據(jù)所消耗的能量一樣,占總能量消耗的30%。因此,有效地控制空閑偵聽(tīng)可改善能量效率低的問(wèn)題。
為此,文中針對(duì)存在的問(wèn)題基于周期的激活/休眠方案,提出基于雙重偵聽(tīng)時(shí)長(zhǎng)的多層MAC(Dual-Listening periods-based Multi-Layer MAC protocol,DL-ML-MAC)。DL-ML-MAC 協(xié)議先將偵聽(tīng)時(shí)間劃分為不同的層,且保證每個(gè)節(jié)點(diǎn)處于不同層,且互不重疊。同時(shí),引用雙重偵聽(tīng)時(shí)長(zhǎng)策略。仿真數(shù)據(jù)表明,提出的DL-ML-MAC 協(xié)議有效地提高了能量利用率。
MAC 協(xié)議必須具有以下特性[3]:能量有效性、可擴(kuò)展性和自適應(yīng)性。依據(jù)接入方式的不同,可將這些MAC 協(xié)議劃分為基于預(yù)設(shè)和基于競(jìng)爭(zhēng)兩類(lèi)[5-6]。這兩類(lèi)接入方式有各自的優(yōu)劣。在基于預(yù)設(shè)的MAC 協(xié)議中,預(yù)先給節(jié)點(diǎn)分配信道,即給節(jié)點(diǎn)預(yù)先分配固定的接入時(shí)隙。這種方式操作簡(jiǎn)單,且無(wú)碰撞、DC 短,但可擴(kuò)展性低[7-8]且具有時(shí)鐘同步難的問(wèn)題。文獻(xiàn)[9]提出的(TRaffic Adaptive Medium Access,TRAMA)是屬于基于預(yù)設(shè)的MAC 協(xié)議。
在基于競(jìng)爭(zhēng)的MAC 協(xié)議中,節(jié)點(diǎn)共享信道,并通過(guò)競(jìng)爭(zhēng)方式接入信道。與基于預(yù)設(shè)的MAC 協(xié)議相比,基于競(jìng)爭(zhēng)的MAC 協(xié)議的能耗更多。如IEEE 802.11[10]是無(wú)線網(wǎng)絡(luò)的物理層標(biāo)準(zhǔn),其引用無(wú)碰撞的多載波偵聽(tīng)(Carrier Sense Multiple Access with Collision Avoidance,CSMA/CA)。盡管IEEE 802.11廣泛應(yīng)用傳統(tǒng)的自組網(wǎng)絡(luò),但它并不適合傳感網(wǎng)絡(luò)。然而,由于IEEE 802.11 簡(jiǎn)單、可靠,許多研究人員還是試圖修改和優(yōu)化IEEE 802.11,致使其適用于傳感網(wǎng)絡(luò)。
文獻(xiàn)[2-3]引用的MAC協(xié)議就是基于IEEE 802.11的修改方案。它將時(shí)間劃分為多個(gè)幀,每個(gè)幀又劃分為激活和休眠時(shí)期。節(jié)點(diǎn)只在激活時(shí)期通信。先緩存在休眠時(shí)期產(chǎn)生的數(shù)據(jù)包,待下一個(gè)周期的激活時(shí)期才傳輸該數(shù)據(jù)。
在激活/休眠周期方案中,傳感節(jié)點(diǎn)周期地關(guān)掉無(wú)線電,進(jìn)入休眠模式,減少空閑偵聽(tīng)時(shí)間,如圖1所示。一個(gè)幀內(nèi)由激活和休眠兩個(gè)時(shí)期構(gòu)成。在激活期,節(jié)點(diǎn)處于偵聽(tīng)狀態(tài)。若整個(gè)幀長(zhǎng)為T(mén)f,偵聽(tīng)時(shí)長(zhǎng)為T(mén)listening,則將Tlistening的比值稱為工作周期(Duty Cycle,DC)。DC 越短越有利于能量的保存。如休眠機(jī)制的MAC 協(xié)議(Sleep MAC,S-MAC)[2-3]和能效(Energy MAC,E-MAC)[5]協(xié)議均試著降低節(jié)點(diǎn)的DC,獲取高的能量效率。

圖1 周期的激活/休眠方案
DL-ML-MAC 協(xié)議是基于分布式競(jìng)爭(zhēng)的MAC 協(xié)議,它將時(shí)間劃分為不同的時(shí)間幀,每個(gè)幀由工作期(激活)和休眠期組成。同時(shí),將工作期劃分為L(zhǎng)層,如圖2 所示。

圖2 DL-ML-MAC協(xié)議的多層結(jié)構(gòu)
通過(guò)L層的劃分,使節(jié)點(diǎn)處于不同層,進(jìn)而獲取不同的工作時(shí)間,如圖3 所示。通過(guò)這種策略,致使節(jié)點(diǎn)的工作周期不重疊,并且保證在同一個(gè)時(shí)間段,只有一個(gè)節(jié)點(diǎn)是處于工作狀態(tài),其他節(jié)點(diǎn)處于休眠狀態(tài)。通過(guò)這種方式,可以減少節(jié)點(diǎn)能耗。

圖3 DL-ML-MAC協(xié)議的信道接入時(shí)隙
從圖3 可知,L值影響了傳感節(jié)點(diǎn)的偵聽(tīng)時(shí)間(Listen)。因此,需要對(duì)L值進(jìn)行優(yōu)化。
首先,計(jì)算幀時(shí)長(zhǎng)Tf。Tf必須要小于TR,即Tf≤TR,其中TR為最大的響應(yīng)時(shí)間。同時(shí),Tf必須滿足式(1):

式中,t1表示每一層的偵聽(tīng)(偵聽(tīng))時(shí)長(zhǎng),如圖3所示。
其次,計(jì)算每層內(nèi)偵聽(tīng)時(shí)長(zhǎng)t1。時(shí)長(zhǎng)t1受電池量C和平均能量消耗ρ的影響。依據(jù)能量供應(yīng)關(guān)系可得:

其中,Nf表示幀數(shù),而?表示電池的平均輸出量。
依據(jù)式(2)可得:

式(3)約束了時(shí)長(zhǎng)t1的上限值,但時(shí)長(zhǎng)t1也必須要大于傳輸一個(gè)數(shù)據(jù)包所需要的時(shí)間,如式(4)所示:

式中,τt、τρ分別表示數(shù)據(jù)包傳輸時(shí)延、傳播時(shí)延,τd表示時(shí)鐘漂移時(shí)延,W是指最大的窗口數(shù)。
因此,依據(jù)式(3)和式(4)可得:

然后,優(yōu)化層數(shù)。層次L受每幀內(nèi)的平均流量λavg影響。因此,λavg的定義如式(6)所示:

式中,n表示網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)數(shù)。
而總的工作時(shí)間應(yīng)大于發(fā)送數(shù)據(jù)包所需的時(shí)間,即:

將式(7)轉(zhuǎn)換后,可得:

此外,保護(hù)間隔t2應(yīng)滿足式(9):

因此,L的上限值:

最后,便可得L的取值區(qū)間:

2.1節(jié)的推導(dǎo)過(guò)程中假定每個(gè)節(jié)點(diǎn)的偵聽(tīng)時(shí)長(zhǎng)是相同的,且為t1。這是不合理的,該假定并沒(méi)有考慮節(jié)點(diǎn)剩余能量的差異,而進(jìn)行差別化對(duì)待。剩余能量較小的節(jié)點(diǎn),應(yīng)選擇更小的偵聽(tīng)時(shí)長(zhǎng)。反之剩余能量多的節(jié)點(diǎn),要選擇更長(zhǎng)的偵聽(tīng)時(shí)長(zhǎng)。這有利于網(wǎng)絡(luò)能量的平衡,能夠延長(zhǎng)網(wǎng)絡(luò)壽命。
為此,DL-ML-MAC 協(xié)議采用兩種不同的偵聽(tīng)時(shí)長(zhǎng):和,如圖4 所示。當(dāng)節(jié)點(diǎn)剩余能量大于預(yù)定的能量閾值,就選擇,否則就選擇。

圖4 不同偵聽(tīng)時(shí)長(zhǎng)的劃分


圖5 偵聽(tīng)時(shí)長(zhǎng)劃分的偽代碼
考慮如圖6 所示的能耗模型。節(jié)點(diǎn)傳輸mbit 的數(shù)據(jù)所消耗的能量為:


圖6 能耗模型
式中,d表示傳輸距離;Eelec表示發(fā)送數(shù)據(jù)電路傳輸單比特?cái)?shù)據(jù)所消耗的能量;ξfs、ξamp分別表示在自由空間、雙徑衰落傳輸模型下的能量消耗因子。d0表示切換傳輸模型的距離閾值因子。
節(jié)點(diǎn)接收mbit數(shù)據(jù)所消耗的能量為:

為了更好地分析DL-ML-MAC 協(xié)議性能,建立仿真平臺(tái),并分析DL-ML-MAC 性能。文中利用NS3[11]網(wǎng)絡(luò)仿真器建立仿真平臺(tái)。n=100 節(jié)點(diǎn),節(jié)點(diǎn)在傳輸數(shù)據(jù)、偵聽(tīng)和休眠時(shí)所消耗的能量分別為24.75 mW、13.5 mW、15 μW。此 外,Eelec=50 nJ/bit、ξfs=10 pJ/bit/m2、ξamp=0.013 pJ/bit/m4,數(shù)據(jù)傳輸率和接收率均為19.2 kbps,剩余的仿真參數(shù)如表1 所示。

表1 仿真參數(shù)
此外,選擇能耗和數(shù)據(jù)包傳輸時(shí)延作為性能指標(biāo),其中能耗是指每傳輸一個(gè)數(shù)據(jù)包所消耗的能量。同時(shí),選擇S-MAC 協(xié)議和ML-MAC[12]協(xié)議進(jìn)行同步仿真,并進(jìn)行性能比較。
首先,分析能耗隨數(shù)據(jù)到達(dá)間隔的變化情況,如圖7 所示。從圖7 可知,與S-MAC 和ML-MAC 協(xié)議相比,DL-ML-MAC 的能耗下降了,且分別比S-MAC和ML-MAC 下降了66.2%和34.1%。這主要?dú)w功于DL-ML-MAC 協(xié)議的偵聽(tīng)時(shí)長(zhǎng)大于S-MAC 和MLMAC 協(xié)議,從而降低了能耗。
圖8 顯示了3 個(gè)協(xié)議的節(jié)點(diǎn)休眠時(shí)間。從圖8可知,DL-ML-MAC 協(xié)議中節(jié)點(diǎn)的休眠時(shí)間最長(zhǎng),它的休眠時(shí)間比例為90.4%,而S-MAC 協(xié)議和MLMAC 協(xié)議的休眠時(shí)間比例分別約為85%和70%。這與圖7 的能耗數(shù)據(jù)相吻合,休眠時(shí)間越長(zhǎng),越有利于節(jié)點(diǎn)能量的保存。

圖8 休眠時(shí)間數(shù)據(jù)到達(dá)間隔的變化情況
然后分析數(shù)據(jù)包傳輸時(shí)延,如圖9 所示。
從圖9 可知,數(shù)據(jù)包傳輸時(shí)延隨數(shù)據(jù)包間隔時(shí)時(shí)長(zhǎng)的增加而下降。在整個(gè)間隔變化區(qū)間,DL-MLMAC 協(xié)議的數(shù)據(jù)包傳輸時(shí)延最高,分別比S-MAC 協(xié)議和ML-MAC 協(xié)議提高了25.8%和1.9%。該結(jié)果表明,DL-ML-MAC 協(xié)議是以傳輸時(shí)延為代價(jià),換取低能耗[13-16]。

圖9 數(shù)據(jù)包傳輸時(shí)延數(shù)據(jù)到達(dá)間隔的變化情況
為了提高物聯(lián)網(wǎng)節(jié)點(diǎn)電力能量利用率,文中對(duì)無(wú)線傳感網(wǎng)絡(luò)的MAC 協(xié)議進(jìn)行了研究,并提出基于雙重偵聽(tīng)時(shí)長(zhǎng)的多層MAC 協(xié)議。DL-ML-MAC 協(xié)議引用多層機(jī)制,縮小節(jié)點(diǎn)的偵聽(tīng)時(shí)間,并使用雙重偵聽(tīng)時(shí)長(zhǎng)策略。仿真數(shù)據(jù)表明,提出的DL-ML-MAC協(xié)議能有效地降低電力能耗。但DL-ML-MAC 協(xié)議的數(shù)據(jù)包傳輸時(shí)延較大,后期將優(yōu)化DL-ML-MAC協(xié)議,控制傳輸時(shí)延,這將是后期工作的研究重點(diǎn)。