傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法
【專利摘要】本發(fā)明涉及一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,包括以下步驟:1)利用協(xié)調器在一個時隙內接收到的數(shù)據(jù)包個數(shù),及一個超幀時隙內信道最多能傳輸數(shù)據(jù)包的個數(shù),計算超幀時隙利用率;2)利用閾值對超幀時隙利用率進行分析,并動態(tài)調整占空比,降低傳感器節(jié)點的能耗;3)利用MAC層緩沖區(qū)現(xiàn)存的數(shù)據(jù)包個數(shù),得到節(jié)點緩存占用率,當其超過一定范圍時,認為該節(jié)點負荷較重,應為其競爭信道提供便利;相反,若緩存中數(shù)據(jù)包不多時,可以讓其保持現(xiàn)狀或者增大該節(jié)點退避次數(shù)。該方法既能有效的解決傳統(tǒng)算法對能耗的忽略,又能通過基于緩沖區(qū)占用率的自適應退避算法,使得每個傳感器節(jié)點都能盡可能多的競爭到信道,傳輸數(shù)據(jù)包。
【專利說明】傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法
【技術領域】
[0001] 本發(fā)明屬于傳感器網絡【技術領域】,涉及一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率 的退避方法。
【背景技術】
[0002] 傳感器網絡被部署在一些真實的應用場景中,例如,環(huán)境監(jiān)測,安全監(jiān)控,工業(yè)自 動化和控制等。這些應用的實現(xiàn)一部分得益于:(1)IEEE802. 15.4協(xié)議,它定義了協(xié)議棧的 物理層和介質訪問控制層(2)ZigBee協(xié)議,它包含了網絡層和應用層。由于傳感器節(jié)點是 電池供電,并且被期望獨立地工作幾個月或幾年,那么如何減少能耗成了傳感器網絡中一 個主要的問題。另外一個關鍵的問題是傳感器網絡的可靠性如何保障。因為有一些應用程 序對可靠性依賴很高。許多例子通過減少能量消耗和保證可靠性來提高網絡壽命,并且滿 足應用程序的需求。
[0003] 為了解決傳感器節(jié)點能耗的問題,目前很多人提出了改變占空比來減少能耗。例 如,HongeokYoo等提出了基于剩余能量數(shù)目的動態(tài)占空比算法;Rasouli,H等提出了一種 新的基于最大利用網絡流量自動調節(jié)占空比的算法;Oliveira,C.H.S等提出了一種根據(jù) 網絡負載變化的超幀改變算法。為了解決傳感器可靠性問題,提高數(shù)據(jù)包交付率,降低傳輸 時延,基于CSMA/CA的參數(shù)改變算法被提出了。例如,周林,陳楊楊提出了一種基于網絡的 流量動態(tài)地調整CSMA/CA的退避算法;MarioDiFrancesco等提出了一種復雜度低的分布 式算法-ADAPT(AdaptiveAcessparametersTuning) 〇
[0004] 上述算法雖然解決了能耗問題或者可靠性問題,但是只是單方面解決了一個問 題,沒有同時解決以上問題;而且都是基于全網絡的流量或者吞吐量對協(xié)議進行修改,沒有 考慮到節(jié)點自身的流量狀況。所以在既能保障減少能耗的前提下,還能提高單個節(jié)點自身 可靠性的方面存在一些不足。
【發(fā)明內容】
[0005] 有鑒于此,本發(fā)明的目的在于提供一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退 避方法,該方法首先通過計算超幀時隙的利用率,將利用率與閾值結合起來動態(tài)改變節(jié)點 占空比,達到減少能耗的目的;其次,計算傳感器節(jié)點MAC層緩沖區(qū)占用率,每個節(jié)點根據(jù) 自身情況自適應地調整退避算法,達到提高協(xié)議可靠性,進而提高傳感器網絡的可靠性。
[0006] 為達到上述目的,本發(fā)明提供如下技術方案:
[0007] 一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,包括以下步驟:
[0008] 步驟一:利用協(xié)調器在一個時隙內接收到的數(shù)據(jù)包個數(shù),及一個超幀時隙內信道 最多能傳輸數(shù)據(jù)包的個數(shù),計算得到超幀時隙利用率;
[0009] 步驟二:利用閾值對超幀時隙利用率進行分析,并動態(tài)調整占空比,降低傳感器節(jié) 點的能耗;
[0010] 步驟三:利用MAC層緩沖區(qū)現(xiàn)存的數(shù)據(jù)包得到節(jié)點緩存占用率,緩存占用率體現(xiàn) 的是節(jié)點緩存中待發(fā)送的數(shù)據(jù)包,當其超過一預設閾值時,認為該節(jié)點負荷較重,應為其競 爭信道提供便利;相反,若緩存中數(shù)據(jù)包不多時,可以讓其保持現(xiàn)狀或者增大該節(jié)點退避次 數(shù)。
[0011] 進一步,在步驟一中,利用協(xié)調器節(jié)點在一個超幀時隙內接收到的數(shù)據(jù)包,及一個 超幀時隙最多能傳輸?shù)臄?shù)據(jù)包,計算超幀時隙利用率,其具體的計算方法如下:
【權利要求】
1. 一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,其特征在于:包括以下步 驟: 步驟一:利用協(xié)調器在一個時隙內接收到的數(shù)據(jù)包個數(shù),及一個超幀時隙內信道最多 能傳輸數(shù)據(jù)包的個數(shù),計算得到超幀時隙利用率; 步驟二:利用閾值對超幀時隙利用率進行分析,并動態(tài)調整占空比,降低傳感器節(jié)點的 能耗; 步驟三:利用MAC層緩沖區(qū)現(xiàn)存的數(shù)據(jù)包得到節(jié)點緩存占用率,緩存占用率體現(xiàn)的是 節(jié)點緩存中待發(fā)送的數(shù)據(jù)包,當其超過一預設閾值時,認為該節(jié)點負荷較重,應為其競爭信 道提供便利;相反,若緩存中數(shù)據(jù)包不多時,可以讓其保持現(xiàn)狀或者增大該節(jié)點退避次數(shù)。
2. 根據(jù)權利要求1所述的一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,其特 征在于:在步驟一中,利用協(xié)調器節(jié)點在一個超幀時隙內接收到的數(shù)據(jù)包,及一個超幀時隙 最多能傳輸?shù)臄?shù)據(jù)包,計算超幀時隙利用率,其具體的計算方法如下:
Symbolst0tal=Symbolsreceive-ack+SymboIstransmitjacket Symbolstransmitjacket=Symbols(2CCA+Lpacket) Symbolsreceiveack=Symbols(Lack+tack+IFS) 其中,!為超幀時隙利用率,Symbols^iveadt為目的節(jié)點收到發(fā)送ACK確認包所 需的時間單位;Symbolstransmitjjad5rt為發(fā)送一個數(shù)據(jù)包所需的時間單位;Symbolst(rtal為成功 傳輸一個數(shù)據(jù)包所需的時間單位。
3. 根據(jù)權利要求2所述的一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,其特 征在于:當R^6iv6dE(0.4, 0.7)時,說明超幀時隙利用率在0.5附近,需要將超幀間隔,及 節(jié)點的活躍期變大,以允許傳輸更多的數(shù)據(jù)包;當(0. 2, 0. 4)時,表明網絡中需要 傳輸?shù)臄?shù)據(jù)包不多,沒必要浪費節(jié)點能量,需要把超幀間隔減小,使得活躍期變短。
4. 根據(jù)權利要求1所述的一種傳感器網絡中基于節(jié)點緩沖區(qū)占用率的退避方法,其特 征在于:在步驟三中,利用節(jié)點MAC層緩沖區(qū)現(xiàn)存的數(shù)據(jù)包個數(shù),得到節(jié)點緩存利用率;緩 存利用率BufferRate計算如下:
Currentpackets=TXBuffer.size() Totalpackets=macBufferSize 其中,Currentpaekets、Totalpaekets分別為節(jié)點中現(xiàn)存的數(shù)據(jù)包個數(shù)、節(jié)點MAC層緩沖區(qū)能 容納數(shù)據(jù)包的個數(shù),超過這個值則會溢出;TXBuffer.SizeO為緩沖區(qū)目前的大小,根據(jù)其 中的數(shù)據(jù)包數(shù)量求得的;macBufferSize為節(jié)點MC層緩沖區(qū)總共的大小,即能容納數(shù)據(jù)包 的最大數(shù)量。
【文檔編號】H04W28/14GK104507125SQ201510002834
【公開日】2015年4月8日 申請日期:2015年1月5日 優(yōu)先權日:2015年1月5日
【發(fā)明者】尚鳳軍, 毛冉 申請人:重慶郵電大學