一種基于頻偏競標及動態拓撲的大規模無線傳感器網絡同步器的制造方法
【專利說明】一種基于頻偏競標及動態拓撲的大規模無線傳感器網絡同止3&
ty 口口
技術領域
[0001]本發明屬于無線傳感器網絡節點間的時間同步領域。
【背景技術】
[0002]作為無線傳感器網絡(Wireless Sensor Networks, WSNs)的基礎協議,時間同步協議對于整個網絡性能的維持起著至關重要的作用。根據發送方和接收方同步消息交互的情況,可以將WSNs中經典的時間同步協議分為如下三類:①單向的發送/接收模型,DTMS(Delay Measurement Time Synchronizat1n), FTSP(Flooding TimeSynchronizat1n Protocol);②雙向的發送/接收模型,TPSN(Timing_sync Protocol forSensor Networks);③接收 / 接收模型,RBS (Reference Broadcast Synchronizat1n) 0
[0003]但是,這些傳統的同步協議研究基本都是針對一跳范圍之內的。當其應用于整個網絡的多跳同步時,往往只是簡單的復用一跳范圍內的同步協議,卻沒有從整體結構上提出優化。這樣,必然造成每跳誤差的重復累積,使累積誤差近似于線性增長,很容易使處于遠端層次高的節點的誤差超出允許范圍,最終導致同步協議失效。
[0004]繼經典同步協議之后,提出了一些對誤差的多跳累積改進措施的協議。如在LTS(Lightweight Time Synchronizat1n)協議中,對每跳誤差進行權衡,并利用生成樹算法進行路徑選擇,但是由于算法比較復雜等,缺乏實用性。在DRL-TSP(Dynamic Route Listbased Timing-Sync Protocol)中,使用挑選路徑質量最好的父節點方法進行同步,其在大規模網絡中取得了一定的效果。但是,這套協議是基于分層結構的,同步時需要嚴格按照下層節點跟上層節點同步。對于節點可能會隨時產生一定的弱移動的應用場景里,這套協議可能會因為上下層節點漂移錯位而導致部分區域不能同步。如果是較多節點產生錯位,會直接導致整個網絡的同步癱瘓。現存的同步協議基本都是采用靜態拓撲結構,有層狀結構和樹狀結構。這類協議在運行時,節點不允許被移動,而且當需要拓展網絡時,還必需重啟整個協議,給實際應用帶來困難。
[0005]目前在WSNs中,隨著網絡規模的不斷擴大,經典時間同步方法也面臨著一個嚴峻的挑戰。因為隨著跳數的增多,節點間同步誤差的過量累積是不可避免的,所以,研究一種適用于大規模網絡中的時間同步器是勢在必行的。
【發明內容】
[0006]針對當前時間同步協議在多跳誤差累積抑制方面和具有弱移動性的監測場景中研究的不足,本發明設計了一種基于頻偏競標(frequency skew bid,FB)和動態拓撲(dynamic topology,DT)的同步器。此同步器通過頻偏競標的方式選擇競標標準小的上跳節點發起同步。這里的競標標準與頻偏、跳數和被同步次數等參數有關。該同步器同時采用動態拓撲結構,從而保證所有節點在弱移動下都能順利的完成時間同步。
[0007]本發明是通過以下技術方案實現的:
[0008]該技術方案的同步器建立和維護的具體實現過程如下:
[0009](I)根節點發起同步
[0010]同步開始時,由根節點根據應用需求設定同步數據包的類型為快速同步或者慢速同步;同時設定同步輪次和同步跳數等參數信息,然后將數據包發出;啟動定時器,經過一個同步周期的間隔后再次發起下一輪同步;同時監聽并回應下跳節點發來的同步請求。
[0011](2)非根節點快速同步
[0012]非根節點在同步開始時監聽其他節點發來的同步數據包;收到第一個數據包后,如果是快速同步數據包,而且同步輪次值比上一輪的值大,則進行快速同步,即立刻選定這個節點為父節點。
[0013](3)非根節點慢速同步
[0014]非根節點監聽其他節點發來的同步數據包;收到第一個同步輪次值比上一輪的值大的數據包后,如果是慢速同步數據包,則進行慢速同步,設定定時器開啟頻偏競標過程;在定時器到時之前,節點一直監聽是否有其他同步數據包到來;對收到的數據包計算其競標標準(Standard,STD);最終選取具有最小競標標準STD的節點為父節點。
[0015](4)類TPSN單跳范圍同步
[0016]當待同步節點選定父節點后,關閉同步數據包的監聽;向父節點發起類TPSN的同步請求;父節點收到同步請求后及時回應消息。待同步節點利用本次同步過程記錄的4個時間值,計算出時間偏差和延時,并進行本地時鐘的校正;然后向其他節點發出同步包。
[0017](5)網絡的擴展
[0018]當有新的節點加入到已經運行的網絡中時,他們可以根據競標標準STD自動選擇最佳的上跳節點為父節點進行同步,而不需要重新啟動整個網絡的同步協議;如果加入的節點數據較多,則可以讓根節點發起一定次數的快速同步,使新節點的時鐘大致的統一到網絡的標準時間。
[0019]本發明的基于頻偏競標及動態拓撲同步器在大規模網絡環境下及其在動態拓撲中的實現細節如下:
[0020]采用區域分簇的機制將大規模節點網絡分為簇頭網絡和簇內網絡兩部分。每個簇頭作為中間Sink節點,負責簇內區域小節點信息的匯聚、處理和轉發,并且作為簇內網絡的根節點發布同步消息。當進行時間同步時,先完成簇頭網絡的同步,再分別進行簇內網絡的同步,這樣便可以大大減少同步跳數,提高同步精度。本發明的基于頻偏競標及動態拓撲同步器可適用于簇頭網絡和簇內網絡兩種網絡中。
[0021]本發明的同步器中節點的頻偏是指時鐘漂移,即單位時間內節點時鐘偏離真實時鐘的速度,頻偏體現節點時鐘晶振的穩定性。當節點的時鐘漂移(頻偏)值越小,其本地時鐘越穩定;在進行一次時鐘校正后,其時間值偏離真實值也越小,這樣在同步時造成的誤差也越小。
[0022]本發明的同步器采用跳數(Hop Number,HN)參數來實現在動態拓撲結構的多跳網絡中的同步。每個同步消息包中都含有跳數HN消息,根節點發出的消息中跳數為0,節點每轉發一次就將HN數值加I。當節點進行弱移動時,會使網絡的拓撲發生動態變化。這里的弱移動性是指待同步節點在頻偏競標的等待時間(Waiting Time, WT)內,就是在慢速同步的定時器未超時之前,參與競標的上跳節點沒有移出待同步節點的通信范圍。STD的計算式為STD = λ (HN).|FB|。其中,λ (HN)是關于跳數HN的表達式,具體參數值應根據實際應用進行測試獲得,以實現最佳的父節點的選取。
[0023]本發明的有益效果在于:
[0024]1.利用頻偏競標策略實現誤差多跳累積的抑制
[0025]在頻偏競標的過程中,節點發出的數據包中攜帶有頻偏信息FB ;當下一跳節點收到該數據包后,將FB作為一個主要的影響因子計算競標標準STD。當接收到多個節點的競標數據包后,計算出STD最小的上跳節點作為父節點ΡΝ,然后跟PN進行同步。當網絡規模越大,節點可選的父節點越多時,本發明的同步器對誤差多跳累積抑制的效果越明顯。圖6中所示為3種同步方式在多跳網絡中同步時的誤差累積圖。其中Fid-bid曲線即是本發明的同步器采用的頻偏競標策略對誤差多跳累積抑制的效果曲線。
[0026]2.快速同步和慢速同步結合的策略
[0027]由于同步協議往往都是犧牲一種性能來換取另一種性能,而不存在一種同步器在各方面都具有良好的性能;同理,也更不可能存在一套同步器能適用于多種不同要求的場景。所以,本發明的同步器中采用了快速和慢速同步結合的方式來應對應用需求的變化。快速同步可以認為是以犧牲同步精度為代價來獲取較短的收斂周期;而慢速同步則相反是犧牲收斂周期來實現同步精度的提高。
[0028]圖5所示的是快速和慢速同步過程各跳完成同步所需的延時。程序中設定在頻偏競標過程中定時器的值為2分鐘,即慢速同步的周期為2分鐘,這個數值可以根據具體應用環境進行調整。根據在一個7跳網絡中的測試結果,這個網絡的收斂時間,即第7跳上節點完成同步需要的時間,快速同步為4.092s,慢速同步為22.6283s。
[0029]3.適合弱移動性
[0030]如果無線傳感器節點發生弱性移動時,經典的同步協議DMTS、TPSN和RBS等,以及最近提出的具有多跳誤差累積抑制的同步協議(DRL-TSP)都不能適用于拓撲動態變化的場合。本發明的同步器具有良好的弱移動性能,能很好運用在這類環境中進行時間同步。
[0031]如圖3所示,當節點進行弱移動的時候,會使網絡的拓撲發生動態變化。在圖3(a)中,tl時刻節點5通過判斷STD選取節點7作為父節點;在圖3(b)中,在t2時刻進行下一輪同步的時候,由于節點間的移動導致原來最佳STD的父節點7移出了節點5的通信范圍;不過由于每輪同步時