專利名稱:基于梯度的無線傳感器網(wǎng)絡(luò)拓撲維護方法和分組轉(zhuǎn)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線傳感器網(wǎng)絡(luò),特別涉及一種無線傳感器網(wǎng)絡(luò)的數(shù)據(jù)傳輸方法。
背景技術(shù):
無線傳感網(wǎng)具有無線傳輸環(huán)境惡劣、拓撲動態(tài)性強等特點,拓撲維護是無線傳感 網(wǎng)中的一項重要技術(shù)。高效的拓撲維護技術(shù)可以提高數(shù)據(jù)傳輸可靠性和實時性。已有拓 撲維護技術(shù)主要分為兩類,一類是基于功率調(diào)節(jié)的拓撲控制方法,通過控制各個傳感器節(jié) 點的發(fā)射功率,生成稀疏、連通且具有其他良好特性的全網(wǎng)拓撲,這類技術(shù)包括LMST、LSPT、 CBTC-( θ )、C0NNNECT等算法。前三個算法是屬于數(shù)據(jù)局部算法(Localized algorithm), 第四個是基于全局拓撲信息的集中式算法。另一類是生成全網(wǎng)的最小(或近似最小)連通支 撐集。一個網(wǎng)絡(luò)的一個支撐集指網(wǎng)絡(luò)中的每個節(jié)點或者屬于這個支撐集合,或者是這個支 撐集中某個節(jié)點的鄰居節(jié)點。一個連通支撐集指屬于這個支撐集內(nèi)的節(jié)點能夠形成一個連 通的子網(wǎng)。最小連通支撐集指所需節(jié)點數(shù)最小的連通支撐集,這是一個NP-hard問題。已 有構(gòu)建無線網(wǎng)絡(luò)的近似最小連通支撐集算法多是基于ID、兩跳范圍拓撲等信息。上述拓撲維護方法都是基于各向同性的方式來維護全網(wǎng)拓撲——即通信的目的 端可能是網(wǎng)絡(luò)中的任意節(jié)點,也可能處在網(wǎng)絡(luò)中的任意位置。這一特點沒有充分考慮無線 傳感網(wǎng)數(shù)據(jù)“Multi-to-one”的特性,即眾多的傳感器節(jié)點到單個sink的數(shù)據(jù)匯報。結(jié)合 這一方向性數(shù)據(jù)匯報特性,有可能能夠大大降低拓撲維護開銷,并保持良好的路由性能。
發(fā)明內(nèi)容
本發(fā)明的目的是發(fā)明一種能夠保持高爐有效率、又能降低拓撲維護開銷的拓撲維 護方法。這種拓撲維護方法面向的無線傳感器網(wǎng)路由多個傳感器節(jié)點、單個或多個sink 節(jié)點組成,對于其中的一個節(jié)點X,其剩余能量記做Ex ;對于網(wǎng)絡(luò)中的一條鏈路(u,ν),實現(xiàn) 從u到ν的成功通信所需的最小功率記做Puv ;并且,要求每個傳感器節(jié)點χ保持其1跳鄰 居節(jié)點列表。為了降低鄰居節(jié)點間交互短控制信息的開銷,每個節(jié)點可以為鄰居節(jié)點建立 本地編號,從而縮短地址空間,并且每個節(jié)點了解自己的鄰居節(jié)點為自己分配的本地地址 編號?;谏鲜霏h(huán)境,本發(fā)明的方法分為兩部分,第一是梯度的建立,第二是基于該梯度 的拓撲維護方法。梯度的建立過程為sink節(jié)點周期性向網(wǎng)絡(luò)泛洪一條hterest消息,該hterset 消息中攜帶包的序列號和已走過的路徑代價,所述的路徑代價計算的是反向路徑代價。傳 感器節(jié)點收到多條hterest消息,從中選取代價最小的一個,并將發(fā)送給自己該hterest 消息的節(jié)點作為上一跳節(jié)點;待^terest消息包中的變量更新后,當(dāng)前節(jié)點轉(zhuǎn)發(fā)該包,每 個節(jié)點只轉(zhuǎn)發(fā)一次。上述過程就是建立了傳感器節(jié)點到sink節(jié)點的梯度信息,具體梯度值就是interest所走過路徑的反向路徑代價?;谏鲜龇椒ń⒌奶荻龋捎玫耐負渚S護方法是網(wǎng)絡(luò)中每個節(jié)點只維護自 己到父節(jié)點和備用父節(jié)點的鏈路,以及可能的子節(jié)點鏈路。多次沒有父節(jié)點的hello包,則 采用備用父節(jié)點;多次也沒有備用父節(jié)點,則從鄰居中選擇滿足條件的備用父節(jié)點。Interest所穿越的一條路徑P=( 1,2,3,···, j)的代價計算方法如下 Cost(P)= Σ (i;J) eP (Pm/Ej)。所述的父節(jié)點和備用父節(jié)點的選擇方法是對于節(jié)點X來說,它選擇自己到達 sink最短路徑上的下一跳作為其父節(jié)點,選擇所有其他鄰居節(jié)點中,滿足如下條件的節(jié)點 y作為其備用父節(jié)點(1)由χ經(jīng)y到達sink的路徑代價低于經(jīng)由其他剩余鄰居(χ的父節(jié) 點除外)的路徑,(2)從y到達sink的最小路徑代價小于從χ到達sink的最小路徑代價?;谏鲜龅奶荻?,優(yōu)選的節(jié)點分組轉(zhuǎn)發(fā)方法是當(dāng)一個節(jié)點有分組需要發(fā)送時,它 將分組投遞到可行下一跳(父節(jié)點優(yōu)先,備用父節(jié)點優(yōu)先級緊隨其后)中,路徑代價最小的 那個。收到該分組的節(jié)點持續(xù)執(zhí)行這一過程,直到分組到達sink節(jié)點,或者到達某中間節(jié) 點,由于發(fā)生路徑中斷且所有梯度降低的方向都已經(jīng)不可行的情況下丟棄分組。本發(fā)明充分考慮了無線傳感網(wǎng)的數(shù)據(jù)匯聚特性,設(shè)計的拓撲維護方案結(jié)合梯度特 性,采用梯度降低的方向進行鏈路維護,可以很好地適應(yīng)鏈路動態(tài)性強的無線傳感器網(wǎng)絡(luò), 并能夠控制協(xié)議開銷、保持高的路由性能。
具體實施例方式本發(fā)明面向由多個傳感器節(jié)點、單個或多個sink節(jié)點組成的無線傳感器網(wǎng)絡(luò)。具 有多個sink節(jié)點的無線傳感網(wǎng),通過Voronoi Scoping方法,仍然可以劃分成每個區(qū)域內(nèi) 多傳感器節(jié)點和單sink節(jié)點的場景,并且每個傳感器節(jié)點屬于和自己最鄰近的sink節(jié)點 所處區(qū)域。因此,本發(fā)明具有普遍意義,以下是單sink傳感器網(wǎng)絡(luò)的情況。每個傳感器節(jié)點具備功率控制能力,并可以根據(jù)通信鄰居的遠近自適應(yīng)地調(diào)節(jié)發(fā) 射功率。因此,本發(fā)明的拓撲維護方法屬于功率控制型拓撲維護方法。對于一個節(jié)點X,其 剩余能量記做Ex。對于網(wǎng)絡(luò)中的一條鏈路(u,ν),實現(xiàn)從u到ν的成功通信所需的最小功 率記做Puv。本發(fā)明設(shè)計的拓撲維護方案要求每個傳感器節(jié)點保持其1跳鄰居節(jié)點列表。 為了降低鄰居節(jié)點間交互短控制信息的開銷,每個節(jié)點可以為鄰居節(jié)點建立本地編號,從 而縮短地址空間,并且每個節(jié)點了解自己的鄰居節(jié)點為自己分配的本地地址編號。本發(fā)明給出的拓撲維護方法包括兩個部分。第一部分是梯度建立過程;第二 部分是基于梯度的拓撲維護方法。梯度建立過程
Sink節(jié)點周期性的向網(wǎng)絡(luò)泛洪一條hterest消息(如每30秒一次)。每個interest 消息攜帶包的序列號(由sink節(jié)點本地維護、單調(diào)遞增、初值為1)、已經(jīng)走過的路徑的代 價。hterest所穿越的一條路徑P=( 1,2, 3, ···, j)的代價計算方法如下Cost (P) = Σ (i;J) eP (PjiAj)。這里,計算的是反向路徑的代價,這是因為反向路徑將用于從sensor到sink 的數(shù)據(jù)傳輸。如果一個傳感器節(jié)點收到多條interest消息,則從中選擇代價最小的一個, 并將發(fā)送給自己該interest的節(jié)點作為上一跳節(jié)點。在對interest包中的變量做必要更新之后(如路徑代價更新),當(dāng)前節(jié)點將該interest轉(zhuǎn)發(fā)出去。每個傳感器節(jié)點僅轉(zhuǎn)發(fā)該 interest 一次。上述過程即可以建立傳感器節(jié)點到sink節(jié)點的梯度信息,具體梯度值就是 interest所走過路徑的反向路徑代價?;谔荻鹊耐負渚S護方法
由于無線鏈路動態(tài)時變特性,節(jié)點間鏈路可能中斷、節(jié)點可能失效,因而需要每個節(jié)點 周期性維護自己到父節(jié)點的鏈路;同時為了抑制可能的鏈路中斷的負面影響,每個節(jié)點將 保持一個可用的備用父節(jié)點。備用父節(jié)點的選擇方法如下對于節(jié)點X,在其鄰居中(X的 父節(jié)點除外),選擇節(jié)點y作為X的備用父節(jié)點,且y滿足如下條件(1)由X經(jīng)y到達sink 的路徑代價低于經(jīng)由除父節(jié)點以外的其他鄰居的路徑代價,(2)從y到達sink的最小路徑 代價小于從χ到達sink的最小路徑代價。條件(2)的引入是為了避免路由環(huán)路。基于梯度的局部拓撲維護方法如下。網(wǎng)絡(luò)中的每個節(jié)點(如χ)周期性發(fā)送hello 包(如每3秒一次),其中包含χ的ID、x的父節(jié)點及備用父節(jié)點的ID (可以是由χ重新編址 的父節(jié)點和備用父節(jié)點ID),廣播該hello包所用功率為從χ到達父節(jié)點和備用父節(jié)點中較 大的一個;如果χ還作為其他節(jié)點的父節(jié)點或備用父節(jié)點的話,在其廣播的hello包中,除 了包含自己的父節(jié)點和備用父節(jié)點之外,還需要包含選擇自己作為父節(jié)點或備用父節(jié)點的 節(jié)點ID,所采用的發(fā)射功率需要足夠到達上述節(jié)點中最遠的那個。收到父節(jié)點或備用父節(jié) 點的hello包之后,節(jié)點χ可以認定自己仍然可以通過父節(jié)點(優(yōu)先)或備用父節(jié)點進行數(shù) 據(jù)匯報。如果連續(xù)多次沒有收到父節(jié)點的hello包,則采用備用父節(jié)點;如果也連續(xù)多次沒 有收到備用父節(jié)點的hello包,則χ從鄰居中選擇滿足上述條件的新的備用父節(jié)點,直到找 到滿足條件的備用父節(jié)點,或鄰居中不存在滿足上述條件的備用父節(jié)點,這種情況下,χ將 無法進行上行匯報,直到等待sink節(jié)點下次廣播interest包重新建立新的梯度。這種基于梯度的局部拓撲維護方法可以大大降低每個節(jié)點為發(fā)送hello包所需 功率,也可以縮小hello包的尺寸?;谔荻鹊膬?yōu)化分組轉(zhuǎn)發(fā)方法
當(dāng)一個節(jié)點有分組需要發(fā)送時,它將分組投遞到可行下一跳(父節(jié)點優(yōu)先,備用父節(jié)點 優(yōu)先級緊隨其后)中,路徑代價最小的那個。收到該分組的節(jié)點持續(xù)執(zhí)行這一過程,直到分 組到達sink節(jié)點,或者到達某中間節(jié)點,由于發(fā)生路徑中斷且所有梯度降低的方向都已經(jīng) 不可行——這種情況下,丟棄分組。
權(quán)利要求
1.基于梯度的無線傳感器網(wǎng)絡(luò)拓撲維護方法,面向的無線傳感器網(wǎng)路由多個傳感器節(jié) 點、單個或多個Sink節(jié)點組成,對于其中的一個節(jié)點X,其剩余能量記做Ex;對于網(wǎng)絡(luò)中的 一條鏈路(u,ν),實現(xiàn)從u到ν的成功通信所需的最小功率記做Puv ;并且,要求每個傳感器 節(jié)點χ保持其1跳鄰居節(jié)點列表;每個節(jié)點可以為鄰居節(jié)點建立本地編號,從而縮短地址空 間,并且每個節(jié)點了解自己的鄰居節(jié)點為自己分配的本地地址編號;其特征是具有兩部分,第一是梯度的建立,第二是基于該梯度的拓撲維護方法;梯度的建立過程為sink節(jié)點周期性向網(wǎng)絡(luò)泛洪一條hterest消息,該hterset消 息中攜帶包的序列號和已走過的路徑代價,所述的路徑代價計算的是反向路徑代價;傳感 器節(jié)點收到多條hterest消息,從中選取代價最小的一個,并將發(fā)送給自己該hterest消 息的節(jié)點作為上一跳節(jié)點;待^terest消息包中的變量更新后,當(dāng)前節(jié)點轉(zhuǎn)發(fā)該包,每個 節(jié)點只轉(zhuǎn)發(fā)一次;基于上述方法建立的梯度,所采用的拓撲維護方法是網(wǎng)絡(luò)中每個節(jié)點只維護自己到 父節(jié)點和備用父節(jié)點的鏈路,以及可能的子節(jié)點鏈路;多次沒有父節(jié)點的hello包,則采用 備用父節(jié)點;多次也沒有備用父節(jié)點,則從鄰居中選擇滿足條件的備用父節(jié)點。
2.根據(jù)權(quán)利要求1所述的基于梯度的無線傳感器網(wǎng)絡(luò)拓撲維護方法,其特征是 hterest所穿越的一條路徑P=( 1,2, 3, ···, j)的代價計算方法如下Cost (P) = Σ (i;J)eP (Pji/Ej)。
3.根據(jù)權(quán)利要求1所述的基于梯度的無線傳感器網(wǎng)絡(luò)拓撲維護方法,其特征是,所述 的父節(jié)點和備用父節(jié)點的選擇方法是對于節(jié)點χ來說,它選擇自己到達sink最短路徑上 的下一跳作為其父節(jié)點,選擇所有其他鄰居節(jié)點中,滿足如下條件的節(jié)點1作為其備用父 節(jié)點(1)由χ經(jīng)y到達sink的路徑代價低于經(jīng)由其他剩余鄰居(χ的父節(jié)點除外)的路徑, (2)從y到達sink的最小路徑代價小于從χ到達sink的最小路徑代價。
4.基于梯度的無線傳感器網(wǎng)絡(luò)節(jié)點分組轉(zhuǎn)發(fā)方法是當(dāng)一個節(jié)點有分組需要發(fā)送時, 它將分組投遞到可行下一跳(父節(jié)點優(yōu)先,備用父節(jié)點優(yōu)先級緊隨其后)中,路徑代價最小 的那個;收到該分組的節(jié)點持續(xù)執(zhí)行這一過程,直到分組到達sink節(jié)點,或者到達某中間 節(jié)點,由于發(fā)生路徑中斷且所有梯度降低的方向都已經(jīng)不可行的情況下丟棄分組。
全文摘要
本發(fā)明揭示了一種基于梯度的無線傳感器網(wǎng)絡(luò)拓撲維護方法,涉及無線傳感器網(wǎng)絡(luò),其特征是采用反向路徑代價的計算方法得到路徑代價,由此建立梯度;基于該梯度,每個節(jié)點周期性的維護自己的父節(jié)點和備用父節(jié)點的鏈路。節(jié)點轉(zhuǎn)發(fā)分組時,將分組投遞到可行下一跳中,路徑代價最小的那一個。本發(fā)明考慮了無線傳感網(wǎng)的數(shù)據(jù)匯聚特性,采用梯度降低的方向進行鏈路維護,可以很好的適應(yīng)鏈路動態(tài)性強的無線傳感器網(wǎng)絡(luò),并能控制協(xié)議開銷、保持高的路由性能。
文檔編號H04W84/18GK102088751SQ20111005464
公開日2011年6月8日 申請日期2011年3月8日 優(yōu)先權(quán)日2011年3月8日
發(fā)明者王嵚, 趙壯, 高雪 申請人:無錫泛聯(lián)物聯(lián)網(wǎng)科技股份有限公司