尚 薇,任領美,2,張重慶
(1.山東科技大學計算機學院,山東 青島 266590;2.深圳信息職業(yè)技術學院 計算機學院,廣東深圳 518172)
老年慢性病人與亞健康人群數(shù)量的急劇增長已成為我國醫(yī)療衛(wèi)生事業(yè)亟待解決的難題[1]。解決這一難題的第一步是改變傳統(tǒng)醫(yī)療監(jiān)測方式,以最小程度影響使用者的生活,可以在自由活動中接受監(jiān)測為目標進行醫(yī)療監(jiān)測。
無線通信技術、傳感器技術、電池技術、微機電技術等技術的發(fā)展促進了無線體域網(wǎng)的誕生[2]。該網(wǎng)絡綜合了無線通信技術、傳感器技術等,具有微型化、可進行無線通信等突出優(yōu)點,因此在醫(yī)療監(jiān)護、個人健康護理、士兵或消防員狀態(tài)監(jiān)測、體感娛樂、個人情緒監(jiān)測等領域具有廣闊的應用前景[3]。無線體域網(wǎng)由一個或多個放置在人體表面或人體內部的小傳感器組成,可實時監(jiān)測人體各種生理數(shù)據(jù),并通過協(xié)調器與通信網(wǎng)絡傳送到云端,經(jīng)數(shù)據(jù)處理后得出相應結果,供醫(yī)務人員參考、分析。
在一個醫(yī)療監(jiān)測無線體域網(wǎng)內,節(jié)點通常有兩種工作模式:全傳輸模式[4]和低傳輸模式[5]。全傳輸模式是指一個節(jié)點以一定頻率測量某個生理指標或生理狀態(tài),并將全部或相當比例的測量數(shù)據(jù)傳送到協(xié)調器。例如,一個植入心臟的監(jiān)測節(jié)點以每秒1Hz 的采樣頻率采集心臟狀態(tài)數(shù)據(jù),并將數(shù)據(jù)發(fā)送到協(xié)調器。低傳輸模式是指一個節(jié)點以一定頻率測量某個生理指標或生理狀態(tài),但只在某些情況下才將測量結果傳送到協(xié)調器。例如,上述的心臟狀態(tài)監(jiān)測節(jié)點仍以1Hz 的采樣頻率采集心臟狀態(tài)數(shù)據(jù),但其僅在判斷采集數(shù)據(jù)出現(xiàn)異常的情況下才將測量結果傳送到協(xié)調器。與全傳輸模式相比,低傳輸模式的一大顯著優(yōu)勢是能夠大幅降低能耗,進而能很大程度上延長節(jié)點壽命與服務時間。雖然低傳輸模式具有良好的節(jié)能潛力,但能量的節(jié)省不是自動實現(xiàn)的,仍需要合適技術的輔助,MAC 協(xié)議[6]就是其中之一。在醫(yī)療監(jiān)測過程中,全傳輸模式與低傳輸模式是兩種相輔相成的工作模式。因此,本文專門為低傳輸模式節(jié)點與全傳輸模式節(jié)點共存的無線體域網(wǎng)設計了一個MAC 協(xié)議,既能提高能量利用效率,又具有高可靠性和高實時性,并提供一個快速的喚醒與催眠機制。
無線體域網(wǎng)廣闊的應用前景吸引了許多研究者關注,并日漸成為研究熱點。無線體域網(wǎng)可視為無線傳感器網(wǎng)絡(WSN)的一個分支,屬于典型的交叉學科,需要多領域研究者的合作研究。如今世界各國已有越來越多研究人員投入到該領域研究中,開展了許多無線體域網(wǎng)研究項目并開發(fā)了相關應用系統(tǒng),具有代表性的有美國哈佛大學的醫(yī)療護理系統(tǒng)CodeBlue、霍普金斯大學的健康與災難救助系統(tǒng)AID-N、微軟的實時生理監(jiān)測可穿戴系統(tǒng)HealthGear、新加坡信息通信研究所的MobiSense 以及歐盟MobiHealth項目開發(fā)的mHealth 等。尤其是IEEE 于2007 年成立了802.15.6 工作組,開始制定無線體域網(wǎng)相關標準,并于2012年正式通過了WBAN 標準“IEEE 802.15.6 Standard for Wireless Body Area Networks”。我國許多大學與研究機構也開展了相關研究,包括清華大學、上海交通大學、香港科技大學、吉林大學、湖南大學、東南大學、臺灣大學等。國家設立863 重點項目“無線體域網(wǎng)關鍵技術研究”,主要針對人體無線體域網(wǎng)技術、UWB 信道傳輸特性等專題進行研究,而且自2011 年起,國家自然科學基金委每年均資助多項WBAN 研究項目。國內具有代表性的無線體域網(wǎng)相關研究有:中科院計算所利用無線體域網(wǎng)開發(fā)的中醫(yī)脈象信息收集及分析遠程醫(yī)療系統(tǒng)、中科院傳感網(wǎng)絡與應用聯(lián)合研究中心的無線體域網(wǎng)運動重建項目、香港中文大學的移動無線體域網(wǎng)跟蹤與能量感知MAC 研究等。
無線通信技術[7]是無線體域網(wǎng)關鍵技術的重要組成部分,如何設計適用于無線體域網(wǎng)的通信技術是研究者們面臨最重要的挑戰(zhàn)之一。無線體域網(wǎng)是一種特殊的傳感網(wǎng)(WSN),但又具有自己的特點,在網(wǎng)絡環(huán)境與結構、數(shù)據(jù)模式、QoS 要求、節(jié)點移動性等方面與傳統(tǒng)WSN 有很大不同。因此,適用于傳統(tǒng)WSN 的通信技術并不適用于無線體域網(wǎng),必須針對無線體域網(wǎng)的特點研究新的通信技術,其中便包括MAC 協(xié)議[8]。目前已提出了許多支撐無線體域網(wǎng)的MAC 協(xié)議,如DQBAN、EELDC-MAC、Med-MAC、Body?MAC、CA-MAC、802.15.4、802.15.6 等。這些協(xié)議通常考慮了各種應用所產(chǎn)生流量的特征,并使用載波偵聽與沖突避免(CSMA/CA)[9]及時分復用(TDMA)[10]兩種機制適配各種流量,因此具有一定的適應性。
一般而言,上述協(xié)議在設計時是以承載高數(shù)據(jù)流量為出發(fā)點并圍繞此進行優(yōu)化的。當然,這些協(xié)議能夠調整其占空比(duty cycle)以適配低數(shù)據(jù)流量。但是,這些協(xié)議并不是專門為低流量應用設計與優(yōu)化的,因此這些協(xié)議在承載低數(shù)據(jù)流量時不是最優(yōu)。首先,這些協(xié)議的能量效率仍有提升的空間;其次,這些協(xié)議沒有考慮協(xié)調器的能量效率[11],有些甚至會犧牲協(xié)調器的能量效率來提升節(jié)點能量效率;第三,這些協(xié)議缺乏一個快速喚醒機制。該機制對于發(fā)生緊急事件時,快速喚醒相關節(jié)點進入滿負荷工作狀態(tài)是有利的,可以使醫(yī)護人員收集盡可能詳細的病人病情信息。該機制還可用于驅動一個執(zhí)行器節(jié)點執(zhí)行某些動作,如向病人體內注射一定量的胰島素。本文提出的MAC協(xié)議可用于緊急事件監(jiān)測節(jié)點與周期性監(jiān)測節(jié)點并存的網(wǎng)絡,通過設計幀結構,該協(xié)議能適配周期性的高數(shù)據(jù)率流量,也能適配低數(shù)據(jù)率流量。不僅如此,通過在嵌入幀內配置多個數(shù)據(jù)段,可使協(xié)議承載更高的數(shù)據(jù)流量。
星形結構的無線體域網(wǎng)一般存在兩種通信模式:信標模式(beacon mode)和無信標模式(non-beacon mode)[12]。在信標模式下,時間被劃分為超幀并由協(xié)調器進行控制,協(xié)調器定期發(fā)送包含同步信息和網(wǎng)絡控制數(shù)據(jù)的信標幀,節(jié)點接收信標幀,并根據(jù)信標幀里包含的信息選擇合適的接入方式訪問信道;在無信標模式下,一個節(jié)點的接收器不需要定期接收信標幀。雖然無信標模式能夠保障節(jié)點能量利用的高效率以及從節(jié)點到協(xié)調器的低數(shù)據(jù)傳輸延遲,但其難以實現(xiàn)從協(xié)調器到節(jié)點的低傳輸時延,也難以實現(xiàn)快速喚醒機制。因此,本文提出的協(xié)議沒有使用無信標模式。通過利用信標模式的優(yōu)點,并設計有限機制克服信標模式的缺點,使本文協(xié)議能夠滿足工作在低傳輸模式節(jié)點的需求。
圖1(a)給出了MAC 協(xié)議的基本超幀結構,這種結構適用于所有節(jié)點工作在低傳輸模式的無線體域網(wǎng)。超幀的開始是信標幀,信標幀包含同步與控制信息,如時間戳、信標幀間隔、時隙長度、時隙分配等。信標幀之后是一個可選的廣播階段,該廣播階段是否存在及其長度需要在信標幀中說明。廣播階段被用于從協(xié)調器向所有節(jié)點發(fā)送長廣播信息,該階段存在與否取決于在前一個超幀期間協(xié)調器是否產(chǎn)生或收到需要向節(jié)點進行廣播的長信息。如果協(xié)調器產(chǎn)生了這樣的廣播數(shù)據(jù),則可以中斷當前超幀并開始一個新的超幀。在新的超幀中,廣播階段將會被激活,協(xié)調器利用此廣播階段對數(shù)據(jù)進行廣播。廣播階段之后是一個包含保證時隙(Guaranteed Time Slots,GTS)[13]的無碰撞階段(CFP),此CFP 階段長度以及GTS 時隙分配同樣在信標幀中進行說明。CFP 階段被用于將大數(shù)據(jù)從節(jié)點傳送到協(xié)調器,或將大數(shù)據(jù)從協(xié)調器傳送到節(jié)點。該階段是否存在取決于前一個超幀期間協(xié)調器或節(jié)點是否產(chǎn)生了大數(shù)據(jù)。如果某些節(jié)點有大數(shù)據(jù)產(chǎn)生,則節(jié)點將在上一個超幀向協(xié)調器報告,協(xié)調器根據(jù)數(shù)據(jù)優(yōu)先級情況決定是否立即中斷此超幀并開始新的超幀。若大數(shù)據(jù)優(yōu)先級足夠高,則當前超幀被立刻中斷并開始一個新的超幀。在新超幀中,CFP 階段被激活并為節(jié)點分配GTS 時隙,節(jié)點將在自己的GTS 時隙將數(shù)據(jù)發(fā)送到協(xié)調器。若協(xié)調器有大數(shù)據(jù)產(chǎn)生并要發(fā)送給某個節(jié)點,協(xié)調器判斷大數(shù)據(jù)優(yōu)先級,若優(yōu)先級足夠高,則中斷此超幀并開始新的超幀,同時在新的超幀信標幀中對情況進行說明,激活CFP 并分配GTS,在GTS 時隙內將數(shù)據(jù)發(fā)送到相應節(jié)點。
Fig.1 The superframe structure of MAC protocol in this paper圖1 本文MAC 協(xié)議的超幀結構
在CFP 階段之后是一個較長的非活躍階段。因為當所有節(jié)點都工作在低傳輸模式時,網(wǎng)絡內的流量大部分時間會保持在很低的水平,因此一個較長的非活躍階段有助于幫助協(xié)調器和節(jié)點節(jié)約能量,但可能導致節(jié)點數(shù)據(jù)不能被及時發(fā)送到協(xié)調器,或協(xié)調器數(shù)據(jù)不能及時發(fā)送給節(jié)點。因此,本文MAC 協(xié)議使用嵌入時隙(insertion time slots)機制解決此問題。具體來說,就是在非活躍階段插入一些短的嵌入時隙,以傳輸節(jié)點與協(xié)調器產(chǎn)生的數(shù)據(jù)。
圖1(a)中的超幀結構僅適用于所有節(jié)點都工作在低傳輸模式的無線體域網(wǎng),而不能滿足一個有節(jié)點工作在全傳輸模式的無線體域網(wǎng)的需要。為了支持這種無線體域網(wǎng),本文MAC 協(xié)議設計了如圖1(b)所示的超幀結構。如圖所示,循環(huán)階段取代了圖1(a)中的非活躍階段。一個循環(huán)階段的開始有一個活躍階段,該活躍階段可供全傳輸模式節(jié)點傳輸數(shù)據(jù),此階段可劃分為任意的復雜結構以適應全傳輸模式節(jié)點的需要。一個循環(huán)階段的剩余部分類似于圖1(a)中的非活躍階段,包含一個長的非活躍階段并插入了許多嵌入時隙。
從圖1 可以看出,一個嵌入時隙包括一個數(shù)據(jù)段和一個確認段,數(shù)據(jù)段又可包含多個數(shù)據(jù)子段。數(shù)據(jù)子段被用來為協(xié)調器和工作在低傳輸模式下的節(jié)點傳輸數(shù)據(jù)。如果一個無線體域網(wǎng)內的低傳輸模式流量非常低,則可在一個嵌入時隙內僅配置一個數(shù)據(jù)子段。
在一個嵌入時隙的數(shù)據(jù)子段傳輸?shù)膸环Q作一個嵌入數(shù)據(jù)幀。如圖2 所示,一個幀的總長度為10 個字節(jié),具有4 個字段。如果此幀是一個上行幀,則地址字段指示了發(fā)送節(jié)點的地址;如果此幀是一個下行幀,則此地址字段指示了接收節(jié)點的地址;如果此幀是一個廣播幀,則此地址應設置為255,也即廣播地址。
Fig.2 Structure of embedded data frame圖2 嵌入數(shù)據(jù)幀結構
圖3 顯示了在確認段傳輸?shù)膸Y構,這樣一個幀被稱作一個嵌入確認幀。嵌入確認幀主要用于確認從節(jié)點發(fā)送到協(xié)調器的數(shù)據(jù)幀。確認幀的長度和結構隨數(shù)據(jù)子段和節(jié)點數(shù)量的變化而變化。
Fig.3 Structure of embedded acknowledgement frame圖3 嵌入確認幀結構
本文MAC 協(xié)議的操作分為兩種:上行操作和下行操作。上行操作完成從節(jié)點到協(xié)調器的數(shù)據(jù)傳輸,下行操作完成從協(xié)調器到節(jié)點的數(shù)據(jù)傳輸。為了支持這些操作,每個節(jié)點或協(xié)調器需要維護一個存儲數(shù)據(jù)幀的列表。這些數(shù)據(jù)幀以優(yōu)先級排列,因此列表的首部存儲著優(yōu)先級最高的數(shù)據(jù)。因為大部分流量都是從節(jié)點到協(xié)調器的,因此大部分數(shù)據(jù)子段被分配為上行子段,只有小部分數(shù)據(jù)子段被分配為下行子段。如果一個無線體域網(wǎng)包含很多節(jié)點,或在某些情況下流量增加,則會出現(xiàn)在一個嵌入時隙間隔產(chǎn)生多個幀的情況。在這種情況下,有必要將節(jié)點分成多個組,每一組分配不同的數(shù)據(jù)子段完成數(shù)據(jù)傳輸,從而有效降低碰撞概率。如圖4 所示,節(jié)點A、B 使用不同的數(shù)據(jù)子段進行傳輸。
Fig.4 Nodes use different data segments to send data to the coordinator圖4 節(jié)點使用不同數(shù)據(jù)子段發(fā)送數(shù)據(jù)到協(xié)調器
圖5 顯示了協(xié)調器使用一個下行嵌入時隙廣播一個小數(shù)據(jù)或命令幀給所有節(jié)點的操作。這種操作可用來驅動一個執(zhí)行器節(jié)點。數(shù)據(jù)或命令被封裝到數(shù)據(jù)字段并被廣播到所有節(jié)點。所有節(jié)點在數(shù)據(jù)子段都會醒來接收協(xié)調器發(fā)送的幀并檢查幀中的地址字段,如果一個節(jié)點發(fā)現(xiàn)該幀不是發(fā)送給它的,則丟棄此幀并進入睡眠狀態(tài);如果一個節(jié)點發(fā)現(xiàn)該幀是發(fā)送給它的,則接收此幀。接收完畢后,一個節(jié)點可能切換進入睡眠模式或執(zhí)行其他操作,這取決于幀的內容。
Fig.5 Coordinator broadcast data to all nodes圖5 協(xié)調器廣播數(shù)據(jù)給所有節(jié)點
仿真采用一個具有24 個節(jié)點和1 個協(xié)調器的星形無線體域網(wǎng)。仿真工具采用OMNeT++[14],所有節(jié)點和協(xié)調器的天線設置都基于CC2530[15]。該天線模塊有3 種能量模式:低能耗模式2(Low Power Mode 2)、低能耗模式1(Low Power Mode 1)和活躍模式(Active Mode)。仿真使用6 個MAC 方案:802.15.4[13]、MEM-MAC 以及4 個GN 取不同值的本文MAC 協(xié)議方案。4 個GN 值分別為3、6、12、24,代表每一組節(jié)點集分別有8 個、4 個、2 個、1 個節(jié)點。MEM-MAC和本文MAC 協(xié)議方案的IN 值都設置為4。
節(jié)點傳輸不僅傳輸已有數(shù)據(jù),而且需要傳輸碰撞時產(chǎn)生的額外數(shù)據(jù),這些操作的功耗[16]計算公式如下:
其中,TData為數(shù)據(jù)子段長度,Ti_data為數(shù)據(jù)傳輸時間,PTX表示當天線處于發(fā)送模式時一個節(jié)點的功率消耗,TCSMA表示一個節(jié)點競爭接入媒體的平均時間,TCSMA可使用如下公式計算:
如圖6 所示,在數(shù)據(jù)率較低的情況下,所有本文MAC協(xié)議的節(jié)點能耗低于802.15.4 和MEM-MAC。
Fig.6 The change of node power consumption with the average data transmission interval圖6 節(jié)點功耗隨數(shù)據(jù)發(fā)送平均間隔的變化情況
協(xié)調器的傳輸操作包括廣播常規(guī)和非常規(guī)信標幀以及確認數(shù)據(jù)幀。因此,協(xié)調器的傳輸功耗[17]可表示為:
如圖7 所示,在流量較低的情況下,如當平均數(shù)據(jù)發(fā)送間隔大于10s,各種MAC 方案的平均功率從高到低依次為:本文MAC 協(xié)議GN=24、本文MAC 協(xié)議GN=12、本文MAC 協(xié)議GN=6、本文MAC 協(xié)議GN=3、802.15.4 和MEM-MAC。
Fig.7 Variation of coordinator power consumption with average data occurrence interval圖7 協(xié)調器功耗隨平均數(shù)據(jù)發(fā)送間隔的變化情況
下面分析本文MAC 協(xié)議的大數(shù)據(jù)和小數(shù)據(jù)傳輸時延[18]。無論是小數(shù)據(jù)還是大數(shù)據(jù),其等待時間是一樣的。令IIns為確認時隙間隔,則等待時間為。小數(shù)據(jù)的平均時延可表示為:
大數(shù)據(jù)的平均時延可表示為:
其中,TIns是一個嵌入時隙的長度。IIns、TCAP和TCFP的長度都是在運行中確定的。
圖8、圖9 分別給出了小數(shù)據(jù)和大數(shù)據(jù)的平均延遲。由圖可知,隨著平均數(shù)據(jù)發(fā)送間隔縮短,所有幀延遲都會增加。
Fig.8 Influence of average data occurrence interval on average delay of small data圖8 平均數(shù)據(jù)發(fā)送間隔對小數(shù)據(jù)平均時延的影響
Fig.9 Influence of average data occurrence interval on average delay of big data圖9 平均數(shù)據(jù)發(fā)送間隔對大數(shù)據(jù)平均時延的影響
本文MAC 協(xié)議的時隙利用率[19]指標可使用節(jié)點和協(xié)調器活躍時間的并集占所有時間的比率來反映,可表示為以下公式:
如圖10 所示,在流量很低的情況下,時隙利用率從低到高為:本文MAC 協(xié)議GN=24、本文MAC 協(xié)議GN=12、本文MAC 協(xié) 議GN=6、本 文MAC 協(xié) 議GN=3、802.15.4 和MEM-MAC。結果表明,時隙數(shù)量越大,時隙利用率越低。
Fig.10 Effect of average data occurrence interval on slot utilization efficiency圖10 平均數(shù)據(jù)發(fā)送間隔對時隙利用效率的影響
本文針對低傳輸模式監(jiān)測節(jié)點的需求,設計了一個基于信標的自適應MAC 協(xié)議。本文MAC 協(xié)議采用長超幀結構以降低信標幀收發(fā)能耗,并在超幀的非活躍期插入嵌入時隙以傳輸?shù)蛡鬏斈J焦?jié)點的流量,同時滿足其QoS 需求。對于具有較多節(jié)點以及流量較高的無線體域網(wǎng),采用在一個嵌入時隙內設置多個數(shù)據(jù)子段的方法適配較高流量,降低幀碰撞幾率。因此,本文MAC 協(xié)議能夠支持低傳輸模式和高傳輸模式共存的無線體域網(wǎng)。低數(shù)據(jù)率無線體域網(wǎng)流量可能隨時間發(fā)生較大變化,本文MAC 協(xié)議可以改變在一個嵌入時隙內的數(shù)據(jù)子段數(shù)量,因此該協(xié)議具有適配時變低傳輸模式流量的能力。在后續(xù)研究中將針對此問題進行深入研究,包括根據(jù)時變流量優(yōu)化在一個嵌入時隙內的數(shù)據(jù)子段數(shù)量、CAP 階段長度優(yōu)化以及自適應算法設計等。