專利名稱:一種基于移動節(jié)點的無線傳感器網(wǎng)絡(luò)分簇拓?fù)淇刂品椒?br>
技術(shù)領(lǐng)域:
本發(fā)明涉及一種無線傳感器網(wǎng)絡(luò)拓?fù)浞椒ǎ饕捎没诓粚ΨQ能量分布和引入移動節(jié)點的方法來解決無線傳感器網(wǎng)絡(luò)信息高效傳輸?shù)膯栴},屬于分布式計算、自組織、拓?fù)淇刂平徊婕夹g(shù)應(yīng)用領(lǐng)域。
背景技術(shù):
無線傳感器網(wǎng)絡(luò)是由大量節(jié)點組成的特殊的無線網(wǎng)絡(luò),它實現(xiàn)了復(fù)雜環(huán)境下的數(shù)據(jù)感測、收集與分析等功能。無線傳感器網(wǎng)絡(luò)中的節(jié)點具有體積小、計算能力有限、依靠無線電波通訊、電池供電等特點,這些特性決定了無線傳感器網(wǎng)絡(luò)要在具體環(huán)境中以最優(yōu)的方式工作,還有許多待解決的問題。拓?fù)淇刂剖菬o線傳感器網(wǎng)絡(luò)中重要的優(yōu)化方法。調(diào)整節(jié)點信號發(fā)射功率和規(guī)劃節(jié)點的睡眠是拓?fù)淇刂浦械闹饕椒āT跓o線傳感器網(wǎng)絡(luò)中,拓?fù)淇刂频闹饕康氖窃诒WC網(wǎng)絡(luò)連通性的前提下,通過改善網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),達(dá)到優(yōu)化網(wǎng)絡(luò)的性能、提高穩(wěn)定性、降低能量消耗,延長網(wǎng)絡(luò)生命期等目的。在不同的研究各有側(cè)重,現(xiàn)將這些目標(biāo)總結(jié)如下
連通性拓?fù)淇刂频淖罨疽笫潜WC網(wǎng)絡(luò)的連通性,否則,破壞了網(wǎng)絡(luò)的連通性的拓?fù)淇刂茖绊懙礁蠈討?yīng)用的可用性。這一目標(biāo)可以更明確地表示為,拓?fù)淇刂埔WC在最大傳輸圖中通過若干跳可達(dá)的節(jié)點在生成的拓?fù)淇刂茍D中仍然可達(dá)。能源效率當(dāng)發(fā)送節(jié)點向接收節(jié)點傳送數(shù)據(jù),需要消耗能量,這種數(shù)據(jù)傳送中的能量開銷在節(jié)點的總能量開銷中比例很大,并且,保證正常通訊所需要的最小能量開銷隨著距離的增長呈指數(shù)級增長。因此,盡量降低能量開銷通常是拓?fù)?br>
控制在保證連通性的基礎(chǔ)上的最主要目標(biāo)。減少干擾節(jié)點間傳播介質(zhì)的共享性和開放性,可能帶來通訊干擾,也可能造成數(shù)據(jù)發(fā)送的沖突,從而產(chǎn)生大量重傳,這些都會造成額外的能量開銷。所以許多拓
撲控制研究的方案旨在通過合理設(shè)置節(jié)點的信號發(fā)射功率降低節(jié)點間的通訊干擾。網(wǎng)絡(luò)稀疏性無線節(jié)點的計算能力是有限的,所以保證網(wǎng)絡(luò)的稀疏性對于提高網(wǎng)絡(luò)的可擴(kuò)展性至關(guān)重要。通過保證網(wǎng)絡(luò)的稀疏性,即鏈路數(shù)和節(jié)點數(shù)的線性關(guān)系,可以降低路由協(xié)議進(jìn)行路由選擇時的復(fù)雜性,改善網(wǎng)絡(luò)的擴(kuò)展性。近幾年來,分布式無線傳感器網(wǎng)絡(luò)因其廣泛的應(yīng)用受到研究領(lǐng)域的重視。在環(huán)境監(jiān)控、工業(yè)控制、智能家居等常見的應(yīng)用中領(lǐng)域,分布式無線傳感器網(wǎng)絡(luò)往往比集中式效率更高。但是隨著研究的深入,我們面臨著進(jìn)一步提高效率和節(jié)省成本的需求壓力。目前在研究和應(yīng)用領(lǐng)域引入移動節(jié)點還比較少見,但移動節(jié)點的應(yīng)用漸漸成為解決無線傳感器網(wǎng)絡(luò)眾多問題的一個突破點和亮點。本發(fā)明將分布式控制和移動節(jié)點相結(jié)合,基于不對稱能量分布,提出了一種高效率、自組織的拓?fù)淇刂品桨福谘芯亢蛯嶋H應(yīng)用領(lǐng)域有比較高的參考價值
發(fā)明內(nèi)容
技術(shù)問題本發(fā)明的目的是應(yīng)用移動傳感器節(jié)點實現(xiàn)一種高效的無線傳感器網(wǎng)絡(luò)拓?fù)淇刂茀f(xié)議。本發(fā)明基于分簇式兩級網(wǎng)絡(luò)結(jié)構(gòu),在協(xié)議運行過程中引入分布式思想,使用不對稱能量分布,實現(xiàn)無線傳感器網(wǎng)絡(luò)良好的連通性、穩(wěn)定性和低能量消耗,對延長網(wǎng)絡(luò)生命期起到關(guān)鍵作用。本協(xié)議為設(shè)計高效無線傳感器網(wǎng)絡(luò)拓?fù)淇刂铺峁┝艘环N新設(shè)計思想,解決了常用拓?fù)淇刂品椒ǖ牟蛔?。技術(shù)方案本發(fā)明所述基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒ɑ诘乩砦恢貌捎靡苿庸?jié)點改善丟包率高的弱連接,將不對稱的能量分布引入分布式簇頭競爭,極大提高了網(wǎng)絡(luò)的連接性和覆蓋性,延遲了網(wǎng)絡(luò)生命期。本發(fā)明使用兩級時間輪片方式進(jìn)行簇內(nèi)靜態(tài)拓?fù)淇刂疲刮恢孟嘟膬蓚€普通節(jié)點對外表現(xiàn)為一個節(jié)點,進(jìn)一步節(jié)省了能耗。一、體系結(jié)構(gòu)
本發(fā)明所述的基于不對稱能量分布和移動節(jié)點的無線傳感器網(wǎng)絡(luò)分簇拓?fù)淇刂品椒ň哂袃杉壏执鼐W(wǎng)絡(luò)結(jié)構(gòu)。無線傳感器網(wǎng)絡(luò)中使用的節(jié)點分為移動節(jié)點和普通節(jié)點。地理位置很近的兩個普通節(jié)點將配對交替工作,對外表現(xiàn)為一個節(jié)點。網(wǎng)絡(luò)中移動節(jié)點基于剩余能量參與簇頭的競爭,和相關(guān)普通節(jié)點維持簇結(jié)構(gòu),延長無線傳感器網(wǎng)絡(luò)的生命期。在無線傳感器網(wǎng)絡(luò)運行過程中,空閑移動節(jié)點將移動到高丟包率的連接處進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),提高網(wǎng)絡(luò)的連通性。所述拓?fù)淇刂品椒ㄖ械墓?jié)點分為移動節(jié)點和普通節(jié)點,節(jié)點具備感知自己和鄰居節(jié)點地理位置的能力。普通節(jié)點的采用固定的信號覆蓋半徑,移動節(jié)點的信號能覆蓋所有節(jié)點。所述不對稱能量分布是指移動節(jié)點擁有遠(yuǎn)高于普通節(jié)點的能量,在簇頭競爭過程中移動節(jié)點成為簇頭的概率大于普通節(jié)點。所述拓?fù)淇刂品椒ㄖ忻總€移動節(jié)點都維護(hù)空閑移動節(jié)點表,空閑移動節(jié)點表以洪泛方式進(jìn)行動態(tài)更新。二、方法流程
I、網(wǎng)絡(luò)初始化 (I)普通節(jié)點配對
在向目標(biāo)區(qū)域隨機(jī)部署節(jié)點以后,地理位置距離小于特定閾值的兩個普通節(jié)點配成一對,形成一對的兩個節(jié)點交替工作,對外表現(xiàn)為一個節(jié)點。所述拓?fù)淇刂品椒ㄖ校魏我粋€普通節(jié)點最多只能參與到一個配對過程中,即節(jié)點形成的對與對之間沒有共同的節(jié)點。(2)選擇簇頭
啟動匯聚節(jié)點,匯聚節(jié)點向整個網(wǎng)絡(luò)廣播自己是匯聚節(jié)點。普通節(jié)點根據(jù)接自己的地理位置、鄰居節(jié)點數(shù)和距離匯聚節(jié)點的實際距離決定自己是否成為簇頭。所述拓?fù)淇刂品椒ㄖ?,移動?jié)點在網(wǎng)絡(luò)初始化過程不參與競爭成為簇頭。(3)形成簇
簇頭產(chǎn)生以后,每個簇頭以洪泛方式向整個網(wǎng)絡(luò)通告自己已成為“簇頭”,移動節(jié)點和普通節(jié)點根據(jù)能量與距離關(guān)系選擇距離自己最近的簇頭,形成簇結(jié)構(gòu)。簇內(nèi)的移動節(jié)點統(tǒng)計獲得各個移動節(jié)點信息,形成空閑移動節(jié)點表IdleTable。
所述空閑移動節(jié)點表IdleTable包含了網(wǎng)絡(luò)中的空閑移動節(jié)點及其地理位置信2、簇的維護(hù)
(I)簇內(nèi)靜態(tài)拓?fù)淇刂?br>
簇內(nèi)普通節(jié)點按照時間輪片方式工作,簇內(nèi)若存在移動節(jié)點,則移動節(jié)點始終處于工作狀態(tài)。(2)移動節(jié)點拓?fù)淇刂?br>
簇結(jié)構(gòu)形成以后,網(wǎng)絡(luò)開始傳輸信息。網(wǎng)絡(luò)中節(jié)點以觸發(fā)方式進(jìn)行計算弱連接處相關(guān)節(jié)點的丟包率,直到該連接處得丟包率降到可容忍程度才停止計算丟包率。在該過程中,若丟包率大于既定的閾值,則本節(jié)點向其所在簇的簇頭提交服務(wù)請求。①簇頭接收到服務(wù)請求以后,簇頭判斷本簇內(nèi)的移動節(jié)點數(shù)目Count
若本簇內(nèi)移動節(jié)點數(shù)目Count大于等于特定閾值,則簇頭只將服務(wù)請求發(fā)送給本簇內(nèi)的空閑移動節(jié)點。如果本簇內(nèi)沒有空閑移動節(jié)點,則忽略服務(wù)請求。若本簇內(nèi)移動節(jié)點數(shù)目Count大于0且小于特定閾值,簇頭將服務(wù)請求信息發(fā)送給本簇內(nèi)的移動節(jié)點。若本簇內(nèi)移動節(jié)點數(shù)目Count等于0,簇頭將服務(wù)請求以多跳方式發(fā)送到鄰近簇頭,直到發(fā)送到其簇內(nèi)含有移動節(jié)點的簇頭。該簇頭判斷自己是否為移動節(jié)點若果不是移動節(jié)點就將服務(wù)請求隨機(jī)發(fā)送給該簇內(nèi)的一個移動節(jié)點;如果該簇頭是移動節(jié)點就不轉(zhuǎn)發(fā)。②接收到服務(wù)請求的移動節(jié)點判斷自己是否是忙碌狀態(tài)
若該移動節(jié)點處于空閑狀態(tài)Idle,則該移動節(jié)點驅(qū)動自己到弱連接的中間地理位置進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),加強(qiáng)連接,同時設(shè)置自己的工作狀態(tài)為忙碌Busy,洪泛通知各移動節(jié)點更新空閑移動節(jié)點表IdleTable。若該移動節(jié)點處于忙碌狀態(tài)Busy,則根據(jù)其維持的空閑移動節(jié)點表將服務(wù)請求轉(zhuǎn)發(fā)給距離目標(biāo)位置最近的一個空閑移動節(jié)點,并啟動更新空閑移動節(jié)點表IdleTable。所述拓?fù)淇刂品椒ㄖ?,服?wù)請求信息包含了丟失數(shù)據(jù)包的兩個節(jié)點的地理位置信
肩、O本發(fā)明所述移動節(jié)點中維持的空閑移動節(jié)點表不包含該移動節(jié)點自身。3、簇的重構(gòu) (I)重構(gòu)過程的觸發(fā)
簇頭通知簇內(nèi)節(jié)點進(jìn)行簇重構(gòu)。當(dāng)前簇頭根據(jù)簇內(nèi)各個節(jié)點的剩余能量和鄰居節(jié)點數(shù)目選擇新簇頭。剩余能量越高,鄰居節(jié)點數(shù)目越多的簇內(nèi)節(jié)點,成為新簇頭的概率越高。所述方法采用不對稱的能量分布,移動節(jié)點擁有高于普通節(jié)點能量,簇內(nèi)的移動節(jié)點成為新簇頭的概率比普通節(jié)點大。(2)新簇頭的產(chǎn)生
每個簇重啟簇的重構(gòu)過程時,先判斷給簇內(nèi)有沒有移動節(jié)點。如果存在移動節(jié)點,則移動節(jié)點以高于普通節(jié)點的概率參與競爭簇頭節(jié)點。本簇內(nèi)的移動節(jié)點在接收到進(jìn)行簇頭選擇時,將自身的狀態(tài)設(shè)置為空閑Idle,并更新空閑移動節(jié)點表IdleTable。在新簇頭的選擇過程中,如果有移動節(jié)點成為簇頭,則將該移動節(jié)點的工作狀態(tài)設(shè)置為忙碌Busy,并更新空閑移動節(jié)點表IdleTable。本發(fā)明所述協(xié)議中簇的重構(gòu)過程完成在本簇內(nèi)重新選擇簇頭。本發(fā)明的基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒ǎ诜执厥絻杉壨負(fù)淇刂七^程中引入分布式思想,使用不對稱能量分布的移動節(jié)點,實現(xiàn)延長無線傳感器網(wǎng)絡(luò)生命期,對起到關(guān)鍵作用,所述方法包含的步驟為
第一階段,網(wǎng)絡(luò)初始化,完成第一次選擇簇頭和形成簇結(jié)構(gòu)
步驟I).普通節(jié)點的配對節(jié)點感知鄰居節(jié)點的地理位置,距離相近的兩個普通節(jié)點自組織配成一對,在以后的生命期中交替工作;
步驟I) 選擇簇頭啟動匯聚節(jié)點,匯聚節(jié)點根據(jù)普通節(jié)點的剩余能量和地理位置信息,在普通節(jié)點中產(chǎn)生均勻分布的簇頭節(jié)點;
步驟2).簇的形成每個無線傳感器節(jié)點根據(jù)能量與距離的關(guān)系選擇距離自己最近的簇頭,形成簇;
第二階段,簇的維護(hù)簇結(jié)構(gòu)形成以后,網(wǎng)絡(luò)開始按照相關(guān)的路由協(xié)議傳輸信息,具體拓?fù)淇刂品椒ㄈ缦?br>
步驟3).簇內(nèi)靜態(tài)拓?fù)淇刂拼貎?nèi)普通節(jié)點按照時間輪片方式工作,簇內(nèi)若存在移動節(jié)點,則移動節(jié)點始終處于工作狀態(tài);
步驟4).移動節(jié)點拓?fù)淇刂苼G包率大的鏈接處的節(jié)點,向簇內(nèi)含有移動節(jié)點的簇頭提交服務(wù)請求,請求相關(guān)移動節(jié)點移動到丟包率大的地方進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);
第三階段,簇的重構(gòu)
步驟5).重構(gòu)過程的觸發(fā)簇頭計數(shù)和特定情況下服務(wù)請求失敗觸發(fā)簇的重構(gòu);
步驟6).新簇頭的產(chǎn)生簇的重構(gòu)任務(wù)啟動以后,當(dāng)前簇頭根據(jù)簇內(nèi)各個節(jié)點的剩余能量和鄰居節(jié)點數(shù)目選擇新簇頭;新簇頭產(chǎn)生以后,新簇頭將接替舊簇頭保持與其他簇頭或匯聚節(jié)點的連接性;
綜上所述,在匯聚節(jié)點引導(dǎo)網(wǎng)絡(luò)完成初始化后,網(wǎng)絡(luò)就開始了完全自組織運行,即在簇的重構(gòu)過程中,完成節(jié)點移動和不對稱能量的簇頭選擇。所述簇內(nèi)普通節(jié)點,按照時間輪片方式工作簇內(nèi)普通節(jié)點感知鄰居節(jié)點地理位置,完成不交叉配對;配對的兩個節(jié)點按周期交替工作,合作完成工作;配對的各個節(jié)點對和其他未配對的簇內(nèi)普通節(jié)點以平等的方式進(jìn)行時間輪片,交替向簇頭提交數(shù)據(jù)包。丟包率大的鏈接處的節(jié)點,向簇內(nèi)含有移動節(jié)點的簇頭提交服務(wù)請求,該簇頭在簇內(nèi)移動節(jié)點數(shù)目超過閾值且都處于忙碌狀態(tài)時,忽略服務(wù)請求,否則簇頭將服務(wù)請求發(fā)送給簇內(nèi)的移動節(jié)點;該移動節(jié)點判斷自己工作狀態(tài)若處于空閑狀態(tài),移動節(jié)點移動到丟包率大的兩個節(jié)點的中間地理位置,進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);若處于忙碌狀態(tài),移動節(jié)點在自己維護(hù)的空閑移動節(jié)點表中選擇一個距離目標(biāo)地理位置最近的移動節(jié)點,并向其發(fā)送服務(wù)請求,使其移動到目標(biāo)地理位置,即丟包率大的兩個節(jié)點的中間地理位置。簇頭計數(shù)和特定情況下服務(wù)請求失敗觸發(fā)簇的重構(gòu)當(dāng)前簇頭節(jié)點記錄自己發(fā)送的數(shù)據(jù)包數(shù)目,簇頭發(fā)送的數(shù)據(jù)包數(shù)目達(dá)到特定閾值后,啟動簇重構(gòu)任務(wù)裝入任務(wù)等待隊列,簇頭在完成當(dāng)前數(shù)據(jù)傳輸任務(wù)后,在任務(wù)等待隊列中調(diào)度并啟動簇的重構(gòu)任務(wù);當(dāng)前簇頭與其它簇頭間連接的丟包率超過閾值而產(chǎn)生服務(wù)請求,當(dāng)前簇頭在其簇內(nèi)的移動節(jié)點數(shù)大于等于既定閾值且各個移動節(jié)點都處于忙碌狀態(tài)時,忽略服務(wù)請求并觸發(fā)該簇進(jìn)行簇的重構(gòu)。有益效果本發(fā)明基于移動傳感器節(jié)點實現(xiàn)一種高效的無線傳感器網(wǎng)絡(luò)拓?fù)淇刂茀f(xié)議,移動傳感器節(jié)點移動到丟包率高的地方加強(qiáng)網(wǎng)絡(luò)連接。本發(fā)明基于分簇式兩級網(wǎng)絡(luò)結(jié)構(gòu),在協(xié)議運行過程中引入分布式思想,使用不對稱能量分布,最大限度地節(jié)省普通節(jié)點能量,延長網(wǎng)絡(luò)生命期,提高了網(wǎng)絡(luò)連通性。具體來說,本發(fā)明所述的路由協(xié)議具有如下的有益效果
(I)本發(fā)明所述分簇拓?fù)淇刂品椒ㄔ诜执氐木W(wǎng)絡(luò)結(jié)構(gòu)中引入移動節(jié)點,利用節(jié)點的可移動性,驅(qū)動移動節(jié)點到有需求的地方進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā),加強(qiáng)了連接,減少了數(shù)據(jù)包的丟失,維護(hù)了網(wǎng)絡(luò)的覆蓋范圍。(2)所述拓?fù)淇刂品椒ㄏ拗屏嗣總€簇內(nèi)可以擁有的最大移動節(jié)點數(shù)目,在自組織的方式下,實現(xiàn)了移動節(jié)點的均勻分布,極大可能地保障了每個簇的生命期和網(wǎng)絡(luò)的覆蓋范圍。(3)所述拓?fù)淇刂品椒ㄒ杂|發(fā)的方式計算丟包率和停止計算丟包率,直接有效,有利于節(jié)省能耗。(4)所述拓?fù)淇刂品椒ㄖ?,每個移動節(jié)點都維護(hù)一個空閑移動節(jié)點表,并由移動節(jié)點負(fù)責(zé)動態(tài)更新,減輕了普通節(jié)點的工作負(fù)擔(dān),利于延長網(wǎng)絡(luò)的生命期??臻e移動節(jié)點表的使用,實現(xiàn)了快速搜尋距離目標(biāo)位置最近的空閑移動節(jié)點。(5)本發(fā)明所述方法中普通節(jié)點使用固定的信號覆蓋半徑,而移動節(jié)點信號可以覆蓋全局網(wǎng)絡(luò),減少了功率控制帶來的計算延遲和能量消耗。(6)本發(fā)明使用不對稱能量分布條件下的簇頭競爭,剩余能量越多的節(jié)點成為簇頭的概率越大,所以移動節(jié)點成為簇頭的可能增多,實現(xiàn)了最大限度地節(jié)省普通節(jié)點能量, 延長網(wǎng)絡(luò)生命期。(7)所述分簇拓?fù)淇刂品椒ㄆ浯貎?nèi)普通節(jié)點使用兩級時間輪片工作方式,進(jìn)一步節(jié)省了普通節(jié)點能耗。
圖I、普通節(jié)點的配對行為示意圖。圖2、初始化形成簇結(jié)構(gòu)示意圖。圖3、簇內(nèi)移動節(jié)點數(shù)大于等于閾值且有空閑移動節(jié)點時拓?fù)淇刂剖疽鈭D。圖4、簇內(nèi)移動節(jié)點數(shù)大于等于閾值且無空閑移動節(jié)點時拓?fù)淇刂剖疽鈭D。圖5、簇內(nèi)移動節(jié)點數(shù)小于閾值且有空閑移動節(jié)點時拓?fù)淇刂剖疽鈭D。圖6、簇內(nèi)移動節(jié)點數(shù)小于閾值且無空閑移動節(jié)點時拓?fù)淇刂剖疽鈭D。圖7、計數(shù)觸發(fā)啟動簇的重構(gòu)示意圖。圖8、簇頭間丟包觸發(fā)啟動簇的重構(gòu)示意圖。
具體實施例方式下面對附圖本發(fā)明的某些實施例作更詳細(xì)的描述。I、網(wǎng)絡(luò)初始化 (I)普通節(jié)點配對各個普通節(jié)點基于地理位置信息分別計算自己到各個普通鄰居節(jié)點的距離。如圖I所示,若兩個普通節(jié)點的距離d小于特定的閾值,則兩個節(jié)點配成一對,否則不配對。任何一個普通節(jié)點最多只能參與到一個對中,即節(jié)點形成的對沒有交叉。形成一個對的兩個節(jié)點按照時間輪片的方式交替工作,如圖2所示。一個對的兩個節(jié)點自動配置成使用相同的ID號和相同的地理位置信息,對外表現(xiàn)為一個節(jié)點。(2)選擇簇頭
啟動匯聚節(jié)點,匯聚節(jié)點向整個網(wǎng)絡(luò)廣播自己是匯聚節(jié)點。普通節(jié)點根據(jù)接自己的地理位置、鄰居節(jié)點數(shù)和距離匯聚節(jié)點的實際距離決定自己是否成為簇頭。如圖2所示,在初始化過程中產(chǎn)生的簇頭都是普通節(jié)點。(3)形成簇
簇頭產(chǎn)生以后,每個簇頭以洪泛方式向整個網(wǎng)絡(luò)通告自己已成為“簇頭”,移動節(jié)點和普通節(jié)點根據(jù)能量與距離關(guān)系選擇距離自己最近的簇頭,形成簇結(jié)構(gòu)。簇頭統(tǒng)計本簇內(nèi)的移動節(jié)點數(shù)目Count。簇內(nèi)的移動節(jié)點統(tǒng)計獲得網(wǎng)絡(luò)中的空閑移動節(jié)點及其地理位置信息,形成空閑移動節(jié)點表IdleTable。2、簇的維護(hù)
簇結(jié)構(gòu)形成以后,網(wǎng)絡(luò)開始按照相關(guān)的路由協(xié)議傳輸信息,具體拓?fù)淇刂品椒ㄈ缦?(I)簇內(nèi)靜態(tài)拓?fù)淇刂?br>
簇內(nèi)普通節(jié)點按照時間輪片方式工作,簇內(nèi)若存在移動節(jié)點,則移動節(jié)點始終處于工作狀態(tài)。其中抱對的兩個普通節(jié)點以對外表現(xiàn)為一個節(jié)點的方式,接收簇頭分配的時間片。(2)移動節(jié)點拓?fù)淇刂?br>
①信息傳輸過程中,發(fā)送數(shù)據(jù)包的節(jié)點(包括普通節(jié)點和移動節(jié)點)在第一次發(fā)現(xiàn)數(shù)據(jù)包丟失,即未接收到ACK信息時,觸發(fā)本節(jié)點開始周期性地計算該鏈接處的丟包率。這個過程直到丟包率連續(xù)特定個數(shù)周期低于閾值時才以觸發(fā)方式結(jié)束。②在該過程中,若丟包率大于既定的閾值,則本節(jié)點向其所在簇的簇頭提交服務(wù)請求(若本節(jié)點為簇頭則提交給自己)。③簇頭接收到服務(wù)請求以后,簇頭判斷本簇內(nèi)的移動節(jié)點數(shù)目Count:
若本簇內(nèi)移動節(jié)點數(shù)目Count大于等于特定閾值,則簇頭只將服務(wù)請求發(fā)送給本簇內(nèi)的空閑移動節(jié)點,如圖3所示。如果本簇內(nèi)沒有空閑移動節(jié)點,則忽略服務(wù)請求,如圖4所
/Jn o若本簇內(nèi)移動節(jié)點數(shù)目Count大于0且小于特定閾值,簇頭將服務(wù)請求信息發(fā)送給本簇內(nèi)的移動節(jié)點,如圖5所示。若本簇內(nèi)移動節(jié)點數(shù)目Count等于0,如圖6所示,簇頭將服務(wù)請求以多跳方式發(fā)送到鄰近簇頭,直到發(fā)送到其簇內(nèi)含有移動節(jié)點的簇頭。該簇頭判斷自己是否為移動節(jié)點 若果不是移動節(jié)點,就將服務(wù)請求隨機(jī)發(fā)送給該簇內(nèi)的一個移動節(jié)點;如果該簇頭是移動節(jié)點就不轉(zhuǎn)發(fā)給該簇內(nèi)的其他節(jié)點。④接收到服務(wù)請求的移動節(jié)點判斷自己是否是忙碌狀態(tài)
若該移動節(jié)點處于空閑狀態(tài)Idle,則該移動節(jié)點驅(qū)動自己到弱連接的中間地理位置進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),加強(qiáng)連接,如圖3、圖5和圖6所示,同時設(shè)置自己的工作狀態(tài)為忙碌Busy,洪泛通知各移動節(jié)點更新空閑移動節(jié)點表IdleTable。若該移動節(jié)點處于忙碌狀態(tài)Busy,則根據(jù)其維持的空閑移動節(jié)點表將服務(wù)請求轉(zhuǎn)發(fā)給距離目標(biāo)位置最近的一個空閑移動節(jié)點,并啟動更新空閑移動節(jié)點表IdleTable。3、簇的重構(gòu)
簇的重構(gòu)具體步驟如下
(I)重構(gòu)過程的觸發(fā)
簇的重構(gòu)過程可以由兩種方式觸發(fā)
簇重構(gòu)過程的觸發(fā)方式一
①當(dāng)選簇頭的節(jié)點在自己的寄存器Reg中記錄自己發(fā)送的數(shù)據(jù)包數(shù)目。②若簇頭為移動節(jié)點,則簇頭在發(fā)送M個數(shù)據(jù)包之后將啟動簇重構(gòu)任務(wù)裝入任務(wù)等待隊列,如圖7中A簇所示;
③若簇頭為普通節(jié)點,則簇頭在發(fā)送N個數(shù)據(jù)包之后將啟動簇重構(gòu)任務(wù)裝入任務(wù)等待隊列,如圖7中B簇所示。簇頭在完成當(dāng)前數(shù)據(jù)傳輸任務(wù)后,在任務(wù)等待隊列中調(diào)度并啟動簇的重構(gòu)任務(wù)。所述數(shù)據(jù)包發(fā)送個數(shù)根據(jù)移動節(jié)點和普通節(jié)點的能量關(guān)系設(shè)置為M大于N。簇重構(gòu)過程的觸發(fā)方式二
簇頭在計數(shù)自己發(fā)送的數(shù)據(jù)包過程中,發(fā)生簇頭到簇頭之間連接的丟包率超過閾值而產(chǎn)生服務(wù)請求。若負(fù)責(zé)計算該鏈接丟包率的簇,其簇內(nèi)的移動節(jié)點數(shù)大于等于既定閾值且各個移動節(jié)點都處于忙碌狀態(tài)Busy時,則簇頭忽略服務(wù)請求并觸發(fā)該簇進(jìn)行簇的重構(gòu),如圖8所示。(2)新簇頭的產(chǎn)生
①簇頭向簇內(nèi)節(jié)點發(fā)送啟動重構(gòu)消息,通知簇內(nèi)節(jié)點進(jìn)行簇的重構(gòu)。②簇內(nèi)的移動節(jié)點在接收到進(jìn)行簇頭選擇時,將自身的狀態(tài)設(shè)置為空閑Idle,并以洪泛方式通知網(wǎng)絡(luò)中移動節(jié)點更新各自維護(hù)的空閑移動節(jié)點表IdleTable。③簇頭判斷給簇內(nèi)有沒有移動節(jié)點。如果本簇內(nèi)存在移動節(jié)點,則移動節(jié)點以高于普通節(jié)點的概率參與競爭簇頭節(jié)點。④當(dāng)前簇頭以剩余能量多和鄰居節(jié)點數(shù)目多為原則,選擇新簇頭。⑤如果有移動節(jié)點成為新的簇頭,則將該移動節(jié)點的工作狀態(tài)設(shè)置為忙碌 Busy,并通知網(wǎng)絡(luò)中移動節(jié)點更新空閑移動節(jié)點表IdleTable。⑥新簇頭產(chǎn)生以后,新簇頭接替舊簇頭保持與其他簇頭或匯聚節(jié)點的連接性。
權(quán)利要求
1.一種基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒?,其特征在于在分簇式兩級拓?fù)淇刂七^程中引入分布式思想,使用不對稱能量分布的移動節(jié)點,實現(xiàn)延長無線傳感器網(wǎng)絡(luò)生命期,對起到關(guān)鍵作用,所述方法包含的步驟為第一階段,網(wǎng)絡(luò)初始化,完成第一次選擇簇頭和形成簇結(jié)構(gòu)步驟I).普通節(jié)點的配對節(jié)點感知鄰居節(jié)點的地理位置,距離相近的兩個普通節(jié)點自組織配成一對,在以后的生命期中交替工作;步驟I).選擇簇頭啟動匯聚節(jié)點,匯聚節(jié)點根據(jù)普通節(jié)點的剩余能量和地理位置信息,在普通節(jié)點中產(chǎn)生均勻分布的簇頭節(jié)點;步驟2).簇的形成每個無線傳感器節(jié)點根據(jù)能量與距離的關(guān)系選擇距離自己最近的簇頭,形成簇;第二階段,簇的維護(hù)簇結(jié)構(gòu)形成以后,網(wǎng)絡(luò)開始按照相關(guān)的路由協(xié)議傳輸信息,具體拓?fù)淇刂品椒ㄈ缦虏襟E3).簇內(nèi)靜態(tài)拓?fù)淇刂拼貎?nèi)普通節(jié)點按照時間輪片方式工作,簇內(nèi)若存在移動節(jié)點,則移動節(jié)點始終處于工作狀態(tài);步驟4).移動節(jié)點拓?fù)淇刂苼G包率大的鏈接處的節(jié)點,向簇內(nèi)含有移動節(jié)點的簇頭提交服務(wù)請求,請求相關(guān)移動節(jié)點移動到丟包率大的地方進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);第三階段,簇的重構(gòu)步驟5).重構(gòu)過程的觸發(fā)簇頭計數(shù)和特定情況下服務(wù)請求失敗觸發(fā)簇的重構(gòu);步驟6).新簇頭的產(chǎn)生簇的重構(gòu)任務(wù)啟動以后,當(dāng)前簇頭根據(jù)簇內(nèi)各個節(jié)點的剩余能量和鄰居節(jié)點數(shù)目選擇新簇頭;新簇頭產(chǎn)生以后,新簇頭將接替舊簇頭保持與其他簇頭或匯聚節(jié)點的連接性;綜上所述,在匯聚節(jié)點引導(dǎo)網(wǎng)絡(luò)完成初始化后,網(wǎng)絡(luò)就開始了完全自組織運行,即在簇的重構(gòu)過程中,完成節(jié)點移動和不對稱能量的簇頭選擇。
2.根據(jù)權(quán)利I所述的基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒?,其特征在于所述簇?nèi)普通節(jié)點,按照時間輪片方式工作簇內(nèi)普通節(jié)點感知鄰居節(jié)點地理位置,完成不交叉配對;配對的兩個節(jié)點按周期交替工作,合作完成工作;配對的各個節(jié)點對和其他未配對的簇內(nèi)普通節(jié)點以平等的方式進(jìn)行時間輪片,交替向簇頭提交數(shù)據(jù)包。
3.根據(jù)權(quán)利I所述的基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒?,其特征在于丟包率大的鏈接處的節(jié)點,向簇內(nèi)含有移動節(jié)點的簇頭提交服務(wù)請求,該簇頭在簇內(nèi)移動節(jié)點數(shù)目超過閾值且都處于忙碌狀態(tài)時,忽略服務(wù)請求,否則簇頭將服務(wù)請求發(fā)送給簇內(nèi)的移動節(jié)點;該移動節(jié)點判斷自己工作狀態(tài)若處于空閑狀態(tài),移動節(jié)點移動到丟包率大的兩個節(jié)點的中間地理位置,進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);若處于忙碌狀態(tài),移動節(jié)點在自己維護(hù)的空閑移動節(jié)點表中選擇一個距離目標(biāo)地理位置最近的移動節(jié)點,并向其發(fā)送服務(wù)請求,使其移動到目標(biāo)地理位置,即丟包率大的兩個節(jié)點的中間地理位置。
4.根據(jù)權(quán)利I所述的基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒?,其特征在于簇頭計數(shù)和特定情況下服務(wù)請求失敗觸發(fā)簇的重構(gòu)當(dāng)前簇頭節(jié)點記錄自己發(fā)送的數(shù)據(jù)包數(shù)目,簇頭發(fā)送的數(shù)據(jù)包數(shù)目達(dá)到特定閾值后,啟動簇重構(gòu)任務(wù)裝入任務(wù)等待隊列,簇頭在完成當(dāng)前數(shù)據(jù)傳輸任務(wù)后,在任務(wù)等待隊列中調(diào)度并啟動簇的重構(gòu)任務(wù);當(dāng)前簇頭與其它簇頭間連接的丟包率超過閾值而產(chǎn)生服務(wù)請求,當(dāng)前簇頭在其簇內(nèi)的移動節(jié)點數(shù)大于等于既定閾值且各個移動節(jié)點都處于忙碌狀態(tài)時,忽略服務(wù)請求并觸發(fā)該簇進(jìn)行簇的重構(gòu)。
全文摘要
本發(fā)明是一種基于不對稱能量分布和移動節(jié)點的分簇拓?fù)淇刂品椒?,在分簇式兩級拓?fù)淇刂七^程中引入分布式思想,使用不對稱能量分布的移動節(jié)點,實現(xiàn)延長無線傳感器網(wǎng)絡(luò)生命期,對起到關(guān)鍵作用,所述方法包含的步驟為第一階段,網(wǎng)絡(luò)初始化,完成第一次選擇簇頭和形成簇結(jié)構(gòu)第二階段,簇的維護(hù)簇結(jié)構(gòu)形成以后,網(wǎng)絡(luò)開始按照相關(guān)的路由協(xié)議傳輸信息,第三階段,簇的重構(gòu)綜上所述,在匯聚節(jié)點引導(dǎo)網(wǎng)絡(luò)完成初始化后,網(wǎng)絡(luò)就開始了完全自組織運行,即在簇的重構(gòu)過程中,完成節(jié)點移動和不對稱能量的簇頭選擇。在匯聚節(jié)點引導(dǎo)網(wǎng)絡(luò)完成初始化后,網(wǎng)絡(luò)就開始了完全自組織運行,即在簇的重構(gòu)過程中,完成節(jié)點移動和不對稱能量的簇頭選擇。
文檔編號H04W16/00GK102595412SQ201210006009
公開日2012年7月18日 申請日期2012年1月10日 優(yōu)先權(quán)日2012年1月10日
發(fā)明者岳文靜, 陳志 , 駱平 申請人:南京郵電大學(xué)