專利名稱::一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種組播路由方法,更特別地說,是指一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法。
背景技術(shù):
:隨著微傳感器技術(shù)、微電子技術(shù)、無線通信技術(shù)以及計(jì)算技術(shù)的進(jìn)步,極大地推動了集信息采集、處理、無線傳輸?shù)裙δ苡谝惑w的無線傳感器網(wǎng)絡(luò)(wirelesssensornetworks,WSN)的發(fā)展。無線傳感器網(wǎng)絡(luò)可以使人們在任何時間、地點(diǎn)和任何環(huán)境條件下,獲取大量詳實(shí)而可靠的信息,因此傳感器網(wǎng)絡(luò)可以被廣泛地應(yīng)用于國防軍事、國家安全、環(huán)境監(jiān)測、交通管理、醫(yī)療衛(wèi)生、制造業(yè)、反恐抗災(zāi)等領(lǐng)域。無線傳感器網(wǎng)絡(luò)是計(jì)算機(jī)科學(xué)技術(shù)的一個新的研究領(lǐng)域,已經(jīng)引起了學(xué)術(shù)界和工業(yè)界的高度重視。無線傳感器網(wǎng)絡(luò)對能耗的限制非常嚴(yán)格,而組播路由在資源節(jié)省、時延等方面有較好的優(yōu)勢,所以在無線傳感器網(wǎng)絡(luò)應(yīng)用中還經(jīng)常要求提供組播(multicast)技術(shù)的支持。從實(shí)際應(yīng)用中傳感器節(jié)點(diǎn)能量的消耗中可以看出,節(jié)點(diǎn)用于通信的能量開銷要遠(yuǎn)遠(yuǎn)大于用于數(shù)據(jù)計(jì)算的能量開銷。因此,組播在無線傳感器網(wǎng)絡(luò)"一對多"場景中的應(yīng)用可以大幅減少傳感器網(wǎng)絡(luò)中的數(shù)據(jù)包的發(fā)送量,可以顯著的節(jié)省節(jié)點(diǎn)能量的消耗,從而延長傳感器節(jié)點(diǎn)的生命周期。另外組播路由在時效等方面也有較好的優(yōu)勢。組播路由轉(zhuǎn)發(fā)數(shù)據(jù)的高效率可以有效降低網(wǎng)絡(luò)能耗,從而進(jìn)一步擴(kuò)大無線傳感器網(wǎng)絡(luò)的應(yīng)用領(lǐng)域。組播路由協(xié)議的作用是要尋找一個源節(jié)點(diǎn)和一組接收節(jié)點(diǎn)之間的一棵組播樹,信息以并行方式沿這棵樹的樹枝發(fā)送到不同的接收節(jié)點(diǎn),信息只需在樹的分枝處進(jìn)行復(fù)制轉(zhuǎn)發(fā),這樣網(wǎng)絡(luò)中需要傳送的報(bào)文分組數(shù)最小。組播技術(shù)不僅減少了報(bào)文分組的重復(fù)發(fā)送,減輕了網(wǎng)絡(luò)工作負(fù)載,而且也提高了網(wǎng)絡(luò)帶寬使用效率,對于提高數(shù)據(jù)報(bào)文到達(dá)率和延長網(wǎng)絡(luò)整體工作時間有重要影響。現(xiàn)有的基于樹的組播路由協(xié)議,如EMRS(efficientmulticast麗ti卿rotocolforwirelesssensornetworks)、VLM2(averylightweightmobilemulticastsystemforwirelesssensornetworks)禾口DPTB(Dynamicproxytree-baseddatadisseminationschemesforwirelesssensornetworks)等,均存在如下的缺點(diǎn)1、在建立組播樹時,僅是考慮節(jié)點(diǎn)的移動性和網(wǎng)絡(luò)的覆蓋性,沒有能耗最小化的概念。如VLM2協(xié)議的節(jié)點(diǎn)選擇父節(jié)點(diǎn)時具有隨機(jī)性;而EMRS協(xié)議在選擇父節(jié)點(diǎn)時也沒有考慮能耗問題;2、沒有涉及能耗均衡的概念。在組播的過程中,能耗不均衡會使有的節(jié)點(diǎn)能耗過快,最終致使網(wǎng)絡(luò)癱瘓。
發(fā)明內(nèi)容為了解決無線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)能耗,以及能耗均衡的問題,本發(fā)明提出一種能耗均衡的無線傳感器網(wǎng)絡(luò)組播路由方法。該組播樹調(diào)整方法一方面通過增葉策略對組播樹結(jié)構(gòu)進(jìn)行優(yōu)化,在不影響無線傳感器網(wǎng)絡(luò)連通性的情況下,增加組播樹中葉節(jié)點(diǎn)數(shù)目,從而減少報(bào)文轉(zhuǎn)發(fā)次數(shù),降低了無線傳感器網(wǎng)絡(luò)的總能耗;另一方面采用旁路休眠策略進(jìn)行節(jié)4點(diǎn)休眠定制,從而達(dá)到能量均衡。通過兩個策略有效的降低了組播路由的能耗,同時實(shí)現(xiàn)了節(jié)點(diǎn)間的能耗均衡。本發(fā)明的一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法優(yōu)點(diǎn)在于(1)對已創(chuàng)建的路由樹采用增葉策略進(jìn)行優(yōu)化,減小節(jié)點(diǎn)轉(zhuǎn)發(fā)組播報(bào)文的總體數(shù)量,從而降低整個網(wǎng)絡(luò)的能耗。(2)通過旁路休眠策略,可以保證不影響其他節(jié)點(diǎn)接收組播報(bào)文的前提下休眠部分節(jié)點(diǎn),實(shí)現(xiàn)了節(jié)點(diǎn)之間的能耗均衡,從而增加了整個網(wǎng)絡(luò)的存活時間。圖1是一種具有分層結(jié)構(gòu)的組播樹結(jié)構(gòu)示意圖。圖2是經(jīng)本發(fā)明增葉策略優(yōu)化后的組播樹結(jié)構(gòu)示意圖。具體實(shí)施例方式下面結(jié)合附圖對本發(fā)明做進(jìn)一步的說明。本發(fā)明是一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,該調(diào)整方法可以對通過任意策略構(gòu)建的無線傳感器網(wǎng)絡(luò)組播路由的組播樹進(jìn)行調(diào)整優(yōu)化,首先使用增葉策略來優(yōu)化該組播樹,以減少組播過程的能耗;最后使用旁路休眠策略實(shí)現(xiàn)該組播樹中各節(jié)點(diǎn)的能耗均衡,延長整個無線傳感器網(wǎng)絡(luò)的存活時間。為了方便陳述本發(fā)明的組播樹調(diào)整方法,對于組播樹中的任意一個節(jié)點(diǎn)簡稱為任意節(jié)點(diǎn)N》將存儲如下信息①父節(jié)點(diǎn)^,在本發(fā)明中,該父節(jié)點(diǎn)&,是任意節(jié)點(diǎn)&的父節(jié)點(diǎn)。在本發(fā)明中,如果任意節(jié)點(diǎn)&為根節(jié)點(diǎn),則表明該&不會有父節(jié)點(diǎn)。②子節(jié)點(diǎn)集1CW^,,在本發(fā)明中,該子節(jié)點(diǎn)集ZCWw,中存儲的是任意節(jié)點(diǎn)Ni的所有子節(jié)點(diǎn)編號,用數(shù)學(xué)表達(dá)形式為zc/^,={cwMi,cwM2.,,cw,},其中,cw^表示節(jié)點(diǎn)Ni的第一個子節(jié)點(diǎn),CW^表示節(jié)點(diǎn)&的第二個子節(jié)點(diǎn),CW^表示節(jié)點(diǎn)Ni的第1個子節(jié)點(diǎn),也表示節(jié)點(diǎn)&的任意一個子節(jié)點(diǎn)。在本發(fā)明中,如果節(jié)點(diǎn)&是葉節(jié)點(diǎn),則節(jié)點(diǎn)&的子節(jié)點(diǎn)集ZCW^為空集合。相應(yīng)地,當(dāng)節(jié)點(diǎn)K的子節(jié)點(diǎn)集ZCWwi不為空集合時,又稱節(jié)點(diǎn)Ni為非葉節(jié)點(diǎn)。③備用父節(jié)點(diǎn)集i^Pw,,在組播樹維護(hù)過程中,備用父節(jié)點(diǎn)集Z^Pwi中存儲的是任意節(jié)點(diǎn)&的備用父節(jié)點(diǎn)編號,用數(shù)學(xué)表達(dá)形式為Z^^,={^^,,S^,2,…,S7^,},其中,^i^,表示節(jié)點(diǎn)Ni的第一個備用父節(jié)點(diǎn),S^表示節(jié)點(diǎn)Ni的第二個備用父節(jié)點(diǎn);Si^,表示節(jié)點(diǎn)Ni的第m個備用父節(jié)點(diǎn),也表示節(jié)點(diǎn)&的任意一個備用父節(jié)點(diǎn)。在本發(fā)明中,當(dāng)任意節(jié)點(diǎn)&沒有備用父節(jié)點(diǎn)時,則節(jié)點(diǎn)&的備用父節(jié)點(diǎn)集Z^^,為空集合。在本發(fā)明中,任意節(jié)點(diǎn)&在加入組播樹之前,4,=0,子節(jié)點(diǎn)集ZCW^,和備用父節(jié)點(diǎn)集Z^^,都為空集合。當(dāng)任意節(jié)點(diǎn)&為根節(jié)點(diǎn)時,可用TNode標(biāo)記,如圖1所示?!愕兀谝豢媒M播樹中,節(jié)點(diǎn)可能會存在多重身份,即一個節(jié)點(diǎn)可能是另外一個節(jié)點(diǎn)的子節(jié)點(diǎn),同時,又可能是其他某些節(jié)點(diǎn)的父節(jié)點(diǎn)或備用父節(jié)點(diǎn)。參見圖1所示的一個具有分層結(jié)構(gòu)的組播樹結(jié)構(gòu),在該組播樹中A節(jié)點(diǎn)是根節(jié)點(diǎn)(代表傳感器網(wǎng)絡(luò)中的基站節(jié)點(diǎn)),B工節(jié)點(diǎn)^2節(jié)點(diǎn)、Nj節(jié)點(diǎn)、^節(jié)點(diǎn)、……、Bb節(jié)點(diǎn)分別為A節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,A節(jié)點(diǎn)就是B工節(jié)點(diǎn)、B2節(jié)點(diǎn)、Nj節(jié)點(diǎn)、A,節(jié)點(diǎn)、……、Bb節(jié)點(diǎn)的父節(jié)點(diǎn);d節(jié)點(diǎn)丄2節(jié)點(diǎn)、……、C。節(jié)點(diǎn)分別是B工節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,B工節(jié)點(diǎn)就是Q節(jié)點(diǎn)、G節(jié)點(diǎn)、……、(;節(jié)點(diǎn)的父節(jié)點(diǎn);D工節(jié)點(diǎn)、02節(jié)點(diǎn)分別是B2節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,B2節(jié)點(diǎn)就是D工節(jié)點(diǎn)、02節(jié)點(diǎn)的父節(jié)點(diǎn);Ee節(jié)點(diǎn)是Nj節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,Nj節(jié)點(diǎn)就是Ee節(jié)點(diǎn)的父節(jié)點(diǎn);&節(jié)點(diǎn)是A,節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,A,節(jié)點(diǎn)就是&節(jié)點(diǎn)的父節(jié)點(diǎn);Ff節(jié)點(diǎn)是Bb節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,Bb節(jié)點(diǎn)就是Ff節(jié)點(diǎn)的父節(jié)點(diǎn);^節(jié)點(diǎn)、62節(jié)點(diǎn)分別是Ee節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,Ee節(jié)點(diǎn)就是^節(jié)點(diǎn)、62節(jié)點(diǎn)的父節(jié)點(diǎn);,節(jié)點(diǎn)、C7^',點(diǎn)、……、C/.,節(jié)點(diǎn)分別是&節(jié)點(diǎn)的子節(jié)點(diǎn),相應(yīng)地,&節(jié)點(diǎn)就是G^v,,節(jié)點(diǎn)、a&2節(jié)點(diǎn)、……、a.,節(jié)點(diǎn)的父節(jié)點(diǎn);^節(jié)點(diǎn)和G2節(jié)點(diǎn)在D2節(jié)點(diǎn)的通信范圍內(nèi),但D2節(jié)點(diǎn)并不是^節(jié)點(diǎn)和G2節(jié)點(diǎn)的父節(jié)點(diǎn),則D2節(jié)點(diǎn)為^和G2節(jié)點(diǎn)的備用父節(jié)點(diǎn);Q節(jié)點(diǎn)、C2節(jié)點(diǎn)、、C。節(jié)點(diǎn)、Di節(jié)點(diǎn)、D2節(jié)點(diǎn)、Ff節(jié)點(diǎn)以及<^^,.,節(jié)點(diǎn)、2節(jié)點(diǎn)、……、G"節(jié)點(diǎn)都沒有子節(jié)點(diǎn),則它們是葉節(jié)點(diǎn);A節(jié)點(diǎn)、B工節(jié)點(diǎn)、B2節(jié)點(diǎn)、^節(jié)點(diǎn)、……、Bb節(jié)點(diǎn)以及^節(jié)點(diǎn)都有一個或多個子節(jié)點(diǎn),則它們是非葉節(jié)點(diǎn)。在本發(fā)明中,對于網(wǎng)絡(luò)中的任意兩個節(jié)點(diǎn)&和Nj,組播樹的維護(hù)執(zhí)行如下維護(hù)執(zhí)行步驟維護(hù)執(zhí)行步驟l):網(wǎng)絡(luò)中的任意節(jié)點(diǎn)Ni,如果Ni是某些節(jié)點(diǎn)的父節(jié)點(diǎn)(簡稱父節(jié)點(diǎn)N》,即&的子節(jié)點(diǎn)集ZCWw,不為空集合,則Ni會周期性地通過廣播的方式發(fā)送子節(jié)點(diǎn)維護(hù)報(bào)文CM7^(7Ti^c/Z^,i:C/^),以及接收其任意子節(jié)點(diǎn)C/^的應(yīng)答報(bào)文JC《-(nT^^,/A^),并根據(jù)在該周期內(nèi)收到子節(jié)點(diǎn)應(yīng)答報(bào)文的情況不同,執(zhí)行維護(hù)執(zhí)行步驟5);同時,網(wǎng)絡(luò)中的每個節(jié)點(diǎn)都會接收網(wǎng)絡(luò)中的子節(jié)點(diǎn)維護(hù)報(bào)文,當(dāng)收到子節(jié)點(diǎn)維護(hù)報(bào)文時,執(zhí)行如下的維護(hù)執(zhí)行步驟2);當(dāng)一個維護(hù)周期結(jié)束時,執(zhí)行維護(hù)執(zhí)行步驟6);維護(hù)執(zhí)行步驟2):當(dāng)另一任意節(jié)點(diǎn)Nj收到子節(jié)點(diǎn)維護(hù)報(bào)文CMT=(rZP£CM7.,/Z)Wi,£CWWi)時,首先根據(jù)CMT報(bào)文中的/Z^,判斷節(jié)點(diǎn)^是否為自己的父節(jié)點(diǎn)A,.,如果是,則執(zhí)行維護(hù)執(zhí)行步驟3),否則執(zhí)行維護(hù)執(zhí)行步驟4);維護(hù)執(zhí)行步驟3):節(jié)點(diǎn)Nj檢查所收到的子節(jié)點(diǎn)維護(hù)報(bào)文CMT=(717}£0^,72^,^^,)中的子節(jié)點(diǎn)集丄(^^,判斷自己的編號ZA^.是否在子節(jié)點(diǎn)集丄CWw,中,如果是,表示節(jié)點(diǎn)Ni是節(jié)點(diǎn)Nj的父節(jié)點(diǎn),則節(jié)點(diǎn)Nj向節(jié)點(diǎn)Ni發(fā)送一個應(yīng)答報(bào)文^CK-(7TPE,p/Z^),用于維持組播樹結(jié)構(gòu);否則,執(zhí)行維護(hù)執(zhí)行步驟7),加入組播樹;維護(hù)執(zhí)行步驟4):發(fā)送子節(jié)點(diǎn)維護(hù)報(bào)文的節(jié)點(diǎn)Ni不是節(jié)點(diǎn)Nj的父節(jié)點(diǎn),節(jié)點(diǎn)Nj將節(jié)點(diǎn)K加入到它的備用父節(jié)點(diǎn)集Z"A,中;在本發(fā)明中,由于父節(jié)點(diǎn)對子節(jié)點(diǎn)發(fā)送子節(jié)點(diǎn)維護(hù)報(bào)文是采用廣播的方式,所以每個節(jié)點(diǎn)都有可能接收到不是自己的父節(jié)點(diǎn)(非父節(jié)點(diǎn))發(fā)送的子節(jié)點(diǎn)維護(hù)報(bào)文。所以,對于任意另一節(jié)點(diǎn)Nj,如果Nj接收到了&發(fā)送的子節(jié)點(diǎn)維護(hù)報(bào)文CMT,那么能夠得知Nj在K的通信范圍之內(nèi)。如果Nj不在&的通信路徑(在本發(fā)明中,節(jié)點(diǎn)&的通信路徑是指組播報(bào)文從根節(jié)點(diǎn)傳至K所經(jīng)過的節(jié)點(diǎn)序列)里,稱&為Nj的一個備用父節(jié)點(diǎn)。維護(hù)執(zhí)行步驟5):當(dāng)節(jié)點(diǎn)&收到了其它任意子節(jié)點(diǎn)CWM,的應(yīng)答報(bào)文,則維持&與^,,的父子關(guān)系不變;維護(hù)執(zhí)行步驟6):在一個維護(hù)周期結(jié)束后,節(jié)點(diǎn)Ni掃描其子節(jié)點(diǎn)集ZC^^,對于在該維護(hù)周期內(nèi)未收到應(yīng)答報(bào)文的子節(jié)點(diǎn)CWw,,,該&將把<^人,,從工<^^,中刪除,結(jié)束與這些子節(jié)點(diǎn)的父子關(guān)系;如果子節(jié)點(diǎn)^CWw,在一個維護(hù)周期內(nèi)沒有收到來自其父節(jié)點(diǎn)Ni的子節(jié)點(diǎn)維護(hù)報(bào)文,則子節(jié)點(diǎn)^CWw,執(zhí)行"節(jié)點(diǎn)加入組播樹"的處理方式。在本發(fā)明中,對于網(wǎng)絡(luò)中的任意節(jié)點(diǎn)Ni,當(dāng)其需要加入一個組播樹時,則執(zhí)行如下處理步驟步驟001:設(shè)置節(jié)點(diǎn)&的子節(jié)點(diǎn)集^CW《和備用父節(jié)點(diǎn)集i^Pw,均為空集合;步驟002:節(jié)點(diǎn)&廣播父節(jié)點(diǎn)請求報(bào)文戶/2={717^吸,//^},其中,TYPEp股表示報(bào)文類型為父節(jié)點(diǎn)請求報(bào)文,/£^,表示節(jié)點(diǎn)Ni的編號;步驟003:組播樹中的另一任意節(jié)點(diǎn)Nj收到/^^={717^卿,/£^}報(bào)文后,向節(jié)點(diǎn)K發(fā)送子請求報(bào)文C^2=(7Ti^Cfle,/i、),其中,TYPE^表示報(bào)文的類型為子請求報(bào)文,/"w,是節(jié)點(diǎn)Nj的編號。步驟004:節(jié)點(diǎn)&收到C及g-(7Ti^^,/Z^)后,向節(jié)點(diǎn)Nj回復(fù)應(yīng)答ACK,并將&,設(shè)置為Nj,從而節(jié)點(diǎn)&成為節(jié)點(diǎn)Nj的子節(jié)點(diǎn)。在本發(fā)明的組播過程中,所有非葉節(jié)點(diǎn)既發(fā)送組播報(bào)文也接收組播報(bào)文,但基站、非葉節(jié)點(diǎn)除外,因?yàn)榛緝H發(fā)送組播報(bào)文,葉節(jié)點(diǎn)只接受而不轉(zhuǎn)發(fā)組播報(bào)文。本發(fā)明采用增葉策略對組播樹的結(jié)構(gòu)進(jìn)行優(yōu)化,在不影響網(wǎng)絡(luò)連通性的情況下,將非葉節(jié)點(diǎn)轉(zhuǎn)換為葉節(jié)點(diǎn),從而減少組播報(bào)文的轉(zhuǎn)發(fā)次數(shù),減低系統(tǒng)的總能耗。組播樹維持一段時間后,部分節(jié)點(diǎn)能量過低。在本發(fā)明中,采用組播樹的能量均衡策略進(jìn)行休眠狀態(tài)判斷。如果節(jié)點(diǎn)是可替代的,則進(jìn)入休眠狀態(tài),從而防止節(jié)點(diǎn)過早死亡,以增加整個無線傳感器網(wǎng)絡(luò)的存活時間。在本發(fā)明中,通過以下算法實(shí)現(xiàn)組播樹的優(yōu)化。對于網(wǎng)絡(luò)中的任意節(jié)點(diǎn)Ni,它有1(1=2,即節(jié)點(diǎn)G,節(jié)點(diǎn)H)個子節(jié)點(diǎn)C7^,,,CWM2,'",CWM,。其優(yōu)化步驟如下步驟101:節(jié)點(diǎn)Ni檢查其備用父節(jié)點(diǎn)集^^A,.是否為空集合,如果不是,表示節(jié)點(diǎn)Ni存在備用父節(jié)點(diǎn),則節(jié)點(diǎn)K向它的父節(jié)點(diǎn)&發(fā)送發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文APD=(7TPE,,/Z、,),其中,TYPEBPD表示報(bào)文類型為發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文,/Av,是節(jié)點(diǎn)&的節(jié)點(diǎn)編號。同時,如果節(jié)點(diǎn)Ni的任意子節(jié)點(diǎn)^《,,也會檢查(^4,的備用父節(jié)點(diǎn)集^^^,,如果不為空,會向它的父節(jié)點(diǎn)(即節(jié)點(diǎn)Ni)發(fā)送發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文,節(jié)點(diǎn)Ni會接收來自它的所有子節(jié)點(diǎn)的發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文;在本發(fā)明中,由于父節(jié)點(diǎn)對子節(jié)點(diǎn)發(fā)送子節(jié)點(diǎn)維護(hù)報(bào)文是采用廣播的方式,所以每個節(jié)點(diǎn)都有可能接收到非父節(jié)點(diǎn)發(fā)送的子節(jié)點(diǎn)維護(hù)報(bào)文。所以,對于任意節(jié)點(diǎn)N,如果N接收到了其他任意節(jié)點(diǎn)Q發(fā)送的子節(jié)點(diǎn)維護(hù)報(bào)文CMT,那么能夠得知N在Q的通信范圍之內(nèi),Q為非葉節(jié)點(diǎn)(只有父節(jié)點(diǎn)發(fā)送子節(jié)點(diǎn)維護(hù)報(bào)文CMT)。如果N不在Q的通信路徑(在本發(fā)明中,節(jié)點(diǎn)Q的通信路徑是指組播報(bào)文從根節(jié)點(diǎn)傳至Q所經(jīng)過的節(jié)點(diǎn)序列)里,稱Q為N的備用父節(jié)點(diǎn)BP。步驟102:當(dāng)節(jié)點(diǎn)&收到它的任意子節(jié)點(diǎn)CW化的發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文BPD后,在K的子節(jié)點(diǎn)集中標(biāo)記<^^^,,為可釋放狀態(tài)。步驟103:如果節(jié)點(diǎn)&的所有子節(jié)點(diǎn)C/、,,,CW化,…,CW碼均處于可釋放狀態(tài)的,那么節(jié)點(diǎn)Ni向其所有子節(jié)點(diǎn)CW^,CW^,一,<^/^^,發(fā)送釋放請求報(bào)文M0-(7TPE,,/I^),其中,TYPE,表示報(bào)文類型為釋放請求報(bào)文,/Z、是Ni的節(jié)點(diǎn)編號,進(jìn)入等待釋放狀態(tài)。步驟104:子節(jié)點(diǎn)CW收到節(jié)點(diǎn)Ni的廣播釋放請求報(bào)文RRQ后,向其備用父節(jié)點(diǎn)集"《w、,中的所有備用父節(jié)點(diǎn)^W,,,5P^,,2,,^:/k發(fā)送父請求報(bào)文P啦=(7Ti^卿,/A^"),其中,TYPEpRQ表示報(bào)文類型為父請求報(bào)文,/A;^,是節(jié)點(diǎn)CWM,的節(jié)點(diǎn)編號。步驟105:對于節(jié)點(diǎn)<^^的任意備用父節(jié)點(diǎn)^^吣,如果它并非自由節(jié)點(diǎn)且未處于等待釋放狀態(tài),則向節(jié)點(diǎn)C^w,回復(fù)應(yīng)答報(bào)文ACK;否則,向節(jié)點(diǎn)C/c^,回復(fù)否定回答報(bào)文薩。步驟106:如果子節(jié)點(diǎn)^^^,收到備用父節(jié)點(diǎn)^^^,,發(fā)送的應(yīng)答報(bào)文ACK,則向父節(jié)點(diǎn)&發(fā)送應(yīng)答報(bào)文ACK,并將收到的第一個應(yīng)答報(bào)文ACK的發(fā)送備用父節(jié)點(diǎn)標(biāo)記為」CX_5PCWM,m;如果節(jié)點(diǎn)€7^,,收到的所有備用父節(jié)點(diǎn)的報(bào)文均為否定回答報(bào)文脆1(,向&發(fā)送否定回答報(bào)文NAK。步驟107:節(jié)點(diǎn)&收到所有子節(jié)點(diǎn)C/^,,CWM'2,…,C/^,的應(yīng)答報(bào)文ACK后,向其所有子節(jié)點(diǎn)G"w,',G"化,'",<^^,發(fā)送釋放子節(jié)點(diǎn)報(bào)文7^\^=(717^^^,//^),其中,TYPE,表示報(bào)文類型為釋放子節(jié)點(diǎn)報(bào)文,/Av,是節(jié)點(diǎn)Ni的節(jié)點(diǎn)編號。子節(jié)點(diǎn)CWM,收到釋放子節(jié)點(diǎn)報(bào)文RNF后成為備用父節(jié)點(diǎn)JC《—5P③吣的子節(jié)點(diǎn)。優(yōu)化前是非葉節(jié)點(diǎn)的節(jié)點(diǎn)Ni則成為葉節(jié)點(diǎn)。由于^c《-^Aw^,為非葉節(jié)點(diǎn)且消息廣播發(fā)送,讓節(jié)點(diǎn)cw^做節(jié)點(diǎn)的子節(jié)點(diǎn),并不增加BPi能量消耗。Ni節(jié)點(diǎn)變?yōu)槿~節(jié)點(diǎn),降低了能耗。所以系統(tǒng)總能耗降低了。對于無線傳感器網(wǎng)絡(luò)組播路由而言,有以下幾個特點(diǎn)(l)發(fā)送報(bào)文遠(yuǎn)比接收報(bào)文消耗能量,能耗正比于報(bào)文發(fā)送次數(shù);(2)可以采用廣播的方式,將消息一次發(fā)給自己所有的子節(jié)點(diǎn);(3)廣播報(bào)文和單播報(bào)文具有相同的能耗。對于每一個組播報(bào)文的轉(zhuǎn),每個中間節(jié)點(diǎn)需要廣播一次報(bào)文,而葉節(jié)點(diǎn)只需要接收報(bào)文。因此,為了降低系統(tǒng)的總能耗,需要讓盡可能多的節(jié)點(diǎn)成為葉節(jié)點(diǎn)。如圖2所示,圖中非葉節(jié)點(diǎn)的數(shù)目比圖l減小了l個,當(dāng)有組播報(bào)文需要通過該網(wǎng)絡(luò)的時候,圖2所示的組播樹將比圖1中組播樹少轉(zhuǎn)發(fā)1次報(bào)文,從而減小了能耗。當(dāng)網(wǎng)絡(luò)中某些節(jié)點(diǎn)由于長期工作能量過低時,為了防止節(jié)點(diǎn)過早的死亡,需要調(diào)整組播樹,使該節(jié)點(diǎn)進(jìn)入休眠狀態(tài),或者僅接收組播報(bào)文。在本發(fā)明中,采用旁路休眠策略進(jìn)行能量均衡處理,對于網(wǎng)絡(luò)中的任意節(jié)點(diǎn)Nj,步驟如下步驟201:節(jié)點(diǎn)Nj發(fā)現(xiàn)自己能量低于預(yù)設(shè)的閾值時,向根節(jié)點(diǎn)TNode發(fā)送休眠請求報(bào)文^^=(^^卿,^\,^),其中,TYPE,表示報(bào)文類型為休眠請求報(bào)文,/"w,為Nj的節(jié)點(diǎn)編號,ZA^"^w,為節(jié)點(diǎn)Nj的剩余能量值。步驟202:根節(jié)點(diǎn)TNode收到休眠請求報(bào)文SRQ后,廣播該條SRQ報(bào)文。對于組播樹中的任意一個節(jié)點(diǎn)K,節(jié)點(diǎn)&收到SRQ報(bào)文后(該報(bào)文來自根節(jié)點(diǎn)TNode的廣播,或者來自步驟202-2、步驟202-3和步驟202-4的廣播),有如下處理子步驟步驟202-1:如果&就是節(jié)點(diǎn)Nj,則丟棄報(bào)文;否則,轉(zhuǎn)步驟202-2。步驟202-2:如果&為非葉節(jié)點(diǎn),廣播該報(bào)文;否則,轉(zhuǎn)步驟202-3。步驟202-3:Ni為葉節(jié)點(diǎn),如果節(jié)點(diǎn)Ni的剩余能量值i&,不大于SRQ報(bào)文中的丄&,,即i^w,,丟棄該報(bào)文;否則廣播該報(bào)文。轉(zhuǎn)步驟202-4。步驟202-4:如果&為Nj的子孫節(jié)點(diǎn),且不是Nj的子節(jié)點(diǎn),則廣播該報(bào)文;否則,轉(zhuǎn)步驟202-5。節(jié)點(diǎn)&為節(jié)點(diǎn)Nj的子孫節(jié)點(diǎn)是指,從根節(jié)點(diǎn)TNode到節(jié)點(diǎn)^的組播路徑中包含節(jié)點(diǎn)Nj。由于節(jié)點(diǎn)Nj不對SRQ轉(zhuǎn)發(fā),所以該報(bào)文不可能通過組播得到。步驟202-5:如果&為Nj的子節(jié)點(diǎn),則廣播該報(bào)文,并向Nj節(jié)點(diǎn)回復(fù)應(yīng)答報(bào)文ACK。步驟203:如果Nj收到所有子節(jié)點(diǎn)的應(yīng)答報(bào)文ACK,進(jìn)入休眠狀態(tài),執(zhí)行步驟204;否則節(jié)點(diǎn)&不能進(jìn)入休眠狀態(tài)而繼續(xù)工作。步驟204:Nj的子孫節(jié)點(diǎn)脫離了組播樹,重新申請加入組播樹。在本發(fā)明中,節(jié)點(diǎn)可能收到多個節(jié)點(diǎn)發(fā)送的CRQ報(bào)文,此時只能向一個節(jié)點(diǎn)發(fā)送應(yīng)答報(bào)文。可以選擇通訊路徑最短且接收到CRQ報(bào)文時間最早的節(jié)點(diǎn)。通過使用以上方法,當(dāng)節(jié)點(diǎn)Nj進(jìn)入休眠狀態(tài)前,可以使Nj的每個子孫節(jié)點(diǎn)都能找到新的父節(jié)點(diǎn),保證了網(wǎng)絡(luò)的復(fù)蓋度。經(jīng)過旁路休眠策略調(diào)整后,組播樹的變化如圖2中虛線所示B2節(jié)點(diǎn)成為葉節(jié)點(diǎn),D2節(jié)點(diǎn)(^Ai,)成為Nj節(jié)點(diǎn)的子節(jié)點(diǎn),^節(jié)點(diǎn)成為D2節(jié)點(diǎn)的子節(jié)點(diǎn)。圖中可以看出葉節(jié)點(diǎn)的個數(shù)增加了,減少了報(bào)文轉(zhuǎn)發(fā)次數(shù),從而降低了無線傳感器網(wǎng)絡(luò)的總能耗。本發(fā)明中各個字母的物理意義為9<table>tableseeoriginaldocumentpage10</column></row><table>權(quán)利要求一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,所述組播樹是指構(gòu)建好的無線傳感器網(wǎng)絡(luò)組播路由的組播樹,其特征在于組播樹調(diào)整方法一方面使用增葉策略優(yōu)化組播樹,以減少組播過程的能耗;另一方面使用旁路休眠策略實(shí)現(xiàn)該組播樹中各節(jié)點(diǎn)的能耗均衡,延長整個無線傳感器網(wǎng)絡(luò)的存活時間。2.根據(jù)權(quán)利要求1所述的適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,其特征在于增葉策略優(yōu)化組播樹包括有下列步驟步驟101:節(jié)點(diǎn)&檢查其備用父節(jié)點(diǎn)集ZS^,是否為空集合,如果不是,表示節(jié)點(diǎn)&存在備用父節(jié)點(diǎn),則節(jié)點(diǎn)K向它的父節(jié)點(diǎn)^,發(fā)送發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文^^=(717£,,/&),同時,如果節(jié)點(diǎn)&的任意子節(jié)點(diǎn)CWM,也會檢查CWM,的備用父節(jié)點(diǎn)集^^d,,如果不為空,節(jié)點(diǎn)K會向父節(jié)點(diǎn)」發(fā)送發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文,節(jié)點(diǎn)&會接收來自它的所有子節(jié)點(diǎn)的發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文;步驟102:當(dāng)節(jié)點(diǎn)&收到它的任意子節(jié)點(diǎn)CWw"的發(fā)現(xiàn)備用父節(jié)點(diǎn)報(bào)文BPD后,在&的子節(jié)點(diǎn)集中標(biāo)記CWw"為可釋放狀態(tài);步驟103:如果節(jié)點(diǎn)&的所有子節(jié)點(diǎn)CWMi,CWW;2,…,CWm,均處于可釋放狀態(tài)的,那么節(jié)點(diǎn)Ni向其所有子節(jié)點(diǎn)CW;v,,,CWW,2,…,C/々,發(fā)送釋放請求報(bào)文鯽《M朋。,/Av,);TYPE,表示報(bào)文類型為釋放請求報(bào)文;^\是&的節(jié)點(diǎn)編號,進(jìn)入等待釋放狀態(tài);步驟104:子節(jié)點(diǎn)<^^^,,收到節(jié)點(diǎn)^的廣播釋放請求報(bào)文RRQ后,向其備用父B尸B尸5尸節(jié)點(diǎn)集ZSP中的所有備用父節(jié)點(diǎn)eW'v"',eW2'^""'發(fā)送父請求報(bào)文,=(訓(xùn)復(fù)"叫);TYPE,表示報(bào)文類型為父請求報(bào)文;^^7是節(jié)點(diǎn)。^,的節(jié)點(diǎn)編號;步驟105:對于節(jié)點(diǎn)CW^的任意備用父節(jié)點(diǎn)^a、,如果它并非自由節(jié)點(diǎn)且未處于等待釋放狀態(tài),則向節(jié)點(diǎn)C/^s,回復(fù)應(yīng)答報(bào)文ACK;否則,向節(jié)點(diǎn)<^/^/,,回復(fù)否定回答報(bào)文脆1(;步驟106:如果子節(jié)點(diǎn)CWM,收到備用父節(jié)點(diǎn)^Aw^,發(fā)送的應(yīng)答報(bào)文ACK,則向父節(jié)點(diǎn)&發(fā)送應(yīng)答報(bào)文ACK,并將收到的第一個應(yīng)答報(bào)文ACK的發(fā)送備用父節(jié)點(diǎn)標(biāo)記為^C《-^Pc'w^;如果節(jié)點(diǎn)CWw,收到的所有備用父節(jié)點(diǎn)的報(bào)文均為否定回答報(bào)文NAK,向&發(fā)送否定回答報(bào)文NAK;步驟107:節(jié)點(diǎn)&收到所有子節(jié)點(diǎn)CW^,C7《2,…,C/^,的應(yīng)答報(bào)文ACK后,向其所有子節(jié)點(diǎn)cw他,,c/《,2廣',00送釋放子節(jié)點(diǎn)報(bào)文及;\^=(717^,,/&),子節(jié)點(diǎn)C/、,收到釋放子節(jié)點(diǎn)報(bào)文RNF后成為備用父節(jié)點(diǎn)^^^-^Pcw,的子節(jié)點(diǎn),從而完成了優(yōu)化前的非葉節(jié)點(diǎn)的節(jié)點(diǎn)Ni成為葉節(jié)點(diǎn);TYPE,表示報(bào)文類型為釋放子節(jié)點(diǎn)報(bào)文;1Dw,是節(jié)點(diǎn)Ni的節(jié)點(diǎn)編號。3.根據(jù)權(quán)利要求1所述的適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,其特征在于采用旁路休眠策略進(jìn)行能量均衡處理包括有下列步驟步驟201:節(jié)點(diǎn)Nj發(fā)現(xiàn)自己能量低于預(yù)設(shè)的閾值時,向根節(jié)點(diǎn)TNode發(fā)送休眠請求報(bào)文卿=(汀,丄、);TYPE,表示報(bào)文類型為休眠請求報(bào)文;^w,為Nj的節(jié)點(diǎn)編號;Z^w,A"wg)^為節(jié)點(diǎn)Ni的剩余能量值;步驟202:根節(jié)點(diǎn)TNode收到休眠請求報(bào)文SRQ后,廣播該條SRQ報(bào)文;對于組播樹中的任意一個節(jié)點(diǎn)K,節(jié)點(diǎn)&收到SRQ報(bào)文后有如下處理子步驟步驟202-1:如果&就是節(jié)點(diǎn)Nj,則丟棄報(bào)文;否則,轉(zhuǎn)步驟202-2;步驟202-2:如果&為非葉節(jié)點(diǎn),廣播該報(bào)文;否則,轉(zhuǎn)步驟202-3;步驟202-3A為葉節(jié)點(diǎn),如果節(jié)點(diǎn)&的剩余能量值ZJ^,不大于SRQ報(bào)文中的^^w,,即£~,丟棄該報(bào)文;否則廣播該報(bào)文;轉(zhuǎn)步驟202-4;步驟202-4:如果Ni為Nj的子孫節(jié)點(diǎn),且不是Nj的子節(jié)點(diǎn),則廣播該報(bào)文;否則,轉(zhuǎn)步驟202-5;步驟202-5:如果&為Nj的子節(jié)點(diǎn),則廣播該報(bào)文,并向Nj節(jié)點(diǎn)回復(fù)應(yīng)答報(bào)文ACK;步驟203:如果Nj收到所有子節(jié)點(diǎn)的應(yīng)答報(bào)文ACK,進(jìn)入休眠狀態(tài),執(zhí)行步驟204;否則節(jié)點(diǎn)Nj不能進(jìn)入休眠狀態(tài)而繼續(xù)工作;步驟204:Nj的子孫節(jié)點(diǎn)脫離了組播樹,重新申請加入組播樹。4.根據(jù)權(quán)利要求1所述的適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,其特征在于對于網(wǎng)絡(luò)中的任意節(jié)點(diǎn)Ni,當(dāng)其需要加入一個組播樹時,則執(zhí)行如下處理步驟步驟001:設(shè)置節(jié)點(diǎn)&的子節(jié)點(diǎn)集ZCW^,和備用父節(jié)點(diǎn)集i^Pw,均為空集合;步驟002:節(jié)點(diǎn)Ni廣播父節(jié)點(diǎn)請求報(bào)文^2={7^五,,/^,};TYPE,表示報(bào)文類型為父節(jié)點(diǎn)請求報(bào)文;a)W,表示節(jié)點(diǎn)Ni的編號;步驟003:組播樹中的另一任意節(jié)點(diǎn)Nj收到i^g二(7T尸^^,/Z^,艮文后,向節(jié)點(diǎn)Ni發(fā)送子請求報(bào)文^^2^(nr^^,/z^);TYPE^表示報(bào)文的類型為子請求報(bào)文;^^,是節(jié)點(diǎn)Nj的編號。步驟004:節(jié)點(diǎn)&收到C/g二(7TP^^,/Z^)后,向節(jié)點(diǎn)Nj回復(fù)應(yīng)答ACK,并將&,設(shè)置為Nj,從而節(jié)點(diǎn)&成為節(jié)點(diǎn)Nj的子節(jié)點(diǎn)。全文摘要本發(fā)明公開了一種適用于無線傳感器網(wǎng)絡(luò)的組播路由的組播樹調(diào)整方法,該方法一方面通過增葉策略對組播樹結(jié)構(gòu)進(jìn)行優(yōu)化,在不影響無線傳感器網(wǎng)絡(luò)連通性的情況下,增加組播樹中葉節(jié)點(diǎn)數(shù)目,從而減少報(bào)文轉(zhuǎn)發(fā)次數(shù),降低了無線傳感器網(wǎng)絡(luò)的總能耗;另一方面采用旁路休眠策略進(jìn)行節(jié)點(diǎn)休眠定制,從而達(dá)到能量均衡。通過兩個策略有效的降低了組播路由的能耗,同時實(shí)現(xiàn)了節(jié)點(diǎn)間的能耗均衡。本發(fā)明的調(diào)整方法可以對通過任意策略構(gòu)建的無線傳感器網(wǎng)絡(luò)組播路由的組播樹進(jìn)行優(yōu)化。文檔編號H04W52/00GK101699903SQ20091023651公開日2010年4月28日申請日期2009年10月23日優(yōu)先權(quán)日2009年10月23日發(fā)明者劉偉,熊璋,王奉坤,蒲菊華,路巖,陳佳申請人:北京航空航天大學(xué)