摘要:提出了一種基于預約調(diào)度的用于無線傳感器網(wǎng)絡的MAC協(xié)議——SSMAC。該協(xié)議采用分布式競爭接入和預約調(diào)度發(fā)送,提供高能量效率的信道接入和支持QoS業(yè)務的傳輸,較好地解決了隱藏終端和暴露終端問題。仿真結(jié)果表明SSMAC協(xié)議在保持節(jié)能的同時,在降低媒體接入時延、提高報文投遞成功率和提供QoS保障上較TRAMA協(xié)議性能有很大的提高。
關鍵詞:無線傳感器網(wǎng)絡; 媒體接入控制; 服務質(zhì)量; 能量效率
中圖分類號:TN925.93文獻標志碼:A
文章編號:1001-3695(2008)03-0855-05
近年來隨著VLSI(very large scale integration)和MEMS(microelectromechanical systems)技術的發(fā)展,使得部署擁有大量小型節(jié)點的無線傳感器網(wǎng)絡(wireless sensor networks,WSNs)成為可能[1]。具有傳感、數(shù)據(jù)處理和短距離無線通信功能的傳感器組成的WSNs節(jié)點,在軍事國防、環(huán)境監(jiān)測、目標追蹤、生物醫(yī)療、搶險救災以及商業(yè)應用等領域具有廣闊的應用前景[2]。
與其他典型的無線網(wǎng)絡相比,如蜂窩移動網(wǎng)絡和無線局域網(wǎng)絡,WSNs差異性非常大。WSNs作為移動自組織網(wǎng)絡(mobile Ad hoc networks,MANETs)的典型代表,與MANETs本身也具有很大的不同。WSNs節(jié)點不移動或很少移動;WSNs的數(shù)據(jù)包更小,因而數(shù)據(jù)傳輸開銷更大;WSNs 節(jié)點的計算、存儲、通信能力有限;WSNs一般獨立成網(wǎng),主要用于監(jiān)測功能,是以數(shù)據(jù)為中心的網(wǎng)絡;WSNs節(jié)點可達上千,遠大于MANETs的幾十個節(jié)點[3,4];WSNs通常非常困難甚至不可能去更換已經(jīng)部署的節(jié)點的電池,這就使得最大化網(wǎng)絡生存時間成為WSNs首要設計目標,而其他傳統(tǒng)的網(wǎng)絡性能指標,諸如時延和吞吐率成為次要考慮的要素。WSNs 的特點使得眾多傳統(tǒng)固定網(wǎng)絡與MANETs的MAC(medium access)協(xié)議不能有效地應用于WSNs。
本文首先根據(jù)WSNs網(wǎng)絡的特點介紹了各種典型的MAC
協(xié)議,在此基礎上提出了一種基于預約調(diào)度的WSNs的MAC協(xié)議——SSMAC(schedulebased sensor MAC),在節(jié)能的同時能夠提供數(shù)據(jù)的QoS(quality of service)保障,通過仿真分析,得出SSMAC協(xié)議的性能。
1相關工作
無線傳感器網(wǎng)絡中的能量浪費主要在沖突、串擾、控制包開銷、空閑偵聽以及過早發(fā)送幾個方面[5]。現(xiàn)在的傳感器網(wǎng)絡中的MAC協(xié)議采用了一定的方法控制一個或者幾個方面的能量浪費,來達到降低能耗的目的。另一方面,傳感器網(wǎng)絡的體系結(jié)構(gòu)中存在一種匯聚節(jié)點(sink)[2],該節(jié)點具備較強的發(fā)射和處理數(shù)據(jù)的能力,且具有較高的電能,可以把數(shù)據(jù)發(fā)回遠程處理控制中心;而其他節(jié)點通過多跳中繼方式將收集到的數(shù)據(jù)傳送到sink節(jié)點。因此與MANETs網(wǎng)絡中的對等通信模式不同,WSNs中的節(jié)點的通信模式又可以分為廣播(broadcast)、匯聚發(fā)送(convergecast)、本地通信(local gossip)和組播通信(multicast)[5,6]。MAC協(xié)議應該低耗能地對這些通信模式進行支持,以便節(jié)點相互合作完成監(jiān)測和數(shù)據(jù)通信任務。
為WSNs設計MAC協(xié)議的主要目標是最大化網(wǎng)絡生存時間和協(xié)議的可擴展性以及要求協(xié)議適應網(wǎng)絡的變化。這些變化主要包括網(wǎng)絡的大小和拓撲、節(jié)點的密度、節(jié)點的加入和節(jié)點的消亡等。其他網(wǎng)絡性能如吞吐率、時延和帶寬利用率也是需要考慮的指標。目前研究人員設計了很多服務于WSNs的MAC協(xié)議,可以根據(jù)協(xié)議的特點分為基于競爭和基于預約調(diào)度的MAC層協(xié)議。在文獻[7]中,提出了一種基于802.11 DCF機制改進的SMAC(sensorMAC)。SMAC 協(xié)議將時間分幀,幀長度可由應用程序確定,幀內(nèi)分為工作階段和休眠階段,通過固定的周期性地偵聽和睡眠來降低空閑偵聽;通過RTS/CTS/DATA/ACK機制來避免沖突;通過消息傳遞來減少分組傳遞開銷。但是廣播數(shù)據(jù)報文沒有使用RTS/CTS機制,增加了沖突的概率,另一方面串擾也會浪費一部分能量,并且固定長度的工作階段在可變負載的情況下將會降低協(xié)議的有效性;而在文獻[8]中提出的TMAC(timeoutMAC)的主要目的就是增強SMAC協(xié)議在可變負載下的性能,通過動態(tài)調(diào)整工作階段的幀長度,以適應可變負載的要求。但是又引入了一個“早睡”的問題。所謂早睡是指在多個傳感器節(jié)點向一個或少數(shù)幾個sink節(jié)點傳輸數(shù)據(jù)時,由于節(jié)點在當前工作階段沒有收到激活事件進入睡眠,沒有監(jiān)測到接下來的傳輸而導致通信延遲的情況。WiseMAC[9]協(xié)議使用非堅持的CSMA發(fā)送數(shù)據(jù)報文,空閑節(jié)點周期性地短時間偵聽信道,以確定信道狀態(tài)。WiseMAC 協(xié)議還通過在數(shù)據(jù)確認包中攜帶節(jié)點下一次信道偵聽時間,發(fā)送數(shù)據(jù)幀前加入結(jié)合了時鐘漂移速度的喚醒前導,使得接收節(jié)點在幀的數(shù)據(jù)部分發(fā)送前進入工作狀態(tài),以接收數(shù)據(jù)。但是存儲所有鄰居節(jié)點的信道偵聽時間,會占用寶貴的存儲空間,增加協(xié)議實現(xiàn)復雜度,尤其是在節(jié)點密度高的網(wǎng)絡內(nèi)這個問題尤為突出,并且非堅持的CSMA不能解決隱藏終端帶來的沖突。Datagathering MAC(DMAC)協(xié)議[10]是基于時隙Aloha的改進,時隙被分配給一棵從傳感器節(jié)點到sink節(jié)點所形成的數(shù)據(jù)匯集樹,樹中的數(shù)據(jù)傳輸是單向的,數(shù)據(jù)報文由孩子節(jié)點發(fā)送到父節(jié)點,節(jié)點采用工作/休眠狀態(tài)轉(zhuǎn)換,使孩子節(jié)點的發(fā)送時間與父節(jié)點的接收時間重合。在最理想情況下,數(shù)據(jù)轉(zhuǎn)發(fā)會一直進行, 沒有任何延遲,但是DMAC不能適用于網(wǎng)絡中數(shù)據(jù)雙向交互的情況,所以它沒有實現(xiàn)WSNs中的全部通信模式。TRAMA(trafficadaptive MAC protocol)協(xié)議[11]是基于傳統(tǒng)TDMA協(xié)議在節(jié)能領域的改進,將時間劃分為交替的隨機訪問周期和調(diào)度訪問周期,根據(jù)局部兩跳內(nèi)的鄰居節(jié)點信息,采用分布選舉機制確定每個時隙的無沖突發(fā)送者,同時通過避免把時隙分配給無流量的節(jié)點,并讓非發(fā)送和接收節(jié)點處于睡眠狀態(tài)達到節(jié)省能量的目的。TRAMA 協(xié)議提高了網(wǎng)絡吞吐量,克服了基于TDMA 的MAC 協(xié)議擴展性差的不足,但是TRAMA 協(xié)議的隨機訪問周期相對比較長,至少占到了整個時幀的12.5%,過于消耗能量,開銷較大。由于復雜的分布選舉機制,數(shù)據(jù)報文在隊列中等待發(fā)送的時延較大,TRAMA協(xié)議更適用于對時延不敏感的應用場合。
在Ad hoc網(wǎng)絡中有許多典型的應用于同步網(wǎng)絡的基于調(diào)度的MAC層協(xié)議,如FPRP(fivephase reservation protocol)[12]和E(evolutionary)TDMA[13]等。FPRP是一種通過五次握手,完成兩跳范圍內(nèi)高概率、無沖突的分布式預約調(diào)度機制,是一個廣播調(diào)度協(xié)議,如果調(diào)度單播將導致其效率不高。而ETDMA是基于FPRP改進版本,它和FPRP一樣需要五次握手實現(xiàn)節(jié)點的接入。因此,該協(xié)議雖然能保證實時業(yè)務無沖突地發(fā)送,同時也能避免時延抖動,但控制開銷較大,實現(xiàn)復雜,效率不高。基于調(diào)度的MAC協(xié)議可以保證節(jié)點在預約成功的情況下無沖突地傳輸數(shù)據(jù)報文,其協(xié)議性能取決于預約算法的開銷,并且可以實現(xiàn)QoS保障。本文的SSMAC協(xié)議主要受文獻[11,12]啟發(fā),結(jié)合WSNs中的能量約束和區(qū)分服務來設計基于調(diào)度的MAC協(xié)議,一方面解決了傳統(tǒng)的隱藏終端和暴露終端問題;另一方面充分考慮節(jié)能性,并且有較低的媒體接入時延,能為數(shù)據(jù)提供一種QoS保障。
2SSMAC協(xié)議
SSMAC協(xié)議適用于全網(wǎng)同步劃分時隙的無線傳感器網(wǎng)絡。系統(tǒng)同步可以有兩種實現(xiàn)方式。a)通過GPS接收機從空間取得的高精度的頻率標準,與受控時鐘相配合,節(jié)點可以獲得與世界協(xié)調(diào)時(UTC)為參照的時間基準的時間同步。b)通過自校時的方式,實現(xiàn)一定精度的時鐘同步。由于傳感器網(wǎng)絡的數(shù)據(jù)率相對較低,一個時隙的持續(xù)時間遠大于典型的時鐘漂移。如在115.2 kbps的速率下,利用長度為46 ms的時隙傳輸一個512 Byte的數(shù)據(jù)報文,數(shù)量級在毫秒的時鐘漂移都用容忍,用文獻[14]中的簡單時間戳機制就能實現(xiàn)WSNs中的節(jié)點同步。SSMAC協(xié)議通過多次握手,完成兩跳范圍內(nèi)高概率、無沖突的分布式預約調(diào)度機制,結(jié)合能量約束條件,考慮對實時業(yè)務的支持,通過區(qū)分服務來實現(xiàn)業(yè)務的QoS保障。
2.1信道的劃分
無線網(wǎng)絡發(fā)展之初,受到硬件和軟件環(huán)境的限制,主要是使用單信道,由此而發(fā)展出了一批典型的有實用價值的MAC協(xié)議,在民用領域使用最廣泛的就是IEEE的802.11系列。在解決了全網(wǎng)的同步時,傳統(tǒng)的TDMA劃分方式以硬件實現(xiàn)簡單成為一種有效的劃分方式。
SSMAC協(xié)議將時間劃分為一個個的時幀,每個時幀是一次獨立的信道預約和數(shù)據(jù)傳送過程,每一個時幀又分為隨機接入周期和調(diào)度接入周期,時幀之間是時間同步等必要的全局管理信息,如圖 1所示。
時幀的每個調(diào)度接入部分有K個信息幀,每個信息幀又分為N個信息時隙;隨機接入中的軟預留部分主要是供上次成功預留了時隙的節(jié)點按照一定的算法不經(jīng)過競爭接入,再次預留同序號的時隙;每個競爭接入部分將決定節(jié)點如何預約調(diào)度信息幀,預約過程分為N個預約時隙,分別預約對應序號的業(yè)務時隙,每一次成功的預約將使其占用其后調(diào)度接入信道中序號相同的K個信息時隙,而每個預約時隙包含M1+M2次采用四次握手的預約周期,如圖 2所示,主要目的是避免隱藏終端的干擾和解決暴露終端問題,讓網(wǎng)絡承載更多的并行傳輸,并且提高預約成功率。
2.2協(xié)議的工作方式
基于動態(tài)分配的TDMA協(xié)議如同多信道的自組網(wǎng)MAC協(xié)議,主要研究信道分配和接入控制兩個方面的內(nèi)容。前者負責為通信節(jié)點對分配相應的信道,使盡量多的節(jié)點可以無沖突地同時通信;后者負責確定節(jié)點接入信道的時機、沖突的避免和解決方式。因此SSMAC協(xié)議主要實現(xiàn)上述兩種功能,而TDMA系統(tǒng)中的信道分配就是為網(wǎng)絡中的節(jié)點分配發(fā)送時隙,用多次握手預約的方式實現(xiàn)相鄰節(jié)點之間分組的無碰撞的傳送,獲得盡可能高的無線信道的利用率和空間重用,同時與本次通信無關的節(jié)點將進入睡眠狀態(tài)以節(jié)約能量。
2.2.1QoS保障機制
QoS是網(wǎng)絡為用戶傳送端到端數(shù)據(jù)時必須滿足的一套可制量的預先定義的基于端到端性能的服務屬性,一般包括時延、時延抖動、可用帶寬和分組丟包率等。區(qū)分服務優(yōu)先級和資源預留是無線網(wǎng)絡中主要使用兩種保障QoS的方法,只要能夠使用戶業(yè)務的性能達標的方法,均可以視為QoS保障。QoS保障需要在每一層都實現(xiàn),多層協(xié)調(diào)來完成業(yè)務的需求。區(qū)分服務優(yōu)先級主要是把所支持的業(yè)務歸納為幾類,分配不同的接入優(yōu)先級別,采用發(fā)送概率或者退避算法等方式來實現(xiàn),保證高優(yōu)先級別的業(yè)務能夠高概率地優(yōu)先占用信道;資源預留的方式主要是把信道的一部分資源進行保留,可以保證恒比特率高優(yōu)先級業(yè)務的信道使用權(quán),對于實時業(yè)務總是能夠提供傳輸?shù)男诺馈?/p>
SSMAC協(xié)議采用區(qū)分服務的方式實現(xiàn)QoS保障,對于上層給予的數(shù)據(jù)報文分成兩種類型,分別放在兩個不同的數(shù)據(jù)緩沖區(qū)內(nèi)。這兩個數(shù)據(jù)緩沖區(qū)分別是實時業(yè)務區(qū)和普通業(yè)務區(qū)。協(xié)議在為數(shù)據(jù)報文進行預約時,將根據(jù)自身隊列中不同緩沖區(qū)內(nèi)的報文采用不同的策略,對于實時業(yè)務是只要存在即高概率地去占用信道,一旦失敗則反復去預約。如果在下一個時幀到來時,緩沖區(qū)內(nèi)依然存在實時業(yè)務的報文,則啟動軟預留機制去占用同序號的時隙。普通業(yè)務要達到K個數(shù)據(jù)報文才能激活預約過程,并且緩沖區(qū)內(nèi)的報文要達到一定的數(shù)量才能啟動軟預留機制。
2.2.2啟動軟預留機制
在每個時幀的第一部分是一個N比特長度的軟預留時隙,分別對應其后N個信息時隙。軟預留部分主要是供上次成功預留了時隙的節(jié)點按照一定的算法不經(jīng)過競爭接入,再次預留同序號的時隙。其工作方式為:節(jié)點在新的時幀開始時,發(fā)現(xiàn)自己的實時業(yè)務緩沖區(qū)內(nèi)存在待發(fā)的實時數(shù)據(jù)報文或者其待發(fā)的普通數(shù)據(jù)報文超過3×K個了,并且上次成功預留過某個時隙,節(jié)點就將對應序號的軟預留部分的比特位置1,此時節(jié)點軟預留成功。當其他節(jié)點發(fā)現(xiàn)有比特位被置1后,就不再預約被置位的時隙,轉(zhuǎn)而只在對應的預約時隙的第一個預約循環(huán)接收來自軟預留成功節(jié)點的廣播報文,確認自己是否是它的接收方。為了節(jié)點接入信道的公平性,只能允許節(jié)點連續(xù)三次通過軟預留的方式預留時隙,超過三次以后節(jié)點只能通過預約來實現(xiàn)對時隙的占用。
2.2.3四次握手的預約機制
SSMAC協(xié)議采納了FPRP五次握手的思想,通過多次握手使其能夠預約單播、組播和廣播以及支持QoS,其預留過程只涉及兩跳范圍內(nèi)的站點,是一個本地過程,能夠支持信道在空間上的重用。節(jié)點在協(xié)議中可能的狀態(tài)為傳遞狀態(tài)(TX)、接收狀態(tài)(RX)和睡眠狀態(tài)(SL)。在網(wǎng)絡初始時,節(jié)點處于TX或者RX狀態(tài),自行組網(wǎng),協(xié)議主要考慮網(wǎng)絡處于穩(wěn)態(tài)以后的預約過程,如圖3,是競爭報文的報文格式。
下面是其算法的主要工作步驟。
1)預約請求階段(reservation request phase, RR)
當節(jié)點處于預約時隙的Ⅰ部時,在該階段中,當節(jié)點緩沖區(qū)內(nèi)實時業(yè)務數(shù)據(jù)報文或者K個普通業(yè)務數(shù)據(jù)報文時,節(jié)點需要預約資源,此時分為三種情況:a)當節(jié)點已經(jīng)通過軟預留的方式得到了對當前時隙的使用權(quán),節(jié)點將向一跳鄰節(jié)點廣播一個預約請求RR分組,在RR分組中必須包括發(fā)送節(jié)點的ID、K個數(shù)據(jù)報文的目的節(jié)點的ID和標志位(表明節(jié)點是通過軟預留得到此時隙的使用權(quán)的);b)節(jié)點通過偵聽軟預留部分,發(fā)現(xiàn)此時隙已經(jīng)被別的節(jié)點軟預留,此時它將尊重另外節(jié)點的預留,轉(zhuǎn)而進入RX狀態(tài)偵聽別的節(jié)點發(fā)出的RR分組;c)沒有節(jié)點軟預留該時隙并且也沒有節(jié)點在前面的預約循環(huán)中成功預留該時隙,此時節(jié)點以接入概率PRR向一跳鄰節(jié)點廣播一個預約請求RR分組,接入概率PRR由多跳pseudoBaysian算法[15]確定,在RR分組中必須包括發(fā)送節(jié)點的ID和K個數(shù)據(jù)報文的目的節(jié)點的ID。而沒有發(fā)送RR分組的節(jié)點轉(zhuǎn)入RX狀態(tài)在該階段進行偵聽,發(fā)送RR分組的節(jié)點在協(xié)議中稱為預約節(jié)點 (reservation node, RN)。
當節(jié)點處于預約時隙的Ⅱ部時,由于經(jīng)過預約時隙Ⅰ部的M1次循環(huán)預約,已經(jīng)有節(jié)點成功預留該時隙或者還沒有節(jié)點成功預留該時隙,節(jié)點擁有了本地的時隙表,記錄了節(jié)點及其鄰居對當前時隙的使用預留情況。此時如果節(jié)點有數(shù)據(jù)報文需要發(fā)送,它將檢查所有鄰居的狀態(tài),當欲發(fā)送節(jié)點的所有鄰居節(jié)點不處于RX狀態(tài)且欲發(fā)送報文的目的節(jié)點不處于RX狀態(tài)時才發(fā)送RR分組。
2)傳輸報告階段(transmission report phase,TR)
如果節(jié)點在階段l收到兩個或兩個以上的預約請求分組,則節(jié)點檢測到?jīng)_突,就知道在該預約周期中有多個預約節(jié)點同時進行競爭預約。當節(jié)點處于預約時隙的Ⅰ部的傳輸報告階段時,如果檢測到RR分組沖突,則該節(jié)點在階段2廣播一個沖突報告CR分組;否則保持沉默;當節(jié)點處于預約時隙的Ⅱ部的傳輸報告階段時,如果檢測到RR分組沖突,則該節(jié)點同樣廣播一個沖突報告CR分組,而當節(jié)點只收到一個RR分組時,節(jié)點將分析其中的內(nèi)容,只有當自己是RR分組中的目的地址域中的一個時,根據(jù)鄰居節(jié)點和自己在當前業(yè)務時隙的狀態(tài)判斷,只有自己所有鄰居節(jié)點不處于TX狀態(tài),且自己處于空閑狀態(tài)時,才同意對方的預約請求;否則就廣播CR分組。通過在該階段對CR的偵聽,RN判斷它的RR是否和別人的RR或者別人先前的預約發(fā)生碰撞。如果未接收到CR,RN認為它所發(fā)送的RR被每個鄰節(jié)點正確接收。這樣,一個RN節(jié)點就變成了一個傳遞節(jié)點(transmission node,TN),在下面的預約證實階段就可以預約時隙。很明顯,RR/CR交互消除了隱藏終端問題,并且兩部分的預約過程的交互充分利用暴露節(jié)點可以與鄰居節(jié)點并行傳輸?shù)哪芰Γ岣呖臻g復用率。
3)預約證實階段(reservation confirmation phase, RC)
在這個階段里,預約被建立。TN在這個狀態(tài)里廣播一個預約證實RC分組通知一跳鄰居節(jié)點相應的時隙被預約,每一個正確接收到這個RC的一跳鄰節(jié)點都知道了該時隙已被預約,非傳輸節(jié)點將更新自己的時隙表,它們將在時隙表的相應時隙里加上RC分組的源節(jié)點ID,它們將在業(yè)務信道的相應時隙里從TN接收信息,并且不再競爭該時隙。
4)預約確認階段(reservation acknowledgement phase,RA)
收到預約證實RC分組的節(jié)點發(fā)送預約確認RA分組通知TN及TN的兩跳鄰居節(jié)點,從而兩跳鄰居節(jié)點知道兩跳遠處有節(jié)點預約資源成功。如果TN沒有相連節(jié)點,它就收不到預約確認分組,由此可知TN是一孤立節(jié)點,TN就沒必要進行信息的發(fā)送。
在四次握手階段過后,節(jié)點完成了一次預約循環(huán),將進入下一次預約循環(huán)。如果有節(jié)點已經(jīng)預約成功,則可以進入SL狀態(tài)以節(jié)約能量,直到進入預約時隙Ⅱ部或者進入下一個預約時隙。經(jīng)過上述的一個完整預約過程后,節(jié)點的可能狀態(tài)為:預約成功的節(jié)點將在對應的信息時隙里為TX狀態(tài),其一跳鄰居節(jié)點中的目的節(jié)點將在對應的信息時隙里為RX狀態(tài),其余節(jié)點在對應的信息時隙里的狀態(tài)為SL狀態(tài)。只有處于TX狀態(tài)的節(jié)點才能在相應的信息時隙里進行數(shù)據(jù)傳送。
2.3協(xié)議的節(jié)能性能
SSMAC協(xié)議采用的是分布式的調(diào)度接入方式,其數(shù)據(jù)報文的沖突和重傳均發(fā)生在隨機接入階段,在進入了調(diào)度接入階段以后,節(jié)點嚴格按照時隙表的安排,控制自己在TX、RX和SL狀態(tài)之間轉(zhuǎn)換,以完成數(shù)據(jù)報文交換。隨機接入階段所發(fā)送的數(shù)據(jù)報文沖突和重傳主要是RR分組,這主要是由多跳PseudoBaysian算法[15]來控制的,采用分布和分散沖突的方式,該算法在FPRP[12]中的使用被證明是有效的,并且預約時隙中的四次握手的報文長度是不同的,TR、RC和RA報文的長度均可以簡化到只使用報文類型和源地址這兩個報文域。根據(jù)上層業(yè)務的需求和變化,可以設置SSMAC協(xié)議的參數(shù),改變隨機接入部分占用的時幀的比例,以適應不同類型的網(wǎng)絡業(yè)務。
3仿真結(jié)果
文獻[12]的仿真結(jié)果表明,在總節(jié)點數(shù)目為100、分布總面積S=10×10單位面積、節(jié)點通信半徑R=1.5單位長度的網(wǎng)絡拓撲下,為N=16個時隙分配通信任務時,最多只需要M=9次預約循環(huán)就可以高于99%的概率為節(jié)點成功分配時隙。作為參照,為了保證節(jié)點預約成功率,仿真中采用M1=6和M2=3。其中N值主要與節(jié)點密度有關;K值主要與節(jié)點的業(yè)務模型相關,這兩個參數(shù)的調(diào)節(jié)可以控制隨機接入周期和調(diào)度接入周期所占的比例,從而影響和控制時延及耗能,以適應不同類型的業(yè)務需求,提供QoS支持。實驗主要驗證報文的平均媒體接入時延、休眠時間比例、平均報文接收成功率等性能。
定義報文的媒體接入時延(medium access delay)為報文正確接收的時刻與MAC層接收到上層遞交報文的時刻之差,單位是秒;定義休眠時間比例(percentage sleep time)為節(jié)點在全部時隙數(shù)中處于SL狀態(tài)的時隙數(shù)目;定義平均報文接收成功率(percentage received)為全部發(fā)送報文數(shù)目中所正確接收的報文數(shù),即當廣播發(fā)送報文時,只有所有鄰居節(jié)點均正確接收該報文時,該報文才能統(tǒng)計為正確接收的報文。
仿真的目的是驗證SSMAC協(xié)議的性能,因此網(wǎng)絡中所有的節(jié)點都處在有業(yè)務報文要傳輸?shù)臓顟B(tài)。假定節(jié)點業(yè)務報文產(chǎn)生滿足指數(shù)分布,并且報文平均到達時間間隔為0.4~2.5 s。MAC協(xié)議主要關心本地節(jié)點的數(shù)據(jù)報文傳輸,所以節(jié)點傳輸報文時在鄰居當中隨機選擇一個作為下一跳的目的地址。
本文所設計的協(xié)議采用OPNET仿真平臺實現(xiàn)。參照文獻[11],假定物理層的無線通信模塊采用RFM公司的網(wǎng)絡控制芯片TR 1000[16]。該芯片是一款在無線傳感器網(wǎng)絡廣泛使用的短距離、低功耗和低數(shù)據(jù)率(最大115.2 kbps)底層模塊,其傳輸、接收和睡眠的平均功耗分別為24.75、13.5和15 μW,最大狀態(tài)轉(zhuǎn)換時間為20 μs。網(wǎng)絡中有50個節(jié)點均勻分布在500 m×500 m試驗場景中,每個節(jié)點的傳輸半徑為100 m,這樣每個節(jié)點的平均鄰居個數(shù)是6個,平均兩跳鄰居個數(shù)是17個。仿真時長為400 s,經(jīng)過多次仿真得到協(xié)議在單播(unicast)和廣播模式(broadcast)下的性能。圖4~6分別是報文接收成功率、休眠時間比例和媒體接入時延的仿真結(jié)果圖。
仿真結(jié)果表明,得益于高握手次數(shù)的預約循環(huán),SSMAC的報文接收成功率始終穩(wěn)定在90%左右,而TRAMA在輕負載的情況下才有比較高的接收成功率。在能量消耗方面,由于SSMAC的隨機接入競爭部分的開銷在輕負載時相對TRAMA較大,TRAMA在輕負載時節(jié)能性好于SSMAC。但是SSMAC的隨機接入周期和調(diào)度接入周期所占的比例主要由N和K這兩個參數(shù)調(diào)節(jié),當N和K一定時,SSMAC協(xié)議的耗能就基本一致,所以SSMAC協(xié)議的能耗在輕重負載下基本相當。SSMAC和TRAMA協(xié)議都是基于調(diào)度發(fā)送的協(xié)議,由于隱藏終端的存在,基于競爭的傳統(tǒng)報文接收成功率均較基于調(diào)度的協(xié)議低。但是基于競爭的協(xié)議報文發(fā)送時延較短,如CSMA協(xié)議的報文發(fā)送時延通常在10-2s的數(shù)量級[11],從圖6可以看出SSMAC協(xié)議與TRAMA協(xié)議的媒體接入時延均較基于競爭的協(xié)議大。但是基于調(diào)度協(xié)議的高報文接收率可以減少高層的報文重傳,減少重傳意味著能夠減少能量的消耗,所以調(diào)度算法帶來的時延增加也能被一些業(yè)務環(huán)境所接納。SSMAC協(xié)議的媒體接入時延在重負載時有較大優(yōu)勢,而當網(wǎng)絡負載較輕時,TRAMA的時延也是能夠接收的。另一方面SSMAC協(xié)議要求數(shù)據(jù)報文要達到一定數(shù)量才參與競爭預約,所以在參數(shù)K一定的情況下,網(wǎng)絡負載較輕時,報文在節(jié)點緩沖區(qū)內(nèi)要等待更長的時間才能達到參與預約的報文數(shù),這將導致時延增大;單播模式時暴露終端將允許參與競爭,暴露終端將增加網(wǎng)絡并行傳輸能力,而在廣播模式下由于鄰居節(jié)點都是目的地址,暴露終端將不能參與競爭,大大限制了兩部分握手競爭的優(yōu)勢,整個網(wǎng)絡的并行傳輸將減少,網(wǎng)絡吞吐率將比單播模式低,報文時延因此而大于單播模式。
SSMAC協(xié)議是為無線傳感器網(wǎng)絡所設計的MAC協(xié)議,因此它除了要支持傳統(tǒng)的對等通信模式,還要支持匯聚發(fā)送的模式,這種模式可以抽象為一棵數(shù)據(jù)匯聚樹的模型,sink節(jié)點看做根節(jié)點,其余節(jié)點看做樹的節(jié)點,如圖7所示。Sink節(jié)點作為最終的數(shù)據(jù)匯聚點,其他傳感器節(jié)點的數(shù)據(jù)以sink節(jié)點為目的地址,通過多跳轉(zhuǎn)發(fā)的形式周期性地把感應到的數(shù)據(jù)向這個根節(jié)點匯聚。假定在仿真場景中有一個sink節(jié)點,其余傳感器節(jié)點的數(shù)據(jù)使用簡單的最短路徑路由方式向sink節(jié)點逐跳發(fā)送,傳感器節(jié)點的業(yè)務數(shù)據(jù)采用周期性的生成方式,每隔一定的周期產(chǎn)生一個數(shù)據(jù)報文。仿真時長依然采用400 s,考察SSMAC協(xié)議的報文成功接收率和平均時延。圖8和9分別是報文接收成功率和媒體接入時延的仿真結(jié)果圖。
仿真結(jié)果表明,在匯聚發(fā)送模式下,SSMAC協(xié)議依然保持數(shù)據(jù)接入時延在負載較重時比較低的特點,并且SSMAC協(xié)議能保持較高的報文接收成功率。作為比較的TRAMA協(xié)議在匯聚發(fā)送模式時的媒體接入時延也較低,并且在輕負載時能迅速地把數(shù)據(jù)報文向sink節(jié)點轉(zhuǎn)發(fā)。通過調(diào)節(jié)SSMAC協(xié)議參數(shù)K,能夠很明顯地降低報文時延,因為這個參數(shù)決定了SSMAC協(xié)議啟動預約過程的判決門限,K越小,調(diào)度接入周期所占全部時隙的比例越小,SSMAC協(xié)議啟動預約過程越頻繁,報文時延也就越小。由于SSMAC協(xié)議在K值較小時,能夠取得比TRAMA協(xié)議更小或相當?shù)膱笪臅r延,結(jié)果表明SSMAC協(xié)議能夠適合在無線傳感器網(wǎng)絡的匯聚發(fā)送模式下工作。
SSMAC協(xié)議引入了區(qū)分服務的QoS保障機制和軟預留機制,仿真場景依然采用節(jié)點傳輸報文時在鄰居當中隨機選擇一個作為下一跳的目的地址,并且實時業(yè)務占總業(yè)務量的20%,如圖10所示。仿真結(jié)果表明了在不同的網(wǎng)絡負載情況下,實時業(yè)務的時延能比普通業(yè)務有10%的領先,并且K值減小,調(diào)度周期變短,媒體接入時延將降低。SSMAC協(xié)議對滿足無線傳感器網(wǎng)絡中實時業(yè)務的傳輸提供了在數(shù)據(jù)鏈路層面上的支持。
4結(jié)束語
本文研究了無線傳感器網(wǎng)絡中的MAC協(xié)議,在分析了現(xiàn)有MAC層協(xié)議的基礎上,提出了一種基于調(diào)度的用于無線傳感器網(wǎng)絡的MAC協(xié)議——SSMAC協(xié)議。該協(xié)議結(jié)合了WSNs中的能量約束與預約調(diào)度,一方面充分考慮協(xié)議的節(jié)能性,并且有較低的媒體接入時延,不同負載下表現(xiàn)基本一致的報文接收成功率;另一方面解決了隱藏終端和暴露終端問題,并且在數(shù)據(jù)鏈路層上提供一種區(qū)分服務的QoS保障。實驗結(jié)果說明:在使用相同物理層和仿真的設置下,SSMAC協(xié)議性能比同樣基于調(diào)度的TRAMA協(xié)議有所提高,特別在負載較大的情況下,能夠提供穩(wěn)定的報文接收成功率和休眠時間比例以及較低的媒體接入時延。
研究SSMAC協(xié)議如何在低負載的情況下更加有效地降低能耗和降低時延;如何將MAC層協(xié)議與無線傳感器網(wǎng)絡中其他層結(jié)合在一起,設計基于跨層的數(shù)據(jù)鏈路層協(xié)議是筆者下一步的研究工作。
參考文獻:
[1]ABOELAZE M,ALOUL F.Current and future trends in sensor networks: a survey[C]//Proc of the 2nd IFIP International Conference on Wireless and Optical Communications Networks.2005:551-555.
[2]任豐原,黃海寧,林闖.無線傳感器網(wǎng)絡[J].軟件學報,2003,14(7):12821291.
[3]崔莉,鞠海玲,苗勇,等.無線傳感器網(wǎng)絡研究進展[J].計算機研究與發(fā)展,2005,42(1):163-174.
[4]唐勇,周明天,張欣.無線傳感器網(wǎng)絡路由協(xié)議研究進展[J].軟件學報,2006,17(3):410-421.
[5]DEMIRKOL I,ERSOY C,ALAGOZ F.MAC protocols for wireless sensor networks: a survey[J]. Communications Magazine, IEEE,2006,44(4):115121.
[6]KULKARNI S S. TDMAserviceforsensor networks[C]//Proc of the 24th Distributed Computing Systems Workshops, International Confe ̄rence. 2004:604-609.
[7]WEI Ye,HEIDEMANN J,ESTRIN D. Medium access control with coordinated adaptive sleeping for wireless sensor networks[J].IEEE/ACM Transactions on Networking, 2004,12(3):493-506.
[8]DAMT V, LANGENDOENK.Anadaptive energyefficient MAC protocol for wireless sensor networks[C]//Proc of the 1st ACM ConferenceEmbedded Networked Sensor System.Los Angeles,CA:[s.n.],2003:171180.
[9]ENZ C C, HOIYDI E A, DECOTIGNIE J D, et al. WiseNET: an ultralowpower wireless sensor network solution[J].Computer,2004,37(8):62-70.
[10]LU G, KRISHNAMACHARI B, RAGHAVENDRA C S.An adaptive energyefficient and lowlatency MAC for data gathering in wireless sensor networks[C]//Proc of the 18th Parallel and Distributed Processing Symposium. 2004,224:26-30
[11]RAJENDRAN V,OBRACZKA K,GARCIALUNAACEVES J J.Energyefficient collisionfree medium access control for wireless sensor networks[C]//Proc of the 1st International Conference on Embedded Networked Sensor Systems.Los Angeles, California:[s.n.],2003:181192.
[12]ZHU Chenxi,CORSON M S.A fivephase reservation protocol (FPRP) for mobile Ad hoc networks[C]//Proc of the 17th Annual Joint Conference of the IEEE Computer andCommunicationsSocieties Proceedings.[S.l.]: IEEE,1998:322-331.
[13]ZHU Chenxi,CORSON M S. An evolutionaryTDMA scheduling protocol(ETDMA) for mobile Ad hoc networks[R]. [S.l.]:ISR CSHCN TR Maryland,2001:98114.
[14]ELSON J, ESTRIN D. Time synchronization for wireless sensor networks[C]//Proc of the 15thlnt’I Parallel and Distributed Processing Symposium. San Francisco:[s.n.],2001.
[15]于宏毅.無線移動自組織網(wǎng)[M].北京:人民郵電出版社,2005:97102.
[16]Product specification[EB/OL].http://www.rfm.com/products/data/tr1000.pdf.
“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”