無(wú)線(xiàn)傳感網(wǎng)絡(luò )時(shí)間同步研究進(jìn)展與分析
摘要:簡(jiǎn)要闡述近年來(lái)無(wú)線(xiàn)傳感網(wǎng)絡(luò )時(shí)間同步算法的發(fā)展情況和影響無(wú)線(xiàn)傳感網(wǎng)絡(luò )時(shí)間同步的因素后,重點(diǎn)介紹了目前幾種比較典型的時(shí)間同步算法,并對其精度、功耗以及各自的優(yōu)缺點(diǎn)進(jìn)行了較詳細的分析。在特定的網(wǎng)絡(luò )中,應該對精度與功耗進(jìn)行折中考慮。最后探討了未來(lái)可能的發(fā)展方向。
關(guān)鍵詞:時(shí)間同步;典型時(shí)間同步算法;誤差分析
引言
保持節點(diǎn)之間時(shí)間上的同步在無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中非常重要,它是保證數據可靠傳輸的前提。NTP協(xié)議是目前因特網(wǎng)上采用的時(shí)間同步協(xié)議標準,功耗大,采用有線(xiàn)傳輸,不適合用于功耗、成本受限制的無(wú)線(xiàn)傳感網(wǎng)絡(luò )中。GPS系統也可以提供高精度的時(shí)間同步,但它的信號穿透性差,GPS天線(xiàn)必須安裝在空曠的地方,功耗也較大,所以不適合無(wú)線(xiàn)傳感網(wǎng)絡(luò )。
Elson等人2002年首次提出無(wú)線(xiàn)傳感器網(wǎng)絡(luò )時(shí)間同步的研究課題以來(lái),已有相當多的典型時(shí)間同步算法,主要可以分為以下幾類(lèi):基于發(fā)送者一接收者的雙向同步算法,典型算法如TPSN(Timing-Sync Protocol for Sensor Networks)算法;基于發(fā)送者一接收者的單向時(shí)間同步算,典型算法如FTSP(Flooding Time Synclaronization Protocol)算法、DMTS(Delay Measurement Time Synchronization)算法;基于接收者一接收者的同步算法,典型算法有RBS(Reference Broadcast Synchronization)算法。
近年來(lái)根據以上幾種典型同步算法,還有人提出了分簇式的層次型拓撲結構算法,以及結合生成樹(shù)等來(lái)提高整個(gè)網(wǎng)絡(luò )的性能,如LTS(Li-glatweight time synchronization)算法、CHTS(Cluster-based Hierarehical Time Synchronization)算法、CRIT(Chained-Ripple Time Synchronization)算法、PBS(The Pairwise Broadcast Synchronization)算法、HRTS(Hierarchy ReferencingTime Synchronization Pro-toc01)算法、BTS(Broadcasttime synchronization)算法、ETSP(Energy-efficient Time Synchronization Protocol)算法等。
然而,無(wú)論以上同步算法怎樣發(fā)展,精度如何提高,整個(gè)網(wǎng)絡(luò )功耗怎樣降低,都是基于單跳時(shí)間同步機制。隨著(zhù)無(wú)線(xiàn)傳感網(wǎng)絡(luò )的運用與發(fā)展,傳感節點(diǎn)體積不斷縮小,單跳距離變小,整體網(wǎng)絡(luò )規模變大,同步誤差的累積現象必將越來(lái)越嚴重,目前也有比較新的同步算法,試圖盡量避開(kāi)單跳累加來(lái)解決這些問(wèn)題,如協(xié)作同步。
1 時(shí)間同步
1.1 時(shí)間同步不確定性的影響因素
時(shí)間同步不確定性的主要的影響因素如圖1所示。
發(fā)送時(shí)間:發(fā)送方用于構造分組并將分組轉交給發(fā)送方的MAC層的時(shí)間。主要取決于時(shí)間同步程序的操作系統調用時(shí)間和處理器負載等。
訪(fǎng)問(wèn)時(shí)間:分組到達MAC層后,獲取信道發(fā)送權的時(shí)間。主要取決于共享信道的競爭、當前的負載等。
傳送時(shí)間:發(fā)送分組的時(shí)間,主要取決于報文的長(cháng)度等。
傳播時(shí)間:分組離開(kāi)發(fā)送方后,并將分組傳輸到接收方之間的無(wú)線(xiàn)傳輸時(shí)間。主要取決于傳輸介質(zhì)、傳輸距離等。
接收時(shí)間:接收端接收到分組,并將分組傳送到MAC層所需的時(shí)間。接受時(shí)間:處理接收到分組的時(shí)間。主要受到操作系統的影響。
1.2 典型時(shí)間同步算法分析
1.2.1 TPSN算法分析
TPSN算法采用的是層次型的網(wǎng)絡(luò )結構,是基于發(fā)送者一接收者的雙向同步算法。分成兩個(gè)階段,第一階段為層次發(fā)現階段,第二階段為同步階段。T1、T4用來(lái)記錄同步節點(diǎn)的本地時(shí)間,T2、T3用來(lái)記錄參考節點(diǎn)的本地時(shí)問(wèn)。同步節點(diǎn)A在T1時(shí)刻向參考節點(diǎn)B發(fā)送一個(gè)同步請求報文,報文中包含了同步節點(diǎn)的級別和T1。當參考節點(diǎn)B收到報文后,記錄下接收時(shí)刻T2,并立即向同步節點(diǎn)A回復一個(gè)同步應答報文,該報文中包含了參考節點(diǎn)B的級別和T1、T2及回復時(shí)刻T3。同步節點(diǎn)A收到參考節點(diǎn)的回復后,記下時(shí)刻T4。假設來(lái)回報文的傳輸延遲相同都為d,且m為同步節點(diǎn)在T1時(shí)刻兩者之間的時(shí)偏,且設來(lái)回時(shí)偏相同,由T2=T1+m+d,T4=T3-m+d可得到:
則在T4時(shí)刻,若在同步節點(diǎn)A的本地時(shí)間增加修正量m,就能達到同步節點(diǎn)A與參考節點(diǎn)B之間的同步。
評論