專利名稱::一種無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種無線傳感器網(wǎng)絡(luò)拓?fù)浔O(jiān)視方法,尤其涉及一種無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法,屬于無線傳感器網(wǎng)絡(luò)測試領(lǐng)域。
背景技術(shù):
:無線傳感器網(wǎng)絡(luò)(WirelessSensorNetwork,WSN,簡稱傳感器網(wǎng)絡(luò))是由部署在監(jiān)測區(qū)域內(nèi)大量的廉價(jià)微型傳感器節(jié)點(diǎn)組成,通過無線通信方式形成的一個(gè)多跳的自組織的網(wǎng)絡(luò)系統(tǒng),其目的是協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中被感知對象的信息,并發(fā)送給觀察者。傳感器網(wǎng)絡(luò)存在大量的動態(tài)性的因素,諸如工作環(huán)境惡劣、干擾頻繁,節(jié)點(diǎn)由于成本限制而易出現(xiàn)故障或由于能量耗盡而失效,無線通信鏈路不穩(wěn)定,時(shí)通時(shí)斷,并進(jìn)一步引起網(wǎng)絡(luò)拓?fù)涞母淖兊?。狀態(tài)的變化會對網(wǎng)絡(luò)性能有一定的影響,需要進(jìn)行有效的網(wǎng)絡(luò)狀態(tài)監(jiān)視,以便了解網(wǎng)絡(luò)運(yùn)行狀態(tài)并及時(shí)優(yōu)化調(diào)整。傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)作為監(jiān)視的一項(xiàng)重要內(nèi)容,反映了傳感器網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的連接構(gòu)成,對傳感謝器網(wǎng)絡(luò)的監(jiān)視具有很高的價(jià)值,利用構(gòu)造出來的拓?fù)浣Y(jié)構(gòu)可以了解各個(gè)節(jié)點(diǎn)的工作狀態(tài),在某一時(shí)刻鏈路的狀態(tài)信息等網(wǎng)絡(luò)性能指標(biāo)。傳感器網(wǎng)絡(luò)是資源受限的網(wǎng)絡(luò),節(jié)點(diǎn)的能量供應(yīng)、運(yùn)算能力、存儲能力、無線通信帶寬等資源都是極度受限的,而且無線通信是節(jié)點(diǎn)能量消耗的主要環(huán)節(jié)。因而,傳感器網(wǎng)絡(luò)的狀態(tài)監(jiān)視,必需盡量降低監(jiān)視行為對網(wǎng)絡(luò)資源的消耗,降低監(jiān)視行為對網(wǎng)絡(luò)自身狀態(tài)的影響,即滿足輕量級監(jiān)視的目標(biāo)。目前,針對的拓?fù)浔O(jiān)視主要有兩類手段一是每個(gè)節(jié)點(diǎn)傳送自己的父節(jié)點(diǎn)(即下一跳節(jié)點(diǎn))信息,匯聚節(jié)點(diǎn)綜合這些信息后,構(gòu)建網(wǎng)絡(luò)拓?fù)?。二是?jié)點(diǎn)傳輸逐跳的路徑信息,即每個(gè)中間節(jié)點(diǎn)在中轉(zhuǎn)時(shí)加進(jìn)自己的路徑信息,匯聚節(jié)點(diǎn)從包中直接得知該數(shù)據(jù)包傳輸?shù)穆窂?。第一種傳感器網(wǎng)絡(luò)拓?fù)浔O(jiān)視方法的不足之處在于不能準(zhǔn)確反映網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。由于節(jié)點(diǎn)間難以同時(shí)傳送這些信息,在傳輸過程中網(wǎng)絡(luò)拓?fù)淇赡馨l(fā)生改變,這樣就造成了實(shí)際路徑與匯聚節(jié)點(diǎn)綜合各個(gè)節(jié)點(diǎn)所傳的父節(jié)點(diǎn)信息得到的路徑不一致。例如3號節(jié)點(diǎn)在某一時(shí)刻向匯聚節(jié)點(diǎn)報(bào)告5號為父節(jié)點(diǎn),而5號則向匯聚節(jié)點(diǎn)報(bào)告6號為父節(jié)點(diǎn),6號報(bào)告1號為父節(jié)點(diǎn)。這樣在匯聚節(jié)點(diǎn)綜合這三個(gè)信息得出網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)為3->5->6->1。但在3號實(shí)際的發(fā)包過程中,網(wǎng)絡(luò)拓?fù)淇赡馨l(fā)生改變,例如5號報(bào)告自己的父節(jié)點(diǎn)為6號后,網(wǎng)絡(luò)拓?fù)浒l(fā)生變化,4號成為了5號的父節(jié)點(diǎn)。這樣在匯聚節(jié)點(diǎn)得到的拓?fù)湫畔?->5->6->1與3號發(fā)包實(shí)際路徑3->5->4->1不一致。第二種傳感器網(wǎng)絡(luò)拓?fù)浔O(jiān)視方法的不足之處在于所傳數(shù)據(jù)量較大,占用了大量網(wǎng)絡(luò)帶寬,影響了網(wǎng)絡(luò)性能。在第二種方法中每個(gè)中間節(jié)點(diǎn)轉(zhuǎn)發(fā)包時(shí),都將自己的節(jié)點(diǎn)地址信息添加到包中,這樣雖然能保證真實(shí)的記錄下每個(gè)包所走的真實(shí)路徑,但由于節(jié)點(diǎn)地址信息較長,并且包的長度隨著中間節(jié)點(diǎn)的不斷增多而線性增加,假設(shè)節(jié)點(diǎn)到匯聚節(jié)點(diǎn)需要10跳,每跳中轉(zhuǎn)節(jié)點(diǎn)用2個(gè)字節(jié)表示,則共需要20個(gè)字節(jié),顯然數(shù)據(jù)量是比較大的。這樣就造成了在傳感器網(wǎng)絡(luò)上的大量數(shù)據(jù)傳輸,影響了網(wǎng)絡(luò)性能。通常而言,為了更為準(zhǔn)確的監(jiān)視傳感器網(wǎng)絡(luò)的拓?fù)?,就需要傳輸更多的信息,這就勢必對傳感器網(wǎng)絡(luò)的資源更多的消耗,也會影響傳感器網(wǎng)絡(luò)的自身工作?,F(xiàn)有的方法尚無法解決這些矛盾的因素。因而需要解決在輕量級的資源開銷前提下,準(zhǔn)確地監(jiān)視傳感器網(wǎng)絡(luò)的拓?fù)涞膯栴}。
發(fā)明內(nèi)容本發(fā)明的目的在于提供一種傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法,其能夠降低網(wǎng)絡(luò)資源消耗,同時(shí)在不對網(wǎng)絡(luò)自身狀態(tài)影響的前提下,準(zhǔn)確監(jiān)視的拓?fù)錉顟B(tài)。本發(fā)明的技術(shù)方案為一種無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法,其步驟為1)普通節(jié)點(diǎn)采用具有哈希效果的二元函數(shù)Y^/(;c,力對發(fā)送的傳輸路徑信息進(jìn)行編碼,得到一路徑編碼值Y;其中y初始值為/(0,0),X為自身節(jié)點(diǎn)地址;2)普通節(jié)點(diǎn)周期性的向匯聚節(jié)點(diǎn)發(fā)送自身的二元組信息(Ni,/(0,0)),其中Ni為普通節(jié)點(diǎn)自身的源節(jié)點(diǎn)地址;3)如果普通節(jié)點(diǎn)接收到其它普通節(jié)點(diǎn)發(fā)出的二元組信息(N,,Y),則對接收到的路徑編碼值Y采用步驟1)的方法進(jìn)行編碼,并將得到的路徑編碼值Y與接收到的源節(jié)點(diǎn)地址Nj組成二元組信息發(fā)送到到達(dá)匯聚節(jié)點(diǎn)的下一跳節(jié)點(diǎn);4)匯聚節(jié)點(diǎn)將接收到的信息發(fā)送到中心服務(wù)器;5)中心服務(wù)器根據(jù)接收到的信息-中的路徑編碼值構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D。所述普通節(jié)點(diǎn)采用單獨(dú)發(fā)包形式將所述二元組信息發(fā)送到匯聚節(jié)點(diǎn)。所述普通節(jié)點(diǎn)通過將所述二元組信息添加到業(yè)務(wù)數(shù)據(jù)包中并發(fā)送到匯聚節(jié)點(diǎn)。所述中心服務(wù)器根據(jù)接收到的信息中的路徑編碼值構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D的方法為a)中心服務(wù)器采用步驟1)所選函數(shù)算出一跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值,并在中心服務(wù)器端進(jìn)行記錄;b)中心服務(wù)器將接收到的路徑編碼值與記錄的一跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有一跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑;C)根據(jù)中心服務(wù)器記錄的所有一跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,中心服務(wù)器采用步驟l)所選函數(shù)算出所有兩跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值并進(jìn)行記錄;d)中心服務(wù)器將接收到的路徑編碼值與記錄的所有兩跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有兩跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑;e)同理,中心服務(wù)器根據(jù)記錄的所有第M跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,計(jì)算出所有M+l跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值,然后將接收到的路徑編碼值與所有M+l跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有M+1跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑,直至全網(wǎng)到達(dá)匯聚節(jié)點(diǎn)的路由路徑,其中M為自然數(shù)。f)中心服務(wù)器根據(jù)每個(gè)節(jié)點(diǎn)還原后的路由路徑構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D。所述方法中,采用循環(huán)校驗(yàn)碼函數(shù)Y^Crc(x,y)對發(fā)送的傳輸路徑信息進(jìn)行編碼。所述中心服務(wù)器根據(jù)節(jié)點(diǎn)的路徑編碼值和該節(jié)點(diǎn)對應(yīng)路由路徑建立拓?fù)湫畔⒈?。所述無線傳感器網(wǎng)絡(luò)采用收集樹協(xié)議進(jìn)行組建;普通節(jié)點(diǎn)通過收集樹協(xié)議向匯聚節(jié)點(diǎn)發(fā)送所述二元組信息。所述普通節(jié)點(diǎn)為telosb節(jié)點(diǎn)。本發(fā)明的方法基于哈希(Hash)技術(shù)(參見FengjunShang;Aserialandnon-collisionhashalgorithm,Communications,CircuitsandSystems,2004.ICCCAS2004.2004InternationalConferenceon,Volume1,27-29June2004Page(s):591-595Vol.1),將傳輸6路徑信息表示為特定的編碼形式,在中心服務(wù)器收到這些數(shù)據(jù)后,通過一定的信息分析和還原方法,獲得傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)信息。該方法中,根據(jù)在無線傳感器網(wǎng)絡(luò)拓?fù)浔O(jiān)視中完成功能的不同,將節(jié)點(diǎn)分為兩類普通節(jié)點(diǎn)和匯聚節(jié)點(diǎn)。普通節(jié)點(diǎn)在傳感器網(wǎng)絡(luò)拓?fù)浔O(jiān)視中完成兩個(gè)功能,一個(gè)是周期性得發(fā)送自身信息,即源節(jié)點(diǎn)地址和路徑初始編碼值。另一個(gè)是在接收到其它節(jié)點(diǎn)發(fā)送的信息后,將傳輸路徑信息按照一定的形式進(jìn)行編碼,并按照一定原則尋找到達(dá)匯聚節(jié)點(diǎn)的下一跳節(jié)點(diǎn),將這些信息進(jìn)行轉(zhuǎn)發(fā)。匯聚節(jié)點(diǎn)負(fù)責(zé)將接收到的各個(gè)包信息轉(zhuǎn)發(fā)到中心服務(wù)器。中心服務(wù)器是具有數(shù)據(jù)存儲和處理功能的終端,比如PC。中心服務(wù)器根據(jù)接收到的信息,經(jīng)過還原分析得出傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),系統(tǒng)的組成如圖1所示。在向匯聚節(jié)點(diǎn),發(fā)送路徑信息時(shí),由于在中間節(jié)點(diǎn)對傳輸路徑進(jìn)行了編碼,數(shù)據(jù)量較小,可以采取兩種方式進(jìn)行傳輸,一種是單獨(dú)發(fā)包,即在發(fā)送業(yè)務(wù)數(shù)據(jù)包(比如光照,溫度等)的同時(shí),節(jié)點(diǎn)還將路徑信息打成單獨(dú)的包發(fā)送出去。另外一種是將經(jīng)過編碼后的路徑信息掛靠在業(yè)務(wù)數(shù)據(jù)包的后面(即將經(jīng)過編碼后的路徑信息添加到業(yè)務(wù)數(shù)據(jù)包的后面),隨著這些包進(jìn)行發(fā)送。Hash技術(shù)是采用某個(gè)Hash函數(shù)/^,w...),將需要Hash的任意長度的消息作為參數(shù),通過計(jì)算得出某一固定長度的消息摘要的技術(shù)。在該方法中我們選取了一類二元函數(shù)Y=/Oc,力對路徑信息進(jìn)行編碼來達(dá)到對傳輸路徑Hash的效果,其中x為自身節(jié)點(diǎn)號,y為到該節(jié)點(diǎn)的路徑Hash值(即路徑編碼值),中間節(jié)點(diǎn)利用該二元函數(shù)不斷的迭代求值最終實(shí)現(xiàn)Hash技術(shù)效果。例如從普通節(jié)點(diǎn)W,到達(dá)匯聚節(jié)點(diǎn)(JV。)的路徑為^->]^2->^->^。,但由于傳感器網(wǎng)絡(luò)的特點(diǎn),iV,在發(fā)送包時(shí)并不知道它所要走的完整路徑,只知道它的下一跳節(jié)點(diǎn)為7V2,因此不能利用Hash函數(shù)/^,乂z,…),將路徑一次性求出Hash值/^,,乂,W3,W。),為此我們選取了一類二元函數(shù),Y=/Oc,力,每個(gè)中間節(jié)點(diǎn)收到該包時(shí)都將自身節(jié)點(diǎn)地址作為參數(shù)x,將包中原有路徑的路徑編碼值作為參數(shù)y,進(jìn)行編碼求值TV./(0,0)(/(0,0)為路徑初始值)W2:肌,(O,O))W3:肌肌,/(0,0)))利用新得到的路徑編碼值替換掉包中原來的值,這樣就在匯聚節(jié)點(diǎn)得到了經(jīng)過二元函數(shù)對路徑不斷迭代的路徑編碼值:/(^,/(^2,/(0,0)))。在針對一個(gè)包的無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視過程中,將產(chǎn)生該包的普通節(jié)點(diǎn)稱7為該包的源節(jié)點(diǎn),將轉(zhuǎn)發(fā)該包的普通節(jié)點(diǎn)稱為中間節(jié)點(diǎn)。一次實(shí)際的無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視過程如下源節(jié)點(diǎn)發(fā)送包時(shí),路徑的初始編碼值為/(0,0),這樣源節(jié)點(diǎn)發(fā)送的最終數(shù)據(jù)為由源節(jié)點(diǎn)號(即源節(jié)點(diǎn)地址)和/(0,0)組成的二元組(W。,/(0,0)),假設(shè)該節(jié)點(diǎn)號為W。,在中間節(jié)點(diǎn)收到該包后,按照上述規(guī)則將路徑信息進(jìn)行編碼/(#,,/(0,0))(假設(shè)該中間節(jié)點(diǎn)的節(jié)點(diǎn)號為W,),替換掉原來的編碼值/(0,0),這樣M所發(fā)的包為O。,/(A^,/(0,0)))的一個(gè)二元組,第三個(gè)中間節(jié)點(diǎn)收到這個(gè)包時(shí),繼續(xù)按照規(guī)則進(jìn)行編碼得到編碼值/(A^/(W,,/(0,0)))(假設(shè)第二個(gè)中間節(jié)點(diǎn)的節(jié)點(diǎn)號為^),替換掉原來的/(M,/(0,0)),這樣第三個(gè)中間節(jié)點(diǎn)所發(fā)的包為二元組(W。,/(W,/(W,,/(0,0))))…如此進(jìn)行下去,直到匯聚節(jié)點(diǎn)的前一節(jié)點(diǎn)A^,由于匯聚節(jié)點(diǎn)是唯一的,各個(gè)節(jié)點(diǎn)的最終目的地都是這個(gè)匯聚節(jié)點(diǎn),因此匯聚節(jié)點(diǎn)收到信息時(shí)不做處理將信息傳送到中心服務(wù)器。假設(shè)匯聚節(jié)點(diǎn)的前一節(jié)點(diǎn)的節(jié)點(diǎn)號為^,它所發(fā)的包為(W。,/(Wm,/(7V"/(^^/(.../(^/(Wp/^O))))))),則匯聚節(jié)點(diǎn)不做處理,將其發(fā)送到中心服務(wù)器。在中心服務(wù)器端,首先根據(jù)相同的編碼函數(shù)/(x,y)算出一跳到達(dá)匯聚節(jié)點(diǎn)的路徑的編碼值/(0,0),并在中心服務(wù)器端進(jìn)行記錄,如表l所示表l、具有一跳到達(dá)匯聚節(jié)點(diǎn)的編碼值表/(0,0)隨著系統(tǒng)的運(yùn)行,不斷收到各個(gè)節(jié)點(diǎn)所發(fā)送的包,中心服務(wù)器用上述值與各個(gè)包中的路徑編碼值進(jìn)行比較,找出所有包中路徑編碼值與/(o,o)值相同的包,從這些包中取出源節(jié)點(diǎn)號,這些節(jié)點(diǎn)便是通過一跳到達(dá)匯聚節(jié)點(diǎn)。將其添加到信息列表,隨著系統(tǒng)的運(yùn)行,用該方法便可得到所有通過一跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn),假設(shè)為M,w2,w3,w4,在中心服務(wù)器上記錄一跳到達(dá)匯聚節(jié)點(diǎn)的信息列表(匯聚節(jié)點(diǎn)為W。)如表2所示表2、具有一跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)湫畔⒘斜?lt;table>tableseeoriginaldocumentpage8</column></row><table>這的「便可以繪出節(jié)點(diǎn)一跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)淙鐖D2所示。在中心服務(wù)器掌握所有一跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浜?,利用這些一跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,在中心服務(wù)器上便可求出所有經(jīng)過這些節(jié)點(diǎn)兩跳到達(dá)匯聚節(jié)點(diǎn)的路徑的編碼值/(乂,/(0,0)),/(W2,/(0,0)),/(W3,/(0,0)),/(W4,/(0,0)),中心服務(wù)器將這些值在信息列表中進(jìn)行記錄,如表3所示表3、尋找一跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)路徑編碼值列表<table>tableseeoriginaldocumentpage9</column></row><table>由于M,7V2,M,是所有一跳到達(dá)匯到節(jié)點(diǎn)的節(jié)點(diǎn),因此這時(shí)候可繪出網(wǎng)絡(luò)中兩跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)圖如圖3所示。在中心服務(wù)器掌握所有兩跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浜?,利用這些兩跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,在中心服務(wù)器上便可求出所有經(jīng)過這些節(jié)點(diǎn)三跳到達(dá)匯聚節(jié)點(diǎn)的路徑的編碼值/(Ws,/(W,'/(0,0))),/(W6,/(W',/(0,0)))/(W7,/(W2,/(0,0))),/(W8,/(7V2,/(0,0))),/(W9,/(W3,/(0,0)》,/W。,/(W4,/(0,0))),中心服務(wù)器將這些值在拓?fù)湫畔⒘斜碇羞M(jìn)行記錄,如表5所示表5、尋找兩跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)路徑編碼值列表卿)W2->JV0w3->w0w4->w0肌/(0,0))7V5->TV,->7V0肌/(0,0))W7->jV2->jV。7V>W2->7V0肌/(0,0))肌y(o,o))肌肌/(o'o)))肌肌/(o'o)))肌肌,/(0,0》)/(w8,/(w2,/(o,o)))肌肌,(o,o)))肌,肌,/(0,0)》同理此后,中心服務(wù)器在不斷收到包時(shí),反復(fù)用上述新加進(jìn)來的傳感器網(wǎng)絡(luò)拓?fù)湫畔⒅蹬c各個(gè)包中二元組的路徑編碼值進(jìn)行比較,找出所有與這些值相同的包,從這些二元組中取源節(jié)點(diǎn)號,這些節(jié)點(diǎn)便是經(jīng)過^5,^,^7,7^,^9,^。其中之一三跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn),假設(shè)這些節(jié)點(diǎn)為W,7V12,7V13,W14,W15,7V,2各個(gè)包中的碼值的二元組分別為:("5,肌/(0,0))),d肌/(0,0))),(W7,/(7V2,/(0,0))),d肌/(0,0)))(#9,肌/(0,0))),(A^。,/(w4,/(0,0))),BPA^,iV6通過W,號節(jié)點(diǎn),^7,^8通過^2號節(jié)點(diǎn),7^通過7^3號節(jié)點(diǎn),M。通過&號節(jié)點(diǎn),兩跳到達(dá)匯聚節(jié)點(diǎn),由于這是系統(tǒng)長時(shí)間所比較的結(jié)果,因此網(wǎng)絡(luò)拓?fù)渲兴薪?jīng)過^兩跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)為W"^,所有經(jīng)過W到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)為^,A^所有經(jīng)過號節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)為W,,所有經(jīng)過&號節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)為^。,在拓?fù)淞斜碇刑砹斜碇刑砑有碌玫降耐負(fù)湫畔?,其結(jié)果與表4相同由于^,W2,^,是所有一跳到達(dá)匯到節(jié)點(diǎn)的節(jié)點(diǎn),因此這時(shí)候可繪出網(wǎng)絡(luò)中兩跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)圖如圖3所示。在中心服務(wù)器掌握所有兩跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浜螅眠@些兩跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,在中心服務(wù)器上便可求出所有經(jīng)過這些節(jié)點(diǎn)三跳到達(dá)匯聚節(jié)點(diǎn)的路徑的編碼值/(W5,/(W,'/(0,0))),/(w6,/(w,,/(o,o))),/(w7,/(w2,/(o,o))),/(w8,/(w2,/(o,o))),/(w9,/(w3,/(o,o))),肌,,4,/(0,0)))中心服務(wù)器將這些值在拓?fù)湫畔⒘斜碇羞M(jìn)行記錄,如表6所示表6、尋找三跳到達(dá)匯聚節(jié)點(diǎn)的編碼值列表<table>tableseeoriginaldocumentpage11</column></row><table>同理此后,中心服務(wù)器在不斷收到包時(shí),反復(fù)用上述新加進(jìn)來的無線網(wǎng)絡(luò)拓?fù)湫畔⒅蹬c各個(gè)包中二元組的路徑編碼值進(jìn)行比較,找出所有與這些值相同的包,從這些二元組中取源節(jié)點(diǎn)號,這些節(jié)點(diǎn)便是經(jīng)過W"^,W"W8,7v,,W,。其中之一三跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn),假設(shè)這些節(jié)點(diǎn)為W,W12,WI3,W14,7v,5,7v16,W17,W18,W19,W2。,W21,W22,7v23,W24,W25各個(gè)包中的碼值的二元組分別為(w,,,/(w5,/(M,/(0,0)))),(7vi2,/(7v5,/(tv,,/(0,0)))),(w13,/(w5,/(,/(0,0))))(Wl4,/(W6,/(W,,/(0,0)))),(W15,/(W6,/(W,,/(0,0)))),(W16,/(7v6,/(W,,/(0,0))))(#|7,/(^,/(^,/(0,0)))),(^8,/(^,/(^,/(0,0)))),(^9,/(7^7,/(^,/(0,0))))艮卩ww#通過#(W22,/(W9,,/(0,0)))),(W23,/(AT9,/(AT,,/(0,0))))(W24,/(^。,/(W,,/(0,0)))),(7v25,/(W,。,/(W,,/(0,0))))號節(jié)點(diǎn),#|4,#|5,#|6通過^6號節(jié)點(diǎn),^17,7^,#19通過^7號節(jié)點(diǎn),^2。,#21通過#8號節(jié)點(diǎn),W22,W23通過W9號節(jié)點(diǎn),W24,7v25通過7vle三跳到達(dá)匯聚節(jié)點(diǎn),由于這是系統(tǒng)長時(shí)間所比較的結(jié)果,因此網(wǎng)絡(luò)拓?fù)渲兴薪?jīng)過三跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)就是這些節(jié)點(diǎn),將這些值添加至網(wǎng)絡(luò)拓?fù)湫畔⒅?,如?所示表7、具有三跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)湫畔⒘斜?lt;table>tableseeoriginaldocumentpage12</column></row><table>因此這時(shí)候可繪出網(wǎng)絡(luò)中三跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)圖如圖4所示。如此進(jìn)行下去,至到繪出整個(gè)網(wǎng)絡(luò)的拓?fù)涔?jié)構(gòu),在中心服務(wù)器獲得完整的網(wǎng)絡(luò)拓?fù)湫畔⒑?,每次收到?jié)點(diǎn)所發(fā)的含有源節(jié)點(diǎn)號和路徑編碼值的包時(shí),便可在中心服務(wù)器所存的網(wǎng)絡(luò)拓?fù)湫畔⒅兄苯訓(xùn)苏遥业狡鋵?yīng)的實(shí)際路由路徑,這樣便可以實(shí)時(shí)監(jiān)視傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。本發(fā)明的積極效果為與現(xiàn)有技術(shù)相比,本發(fā)明能夠有效降低監(jiān)視行為對網(wǎng)絡(luò)資源的消耗,節(jié)約節(jié)點(diǎn)的能量和網(wǎng)絡(luò)傳輸帶寬,從而可以提高節(jié)點(diǎn)的工作時(shí)間,保證網(wǎng)絡(luò)監(jiān)測的穩(wěn)定性和無線傳感器網(wǎng)絡(luò)的數(shù)據(jù)傳輸能力。圖l、系統(tǒng)的結(jié)構(gòu)組成示意圖;圖2、節(jié)點(diǎn)一跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)鋱D;圖3、網(wǎng)絡(luò)中兩跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)圖;圖4、網(wǎng)絡(luò)中三跳到達(dá)匯聚節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)圖5、2、3、4節(jié)點(diǎn)一跳到達(dá)匯聚節(jié)點(diǎn)的初始網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖;圖6、加入5、6、7三節(jié)點(diǎn)后構(gòu)成兩跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖;圖7、加入8、9兩節(jié)點(diǎn)后構(gòu)成四跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖;圖8、加入1020節(jié)點(diǎn)后構(gòu)成15跳到達(dá)匯聚節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖。具體實(shí)施例方式在實(shí)施中采用的硬件設(shè)備為1.節(jié)點(diǎn)釆用UCBerkeley大學(xué)所開發(fā)的telosb節(jié)點(diǎn),該節(jié)點(diǎn)處理器模塊是TI公司的超低功耗單片機(jī)MSP430F1611,無線通信模塊使用Chipcon公司的無線收發(fā)芯片CC2420。節(jié)點(diǎn)上運(yùn)行操作系統(tǒng)為開源的嵌入式操作系統(tǒng)tinyos。2.中心服務(wù)器PC在實(shí)施中的節(jié)點(diǎn)軟件釆用nesC開發(fā),編譯環(huán)境為cygwin,中心服務(wù)器軟件采用python開發(fā),編譯環(huán)境為Pythonwin首先將節(jié)點(diǎn)程序煉制到由UCBerkeley大學(xué)所開發(fā)的telosb節(jié)點(diǎn)上,該節(jié)點(diǎn)處理器模塊是TI公司的超低功耗單片機(jī)MSP430F1611,無線通信模塊使用Chipcon公司的無線收發(fā)芯片CC2420。節(jié)點(diǎn)上運(yùn)行操作系統(tǒng)為開源的嵌入式操作系統(tǒng)tinyos。在啟動這些節(jié)點(diǎn)后,各個(gè)節(jié)點(diǎn)通過收集樹協(xié)議(CTP)組成一個(gè)樹狀的網(wǎng)絡(luò)結(jié)構(gòu),每個(gè)13節(jié)點(diǎn)用單獨(dú)發(fā)包的形式,周期性(周期為2秒)通過收集樹向匯聚節(jié)點(diǎn)發(fā)包,中間節(jié)點(diǎn)收到需要轉(zhuǎn)發(fā)的包后利用循環(huán)校驗(yàn)碼函數(shù)Y=Crc(x,y),(參見Ramabadran,T.V.;Gaitonde,S.S.;AtutorialonCRCcomputations;Micro,IEEE,Volume8,Issue4,Aug.1988Page(s):62-75DigitalObjectIdentifier10.1109/40.7773)將路徑進(jìn)行編碼,并獲得收集樹父節(jié)點(diǎn)信息,將包轉(zhuǎn)發(fā)到父節(jié)點(diǎn)直至發(fā)送到匯聚節(jié)點(diǎn)。匯聚節(jié)點(diǎn)收到各個(gè)節(jié)點(diǎn)所發(fā)包,將信息發(fā)送到PC,由PC進(jìn)行記錄,還原路徑,構(gòu)造網(wǎng)絡(luò)拓?fù)洹榱四軡u近的觀察該方法效果,首先將傳感器網(wǎng)絡(luò)部署為一跳網(wǎng)絡(luò)。節(jié)點(diǎn)為1,2,3,4,其中1號為匯聚節(jié)點(diǎn)通過串口與中心服務(wù)器連接,2,3,4為普通節(jié)點(diǎn)。在中心服務(wù)器繪出了拓?fù)浣Y(jié)構(gòu)圖如圖5所示。一個(gè)周期中2,3,4所發(fā)測試包所占用的帶寬為(源節(jié)點(diǎn)號2個(gè)字節(jié)+初始crc編碼值:2個(gè)字節(jié))*3=12個(gè)字節(jié)用舊有的方法為源節(jié)點(diǎn)號2個(gè)字節(jié),輕量效果不明顯。將5,6,7,加進(jìn)網(wǎng)絡(luò),構(gòu)成2跳網(wǎng)絡(luò),在中心服務(wù)器匯出拓?fù)浣Y(jié)構(gòu)圖如圖6所示。這期間5,6,7所發(fā)測試包在傳輸中所占用的帶寬為(源節(jié)點(diǎn)號2個(gè)字節(jié)+(^編碼值:2個(gè)字節(jié))*3+((源節(jié)點(diǎn)號2個(gè)字節(jié)+crc編碼值2個(gè)字節(jié)))*3=24個(gè)字節(jié)用舊有的方法為源節(jié)點(diǎn)號2個(gè)字節(jié)*3+(源節(jié)點(diǎn)號2個(gè)字節(jié)+中間節(jié)點(diǎn)2個(gè)字節(jié))*3=18個(gè)字節(jié),輕量效果不明顯。將8,9.加進(jìn)構(gòu)成4跳網(wǎng)絡(luò),經(jīng)過2秒,在中心服務(wù)器匯出拓?fù)浣Y(jié)構(gòu)圖如圖7所示。這期間9號所發(fā)測試包在傳輸中所占用的帶寬為(源節(jié)點(diǎn)號2個(gè)字節(jié)+(^編碼值:2個(gè)字節(jié))*4=16個(gè)字節(jié)用舊有方法為2+2*2+2*3+2*4=20個(gè)字節(jié),輕量效果較明顯。將10,11,12,13,14,15,16,17,18,19,20加進(jìn)網(wǎng)絡(luò)構(gòu)成15跳網(wǎng)絡(luò),中心服務(wù)器繪出網(wǎng)絡(luò)拓?fù)鋱D如圖8所示。一個(gè)周期內(nèi)節(jié)點(diǎn)20所發(fā)測試包在傳輸中所占用的帶寬為(源節(jié)點(diǎn)號2個(gè)字節(jié)+0^編碼值:2個(gè)字節(jié))*15=70個(gè)字節(jié)舊有方法為2*(1+2+3+4+5+6+7+8+9+10+11+12+13+14+15)=240個(gè)字節(jié),相比之下,本發(fā)明所占用帶寬減少了70.8%由實(shí)驗(yàn)結(jié)果可以看出,隨著跳數(shù)的不斷增加,該方法輕量級效果越為明顯,達(dá)到了在降低網(wǎng)絡(luò)資源消耗和對網(wǎng)絡(luò)自身狀態(tài)影響的前提下,準(zhǔn)確監(jiān)視的拓?fù)錉顟B(tài)的目的。權(quán)利要求1.一種無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法,其步驟為1)普通節(jié)點(diǎn)采用具有哈希效果的二元函數(shù)Y=f(x,y)對發(fā)送的傳輸路徑信息進(jìn)行編碼,得到一路徑編碼值Y;其中y初始值為f(0,0),x為自身節(jié)點(diǎn)地址;2)普通節(jié)點(diǎn)周期性的向匯聚節(jié)點(diǎn)發(fā)送自身的二元組信息(Ni,f(0,0)),其中Ni為普通節(jié)點(diǎn)自身的源節(jié)點(diǎn)地址;3)如果普通節(jié)點(diǎn)接收到其它普通節(jié)點(diǎn)發(fā)出的二元組信息(Ni,Y),則對接收到的路徑編碼值Y采用步驟1)的方法進(jìn)行編碼,并將得到的路徑編碼值Y與接收到的源節(jié)點(diǎn)地址Ni組成二元組信息發(fā)送到到達(dá)匯聚節(jié)點(diǎn)的下一跳節(jié)點(diǎn);4)匯聚節(jié)點(diǎn)將接收到的信息發(fā)送到中心服務(wù)器;5)中心服務(wù)器根據(jù)接收到的信息中的路徑編碼值構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D。2.如權(quán)利要求1所述的方法,其特征在于所述普通節(jié)點(diǎn)采用單獨(dú)發(fā)包形式將所述二元組信息發(fā)送到匯聚節(jié)點(diǎn)。3.如權(quán)利要求1所述的方法,其特征在于所述普通節(jié)點(diǎn)通過將所述二元組信息添加到業(yè)務(wù)數(shù)據(jù)包中并發(fā)送到匯聚節(jié)點(diǎn)。4.如權(quán)利要求1或2或3所述的方法,其特征在于所述中心服務(wù)器根據(jù)接收到的信息中的路徑編碼值構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D的方法為a)中心服務(wù)器采用步驟1)所選函數(shù)算出一跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值,并在中心服務(wù)器端進(jìn)行記錄;b)中心服務(wù)器將接收到的路徑編碼值與記錄的一跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有一跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑;c)根據(jù)中心.服務(wù)器記錄的所有一跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,中心服務(wù)器采用步驟l)所選函數(shù)算出所有兩跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值并進(jìn)行記錄;d)中心服務(wù)器將接收到的路徑編碼值與記錄的所有兩跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有兩跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑;e)同理,中心服務(wù)器根據(jù)記錄的所有第M跳到達(dá)匯聚節(jié)點(diǎn)的節(jié)點(diǎn)地址,計(jì)算出所有M+l跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值,然后將接收到的路徑編碼值與所有M+l跳到達(dá)匯聚節(jié)點(diǎn)的路徑編碼值進(jìn)行比較,得到所有M+1跳到達(dá)匯聚節(jié)點(diǎn)的信息包,從這些包中提取節(jié)點(diǎn)地址并記錄,還原這些節(jié)點(diǎn)到達(dá)匯聚節(jié)點(diǎn)的路由路徑,直至全網(wǎng)到達(dá)匯聚節(jié)點(diǎn)的路由路徑,其中M為自然數(shù)。f)中心服務(wù)器根據(jù)每個(gè)節(jié)點(diǎn)還原后的路由路徑構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D。5.如權(quán)利要求4所述的方法,其特征在于采用循環(huán)校驗(yàn)碼函數(shù)Y二Crc(x,y)對發(fā)送的傳輸路徑信息進(jìn)行編碼。6.如權(quán)利要求4所述的方法,其特征在于所述中心服務(wù)器根據(jù)節(jié)點(diǎn)的路徑編碼值和該節(jié)點(diǎn)對應(yīng)路由路徑建立拓?fù)湫畔⒈怼?.如權(quán)利要求l所述的方法,其特征在于所述無線傳感器網(wǎng)絡(luò)采用收集樹協(xié)議進(jìn)行組建;普通節(jié)點(diǎn)通過收集樹協(xié)議向匯聚節(jié)點(diǎn)發(fā)送所述二元組信息。8.如權(quán)利要求l所述的方法,其特征在于所述普通節(jié)點(diǎn)為telosb節(jié)點(diǎn)。全文摘要本發(fā)明公開了一種無線傳感器網(wǎng)絡(luò)拓?fù)涞妮p量級監(jiān)視方法,屬于無線傳感器網(wǎng)絡(luò)測試領(lǐng)域。本發(fā)明方法為1)節(jié)點(diǎn)采用具有哈希效果的二元函數(shù)Y=f(x,y)對發(fā)送的傳輸路徑信息進(jìn)行編碼,得到路徑編碼值Y;2)節(jié)點(diǎn)周期性的向匯聚節(jié)點(diǎn)發(fā)送自身的二元組信息(N<sub>i</sub>,f(0,0));3)如果節(jié)點(diǎn)接收到其它節(jié)點(diǎn)發(fā)出的二元組信息(N<sub>i</sub>,Y),則對其路徑編碼值Y采用步驟1)的方法進(jìn)行編碼,并將得到的路徑編碼值Y與接收到的源節(jié)點(diǎn)地址N<sub>i</sub>組成二元組信息發(fā)送到到達(dá)匯聚節(jié)點(diǎn)的下一跳節(jié)點(diǎn);4)匯聚節(jié)點(diǎn)將接收到的信息發(fā)送到中心服務(wù)器;5)中心服務(wù)器根據(jù)接收到的信息中的路徑編碼值構(gòu)造無線傳感器網(wǎng)絡(luò)拓?fù)鋱D。與現(xiàn)有技術(shù)相比,本發(fā)明可提高節(jié)點(diǎn)工作時(shí)間和網(wǎng)絡(luò)的數(shù)據(jù)傳輸能力。文檔編號H04W24/00GK101489248SQ200910078779公開日2009年7月22日申請日期2009年3月3日優(yōu)先權(quán)日2009年3月3日發(fā)明者燕劉,孫利民,徐志生,王廣柱,皇甫偉,堅(jiān)舒申請人:中國科學(xué)院軟件研究所