一種無線傳感器網(wǎng)絡(luò)中基于退避機制的大規(guī)模自組網(wǎng)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于無線傳感器網(wǎng)絡(luò)技術(shù)應(yīng)用領(lǐng)域。具體為一種適用于無線傳感器網(wǎng)絡(luò)大規(guī)模組網(wǎng)方法。
【背景技術(shù)】
[0002]無線傳感器網(wǎng)絡(luò)因其廣闊的應(yīng)用前景而越來越受到人們的關(guān)注,但是由于其受限的資源、無安全保障的工作環(huán)境和低成本要求等原因一直是學(xué)術(shù)界研究的熱點。在無線傳感器網(wǎng)絡(luò)中,傳感器節(jié)點一般部署在沒有網(wǎng)絡(luò)基礎(chǔ)設(shè)施架構(gòu)的環(huán)境中,比如通過飛機播撒大量傳感器節(jié)點到面積廣闊的原始森林中,或者隨意放置到人不可達到或危險的區(qū)域。在這樣的情況下,就要求傳感器節(jié)點具有自組織能力,并且能夠自動進行配置和管理,通過拓撲控制機制和網(wǎng)絡(luò)協(xié)議自動轉(zhuǎn)發(fā)檢測數(shù)據(jù)的多跳無線網(wǎng)絡(luò)系統(tǒng)。
[0003]對于無線的自組織傳感器網(wǎng)絡(luò)而言,網(wǎng)絡(luò)的大規(guī)模組網(wǎng)具有特別重要的意義。結(jié)合網(wǎng)絡(luò)的拓撲控制,自動生成良好的網(wǎng)絡(luò)拓撲,能夠提高路由協(xié)議和MAC協(xié)議的效率,還能夠組建成大規(guī)模的節(jié)點系統(tǒng),為系統(tǒng)的應(yīng)用擴展打下基礎(chǔ),同時也有利于節(jié)省節(jié)點的能量來延長網(wǎng)絡(luò)的生存期,研究大規(guī)模的組網(wǎng)技術(shù)是傳感器網(wǎng)絡(luò)研究的核心技術(shù)之一。
[0004]無線自組網(wǎng)絡(luò)的節(jié)點在拋撒之后,如何根據(jù)一定的規(guī)則組成大規(guī)模網(wǎng)絡(luò)是組網(wǎng)技術(shù)的重要問題。組網(wǎng)的算法性能直接決定了網(wǎng)絡(luò)路由算法的設(shè)計和性能,也將直接影響網(wǎng)絡(luò)每個節(jié)點的電能消耗,節(jié)點壽命和網(wǎng)絡(luò)壽命。同時,由于無線傳感器網(wǎng)絡(luò)往往部署在室外環(huán)境比較惡劣的地方,要收到高山、建筑物、障礙物等地形地貌以及其他惡劣天氣等自然條件的影響。這樣一方面可能造成傳感器之間的通信部可靠,另一方面可能使傳感器出現(xiàn)故障、甚至損壞。
[0005]在無線網(wǎng)絡(luò)中,隨著節(jié)點間無線信道的競爭、共享而產(chǎn)生的信號碰撞、信號衰減、噪音干擾及信道干擾等因素,會使節(jié)點組網(wǎng)后的實際有效帶寬小于理論值。節(jié)點間通信協(xié)議的設(shè)計必須充分考慮以上建立鏈路、使用信道的開銷代價,因此帶來了一定程度的復(fù)雜。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的是為了解決無線傳感器大規(guī)模網(wǎng)絡(luò)中存在的能耗、負載不均衡、路由環(huán)路等問題,提出了一種基于退避機制的最小生成樹算法,通過拓撲控制簡化網(wǎng)絡(luò)結(jié)構(gòu),減少信道碰撞、節(jié)省了能量,提高網(wǎng)絡(luò)吞吐量和空間重用性,并且能夠通過動態(tài)調(diào)整初始退避調(diào)整系數(shù)R的值來優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),達到節(jié)能的效果。本發(fā)明的技術(shù)方案如下:一種無線傳感器網(wǎng)絡(luò)中基于退避機制的大規(guī)模自組網(wǎng)方法,其包括以下步驟:
[0007]101、預(yù)配置階段:系統(tǒng)進行初始化,基站為網(wǎng)內(nèi)所有入網(wǎng)節(jié)點預(yù)配置初始退避調(diào)整系數(shù)R ;同時,基站設(shè)置自身的通信開銷為LN,網(wǎng)內(nèi)其它入網(wǎng)節(jié)點的通信開銷為無窮大;
[0008]102、組網(wǎng)階段:(1)基站廣播組網(wǎng)消息,組網(wǎng)消息包括節(jié)點的ID信息和自身的存儲的通信開銷值字段;
[0009](2)基站的鄰居節(jié)點收到組網(wǎng)消息后,依據(jù)該組網(wǎng)消息傳輸過程中的信號強度S和鏈路質(zhì)量Q,計算鏈路通信開銷Μ ;
[0010](3)鄰居節(jié)點依據(jù)預(yù)配置退避參數(shù)R和評估的鏈路通信開銷參數(shù)Μ,利用公式Τ =RXM,計算鄰居節(jié)點需要進行的退避時間Τ ;
[0011](4)鄰居節(jié)點依據(jù)退避時間Τ執(zhí)行退避,如在退避時間內(nèi)收到其他鄰居節(jié)點的組網(wǎng)消息,便會重新依據(jù)新的組網(wǎng)消息執(zhí)行步驟(2)和(3),計算新退避時間,并比較新退避時間與原退避時間的大小,若新退避時間大于等于原退避時間,則進行退避時間的更新,繼續(xù)沿著原退避時間進行退避,執(zhí)行步驟(4),反之,則更新退避時間為新的退避時間,執(zhí)行步驟(4);若在退避時間結(jié)束后,沒有收到信的組網(wǎng)消息,鄰居節(jié)點執(zhí)行步驟(5);
[0012](5)鄰居節(jié)點選擇對應(yīng)退避時間最小的廣播消息中的ID信息作為自己的父節(jié)點,并發(fā)送入網(wǎng)請求,同時將自己的通信開銷更新為廣播消息中的通信開銷值加上自己評估的鏈路通信開銷值;
[0013](6)完成步驟(5),鄰居節(jié)點找到了自己的父節(jié)點,而后將組網(wǎng)消息中的ID信息和通信開銷字段替換為自己的ID信息和通信開銷值,并廣播出去,尋求自己的子節(jié)點,完成組網(wǎng)消息的廣播后,節(jié)點處于等待狀態(tài),判斷在規(guī)定時間內(nèi)是否收到子節(jié)點的入網(wǎng)請求,若收到,則完成子節(jié)點的尋找,等待子節(jié)點匯報鏈路組建完畢消息,若沒有收到,則認為自己已經(jīng)是葉子節(jié)點,并向自己的父節(jié)點匯報鏈路組建完成的消息,完成組網(wǎng)。
[0014]進一步的,步驟102中系統(tǒng)進行初始化后,系統(tǒng)啟動,基站通過發(fā)送“Hello”組網(wǎng)消息(消息即組網(wǎng)消息),組網(wǎng)消息包括節(jié)點的ID信息和自身的存儲的通信開銷值字段。
[0015]進一步的,步驟(2)中的依據(jù)該組網(wǎng)消息傳輸過程中的信號強度S和鏈路質(zhì)量Q,計算鏈路通信開銷Μ ;計算公式為M = SQ。
[0016]本發(fā)明的優(yōu)點及有益效果如下:
[0017]本發(fā)明提出一種基于退避機制的最小生成樹算法,通過使用本發(fā)明中的算法,可以簡單、高效的組建一個樹形通信網(wǎng)絡(luò),解決無線傳感器網(wǎng)絡(luò)在大規(guī)模組網(wǎng)過程中出現(xiàn)的路由環(huán)路,能耗、負載不均衡問題,從而減少信道碰撞、節(jié)省了能量,提高網(wǎng)絡(luò)吞吐量和空間重用性;同時,充分考慮了節(jié)點之間的通信開銷,將通信開銷與退避時間結(jié)合到一起,能夠根據(jù)實際應(yīng)用環(huán)境中鏈路質(zhì)量、設(shè)備發(fā)包的信號強度來調(diào)整退避時間系數(shù)的大小來優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),達到節(jié)能的效果。
【附圖說明】
[0018]圖1是本發(fā)明提供優(yōu)選實施例為基于退避機制的最小生成樹算法流程圖;
[0019]圖2為組網(wǎng)之前傳感器網(wǎng)絡(luò)的分布情況;
[0020]圖3為依據(jù)最小生成樹算法實際組網(wǎng)過程;
[0021]圖4為最終形成的自主網(wǎng)絡(luò)示意圖。
【具體實施方式】
[0022]以下結(jié)合附圖,對本發(fā)明作進一步說明:
[0023]如圖1所示,本方案的技術(shù)方案實現(xiàn)過程如下所述:
[0024]1、預(yù)配置階段
[0025]系統(tǒng)進行初始化,預(yù)配置初始退避調(diào)整系數(shù)R ;基站(Sink節(jié)點)設(shè)置自身的通信開銷為LN,其它普通節(jié)點的通信開銷為無窮大。系統(tǒng)啟動后,“Hello”消息包括節(jié)點的ID信息和自身的存儲的通信開銷值字段,
[0026]基站為普通節(jié)點配置初始化退避調(diào)整系數(shù)R,并將自己的通信開銷設(shè)定為LN,將其他的節(jié)點的通信開銷設(shè)定為無窮大。
[0027]2、組網(wǎng)階段
[0028]基站首先廣播“Hello”消息,“Hello”消息包括節(jié)點的ID信息和自身存儲的通信開銷值字段。
[0029]組網(wǎng)的過程主要分為如下幾步:
[0030](1)基站廣播組網(wǎng)消息(ADV message),組網(wǎng)消息包括節(jié)點的ID信息和自身的存儲的通信開銷值字段。
[0031](2)基站的鄰居節(jié)點收到消息(ADV message)后,依據(jù)信號強度S和鏈路質(zhì)量Q,評估鏈路通信開銷M。
[0032](3)鄰居節(jié)點依據(jù)預(yù)配置退避參數(shù)R和評估的鏈路通信開銷參數(shù)M,利用公式T =RXM,計算鄰居節(jié)點需要進行的退避時間T。
[0033](4)鄰居節(jié)點依據(jù)退避時間T執(zhí)行退避,如在退避時間內(nèi)收到其他鄰居節(jié)點的組網(wǎng)消息,便會重新依據(jù)新的組網(wǎng)消息執(zhí)行步驟(2)和(3),計算新退避時間,并比較新退避時間與原退避時間的大小,若前者大于等于后者,則進行退避時間的更新,繼續(xù)沿著原退避時間進行退避,執(zhí)行步驟⑷,反之,則更新退避時間為新的退避時間,執(zhí)行步驟⑷;若在退避時間結(jié)束后,沒有收到信的組網(wǎng)消息,鄰居節(jié)點執(zhí)行步驟(5)。
[0034](5)鄰居節(jié)點選擇對應(yīng)退避時間最小的廣播消息中的ID信息作為自己的父