專利名稱:一種基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法
技術領域:
本發(fā)明涉及在多跳無線傳感器網(wǎng)絡中基站從傳感器節(jié)點采集數(shù)據(jù)所采用的傳輸協(xié)議,尤其涉及采用周期性睡眠喚醒機制作為節(jié)能手段的無線傳感器網(wǎng)絡。
背景技術:
無線傳感器網(wǎng)絡一般采用電池供電,能耗是無線傳感器網(wǎng)絡的重要指標,它決定著網(wǎng)絡的壽命。為了節(jié)省能量,一般無線傳感器網(wǎng)絡都采用周期性睡眠喚醒機制。但該機制引入了睡眠延時問題,即發(fā)送節(jié)點必須等待目標節(jié)點喚醒后才能發(fā)送數(shù)據(jù)。在多跳網(wǎng)絡中, 每跳的睡眠延時導致了端到端的延時非常大,這使得無線傳感器網(wǎng)絡無法被應用到一些延時敏感的應用領域。數(shù)據(jù)采集是指傳感節(jié)點把數(shù)據(jù)發(fā)送到采集終端,即基站,以供進一步分析利用。數(shù)據(jù)采集是無線傳感器網(wǎng)絡的主要數(shù)據(jù)傳輸方式,因此減少數(shù)據(jù)包從傳感節(jié)點到基站的采集延時對提升無線傳感器網(wǎng)絡性能具有重要意義。數(shù)據(jù)采集的傳輸方式是一種一對多的傳輸方式,數(shù)據(jù)流向固定(從傳感節(jié)點到基站)。目前減少采集延時的方法主要有兩種,一種方法是多跳預約,即同步所有節(jié)點的喚醒時間,在喚醒期源節(jié)點通過發(fā)送多跳預約包進行鏈路預約,被預約的節(jié)點在睡眠期保持喚醒。另一種方法梯度喚醒,即節(jié)點在下一跳節(jié)點喚醒時間前喚醒,這樣,當本節(jié)點在喚醒期收到數(shù)據(jù)包,只需等待很短的時間,下一跳的節(jié)點很快就會喚醒,便可以繼續(xù)轉(zhuǎn)發(fā)數(shù)據(jù)包。 但以上方法均需要全網(wǎng)同步,全網(wǎng)同步會引入很大的能量開銷,而且不利于大規(guī)模組網(wǎng)。
發(fā)明內(nèi)容
技術問題針對上述問題,本發(fā)明提供一種基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法,本發(fā)明的目的是在減少無線傳感器網(wǎng)絡采集延時的同時不引入額外的同步開銷。技術方案本發(fā)明的一種基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法包括以下步驟
步驟I :節(jié)點在發(fā)起數(shù)據(jù)采集過程之前需要先加入網(wǎng)絡,節(jié)點加入網(wǎng)絡時,節(jié)點偵聽信道一段時間,接收鄰居節(jié)點的信標幀,更新鄰居列表;
步驟2 :節(jié)點在加入網(wǎng)絡后,如果沒有數(shù)據(jù)包需要發(fā)送,進入步驟2-1,如果有數(shù)據(jù)要發(fā)送,節(jié)點發(fā)起數(shù)據(jù)采集過程,進入步驟2-2 ;
步驟2-1 :節(jié)點通過偽隨機數(shù)發(fā)生器計算下一次喚醒時間后啟動喚醒定時器,然后進入休眠狀態(tài),待啟動喚醒定時器超時后,節(jié)點喚醒,廣播信標幀;
步驟2-2 :節(jié)點計算所有離基站跳數(shù)小于本節(jié)點的鄰居節(jié)點的喚醒時間,并選擇最先喚醒的鄰居節(jié)點作為轉(zhuǎn)發(fā)節(jié)點,等待該轉(zhuǎn)發(fā)節(jié)點喚醒,接收其廣播的信標幀后,向其發(fā)送數(shù)據(jù);
步驟3 :轉(zhuǎn)發(fā)節(jié)點在接收到數(shù)據(jù)包后,向發(fā)送節(jié)點發(fā)送確認幀,如果本節(jié)點不是基站則進入步驟3-1 ;如果本節(jié)點是基站,則進入步驟3-2 ;
步驟3-1 :把數(shù)據(jù)緩存在發(fā)送隊列中,進入步驟2-2 ;
步驟3-2 :把收到的數(shù)據(jù)包交付給應用層,至此,數(shù)據(jù)采集過程結(jié)束。其中步驟I所述的信標幀包含節(jié)點的喚醒調(diào)度信息和離基站的跳數(shù)。步驟I所述的更新鄰居列表具體包括如下步驟
步驟A :節(jié)點從信標幀中提取發(fā)送該信標幀的鄰居節(jié)點的喚醒調(diào)度參數(shù)和離基站的跳數(shù),并保存到鄰居列表中,
步驟B :節(jié)點比較本節(jié)點離基站的跳數(shù)與發(fā)送該信標幀的鄰居節(jié)點離基站的跳數(shù)n,當本節(jié)點離基站的跳數(shù)大于n,則節(jié)點把自身離基站的跳數(shù)設置為n+1。有益效果本發(fā)明由于采取以上技術方案,其具有以下優(yōu)點
I.減少了采集延時的同時不需要增加額外的同步開銷。2.具有良好的可擴展性,網(wǎng)絡密度增大不會使系統(tǒng)性能下降。
圖I示出了信標幀的幀結(jié)構(gòu);
圖2示出了節(jié)點加入網(wǎng)絡的的流程圖3示出了節(jié)點發(fā)送數(shù)據(jù)包的流程圖。
具體實施例方式為實現(xiàn)上述目的,本發(fā)明采取以下技術方案
I.節(jié)點發(fā)起數(shù)據(jù)采集過程前在加入網(wǎng)絡時通過偵聽鄰居節(jié)點信標幀獲知鄰居節(jié)點的喚醒調(diào)度參數(shù)。2.節(jié)點通過偽隨機數(shù)發(fā)生器產(chǎn)生自身喚醒調(diào)度,并通過偽隨機數(shù)發(fā)生器和鄰居節(jié)點的喚醒調(diào)度參數(shù)可以計算鄰居節(jié)點的喚醒時間。3.節(jié)點根據(jù)鄰居節(jié)點離基站的跳數(shù)確定自身離基站的跳數(shù),并在信標幀中包含該信標幀的發(fā)送節(jié)點離基站的跳數(shù)。4.節(jié)點維護一個鄰居列表,當節(jié)點有數(shù)據(jù)要向基站發(fā)送,則發(fā)起數(shù)據(jù)采集過程,節(jié)點計算鄰居列表中所有離基站跳數(shù)小于本節(jié)點的鄰居節(jié)點的喚醒時間,并選擇最先喚醒的鄰居節(jié)點作為轉(zhuǎn)發(fā)節(jié)點,進行數(shù)據(jù)轉(zhuǎn)發(fā)。5.轉(zhuǎn)發(fā)節(jié)點收到數(shù)據(jù)包后緩存數(shù)據(jù)包,計算鄰居列表中所有離基站跳數(shù)小于本節(jié)點的鄰居節(jié)點的喚醒時間,并選擇最先喚醒的鄰居節(jié)點作為下一個轉(zhuǎn)發(fā)節(jié)點繼續(xù)進行數(shù)據(jù)轉(zhuǎn)發(fā),直到數(shù)據(jù)包被轉(zhuǎn)發(fā)至基站,數(shù)據(jù)采集過程結(jié)束。具體如下
步驟I :節(jié)點在發(fā)起數(shù)據(jù)采集過程之前需要先加入網(wǎng)絡,節(jié)點加入網(wǎng)絡時,節(jié)點偵聽信道一段時間,接收鄰居節(jié)點的信標幀,更新鄰居列表。信標幀包含節(jié)點的喚醒調(diào)度信息和離基站的跳數(shù)。更新鄰居列表具體過程如下節(jié)點首先從信標幀中提取發(fā)送該信標幀的鄰居節(jié)點的喚醒調(diào)度參數(shù)和離基站的跳數(shù),并保存到鄰居列表中。接著,節(jié)點比較本節(jié)點離基站的跳數(shù)與發(fā)送該信標幀的鄰居節(jié)點離基站的跳數(shù)n,當本節(jié)點離基站的跳數(shù)大于n,則節(jié)點把自身離基站的跳數(shù)設置為n+1。步驟2:節(jié)點在加入網(wǎng)絡后,如果沒有數(shù)據(jù)包需要發(fā)送,進入步驟2-1,如果有數(shù)據(jù)要發(fā)送,節(jié)點發(fā)起數(shù)據(jù)采集過程,進入步驟2-2 ;
步驟2-1 :節(jié)點通過偽隨機數(shù)發(fā)生器計算下一次喚醒時間后啟動喚醒定時器,然后進入休眠狀態(tài),待啟動喚醒定時器超時后,節(jié)點喚醒,廣播信標幀;
步驟2-2 :節(jié)點計算所有離基站跳數(shù)小于本節(jié)點的鄰居節(jié)點的喚醒時間,并選擇最先喚醒的鄰居節(jié)點作為轉(zhuǎn)發(fā)節(jié)點,等待該轉(zhuǎn)發(fā)節(jié)點喚醒,接收其廣播的信標幀后,向其發(fā)送數(shù)據(jù);
步驟3 :轉(zhuǎn)發(fā)節(jié)點在接收到數(shù)據(jù)包后,向發(fā)送節(jié)點發(fā)送確認幀,如果本節(jié)點不是基站則進入步驟3-1 ;如果本節(jié)點是基站,則進入步驟3-2 ;
步驟3-1 :把數(shù)據(jù)緩存在發(fā)送隊列中,進入步驟2-2 ;
步驟3-2 :把收到的數(shù)據(jù)包交付給應用層,至此,數(shù)據(jù)采集過程結(jié)束。
已加入網(wǎng)絡的節(jié)點通過偽隨機數(shù)發(fā)生器生成自身喚醒調(diào)度,偽隨機發(fā)生器的隨機算法采用線性同余法,即每個隨機數(shù)的產(chǎn)生是通過以下方式產(chǎn)生
權利要求
1.一種基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法,其特征在于所述的數(shù)據(jù)采集方法包括以下步驟 步驟I:節(jié)點在發(fā)起數(shù)據(jù)采集過程之前需要先加入網(wǎng)絡,節(jié)點加入網(wǎng)絡時,節(jié)點偵聽信道一段時間,接收鄰居節(jié)點的信標幀,更新鄰居列表; 步驟2 :節(jié)點在加入網(wǎng)絡后,如果沒有數(shù)據(jù)包需要發(fā)送,進入步驟2-1,如果有數(shù)據(jù)要發(fā)送,節(jié)點發(fā)起數(shù)據(jù)采集過程,進入步驟2-2 ; 步驟2-1 :節(jié)點通過偽隨機數(shù)發(fā)生器計算下一次喚醒時間后啟動喚醒定時器,然后進入休眠狀態(tài),待啟動喚醒定時器超時后,節(jié)點喚醒,廣播信標幀; 步驟2-2 :節(jié)點計算所有離基站跳數(shù)小于本節(jié)點的鄰居節(jié)點的喚醒時間,并選擇最先 喚醒的鄰居節(jié)點作為轉(zhuǎn)發(fā)節(jié)點,等待該轉(zhuǎn)發(fā)節(jié)點喚醒,接收其廣播的信標幀后,向其發(fā)送數(shù)據(jù); 步驟3 :轉(zhuǎn)發(fā)節(jié)點在接收到數(shù)據(jù)包后,向發(fā)送節(jié)點發(fā)送確認幀,如果本節(jié)點不是基站則進入步驟3-1 ;如果本節(jié)點是基站,則進入步驟3-2 ; 步驟3-1 :把數(shù)據(jù)緩存在發(fā)送隊列中,進入步驟2-2 ; 步驟3-2 :把收到的數(shù)據(jù)包交付給應用層,至此,數(shù)據(jù)采集過程結(jié)束。
2.根據(jù)權利要求I的基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法,其特征在于步驟I所述的信標幀包含節(jié)點的喚醒調(diào)度信息和離基站的跳數(shù)。
3.根據(jù)權利要求I的基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法,其特征在于步驟I所述的更新鄰居列表具體包括如下步驟 步驟A :節(jié)點從信標幀中提取發(fā)送該信標幀的鄰居節(jié)點的喚醒調(diào)度參數(shù)和離基站的跳數(shù),并保存到鄰居列表中, 步驟B :節(jié)點比較本節(jié)點離基站的跳數(shù)與發(fā)送該信標幀的鄰居節(jié)點離基站的跳數(shù)n,當本節(jié)點離基站的跳數(shù)大于n,則節(jié)點把自身離基站的跳數(shù)設置為n+1。
全文摘要
本發(fā)明公開了一種基于異步喚醒調(diào)度的無線傳感器網(wǎng)絡數(shù)據(jù)采集方法。數(shù)據(jù)采集是無線傳感器網(wǎng)絡的主要數(shù)據(jù)傳輸方式,減少數(shù)據(jù)包從傳感節(jié)點到基站的采集延時對提升無線傳感器網(wǎng)絡性能具有重要意義?,F(xiàn)有減少采集延時的方法均需要全網(wǎng)同步,全網(wǎng)同步會引入很大的能量開銷,而且不利于大規(guī)模組網(wǎng)。本發(fā)明通過維護鄰居節(jié)點的喚醒調(diào)度信息來獲知鄰居節(jié)點的喚醒時間,并根據(jù)鄰居節(jié)點的喚醒時間進行動態(tài)路由選擇。該方法有效減少采集延時且不需要增加額外的同步開銷,同時具有良好的可擴展性。
文檔編號H04W84/18GK102625427SQ20121006623
公開日2012年8月1日 申請日期2012年3月14日 優(yōu)先權日2012年3月14日
發(fā)明者劉昊, 徐平平, 田茜, 蔣晶晶 申請人:東南大學