李 劍 潘海軍
(1.深圳中興微電子技術(shù)有限公司,廣東 深圳 518000;2.湖南科技學院 電子工程系,湖南 永州 425100)
Ad Hoc無線體域網(wǎng)的時間同步協(xié)議研究與仿真
李 劍1潘海軍2
(1.深圳中興微電子技術(shù)有限公司,廣東 深圳 518000;2.湖南科技學院 電子工程系,湖南 永州 425100)
無線體域網(wǎng)是最新出現(xiàn)的一種網(wǎng)絡(luò)結(jié)構(gòu),其主要針對人體內(nèi),體外以及近人體的傳感器和終端之間的信息傳輸。最新的IEEE 802.15.6協(xié)議便是針對此類網(wǎng)絡(luò)專門提出的指南和規(guī)則。Ad Hoc網(wǎng)絡(luò)雖然不是主流的無線體域網(wǎng)組網(wǎng)方式,但是因為其的便利性以及整個網(wǎng)絡(luò)的有效不依賴于中心節(jié)點的特點,拓寬了無線體域網(wǎng)的使用領(lǐng)域。時間同步是Ad Hoc網(wǎng)絡(luò)順利工作的重要前提,針對Ad Hoc無線體域網(wǎng),本文提出了一個時間同步協(xié)議,并在實時系統(tǒng)自動驗證工具UPPAAL平臺上實現(xiàn)了該協(xié)議的仿真,最后的結(jié)果證明該同步協(xié)議設(shè)計過程合理,實際運行結(jié)果有效。
Ad hoc;無線體域網(wǎng);時間同步;WBAN
受惠于摩爾定律和微電子產(chǎn)業(yè)和傳感技術(shù)的發(fā)展,越來越多的醫(yī)療檢測系統(tǒng)被小型化,可穿戴化。為了解決這些微型醫(yī)療元器件之間的通信問題,一種新的通信網(wǎng)絡(luò):無線體域網(wǎng)(Wireless Body Area Network,簡稱WBAN)應(yīng)運而生。WBAN是以人體為中心,由和人體相關(guān)的網(wǎng)絡(luò)元素,包括個人終端,植入、佩戴和附著在身體、衣物的傳感器和檢測設(shè)備,以及分布在人體超近距離內(nèi)的其他組網(wǎng)設(shè)備等組成的通信網(wǎng)絡(luò)。依賴WBAN,人的生命體征等信息在被傳感器采集后通過WBAN中心的網(wǎng)絡(luò)中心(hub)處理并利用無線個域網(wǎng)(Wireless Personal Area Network,簡稱WPAN)或移動通信網(wǎng)絡(luò)等與醫(yī)療中心或醫(yī)生建立聯(lián)系。這使得WBAN在醫(yī)療、娛樂和軍事方面有著廣泛的應(yīng)用前景。
2007年11 月,IEEE 802.15成立討論組TG6,并從2008年1月開始在臺北首次討論WBAN的標準制定問題。經(jīng)過四年多的討論和修改,WBAN的標準IEEE 802.15.6在2012年2月正式發(fā)布。在新發(fā)布的標準中定義了兩種網(wǎng)絡(luò)拓撲:星形網(wǎng)絡(luò)和擴展型星形網(wǎng)絡(luò)。為了增強網(wǎng)絡(luò)的可靠性,避免星形網(wǎng)絡(luò)中心節(jié)點不能失效的弊端, 采用Ad Hoc技術(shù)的WBAN網(wǎng)絡(luò)被作為一個分支進行研究[1]。
時鐘同步是WBAN的一項重要支撐技術(shù),同樣,對Ad Hoc WBAN來說,時鐘同步是一個非常關(guān)鍵的組成部分。由于網(wǎng)絡(luò)中的各個節(jié)點均采用本地晶振,且因為應(yīng)用條件限制,無法采用外基準同步技術(shù)。此時,因為時鐘間存在偏移,所以網(wǎng)絡(luò)中各個節(jié)點的觀察時間和時間的持續(xù)間隔存在差別。時間同步的目的就是對各個節(jié)點的本地時鐘提供一個統(tǒng)一的時間標尺[2],從而保證在使用時,相互通信的節(jié)點間的時鐘保持一致。但過分復(fù)雜的同步協(xié)議會導(dǎo)致過多的等待時間,降低時間效率,同時減少休眠狀態(tài)的比例,從而增加了功耗。因此同步協(xié)議有仔細研究和驗證的必要。
在所有無線網(wǎng)絡(luò)同步方案中,報文傳送過程中產(chǎn)生的延時都可以分成四個部分:發(fā)送時間,數(shù)據(jù)處理時間,傳輸時間和接收時間[3]。因此,在設(shè)計和評估同步協(xié)議時,應(yīng)當充分考慮上述各個因素。
發(fā)送時間是指報文在發(fā)送器中從第一位開始傳輸?shù)阶詈笠晃粋鬏斖戤吽牡臅r間,與之類似,接收時間是指接收器在接受報文時,從第一位開始接受到所有報文全部接受完畢所消耗的時間。這兩部分時間會受信號強度、處理速度的影響。
收端的數(shù)據(jù)處理時間指在接收器在報文接收完畢后,內(nèi)部開始處理、獲取自己所需信息并作出下一步操作指令的時間。類似的是在發(fā)端,發(fā)送器根據(jù)上一個周期得到的指令,讀取相關(guān)數(shù)據(jù)并經(jīng)過一系列處理之后到開始傳送出報文第一位的時間。數(shù)據(jù)處理時間強烈依賴于處理指令和報文類別,以及硬件的處理速度。
傳輸時間是指報文全部發(fā)送之后到報文的首位被接收器接收為止所消耗的時間,可以直觀的看成是報文在信道中傳輸?shù)臅r間??梢妭鬏敃r間由信道特性決定,但因為無線信道環(huán)境復(fù)雜,尤其是對于WBAN來說,通信環(huán)境局限于人體和人體附近,隨著人體運動和姿勢變化產(chǎn)生的信道特性變化劇烈。另外,對于WBAN定義的人體信道,因為信息傳播介質(zhì)是因人而異的人體組織,所以信道參數(shù)變化尤其劇烈。
除上述因報文傳送過程中延時的四項基本成分而引起的時間同步挑戰(zhàn)之外,射頻狀態(tài)的轉(zhuǎn)換也必須要加以考慮。WBAN中,節(jié)點的狀態(tài)可以是:發(fā)送模式,接收模式,空閑模式。從一個狀態(tài)到另一個狀態(tài)的轉(zhuǎn)變需要消耗數(shù)百毫秒時間。為了確保所有情況下網(wǎng)絡(luò)都會保持同步,因此這部分時間必須考慮在內(nèi),否則一旦出現(xiàn)狀態(tài)轉(zhuǎn)變時間超過保護時間,網(wǎng)絡(luò)就會從同步變成不同步,從而使網(wǎng)絡(luò)異常。
基于以上分析,本文針對WBAN共享信道的特點設(shè)計了時間同步協(xié)議。本協(xié)議采用時分多址(Time Division Multiple Access, 簡稱TDMA),并將時間軸劃分成固定長度幀,將幀劃分成等長的時間片。如第1節(jié)所述,時間片有空閑和活動狀態(tài)。
對于共享信道的Ad Hoc網(wǎng)絡(luò),同步協(xié)議的基礎(chǔ)是一個節(jié)點傳送同步幀時,其他節(jié)點應(yīng)當處于空閑狀態(tài),否則會發(fā)生碰撞,導(dǎo)致同步不成功。但實際上,因為各個節(jié)點本地時鐘的漂移以及其他如第1節(jié)所提到的因素,兩個鄰節(jié)點的活動時間可能會發(fā)生覆蓋,即出現(xiàn)上述的碰撞問題。問題模型如圖1所示。該模型中定義了被研究節(jié)點(節(jié)點1)和其鄰節(jié)點(節(jié)點2)。對于節(jié)點2,因為時鐘漂移,其時間軸出現(xiàn)了偏移:前移或后移,分別如圖所示。圖1(a)中,時鐘偏移之后節(jié)點2的繁忙時間段與節(jié)點1出現(xiàn)重合,導(dǎo)致節(jié)點1發(fā)送的同步幀根本無法被節(jié)點2接收。為了避免此種問題,常規(guī)辦法是在原報文的前后分別增加一個保護時間,如圖(b)所示,注意圖(b)與圖(a)并不嚴格成比例。此時,即便再出現(xiàn)圖(a)所示的時間漂移,節(jié)點2的繁忙時段也只是與節(jié)點1的保護時間出現(xiàn)重疊,并不會引起節(jié)點1的發(fā)送失敗,即不會與節(jié)點1出現(xiàn)重疊。
圖1 保護時間示例
為了同步,定義了一種在節(jié)點和其鄰節(jié)點之間交換信息的同步幀,來對網(wǎng)絡(luò)進行同步:接收器利用報文的接收時間和預(yù)計接收時間的時間差來進行同步。因此傳輸過程中并不需要傳輸發(fā)送端的具體時間值。并且此同步過程在每次幀傳送結(jié)束后均會進行一次,以保證下一個階段網(wǎng)絡(luò)仍然處于同步狀態(tài)。
該算法的具體過程是:
1)在發(fā)送時隙,節(jié)點將包含發(fā)送時時間片編號的報文——同步幀廣播至鄰節(jié)點
2)鄰節(jié)點一旦接收到同步幀即開始進行計算時間差(phase error)并儲存
3)在每個常規(guī)報文傳送結(jié)束之后,節(jié)點均需要依據(jù)已探測到的時間差來重新計算時鐘偏移量(offset),計算過程的偽代碼如圖2所示。注意偽代碼中g(shù)ain是自定義的偏移量調(diào)整系數(shù),目的是避免時鐘調(diào)整導(dǎo)致震蕩。此處暫定為0.5.
圖2 同步算法中時鐘偏移量的計算算法偽代碼
4)在休眠周期中,依據(jù)上述計算所得的時鐘偏移量對本地時鐘進行修正。
UPPAAL是一款高效實用的實時系統(tǒng)自動驗證工具,主要對實時系統(tǒng)模擬、仿真和驗證,已成功用于實時控制和通信協(xié)議的驗證[4]。利用其系統(tǒng)編輯器(System Editor),可以很方便的創(chuàng)建和編輯要分析的系統(tǒng),構(gòu)建相應(yīng)模型,并使用模擬器(Simulator)進行仿真以觀察系統(tǒng)的反應(yīng)。
利用UPPAAL,我們構(gòu)建了一個固定、有限的無線網(wǎng),其中節(jié)點數(shù)目Nodes = {0,1,…,N-1}。每個節(jié)點id∈Nodes均用5個時間自動機(Timed Automata, TA)時鐘Clock(id),接收器Receiver(id),發(fā)送器Sender(id),同步器Synchronizer(id)和控制器 Controller(id)。其功能分別是,時鐘 Clock(id)用來描述該節(jié)點的硬件時鐘;接收器Receiver(id)用以模擬射頻模塊中的接收部分,與之類似,發(fā)送器Sender(id)用以表達射頻模塊中的發(fā)送功能;而同步器Synchronizer(id)則是進行時鐘同步的部分,控制器Controller(id)則是整個框圖中的控制模塊,協(xié)調(diào)發(fā)送,接收和同步。他們之間的關(guān)系如圖3所示。
圖3 模型框圖
因為時間自動機所描述的系統(tǒng)狀態(tài)轉(zhuǎn)換圖均已帶有時間因素,即時鐘 Clock(id)已作為隱藏模塊嵌入在圖 3所示的模型框圖中,因此無需再另外表示。以時鐘 Clock(id)為例,模型的狀態(tài)轉(zhuǎn)換如圖 4所示。系統(tǒng)初始化時,記錄當前時間片編號的變量csn[id]被置為C-1,即睡眠模式的最后一個時間片。整數(shù)變量clk[id]記錄當前真實時鐘。而時鐘漂移則用兩個變量進行模擬:時鐘周期波動下限min[id]和時鐘周期波動上限max[id]。
圖4 時間自動機示例——時鐘Clock(id)
所定制的UPPAAL模型中所用的參數(shù)如表1所示,并在仿真中采用C=10, k0 = 29。
表1 所用參數(shù)
在工作站上,我們利用UPPAAL對上述模型進行了仿真,其部分結(jié)果如表2所示。
表2 部分仿真結(jié)果
根據(jù)仿真結(jié)果,可以很明顯看出網(wǎng)絡(luò)參數(shù),尤其是時間周期波動的上下限對驗證結(jié)果影響很大。結(jié)果中存在的兩次min/max不為1的情況都導(dǎo)致原本同步的網(wǎng)絡(luò)趨于不同步。同樣可以看出,一旦r≥g,系統(tǒng)就會變成不同步,這與之前的分析是一致的,即射頻功能轉(zhuǎn)換所消耗的時間已經(jīng)超過了保護時間,導(dǎo)致存在兩個節(jié)點同時繁忙的情況,致使網(wǎng)絡(luò)同步失敗。另外,還可以看出一個趨勢:保持min/max=1,但改變g/r的比例,即減少保護時間相對于時鐘偏移的裕度,原本可以同步的網(wǎng)路依然可能導(dǎo)致無法同步,原理上這也是可以理解的。
針對Ad Hoc型WBAN網(wǎng)絡(luò),本文提出了一種時鐘同步算法,并給出了設(shè)計算法的考慮以及算法的偽代碼。為了能真實評價算法的有效性以及Ad Hoc型WBAN網(wǎng)絡(luò)同步過程中可能出現(xiàn)的疑難問題,本文還基于UPPAAL開發(fā)了相應(yīng)的算法模型。最后的觀察仿真結(jié)果印證了之前的顧慮和證明提出的算法有效。
[1] Beno?t Latré , Bart Braem , Ingrid Moerman , Chris Blondia , Piet Demeester, A survey on wireless body area networks, Wireless Networks, v.17 n.1, p.1-18, January 2011.
[2] Mills D L. RFC1305: Network Time Protocol (Version 3) Specification, Implementation and Analysis, March 1992.
[3]Lasassmeh, S.M.; Conrad, J.M. IEEE SoutheastCon 2010 (SoutheastCon), Proceedings of the Digital Object Identifier:10.1109/SECON.2010.5453878 Publication Year: 2010 , Page(s): 242 – 245.
[4]Rodriguez-Navas, G.; Proenza, J.; Hansson, H. Emerging Technologies and Factory Automation, 2005. ETFA 2005. 10th IEEE Conference on Volume: 2.
A
1673-2219(2012)08-0039-04
2012-04-26
2008年湖南科技學院校級青年項目《基于射頻識別技術(shù)的實驗室門禁系統(tǒng)研究》資助
李劍(1976-),福建永泰人,工程師,碩士,主要研究方向為Ad Hoc網(wǎng)絡(luò),芯片設(shè)計。
(責任編校:何俊華)