專利名稱:一種用于傳感器網(wǎng)絡(luò)的高效全網(wǎng)時鐘同步協(xié)議的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)協(xié)議技術(shù)領(lǐng)域,具體涉及一種用于傳感器網(wǎng)絡(luò)中的新型高能源、帶寬利用率的全網(wǎng)時鐘同步協(xié)議。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)[1]通過大量高密度的自組織傳感器節(jié)點協(xié)同監(jiān)測較大范圍的外部環(huán)境,在傳感器網(wǎng)絡(luò)應用的大部分環(huán)境(如戰(zhàn)場,森林,野外)下,節(jié)點能源的更換非常困難甚至不可能,因此傳感器中的能源效率問題是限制其應用的重要因素,自然也是傳感器網(wǎng)絡(luò)協(xié)議的首要指標。
大多數(shù)傳感器網(wǎng)絡(luò)的工作原理如下某個感興趣事件發(fā)生時,處于感知范圍的節(jié)點記錄下一組或多組數(shù)據(jù)(Tl,Pe),其中Tl表示事件發(fā)生時節(jié)點的本地時鐘,而Pe表示該事件的一些有用參數(shù),多個節(jié)點的數(shù)據(jù)經(jīng)過某種數(shù)據(jù)融合方法的處理后形成對該事件的認識。然而,數(shù)據(jù)融合的前提是各節(jié)點的本地時鐘在規(guī)定尺度下的一致或者至少存在可知的確定關(guān)系,于是全網(wǎng)的時鐘同步協(xié)議成為傳感器網(wǎng)絡(luò)正常工作的前提。另一方面,為了提高能效,現(xiàn)有的許多MAC協(xié)議都采用TDMA類型的工作方式,而這些也是以全網(wǎng)同步為基礎(chǔ)的。
正如文章[2],[3]所提到的,單跳范圍內(nèi)的時鐘同步主要通過接收并處理同步包來實現(xiàn)。然而傳感器網(wǎng)絡(luò)所監(jiān)測的范圍遠超出節(jié)點的傳輸距離,于是形成了多跳網(wǎng)絡(luò)。為了在密集分布的多跳網(wǎng)絡(luò)中實現(xiàn)全網(wǎng)同步,有效的泛洪機制不可或缺。在傳統(tǒng)的泛洪機制中,節(jié)點發(fā)送權(quán)競爭的隨機性導致不同傳遞路徑下同步包擴散速度的巨大差異,且該差異將隨著路徑增長而變得愈發(fā)嚴重。在這種情況下,長期處于睡眠狀態(tài)的節(jié)點無法預知喚醒到接收狀態(tài)的準確時間,只能提前蘇醒,不可避免地造成能源浪費,我們稱其為“喚醒時間不確定性”問題。
近年來提出的一些新奇的時鐘同步協(xié)議如RBS(Reference Broadcast Synchronization[6]),TPSN(Timing-sync Protocol for wireless Sensor Network[4]),DMTS(DelayMeasurement Time Synchronization[7]),F(xiàn)TSP(Flooding Time Synchronization Protocol[5])等,都沒有解決“喚醒時間不確定性”問題,因此無法進一步降低能耗。然而,無線傳感器網(wǎng)絡(luò)的發(fā)展必然需要高效的全網(wǎng)同步協(xié)議,故我們發(fā)明了一種用于傳感器網(wǎng)絡(luò)的高效全網(wǎng)時鐘同步協(xié)議。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種用于傳感器網(wǎng)絡(luò)、能消除“喚醒時間不確定性“問題的新型的高能源、帶寬利用率全網(wǎng)時鐘同步協(xié)議。
本發(fā)明提供的高效全網(wǎng)時鐘同步協(xié)議,是一種分時泛洪全網(wǎng)同步協(xié)議。協(xié)議采用基于分時的泛洪機制,通過限定節(jié)點發(fā)送和接收的時間范圍,有效地消除了“喚醒時間不確定性”問題,仿真結(jié)果表明其具有極高的能源和帶寬利用率。
同步協(xié)議與其它MAC協(xié)議分時享用信道。采用該協(xié)議后節(jié)點在每個同步周期的可確定的指定時間范圍內(nèi)(假定為To)采用同步協(xié)議執(zhí)行同步操作,而MAC協(xié)議只需每同步周期中放棄信道使用權(quán)To時間,其余時間照常工作。
協(xié)議采用如下同步方式,首先定義已經(jīng)獲得同步的節(jié)點為同步源節(jié)點,同步源節(jié)點在獲得信道使用權(quán)之后,將此時的本地時鐘填入同步包中的時間戳字段,進行廣播,未同步節(jié)點在接收到同步包之后,讀取時間戳字段并記錄下此時節(jié)點的本地時鐘;然后,根據(jù)硬件特性估計傳輸延時,組合同步包中時間戳字段,估計出的該時刻同步源節(jié)點的本地時鐘;最后,結(jié)合記錄下的本地時鐘,對時鐘進行調(diào)整,從而到達同步的目的。因此,所有在同步源發(fā)送范圍之內(nèi)的未同步節(jié)點只要能在適當時間蘇醒到接收狀態(tài),便可同時與同步源同步。
全網(wǎng)同步由唯一的根節(jié)點發(fā)起,它在每個同步周期的起始時刻發(fā)送同步包,剛上電的未同步節(jié)點持續(xù)監(jiān)聽信道等待接收同步包,一旦正確接收即采用如上方法與根節(jié)點取得同步,成為新的同步源節(jié)點,并應用分時泛洪機制發(fā)送新的同步包同步網(wǎng)絡(luò)中的其他節(jié)點。
本發(fā)明中的分時泛洪機制由以下幾部分組成1.協(xié)議為每個節(jié)點分配一個級數(shù)(Level)以指示該節(jié)點到根結(jié)點的跳數(shù),通過以下方法獲得節(jié)點在同步包的層值字段中填入自己的級數(shù)(根節(jié)點的級數(shù)為0),接收到該同步包的節(jié)點將級數(shù)定為同步包中的相應字段加一。如果節(jié)點在占用時間內(nèi)收到多個不同級數(shù)的同步包,節(jié)點選取其中的最小值。
2.協(xié)議中,節(jié)點擁有獨立的發(fā)送時間段與接收時間段,節(jié)點在接收時間段內(nèi)喚醒,切換到接收狀態(tài)接收同步包,而在發(fā)送時間段內(nèi)競爭信道以發(fā)送同步包。接收時間段中接收到同步包后,節(jié)點須等到接下來的發(fā)送時間段才能參與發(fā)送。
3.節(jié)點的發(fā)送時間段和接收時間段時間區(qū)間由節(jié)點級數(shù)唯一確定,并采用一定公式算出。第n級節(jié)點的接收時間段與第n-1級節(jié)點的發(fā)送時間段重合。
4.發(fā)送時間段內(nèi)又可分為一定數(shù)量的發(fā)送子時隙,每個發(fā)送子時隙只允許一個節(jié)點發(fā) 送,節(jié)點在單個同步周期內(nèi)至多發(fā)送一次同步包。同樣,接收時間段也可分為同樣數(shù)量的接收子時隙,每個接收子時隙與上一級節(jié)點的發(fā)送子時隙相對應。
5.發(fā)送子時隙由競爭信道時間和實際發(fā)包時間組成。在某個發(fā)送子時隙擁有優(yōu)先發(fā)送權(quán)力的節(jié)點定義為該發(fā)送子時隙的默認發(fā)送節(jié)點,而該發(fā)送子時隙則被定義為該節(jié)點的默認發(fā)送子時隙。節(jié)點通過在競爭信道時間中選取不同的退避時間產(chǎn)生不同的發(fā)送優(yōu)先級。默認發(fā)送節(jié)點從默認退避窗口中隨機選擇退避值,而非默認發(fā)送節(jié)點則從非默認退避窗口中取值,其中非默認退避窗口最大值大于默認退避窗口中的最小值。節(jié)點的初始默認發(fā)送子時隙序號由節(jié)點的唯一標識產(chǎn)生。
6.節(jié)點在其默認發(fā)送子時隙中從默認退避窗口選取退避值,延時該段時間后檢測載波,如果沒有檢測到載波,節(jié)點將獲得信道使用權(quán)并在隨后發(fā)送同步包。否則,節(jié)點設(shè)置默認發(fā)送子時隙為-1,并取消發(fā)送。默認發(fā)送子時隙為-1的節(jié)點將在本同步周期剩下的子時隙及下一個同步周期的所有發(fā)送子時隙中競爭信道,但此后它必須在非默認退避窗口中選擇退避值。
7.在如上的發(fā)送機制下,只要網(wǎng)絡(luò)拓撲結(jié)構(gòu)不發(fā)生改變,節(jié)點將始終在其固定的默認發(fā)送子時隙中無碰撞地發(fā)送。故節(jié)點每隔指定周期監(jiān)聽整個接收時間段,掌握有效接收子時隙(能夠接收到同步包的子時隙)序號信息,在接下來的周期中,節(jié)點僅在感興趣的某個有效接收子時隙中切換到接收狀態(tài),而不需要監(jiān)聽整個接收時間段。因此,節(jié)點的喚醒時間可精確到子時隙長度。
本發(fā)明通過特殊的分時泛洪機制達到了更低的能源和帶寬消耗。另外由于該協(xié)議的分時特性,它可以十分方便地與許多傳感器網(wǎng)絡(luò)中現(xiàn)有的MAC協(xié)議協(xié)同工作。
圖1是采用本發(fā)明后節(jié)點的時間組成圖示。
圖2是協(xié)議占用時間組成示意圖。
圖3是發(fā)送時間段組成示意圖。
圖4是仿真場景A。
圖5是仿真場景B。
圖6是單周期內(nèi)平均發(fā)送時間仿真結(jié)果。
圖7是單周期內(nèi)平均接收時間仿真結(jié)果。
具體實施例方式
下面結(jié)合
以及具體的實施方式對本發(fā)明作進一步說明。
在某個需要全網(wǎng)同步的傳感器網(wǎng)絡(luò)中,采用本發(fā)明后,節(jié)點的時間組成見圖1。圖中的協(xié)議占用時間又可分為前級節(jié)點發(fā)送時間段,接收時間段,發(fā)送時間段,后級節(jié)點接收時間段等,見圖2。
假定單次同步包的發(fā)送時間為Ts(包括必要的退避時間),節(jié)點的發(fā)送區(qū)域平均存在Ns同級節(jié)點(即Ns節(jié)點在同一發(fā)送時間段內(nèi)爭搶信道)。則發(fā)送時間段的長度Tc選取為Ts*Ns。根節(jié)點在每同步周期的起始時刻進入發(fā)送時間段,即第i周期中,根節(jié)點的發(fā)送時間段范圍為[i*Tp,i*Tp+Tc](Tp為同步周期)。那么第一級節(jié)點的發(fā)送時間段范圍為[i*Tp+Tc,i*Tp+2*Tc],由此我們推算出第n級節(jié)點的發(fā)送時間段范圍為[i*Tp+n*Tc,i*Tp+(n+1)*Tc]。第n級節(jié)點必須通過接收第n-1節(jié)點的同步包來獲得同步,于是接收時間段定為第n-1節(jié)點的發(fā)送時間段范圍,即[i*Tp+(n-1)*Tc,i*Tp+n*Tc],故協(xié)議的占用時間區(qū)間為[i*Tp+(n-2)*Tc,i*Tp+(n+2)*Tc]。
圖3表示了發(fā)送時間段的組成。具體的發(fā)送方法舉例如下如果選取Ns為5,并假定同一碰撞域中存在相同級數(shù)且標識號分別是5,6,8,13,9的五個節(jié)點。那么,它們的初始默認發(fā)送子時隙可采用標識號余Ns產(chǎn)生,因此分別為5%5=0,6%5=1,8%5=3,13%5=3,9%5=4。在該級節(jié)點的發(fā)送子時隙0中,有且只有節(jié)點5的默認發(fā)送子時隙為0,它將在默認退避窗口中隨機選擇退避值,因為沒有其它的競爭者,它將獲得信道使用權(quán)并成功發(fā)送同步包;在發(fā)送子時隙1中,同理,節(jié)點6將獲得信道使用權(quán)成功發(fā)送同步包。發(fā)送子時隙2沒有默認發(fā)送節(jié)點且不存在默認發(fā)送子時隙為-1的節(jié)點,因此沒有節(jié)點在該時隙中發(fā)送。在發(fā)送子時隙3中,節(jié)點8和13分別從默認退避窗口中隨機選擇退避值,值小者將獲得信道的使用權(quán),而值大者(假定為節(jié)點13)將設(shè)置默認發(fā)送子時隙為-1。在最后的子時隙4中,由于此時節(jié)點13的默認發(fā)送子時隙已經(jīng)變?yōu)?1,所以它將和節(jié)點9競爭該子時隙,顯然默認發(fā)送節(jié)點9將獲勝。那么,在該同步周期內(nèi)沒有獲得發(fā)送機會的節(jié)點13將在下個同步周期內(nèi)的所有發(fā)送子時隙重新嘗試發(fā)送,恰好發(fā)送子時隙2沒有默認發(fā)送節(jié)點,于是它將在子時隙2中成功發(fā)送并重新設(shè)置默認發(fā)送子時隙為2。這樣,在接下來的同步周期里,此五個節(jié)點都將在自己的默認發(fā)送子時隙中無碰撞地發(fā)送同步包。
因此,本發(fā)明的流程如下(1)節(jié)點啟動后,通過指定或其它選舉方法選擇某節(jié)點為該網(wǎng)絡(luò)的根結(jié)點;(2)根結(jié)點在某時刻開始發(fā)送同步包,并從此在每個同步周期的起始時刻即i*Tp定時發(fā)送;(3)其它節(jié)點持續(xù)監(jiān)聽信道一定同步周期等待接收同步包,如果在該段時間內(nèi)沒有接收到任何同步包,節(jié)點進入周期喚醒狀態(tài),每隔較長同步周期監(jiān)聽一個同步周期,直到成功接收;節(jié)點正確接收到同步包后,提取出包中的時間戳和級數(shù)字段,獲得自己的級數(shù)值,根據(jù)其標識號計算出初始默認發(fā)送子時隙序號,并采用以上所提到的同步方法與其上一級節(jié)點同步,由于上一級節(jié)點已與根結(jié)點保持同步,所以節(jié)點同樣與根結(jié)點取得同步;(4)一旦第n級節(jié)點被成功同步,在之后的第i同步周期,;將在接收時間段即[i*Fp+(n-1)*Tc,i*Tp+n*Tc]中選定的有效接收子時隙中切換到接收狀態(tài),等待接收同步包,從而周期性更新時鐘以保證一定的同步誤差;(5)在發(fā)送時間段即[i*Tp+n*Tc,i*Tp+(n+1)*Tc]中的默認發(fā)送子時隙中,節(jié)點還將按照分時泛洪機制發(fā)送同步包以同步其下級節(jié)點。
我們在仿真軟件Ns2[8]中使用仿真場景A,B(見圖4,5)對協(xié)議進行仿真。其中在場景A中225個節(jié)點有規(guī)則地分布在168*168m2的區(qū)域中,節(jié)點間最小水平及垂直距離為12m;在場景B中200個節(jié)點隨機地分布在150*150m2區(qū)域中。兩圖中被圓圈包圍的節(jié)點均為選中的ROOT節(jié)點。
仿真中使用的部分物理信道參數(shù)和協(xié)議設(shè)置如下表1,2。
表1物理信道參數(shù)表2協(xié)議設(shè)置以下仿真基于如下四種配置場景A同步周期為15s,場景A同步周期為30s,場景B同步周期為15s,場景B同步周期為30s。
選取Ns為6,我們分別得出節(jié)點的接收(包括載波監(jiān)測時間)、發(fā)送時間與級值的關(guān)系圖6和圖7,其中橫坐標為節(jié)點的級值,而縱坐標分別為單周期內(nèi)的平均發(fā)送和接收時間。
從上兩圖中我們可以看出,單周期內(nèi)節(jié)點平均發(fā)送時間小于2ms,而監(jiān)聽時間平均為3.8ms,略大于子時隙時間3ms。當同步周期為30s時,平均發(fā)送時間僅占總時間的0.06%,而平均接收時間占0.127%,由此可見,該同步協(xié)議擁有極高能源利用率。
另外,平均接收時間基本與同步周期,級值(根節(jié)點除外)以及場景無關(guān),而平均發(fā)送時間則與拓撲結(jié)構(gòu)有一定關(guān)系,這是因為相同級值的同一碰撞域中只有Ns節(jié)點能夠成功發(fā)送同步包,在節(jié)點密度較高的區(qū)域一些節(jié)點不允許發(fā)送,故平均發(fā)送時間相應下降。
參考文獻(References)[1].I.F.Akyildiz,W.Su,Y.Sankarasubramanian,and E.Cayirci.“A Survey on SensorNetworks.”IEEE Communications Magazine,40(8)102-114,Aug.2002. .B.Sundararaman,U.Buy,and A.D.Kshemkalyani,“Clock synchronization for wirelesssensor networksa survey.”Ad Hoc Networks,vol.3,no.3,pp.281-323,2005. .Fikret Sivrikaya and Bülent Yener.“Time Synchronization in Sensor NetworksA Survey”IEEE Network,July/Augest 2004[4].M.Maro′ti,B.Kusy,G.Simon,and A′.Le′deczi,“The flooding time synchronizationprotocol.”in Proc.Of the Second ACM Conference on Embedded Networked SensorSystems(SenSys),Nov.2004,pp.39-49[5].S.Ganeriwal,R.Kumar,andM.Srivastava.“Timing-Sync Protocol for SensorNetworks.”Proc.First Int.Conf.on Embedded Networked Sensor Systems,Los Angeles,California,Nov.2003. .J.Elson,L.Girod,and D.Estrin.Fine-Grained Network Time Synchronization usingReference Broadcasts.Proc.Fifth Symposium on Operating Systems Design andImplementation(OSD1 2002),Vol 36,pp.147-163,2002[7].Su.Ping,“Delay measurement time synchronization for wireless sensor networks,”IntelResearch,June 2003. .Http//www.isi.edu/nsnam/ns。
權(quán)利要求
1.一種用于傳感器網(wǎng)絡(luò)的高效全網(wǎng)時鐘同步協(xié)議,其特征在于采用基于分時的泛洪機制,通過限定節(jié)點發(fā)送和接收的時間范圍,以有效地消除喚醒時間不確定性問題。
2.根據(jù)權(quán)利要求1所述的高效全網(wǎng)時鐘同步協(xié)議,其特征在于同步協(xié)議與其它MAC協(xié)議分時分享信道。
3.根據(jù)權(quán)利要求1或2所述的高效全網(wǎng)時鐘同步協(xié)議,其特征在于協(xié)議采用如下同步方式,首先定義已經(jīng)獲得同步的節(jié)點為同步源節(jié)點,同步源節(jié)點在獲得信道使用權(quán)之后,將此時的本地時鐘填入同步包中的時間戳字段,進行廣播,未同步節(jié)點在接收到同步包之后,讀取時間戳字段并記錄下此時節(jié)點的本地時鐘;然后,根據(jù)硬件特性估計傳輸延時,組合同步包中時間戳字段,估計出的該時刻同步源節(jié)點的本地時鐘;最后,結(jié)合記錄下的本地時鐘,對時鐘進行調(diào)整,從而到達同步的目的。
4.根據(jù)權(quán)利要求3所述的高效全網(wǎng)時鐘同步協(xié)議,其特征在于具體流程如下(1)節(jié)點啟動后,通過指定或其它選舉方法選擇某節(jié)點為該網(wǎng)絡(luò)的根結(jié)點;(2)根結(jié)點在某時刻開始發(fā)送同步包,并從此在每個同步周期的起始時刻即i*Tp定時發(fā)送;(3)其它節(jié)點持續(xù)監(jiān)聽信道一定同步周期等待接收同步包,如果在該段時間內(nèi)沒有接收到任何同步包,節(jié)點進入周期喚醒狀態(tài),每隔較長同步周期監(jiān)聽一個同步周期,直到成功接收;節(jié)點正確接收到同步包后,提取出包中的時間戳和級數(shù)字段,獲得自己的級數(shù)值,根據(jù)其標識號計算出初始默認發(fā)送子時隙序號,并采用以上所提到的同步方法與其上一級節(jié)點同步,由于上一級節(jié)點已與根結(jié)點保持同步,所以節(jié)點同樣與根結(jié)點取得同步;(4)一旦第n級節(jié)點被成功同步,在之后的第i同步周期,它將在接收時間段即[i*Tp+(n-1)*Tc,i*Tp+n*Tc]中選定的有效接收子時隙中切換到接收狀態(tài),等待接收同步包,從而周期性更新時鐘以保證一定的同步誤差;(5)在發(fā)送時間段即[i*Tp+n*Tc,i*Tp+(n+1)*Tc]中的默認發(fā)送子時隙中,節(jié)點還將按照分時泛洪機制發(fā)送同步包以同步其下級節(jié)點;其中,T為同步包發(fā)送時間段長度,Tp為同步周期。
全文摘要
本發(fā)明屬于網(wǎng)絡(luò)協(xié)議技術(shù)領(lǐng)域,具體為一種用于傳感器網(wǎng)絡(luò)的新型高能源、帶寬利用率的全網(wǎng)時鐘同步協(xié)議。由于傳感器網(wǎng)絡(luò)的特殊應用以及對能源利用率的苛刻要求,全網(wǎng)范圍的時鐘同步協(xié)議自身必須具有卓越的能源以及帶寬利用率。本發(fā)明采用基于分時的泛洪機制,通過限定節(jié)點發(fā)送和接收的時間范圍,有效地消除了“喚醒時間不確定性”問題,從而達到了更低的能源和帶寬消耗。另外由于該協(xié)議的分時特性,它可以十分方便地與許多傳感器網(wǎng)絡(luò)中現(xiàn)有的MAC協(xié)議協(xié)同工作。
文檔編號H04L29/06GK1832479SQ20061002588
公開日2006年9月13日 申請日期2006年4月20日 優(yōu)先權(quán)日2006年4月20日
發(fā)明者曾益, 胡波 申請人:復旦大學