專利名稱:一種基于移動節點的無線傳感器網絡分簇拓撲控制方法
技術領域:
本發明涉及一種無線傳感器網絡拓撲方法,主要采用基于不對稱能量分布和引入移動節點的方法來解決無線傳感器網絡信息高效傳輸的問題,屬于分布式計算、自組織、拓撲控制交叉技術應用領域。
背景技術:
無線傳感器網絡是由大量節點組成的特殊的無線網絡,它實現了復雜環境下的數據感測、收集與分析等功能。無線傳感器網絡中的節點具有體積小、計算能力有限、依靠無線電波通訊、電池供電等特點,這些特性決定了無線傳感器網絡要在具體環境中以最優的方式工作,還有許多待解決的問題。拓撲控制是無線傳感器網絡中重要的優化方法。調整節點信號發射功率和規劃節點的睡眠是拓撲控制中的主要方法。在無線傳感器網絡中,拓撲控制的主要目的是在保證網絡連通性的前提下,通過改善網絡的拓撲結構,達到優化網絡的性能、提高穩定性、降低能量消耗,延長網絡生命期等目的。在不同的研究各有側重,現將這些目標總結如下
連通性拓撲控制的最基本要求是保證網絡的連通性,否則,破壞了網絡的連通性的拓撲控制將會影響到更上層應用的可用性。這一目標可以更明確地表示為,拓撲控制要保證在最大傳輸圖中通過若干跳可達的節點在生成的拓撲控制圖中仍然可達。能源效率當發送節點向接收節點傳送數據,需要消耗能量,這種數據傳送中的能量開銷在節點的總能量開銷中比例很大,并且,保證正常通訊所需要的最小能量開銷隨著距離的增長呈指數級增長。因此,盡量降低能量開銷通常是拓撲
控制在保證連通性的基礎上的最主要目標。減少干擾節點間傳播介質的共享性和開放性,可能帶來通訊干擾,也可能造成數據發送的沖突,從而產生大量重傳,這些都會造成額外的能量開銷。所以許多拓
撲控制研究的方案旨在通過合理設置節點的信號發射功率降低節點間的通訊干擾。網絡稀疏性無線節點的計算能力是有限的,所以保證網絡的稀疏性對于提高網絡的可擴展性至關重要。通過保證網絡的稀疏性,即鏈路數和節點數的線性關系,可以降低路由協議進行路由選擇時的復雜性,改善網絡的擴展性。近幾年來,分布式無線傳感器網絡因其廣泛的應用受到研究領域的重視。在環境監控、工業控制、智能家居等常見的應用中領域,分布式無線傳感器網絡往往比集中式效率更高。但是隨著研究的深入,我們面臨著進一步提高效率和節省成本的需求壓力。目前在研究和應用領域引入移動節點還比較少見,但移動節點的應用漸漸成為解決無線傳感器網絡眾多問題的一個突破點和亮點。本發明將分布式控制和移動節點相結合,基于不對稱能量分布,提出了一種高效率、自組織的拓撲控制方案,在研究和實際應用領域有比較高的參考價值
發明內容
技術問題本發明的目的是應用移動傳感器節點實現一種高效的無線傳感器網絡拓撲控制協議。本發明基于分簇式兩級網絡結構,在協議運行過程中引入分布式思想,使用不對稱能量分布,實現無線傳感器網絡良好的連通性、穩定性和低能量消耗,對延長網絡生命期起到關鍵作用。本協議為設計高效無線傳感器網絡拓撲控制提供了一種新設計思想,解決了常用拓撲控制方法的不足。技術方案本發明所述基于不對稱能量分布和移動節點的分簇拓撲控制方法基于地理位置采用移動節點改善丟包率高的弱連接,將不對稱的能量分布引入分布式簇頭競爭,極大提高了網絡的連接性和覆蓋性,延遲了網絡生命期。本發明使用兩級時間輪片方式進行簇內靜態拓撲控制,使位置相近的兩個普通節點對外表現為一個節點,進一步節省了能耗。一、體系結構
本發明所述的基于不對稱能量分布和移動節點的無線傳感器網絡分簇拓撲控制方法具有兩級分簇網絡結構。無線傳感器網絡中使用的節點分為移動節點和普通節點。地理位置很近的兩個普通節點將配對交替工作,對外表現為一個節點。網絡中移動節點基于剩余能量參與簇頭的競爭,和相關普通節點維持簇結構,延長無線傳感器網絡的生命期。在無線傳感器網絡運行過程中,空閑移動節點將移動到高丟包率的連接處進行數據轉發,提高網絡的連通性。所述拓撲控制方法中的節點分為移動節點和普通節點,節點具備感知自己和鄰居節點地理位置的能力。普通節點的采用固定的信號覆蓋半徑,移動節點的信號能覆蓋所有節點。所述不對稱能量分布是指移動節點擁有遠高于普通節點的能量,在簇頭競爭過程中移動節點成為簇頭的概率大于普通節點。所述拓撲控制方法中每個移動節點都維護空閑移動節點表,空閑移動節點表以洪泛方式進行動態更新。二、方法流程
I、網絡初始化 (I)普通節點配對
在向目標區域隨機部署節點以后,地理位置距離小于特定閾值的兩個普通節點配成一對,形成一對的兩個節點交替工作,對外表現為一個節點。所述拓撲控制方法中,任何一個普通節點最多只能參與到一個配對過程中,即節點形成的對與對之間沒有共同的節點。(2)選擇簇頭
啟動匯聚節點,匯聚節點向整個網絡廣播自己是匯聚節點。普通節點根據接自己的地理位置、鄰居節點數和距離匯聚節點的實際距離決定自己是否成為簇頭。所述拓撲控制方法中,移動節點在網絡初始化過程不參與競爭成為簇頭。(3)形成簇
簇頭產生以后,每個簇頭以洪泛方式向整個網絡通告自己已成為“簇頭”,移動節點和普通節點根據能量與距離關系選擇距離自己最近的簇頭,形成簇結構。簇內的移動節點統計獲得各個移動節點信息,形成空閑移動節點表IdleTable。
所述空閑移動節點表IdleTable包含了網絡中的空閑移動節點及其地理位置信2、簇的維護
(I)簇內靜態拓撲控制
簇內普通節點按照時間輪片方式工作,簇內若存在移動節點,則移動節點始終處于工作狀態。(2)移動節點拓撲控制
簇結構形成以后,網絡開始傳輸信息。網絡中節點以觸發方式進行計算弱連接處相關節點的丟包率,直到該連接處得丟包率降到可容忍程度才停止計算丟包率。在該過程中,若丟包率大于既定的閾值,則本節點向其所在簇的簇頭提交服務請求。①簇頭接收到服務請求以后,簇頭判斷本簇內的移動節點數目Count
若本簇內移動節點數目Count大于等于特定閾值,則簇頭只將服務請求發送給本簇內的空閑移動節點。如果本簇內沒有空閑移動節點,則忽略服務請求。若本簇內移動節點數目Count大于0且小于特定閾值,簇頭將服務請求信息發送給本簇內的移動節點。若本簇內移動節點數目Count等于0,簇頭將服務請求以多跳方式發送到鄰近簇頭,直到發送到其簇內含有移動節點的簇頭。該簇頭判斷自己是否為移動節點若果不是移動節點就將服務請求隨機發送給該簇內的一個移動節點;如果該簇頭是移動節點就不轉發。②接收到服務請求的移動節點判斷自己是否是忙碌狀態
若該移動節點處于空閑狀態Idle,則該移動節點驅動自己到弱連接的中間地理位置進行數據轉發,加強連接,同時設置自己的工作狀態為忙碌Busy,洪泛通知各移動節點更新空閑移動節點表IdleTable。若該移動節點處于忙碌狀態Busy,則根據其維持的空閑移動節點表將服務請求轉發給距離目標位置最近的一個空閑移動節點,并啟動更新空閑移動節點表IdleTable。所述拓撲控制方法中,服務請求信息包含了丟失數據包的兩個節點的地理位置信
肩、O本發明所述移動節點中維持的空閑移動節點表不包含該移動節點自身。3、簇的重構 (I)重構過程的觸發
簇頭通知簇內節點進行簇重構。當前簇頭根據簇內各個節點的剩余能量和鄰居節點數目選擇新簇頭。剩余能量越高,鄰居節點數目越多的簇內節點,成為新簇頭的概率越高。所述方法采用不對稱的能量分布,移動節點擁有高于普通節點能量,簇內的移動節點成為新簇頭的概率比普通節點大。(2)新簇頭的產生
每個簇重啟簇的重構過程時,先判斷給簇內有沒有移動節點。如果存在移動節點,則移動節點以高于普通節點的概率參與競爭簇頭節點。本簇內的移動節點在接收到進行簇頭選擇時,將自身的狀態設置為空閑Idle,并更新空閑移動節點表IdleTable。在新簇頭的選擇過程中,如果有移動節點成為簇頭,則將該移動節點的工作狀態設置為忙碌Busy,并更新空閑移動節點表IdleTable。本發明所述協議中簇的重構過程完成在本簇內重新選擇簇頭。本發明的基于不對稱能量分布和移動節點的分簇拓撲控制方法,在分簇式兩級拓撲控制過程中引入分布式思想,使用不對稱能量分布的移動節點,實現延長無線傳感器網絡生命期,對起到關鍵作用,所述方法包含的步驟為
第一階段,網絡初始化,完成第一次選擇簇頭和形成簇結構
步驟I).普通節點的配對節點感知鄰居節點的地理位置,距離相近的兩個普通節點自組織配成一對,在以后的生命期中交替工作;
步驟I) 選擇簇頭啟動匯聚節點,匯聚節點根據普通節點的剩余能量和地理位置信息,在普通節點中產生均勻分布的簇頭節點;
步驟2).簇的形成每個無線傳感器節點根據能量與距離的關系選擇距離自己最近的簇頭,形成簇;
第二階段,簇的維護簇結構形成以后,網絡開始按照相關的路由協議傳輸信息,具體拓撲控制方法如下
步驟3).簇內靜態拓撲控制簇內普通節點按照時間輪片方式工作,簇內若存在移動節點,則移動節點始終處于工作狀態;
步驟4).移動節點拓撲控制丟包率大的鏈接處的節點,向簇內含有移動節點的簇頭提交服務請求,請求相關移動節點移動到丟包率大的地方進行數據轉發;
第三階段,簇的重構
步驟5).重構過程的觸發簇頭計數和特定情況下服務請求失敗觸發簇的重構;
步驟6).新簇頭的產生簇的重構任務啟動以后,當前簇頭根據簇內各個節點的剩余能量和鄰居節點數目選擇新簇頭;新簇頭產生以后,新簇頭將接替舊簇頭保持與其他簇頭或匯聚節點的連接性;
綜上所述,在匯聚節點引導網絡完成初始化后,網絡就開始了完全自組織運行,即在簇的重構過程中,完成節點移動和不對稱能量的簇頭選擇。所述簇內普通節點,按照時間輪片方式工作簇內普通節點感知鄰居節點地理位置,完成不交叉配對;配對的兩個節點按周期交替工作,合作完成工作;配對的各個節點對和其他未配對的簇內普通節點以平等的方式進行時間輪片,交替向簇頭提交數據包。丟包率大的鏈接處的節點,向簇內含有移動節點的簇頭提交服務請求,該簇頭在簇內移動節點數目超過閾值且都處于忙碌狀態時,忽略服務請求,否則簇頭將服務請求發送給簇內的移動節點;該移動節點判斷自己工作狀態若處于空閑狀態,移動節點移動到丟包率大的兩個節點的中間地理位置,進行數據轉發;若處于忙碌狀態,移動節點在自己維護的空閑移動節點表中選擇一個距離目標地理位置最近的移動節點,并向其發送服務請求,使其移動到目標地理位置,即丟包率大的兩個節點的中間地理位置。簇頭計數和特定情況下服務請求失敗觸發簇的重構當前簇頭節點記錄自己發送的數據包數目,簇頭發送的數據包數目達到特定閾值后,啟動簇重構任務裝入任務等待隊列,簇頭在完成當前數據傳輸任務后,在任務等待隊列中調度并啟動簇的重構任務;當前簇頭與其它簇頭間連接的丟包率超過閾值而產生服務請求,當前簇頭在其簇內的移動節點數大于等于既定閾值且各個移動節點都處于忙碌狀態時,忽略服務請求并觸發該簇進行簇的重構。有益效果本發明基于移動傳感器節點實現一種高效的無線傳感器網絡拓撲控制協議,移動傳感器節點移動到丟包率高的地方加強網絡連接。本發明基于分簇式兩級網絡結構,在協議運行過程中引入分布式思想,使用不對稱能量分布,最大限度地節省普通節點能量,延長網絡生命期,提高了網絡連通性。具體來說,本發明所述的路由協議具有如下的有益效果
(I)本發明所述分簇拓撲控制方法在分簇的網絡結構中引入移動節點,利用節點的可移動性,驅動移動節點到有需求的地方進行數據包轉發,加強了連接,減少了數據包的丟失,維護了網絡的覆蓋范圍。(2)所述拓撲控制方法限制了每個簇內可以擁有的最大移動節點數目,在自組織的方式下,實現了移動節點的均勻分布,極大可能地保障了每個簇的生命期和網絡的覆蓋范圍。(3)所述拓撲控制方法以觸發的方式計算丟包率和停止計算丟包率,直接有效,有利于節省能耗。(4)所述拓撲控制方法中,每個移動節點都維護一個空閑移動節點表,并由移動節點負責動態更新,減輕了普通節點的工作負擔,利于延長網絡的生命期。空閑移動節點表的使用,實現了快速搜尋距離目標位置最近的空閑移動節點。(5)本發明所述方法中普通節點使用固定的信號覆蓋半徑,而移動節點信號可以覆蓋全局網絡,減少了功率控制帶來的計算延遲和能量消耗。(6)本發明使用不對稱能量分布條件下的簇頭競爭,剩余能量越多的節點成為簇頭的概率越大,所以移動節點成為簇頭的可能增多,實現了最大限度地節省普通節點能量, 延長網絡生命期。(7)所述分簇拓撲控制方法其簇內普通節點使用兩級時間輪片工作方式,進一步節省了普通節點能耗。
圖I、普通節點的配對行為示意圖。圖2、初始化形成簇結構示意圖。圖3、簇內移動節點數大于等于閾值且有空閑移動節點時拓撲控制示意圖。圖4、簇內移動節點數大于等于閾值且無空閑移動節點時拓撲控制示意圖。圖5、簇內移動節點數小于閾值且有空閑移動節點時拓撲控制示意圖。圖6、簇內移動節點數小于閾值且無空閑移動節點時拓撲控制示意圖。圖7、計數觸發啟動簇的重構示意圖。圖8、簇頭間丟包觸發啟動簇的重構示意圖。
具體實施例方式下面對附圖本發明的某些實施例作更詳細的描述。I、網絡初始化 (I)普通節點配對各個普通節點基于地理位置信息分別計算自己到各個普通鄰居節點的距離。如圖I所示,若兩個普通節點的距離d小于特定的閾值,則兩個節點配成一對,否則不配對。任何一個普通節點最多只能參與到一個對中,即節點形成的對沒有交叉。形成一個對的兩個節點按照時間輪片的方式交替工作,如圖2所示。一個對的兩個節點自動配置成使用相同的ID號和相同的地理位置信息,對外表現為一個節點。(2)選擇簇頭
啟動匯聚節點,匯聚節點向整個網絡廣播自己是匯聚節點。普通節點根據接自己的地理位置、鄰居節點數和距離匯聚節點的實際距離決定自己是否成為簇頭。如圖2所示,在初始化過程中產生的簇頭都是普通節點。(3)形成簇
簇頭產生以后,每個簇頭以洪泛方式向整個網絡通告自己已成為“簇頭”,移動節點和普通節點根據能量與距離關系選擇距離自己最近的簇頭,形成簇結構。簇頭統計本簇內的移動節點數目Count。簇內的移動節點統計獲得網絡中的空閑移動節點及其地理位置信息,形成空閑移動節點表IdleTable。2、簇的維護
簇結構形成以后,網絡開始按照相關的路由協議傳輸信息,具體拓撲控制方法如下 (I)簇內靜態拓撲控制
簇內普通節點按照時間輪片方式工作,簇內若存在移動節點,則移動節點始終處于工作狀態。其中抱對的兩個普通節點以對外表現為一個節點的方式,接收簇頭分配的時間片。(2)移動節點拓撲控制
①信息傳輸過程中,發送數據包的節點(包括普通節點和移動節點)在第一次發現數據包丟失,即未接收到ACK信息時,觸發本節點開始周期性地計算該鏈接處的丟包率。這個過程直到丟包率連續特定個數周期低于閾值時才以觸發方式結束。②在該過程中,若丟包率大于既定的閾值,則本節點向其所在簇的簇頭提交服務請求(若本節點為簇頭則提交給自己)。③簇頭接收到服務請求以后,簇頭判斷本簇內的移動節點數目Count:
若本簇內移動節點數目Count大于等于特定閾值,則簇頭只將服務請求發送給本簇內的空閑移動節點,如圖3所示。如果本簇內沒有空閑移動節點,則忽略服務請求,如圖4所
/Jn o若本簇內移動節點數目Count大于0且小于特定閾值,簇頭將服務請求信息發送給本簇內的移動節點,如圖5所示。若本簇內移動節點數目Count等于0,如圖6所示,簇頭將服務請求以多跳方式發送到鄰近簇頭,直到發送到其簇內含有移動節點的簇頭。該簇頭判斷自己是否為移動節點 若果不是移動節點,就將服務請求隨機發送給該簇內的一個移動節點;如果該簇頭是移動節點就不轉發給該簇內的其他節點。④接收到服務請求的移動節點判斷自己是否是忙碌狀態
若該移動節點處于空閑狀態Idle,則該移動節點驅動自己到弱連接的中間地理位置進行數據轉發,加強連接,如圖3、圖5和圖6所示,同時設置自己的工作狀態為忙碌Busy,洪泛通知各移動節點更新空閑移動節點表IdleTable。若該移動節點處于忙碌狀態Busy,則根據其維持的空閑移動節點表將服務請求轉發給距離目標位置最近的一個空閑移動節點,并啟動更新空閑移動節點表IdleTable。3、簇的重構
簇的重構具體步驟如下
(I)重構過程的觸發
簇的重構過程可以由兩種方式觸發
簇重構過程的觸發方式一
①當選簇頭的節點在自己的寄存器Reg中記錄自己發送的數據包數目。②若簇頭為移動節點,則簇頭在發送M個數據包之后將啟動簇重構任務裝入任務等待隊列,如圖7中A簇所示;
③若簇頭為普通節點,則簇頭在發送N個數據包之后將啟動簇重構任務裝入任務等待隊列,如圖7中B簇所示。簇頭在完成當前數據傳輸任務后,在任務等待隊列中調度并啟動簇的重構任務。所述數據包發送個數根據移動節點和普通節點的能量關系設置為M大于N。簇重構過程的觸發方式二
簇頭在計數自己發送的數據包過程中,發生簇頭到簇頭之間連接的丟包率超過閾值而產生服務請求。若負責計算該鏈接丟包率的簇,其簇內的移動節點數大于等于既定閾值且各個移動節點都處于忙碌狀態Busy時,則簇頭忽略服務請求并觸發該簇進行簇的重構,如圖8所示。(2)新簇頭的產生
①簇頭向簇內節點發送啟動重構消息,通知簇內節點進行簇的重構。②簇內的移動節點在接收到進行簇頭選擇時,將自身的狀態設置為空閑Idle,并以洪泛方式通知網絡中移動節點更新各自維護的空閑移動節點表IdleTable。③簇頭判斷給簇內有沒有移動節點。如果本簇內存在移動節點,則移動節點以高于普通節點的概率參與競爭簇頭節點。④當前簇頭以剩余能量多和鄰居節點數目多為原則,選擇新簇頭。⑤如果有移動節點成為新的簇頭,則將該移動節點的工作狀態設置為忙碌 Busy,并通知網絡中移動節點更新空閑移動節點表IdleTable。⑥新簇頭產生以后,新簇頭接替舊簇頭保持與其他簇頭或匯聚節點的連接性。
權利要求
1.一種基于不對稱能量分布和移動節點的分簇拓撲控制方法,其特征在于在分簇式兩級拓撲控制過程中引入分布式思想,使用不對稱能量分布的移動節點,實現延長無線傳感器網絡生命期,對起到關鍵作用,所述方法包含的步驟為第一階段,網絡初始化,完成第一次選擇簇頭和形成簇結構步驟I).普通節點的配對節點感知鄰居節點的地理位置,距離相近的兩個普通節點自組織配成一對,在以后的生命期中交替工作;步驟I).選擇簇頭啟動匯聚節點,匯聚節點根據普通節點的剩余能量和地理位置信息,在普通節點中產生均勻分布的簇頭節點;步驟2).簇的形成每個無線傳感器節點根據能量與距離的關系選擇距離自己最近的簇頭,形成簇;第二階段,簇的維護簇結構形成以后,網絡開始按照相關的路由協議傳輸信息,具體拓撲控制方法如下步驟3).簇內靜態拓撲控制簇內普通節點按照時間輪片方式工作,簇內若存在移動節點,則移動節點始終處于工作狀態;步驟4).移動節點拓撲控制丟包率大的鏈接處的節點,向簇內含有移動節點的簇頭提交服務請求,請求相關移動節點移動到丟包率大的地方進行數據轉發;第三階段,簇的重構步驟5).重構過程的觸發簇頭計數和特定情況下服務請求失敗觸發簇的重構;步驟6).新簇頭的產生簇的重構任務啟動以后,當前簇頭根據簇內各個節點的剩余能量和鄰居節點數目選擇新簇頭;新簇頭產生以后,新簇頭將接替舊簇頭保持與其他簇頭或匯聚節點的連接性;綜上所述,在匯聚節點引導網絡完成初始化后,網絡就開始了完全自組織運行,即在簇的重構過程中,完成節點移動和不對稱能量的簇頭選擇。
2.根據權利I所述的基于不對稱能量分布和移動節點的分簇拓撲控制方法,其特征在于所述簇內普通節點,按照時間輪片方式工作簇內普通節點感知鄰居節點地理位置,完成不交叉配對;配對的兩個節點按周期交替工作,合作完成工作;配對的各個節點對和其他未配對的簇內普通節點以平等的方式進行時間輪片,交替向簇頭提交數據包。
3.根據權利I所述的基于不對稱能量分布和移動節點的分簇拓撲控制方法,其特征在于丟包率大的鏈接處的節點,向簇內含有移動節點的簇頭提交服務請求,該簇頭在簇內移動節點數目超過閾值且都處于忙碌狀態時,忽略服務請求,否則簇頭將服務請求發送給簇內的移動節點;該移動節點判斷自己工作狀態若處于空閑狀態,移動節點移動到丟包率大的兩個節點的中間地理位置,進行數據轉發;若處于忙碌狀態,移動節點在自己維護的空閑移動節點表中選擇一個距離目標地理位置最近的移動節點,并向其發送服務請求,使其移動到目標地理位置,即丟包率大的兩個節點的中間地理位置。
4.根據權利I所述的基于不對稱能量分布和移動節點的分簇拓撲控制方法,其特征在于簇頭計數和特定情況下服務請求失敗觸發簇的重構當前簇頭節點記錄自己發送的數據包數目,簇頭發送的數據包數目達到特定閾值后,啟動簇重構任務裝入任務等待隊列,簇頭在完成當前數據傳輸任務后,在任務等待隊列中調度并啟動簇的重構任務;當前簇頭與其它簇頭間連接的丟包率超過閾值而產生服務請求,當前簇頭在其簇內的移動節點數大于等于既定閾值且各個移動節點都處于忙碌狀態時,忽略服務請求并觸發該簇進行簇的重構。
全文摘要
本發明是一種基于不對稱能量分布和移動節點的分簇拓撲控制方法,在分簇式兩級拓撲控制過程中引入分布式思想,使用不對稱能量分布的移動節點,實現延長無線傳感器網絡生命期,對起到關鍵作用,所述方法包含的步驟為第一階段,網絡初始化,完成第一次選擇簇頭和形成簇結構第二階段,簇的維護簇結構形成以后,網絡開始按照相關的路由協議傳輸信息,第三階段,簇的重構綜上所述,在匯聚節點引導網絡完成初始化后,網絡就開始了完全自組織運行,即在簇的重構過程中,完成節點移動和不對稱能量的簇頭選擇。在匯聚節點引導網絡完成初始化后,網絡就開始了完全自組織運行,即在簇的重構過程中,完成節點移動和不對稱能量的簇頭選擇。
文檔編號H04W16/00GK102595412SQ201210006009
公開日2012年7月18日 申請日期2012年1月10日 優先權日2012年1月10日
發明者岳文靜, 陳志 , 駱平 申請人:南京郵電大學