專利名稱:一種無線自組織網(wǎng)絡(luò)中基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在無線自組織網(wǎng)絡(luò)中數(shù)據(jù)轉(zhuǎn)發(fā)方法,尤其涉及一種無線自組織網(wǎng)絡(luò)中 基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法,屬于無線通信領(lǐng)域。
背景技術(shù):
在無線自組織網(wǎng)絡(luò)中,由于節(jié)點移動、節(jié)點失效或無線鏈路受環(huán)境的干擾,造成網(wǎng)絡(luò) 拓撲結(jié)構(gòu)動態(tài)變化,甚至有時兩個節(jié)點之間在瞬間不存在一條端到端的數(shù)據(jù)傳輸路徑。如 果采用靜止的端到端路由機制,或發(fā)送者指定下一跳轉(zhuǎn)發(fā)節(jié)點,路由維護開銷大,數(shù)據(jù)傳 輸效率低,甚至數(shù)據(jù)傳輸難以實現(xiàn)的。
基于接收者的路由機制是一種較為新穎的數(shù)據(jù)傳輸協(xié)議,這類協(xié)議中發(fā)送節(jié)點并不指 定某個特定的鄰居節(jié)點來轉(zhuǎn)發(fā)數(shù)據(jù),而是由接收到數(shù)據(jù)的鄰居節(jié)點根據(jù)自身狀態(tài)信息(如 到目標節(jié)點的距離、自身剩余能量等)競爭下一跳的轉(zhuǎn)發(fā)權(quán),競爭獲勝的節(jié)點成為下一跳 節(jié)點來負責數(shù)據(jù)的轉(zhuǎn)發(fā)?;诮邮照叩穆酚蓞f(xié)議不需要建立和維護從源節(jié)點到目標節(jié)點的 全局路由,也不需要發(fā)送節(jié)點預(yù)先知道有哪些鄰居節(jié)點,因此能夠適用于無線自組織網(wǎng)絡(luò), 特別是移動的無線自組織網(wǎng)絡(luò)。
在無線自組織網(wǎng)絡(luò)中,節(jié)點往往采用電池供電,節(jié)點攜帶的能量是非常有限的。在路 由協(xié)議中,數(shù)據(jù)轉(zhuǎn)發(fā)同時要充分考慮節(jié)點的剩余能量,讓剩余能量多的節(jié)點承擔更多的轉(zhuǎn) 發(fā)任務(wù),這樣有利于整個網(wǎng)絡(luò)能量的均衡消耗,延長整個網(wǎng)絡(luò)的生存周期。
基于接收者的路由機制涉及到轉(zhuǎn)發(fā)優(yōu)先度、轉(zhuǎn)發(fā)抑制和路由空洞逾越等方面的問題。 轉(zhuǎn)發(fā)優(yōu)先度是指接收到數(shù)據(jù)分組的節(jié)點根據(jù)自身狀態(tài)計算自己做為下一跳轉(zhuǎn)發(fā)節(jié)點的優(yōu) 先級,優(yōu)先級高的接收節(jié)點為轉(zhuǎn)發(fā)數(shù)據(jù)分組的下一跳節(jié)點。轉(zhuǎn)發(fā)優(yōu)先度是基于接收者的路 由機制的核心技術(shù)之一,它要體現(xiàn)出節(jié)點轉(zhuǎn)發(fā)的合適程度,并具有較好的可區(qū)分性,低的 計算復(fù)雜度和利于網(wǎng)絡(luò)能量的均衡使用等。
目前提出了幾個基于接收者的路由機制。在HolgerFubler等提出的基于競爭的傳輸協(xié) 議CBF (Contention-based Forwarding)中(參考H Fussier, J Widmer, M Kasemann, M Mauve,H Hartenstein, Contention-based forwarding for mobile ad-hoc networks, Ad Hoc Networks Journal (Elsevier), 2003, 1 (4): 351-369),相對發(fā)送節(jié)點到目標節(jié)點近的單跳范圍的區(qū)域稱 為轉(zhuǎn)發(fā)區(qū)域。當接收到一個數(shù)據(jù)分組時,轉(zhuǎn)發(fā)區(qū)域中的節(jié)點根據(jù)自身到目標節(jié)點的距離來 設(shè)定一個定時器,當定時器到時并且沒有偵聽到其他節(jié)點發(fā)送該數(shù)據(jù)分組的相關(guān)信息時, 節(jié)點默認為自身獲得轉(zhuǎn)發(fā)權(quán),向發(fā)送節(jié)點發(fā)出回應(yīng)信息,并抑制其它節(jié)點在后續(xù)時刻作出 回應(yīng)。CBF協(xié)議的轉(zhuǎn)發(fā)優(yōu)先度只考慮了節(jié)點到目標節(jié)點的距離;當網(wǎng)絡(luò)節(jié)點密度較小時傳 輸延遲較大。
Michele Zorzi等提出了隨機轉(zhuǎn)發(fā)的路由協(xié)議GeRaF (Geographic Random Forwarding, 參考M Zorzi, R R Rao, Geographic Random Forwarding (GeRaF) for ad hoc and sensor networks: energy and latency performance. Trans, on Mobile Computing,2003,2(4): 349 - 365)。 該協(xié)議將發(fā)送節(jié)點的轉(zhuǎn)發(fā)區(qū)域劃分為多個帶狀子區(qū)域,每個子區(qū)域分配一個時隙,同一個 子區(qū)域內(nèi)收到數(shù)據(jù)分組的節(jié)點在分配的時隙內(nèi)平等的競爭轉(zhuǎn)發(fā)權(quán)。它的競爭獲勝的節(jié)點成 為下一跳轉(zhuǎn)發(fā)節(jié)點。GeRaF協(xié)議中轉(zhuǎn)發(fā)優(yōu)先度也只考慮了節(jié)點到目標節(jié)點的距離,同時采 用的多輪競爭方式在轉(zhuǎn)發(fā)時延和通信開銷方面有所不足。
Brain M.Blum等人提出了隱含式地理傳輸協(xié)議IGF(Implicit Geographic Forwarding,參 考B M Blum, T He, S Son, J A Stankovic, IGF: A robust state-free communication protocol for sensor networks, in: Technical report CS-2003-11, CS Department, University of Virginia, 2003)。該協(xié)議將轉(zhuǎn)發(fā)區(qū)域限定在一個60度張角的扇形區(qū)域內(nèi),并根據(jù)接收節(jié)點離目標節(jié) 點的距離和自身的剩余能量來設(shè)定響應(yīng)發(fā)送節(jié)點的延遲的時間。IGF協(xié)議轉(zhuǎn)發(fā)優(yōu)先度考慮 到了能量因素,但轉(zhuǎn)發(fā)區(qū)域的限制會將一些原本適合轉(zhuǎn)發(fā)數(shù)據(jù)的節(jié)點排除在外,降低了下 一跳數(shù)據(jù)傳輸?shù)某晒C率;當網(wǎng)絡(luò)節(jié)點密度較低時會導致較大的傳輸延遲。
己有路由機制在轉(zhuǎn)發(fā)優(yōu)先度計算方面沒有綜合考慮節(jié)點的信息,特別是沒有考慮節(jié)點 的位置(節(jié)點分布),不利于及時準確地選擇適合的下一跳轉(zhuǎn)發(fā)節(jié)點。
發(fā)明內(nèi)容
本發(fā)明的主要目的是針對已有基于接收者路由的轉(zhuǎn)發(fā)優(yōu)先度計算的不足,提出一種無 線自組織網(wǎng)絡(luò)中基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法。本發(fā)明綜合考慮節(jié)點自身的多種信息來 計算節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度,優(yōu)先度的計算結(jié)果與節(jié)點做為下一跳轉(zhuǎn)發(fā)節(jié)點的適合度相對應(yīng), 離目標節(jié)點距離近、鄰居節(jié)點多和剩余能量多的節(jié)點具有高的轉(zhuǎn)發(fā)優(yōu)先級;同時,優(yōu)先度的計算更簡單。這樣,有利于及時選擇合適的接收節(jié)點做為下一跳的轉(zhuǎn)發(fā)節(jié)點。
本發(fā)明在計算接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度時,綜合考慮了以下三個因素接收節(jié)點離目標 節(jié)點的距離、接收節(jié)點的額外覆蓋范圍以及節(jié)點的剩余能量。接收節(jié)點到目標節(jié)點的距離 是轉(zhuǎn)發(fā)優(yōu)先度的重要影響因素,如圖1所示,有效轉(zhuǎn)發(fā)區(qū)域(Valid Forwarding Area)中的
接收節(jié)點z'離目標節(jié)點的距離最近,因此在同等情況下接收節(jié)點i最適合作為下一跳的轉(zhuǎn)發(fā)節(jié)點。
接收節(jié)點的額外覆蓋范圍是指該節(jié)點的通信范圍除去與發(fā)送節(jié)點通信范圍的交疊區(qū) 域后剩余的部分。如圖2所示,接收節(jié)點z'和y離目標節(jié)點的距離相等,但節(jié)點z'的額外覆
蓋范圍遠大于節(jié)點7的額外覆蓋范圍。在網(wǎng)絡(luò)平均節(jié)點密度一定的前提下,節(jié)點的額外覆 蓋范圍大意味著鄰居節(jié)點數(shù)的期望值也大,因此在下一跳的數(shù)據(jù)轉(zhuǎn)發(fā)過程中,節(jié)點4匕節(jié)
點7成功轉(zhuǎn)發(fā)的概率大,所以其轉(zhuǎn)發(fā)優(yōu)先度應(yīng)高于節(jié)點7'。由于節(jié)點額外覆蓋范圍的面積
計算較為復(fù)雜,為降低計算復(fù)雜度,本發(fā)明采用接收節(jié)點到發(fā)送節(jié)點的距離來近似表示節(jié) 點的額外覆蓋范圍。
無線自組織網(wǎng)絡(luò)的節(jié)點往往是移動的,通過攜帶能量有限的電池供電,因此,有必要 在計算節(jié)點轉(zhuǎn)發(fā)優(yōu)先度時考慮能量因素,同等條件下讓能量充足的節(jié)點優(yōu)先轉(zhuǎn)發(fā)數(shù)據(jù)。
本發(fā)明提出的節(jié)點轉(zhuǎn)發(fā)優(yōu)先度計算方法如下:
<i —《五,."
Pi;=
d — <i > 0
£0及 (p"[o,i])
0 , d — 《0
、 , (
式中"為接收節(jié)點z'的轉(zhuǎn)發(fā)優(yōu)先度,"為發(fā)送節(jié)點到目標節(jié)點的距離,《和G分別為接
收節(jié)點z'到目標節(jié)點和發(fā)送節(jié)點的距離,《和&分別為接收節(jié)點z'的剩余能量和初始能量, ^為節(jié)點的通信距離,假設(shè)所有節(jié)點的通信半徑相同。
圖3給出了所有節(jié)點剩余能量相等的情況下,發(fā)送節(jié)點通信范圍內(nèi)轉(zhuǎn)發(fā)優(yōu)先度分布情 況,發(fā)送節(jié)點的坐標為(50,50),通信半徑及"OO。綜合上述分析,本發(fā)明提出的技術(shù)方案為
一種無線自組織網(wǎng)絡(luò)中基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法,其步驟為
1) 數(shù)據(jù)分組包含發(fā)送節(jié)點的位置信息字段和目標節(jié)點的位置信息字段,發(fā)送節(jié)點對于 要發(fā)送的數(shù)據(jù)分組,把本身的位置信息寫入到發(fā)送節(jié)點的位置信息字段;數(shù)據(jù)源節(jié) 點把目標節(jié)點的位置信息寫入目標節(jié)點的位置信息字段;
2) 接收到數(shù)據(jù)分組的接收節(jié)點根據(jù)發(fā)送節(jié)點的位置信息、目標節(jié)點的位置信息和自身 的位置信息,計算發(fā)送節(jié)點到目標節(jié)點的距離",接收節(jié)點到目標節(jié)點的距離"', 接收節(jié)點到目標節(jié)點的距離《,接收節(jié)點與發(fā)送節(jié)點之間的距離、
3) 接收節(jié)點根據(jù)距離J、《和^設(shè)定接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度,進行數(shù)據(jù)分組的轉(zhuǎn)發(fā)。
所述距離^《"'時,設(shè)定所述接收節(jié)點優(yōu)先度為0,丟棄所接收的數(shù)據(jù)分組。
所述距離^>"'時,所述接收節(jié)點讀取當前自身的剩余能量《,根據(jù)距離"、《、"'和 能量£'設(shè)定所述接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度。
所述接收節(jié)點記錄接收節(jié)點記錄在網(wǎng)絡(luò)啟動時自己的初始能量^ ,以及通信半徑R,
根據(jù)Pi; -^^ S,《>0 (Pr^
)設(shè)定所述接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度Pr;。
A A。 A
所述接收節(jié)點內(nèi)設(shè)置一個定時器,根據(jù)轉(zhuǎn)發(fā)優(yōu)先度的值設(shè)置所述定時器的值,進行數(shù) 據(jù)分組的轉(zhuǎn)發(fā)。
所述定時器按照定時器值減少方式工作。
所述定時器的工作方式為
1) 在定時器值減少并沒有為零過程中,收到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息,
則本接收節(jié)點放棄成為下一跳轉(zhuǎn)發(fā)節(jié)點;
2) 在定時器值減少為零過程中,沒有收到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息,則
本接收節(jié)點在定時器數(shù)值為零時成為這個數(shù)據(jù)分組的下一跳轉(zhuǎn)發(fā)節(jié)點,通告自己成為下一 跳轉(zhuǎn)發(fā)節(jié)點,進行數(shù)據(jù)分組的轉(zhuǎn)發(fā)。
所述數(shù)據(jù)分組的發(fā)送方式為廣播方式,所述數(shù)據(jù)分組的MAC層地址為廣播地址。本發(fā)明的積極效果
本發(fā)明在節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度計算中,考慮了節(jié)點的剩余能量因素,同等情況下剩余能 量高的節(jié)點獲得較高的轉(zhuǎn)發(fā)優(yōu)先度,有利于均衡網(wǎng)絡(luò)中節(jié)點的能量消耗,對剩余能量不足 的節(jié)點進行有效的保護,從而達到延長網(wǎng)絡(luò)生存時間的目的;另外,轉(zhuǎn)發(fā)優(yōu)先度計算中考 慮了節(jié)點的額外覆蓋范圍,節(jié)點的額外覆蓋范圍越大,也就意味著該節(jié)點鄰居節(jié)點數(shù)的期 望值越大,因而在下一跳數(shù)據(jù)轉(zhuǎn)發(fā)過程中的成功概率也越大,增強了數(shù)據(jù)轉(zhuǎn)發(fā)的可靠性。
圖l是有效轉(zhuǎn)發(fā)區(qū)域示意圖2是節(jié)點額外覆蓋度示意圖3是轉(zhuǎn)發(fā)優(yōu)先度的分布圖4轉(zhuǎn)發(fā)優(yōu)先度的處理過程流程圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并參照轉(zhuǎn) 發(fā)優(yōu)先度的處理流程圖4,對本發(fā)明進一步詳細說明。
1) 為了計算轉(zhuǎn)發(fā)優(yōu)先度,所有節(jié)點記錄自己的通信半徑R,以及在網(wǎng)絡(luò)啟動時自己的
初始能量^;
2) 數(shù)據(jù)分組包含發(fā)送節(jié)點的位置信息字段和目標節(jié)點的位置信息字段。對于需要發(fā)送 (或轉(zhuǎn)發(fā))的數(shù)據(jù)分組,發(fā)送節(jié)點把自己的位置信息寫入到數(shù)據(jù)分組中發(fā)送節(jié)點的位置信
息字段。如果發(fā)送節(jié)點是數(shù)據(jù)源節(jié)點,把目標節(jié)點的位置信息寫入數(shù)據(jù)分組中目標節(jié)點的 位置信息字段;如果發(fā)送節(jié)點是轉(zhuǎn)發(fā)數(shù)據(jù)分組的節(jié)點,數(shù)據(jù)分組中目標節(jié)點的位置信息字 段已經(jīng)是目標節(jié)點的位置信息,無需修改。同時,通過廣播方式發(fā)送數(shù)據(jù)分組,數(shù)據(jù)分組 的MAC層地址是廣播地址;
3) 接收到數(shù)據(jù)分組的接收節(jié)點i,根據(jù)數(shù)據(jù)分組中發(fā)送節(jié)點的位置信息、目標節(jié)點的
位置信息和自身的位置信息,計算發(fā)送節(jié)點到目標節(jié)點的距離",接收節(jié)點i到目標節(jié)點
的距離"',以及接收節(jié)點i與發(fā)送節(jié)點之間的距離"';
4) 接收節(jié)點i判斷本身到目標節(jié)點的距離,如果接收節(jié)點i到目標節(jié)點的距離大于或
等于發(fā)送節(jié)點到目標節(jié)點的距離,S卩"《《時,接收節(jié)點丟掉這個數(shù)據(jù)分組,不作進-步的處理。否則,轉(zhuǎn)入第五步;
5)接收節(jié)點i讀取當前自身的剩余能量《,根據(jù)下式計算它的轉(zhuǎn)發(fā)優(yōu)先度Pj;.:
Pr =
d —《e , , ^ -j_《>o
A五。^ (Pi;e[o,i])
0 , d-《so
6)接收節(jié)點i根據(jù)轉(zhuǎn)發(fā)優(yōu)先度的計算結(jié)果,啟動一個定時器進行數(shù)據(jù)轉(zhuǎn)發(fā),定時器的 初始值反比于優(yōu)先度的數(shù)值。
每個轉(zhuǎn)發(fā)優(yōu)先度大于零的接收節(jié)點中均啟動一個定時器,定時器按照減少方式工作
如果在定時器值減少并沒有為零過程中,收到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息(如其 它節(jié)點發(fā)送通告聲明自己是這個數(shù)據(jù)分組的下一跳轉(zhuǎn)發(fā)節(jié)點,或其它節(jié)點轉(zhuǎn)發(fā)這個數(shù)據(jù)分
組等),本接收節(jié)點放棄成為下一跳轉(zhuǎn)發(fā)節(jié)點;如果在定時器值減少為零過程中,沒有收 到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息,本接收節(jié)點在定時器數(shù)值為零時成為這個數(shù)據(jù)分 組的下一跳轉(zhuǎn)發(fā)節(jié)點。
權(quán)利要求
1. 一種無線自組織網(wǎng)絡(luò)中基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法,其步驟為1)發(fā)送節(jié)點發(fā)送的數(shù)據(jù)分組中攜帶本身的位置信息和目標節(jié)點的位置信息;2)接收到數(shù)據(jù)分組的接收節(jié)點根據(jù)發(fā)送節(jié)點的位置信息、目標節(jié)點的位置信息和自身的位置信息,計算發(fā)送節(jié)點到目標節(jié)點的距離d,接收節(jié)點到目標節(jié)點的距離di,接收節(jié)點與發(fā)送節(jié)點之間的距離ri;3)接收節(jié)點根據(jù)距離d、di和ri設(shè)定接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度,進行數(shù)據(jù)分組的轉(zhuǎn)發(fā)。
2. 如權(quán)利要求1所述的方法,其特征在于所述數(shù)據(jù)分組包含發(fā)送節(jié)點的位置信息字段和 目標節(jié)點的位置信息字段。
3. 如權(quán)利要求2所述的方法,其特征在于所述距離"《《時,設(shè)定所述接收節(jié)點優(yōu)先度為 0,丟棄所述數(shù)據(jù)分組。
4. 如權(quán)利要求2所述的方法,其特征在于所述距離">《時,其特征在于所述接收節(jié)點讀 取當前自身的剩余能量^,根據(jù)距離"、《、"'和能量£'設(shè)定所述接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度。
5. 如權(quán)利要求4所述的方法,其特征在于所述接收節(jié)點記錄接收節(jié)點記錄在網(wǎng)絡(luò)啟動時自己的初始能量&,以及通信半徑R,根據(jù)Pi^^^&i, 《>0 (Pi;e
)設(shè)定所述 接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度Pj;。
6. 如權(quán)利要求5所述的方法,其特征在于所述接收節(jié)點內(nèi)設(shè)置一個定時器,根據(jù)轉(zhuǎn)發(fā)優(yōu) 先度的值設(shè)置所述定時器的值,進行數(shù)據(jù)分組的轉(zhuǎn)發(fā)。
7. 如權(quán)利要求6所述的方法,其特征在于所述定時器按照定時器值減少方式工作。
8. 如權(quán)利要求7所述的方法,其特征在于所述定時器的工作方式為1) 在定時器值減少并沒有為零過程中,收到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息,則 本接收節(jié)點放棄成為下一跳轉(zhuǎn)發(fā)節(jié)點;2) 在定時器值減少為零過程中,沒有收到其它節(jié)點成為下一跳轉(zhuǎn)發(fā)節(jié)點的信息,則本 接收節(jié)點在定時器數(shù)值為零時成為這個數(shù)據(jù)分組的下一跳轉(zhuǎn)發(fā)節(jié)點,通告自己成為下一跳 轉(zhuǎn)發(fā)節(jié)點,進行數(shù)據(jù)分組的轉(zhuǎn)發(fā)。
9. 如權(quán)利要求8所述的方法,其特征在于所述數(shù)據(jù)分組的發(fā)送方式為廣播方式,所述數(shù) 據(jù)分組的MAC層地址為廣播地址。
全文摘要
本發(fā)明公開了一種無線自組織網(wǎng)絡(luò)中基于接收者路由的數(shù)據(jù)轉(zhuǎn)發(fā)方法,本發(fā)明綜合考慮了接收節(jié)點離目標節(jié)點的距離、接收節(jié)點的額外覆蓋范圍以及接收節(jié)點的剩余能量三個因素計算接收節(jié)點的轉(zhuǎn)發(fā)優(yōu)先度,接收節(jié)點根據(jù)轉(zhuǎn)發(fā)優(yōu)先度的計算結(jié)果,啟動一個定時器進行數(shù)據(jù)轉(zhuǎn)發(fā),本發(fā)明的優(yōu)先度計算更簡單,有利于及時選擇合適的接收節(jié)點做為下一跳的轉(zhuǎn)發(fā)節(jié)點,提高數(shù)據(jù)轉(zhuǎn)發(fā)的成功概率,增強了數(shù)據(jù)轉(zhuǎn)發(fā)的可靠性。
文檔編號H04L12/56GK101471864SQ20071030457
公開日2009年7月1日 申請日期2007年12月28日 優(yōu)先權(quán)日2007年12月28日
發(fā)明者孫利民, 連 李, 皇甫偉, 蔣文濤 申請人:中國科學院軟件研究所