專利名稱:一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法
技術(shù)領(lǐng)域:
本發(fā)明針對(duì)分簇的移動(dòng)傳感器網(wǎng)絡(luò)提出了一種按需多徑的分簇路由方法,該方法能在簇頭節(jié)點(diǎn)移動(dòng)中傳輸數(shù)據(jù)時(shí),進(jìn)行即時(shí)路徑發(fā)現(xiàn),能很好地適應(yīng)簇頭輪換引起的網(wǎng)絡(luò)動(dòng)態(tài)變化,屬于計(jì)算機(jī)網(wǎng)絡(luò)、無(wú)線傳感器網(wǎng)絡(luò)和嵌入式的交叉技術(shù)領(lǐng)域。
背景技術(shù):
微電子、計(jì)算機(jī)和無(wú)線通信技術(shù)的進(jìn)步,推動(dòng)了低功耗多功能傳感器的快速發(fā)展,使其在微小體積內(nèi)能夠集成信息采集,數(shù)據(jù)處理,和無(wú)線通信等多種功能,無(wú)線傳感器網(wǎng)絡(luò)是由部署在監(jiān)測(cè)區(qū)域內(nèi)大量的廉價(jià)微型傳感器節(jié)點(diǎn)組成,通過(guò)無(wú)線通信方式形成的一個(gè)多跳的自組織網(wǎng)絡(luò)系統(tǒng),其目的是協(xié)作感知,采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對(duì)象的信息,并發(fā)送給觀察者。如果說(shuō)因特網(wǎng)構(gòu)成了邏輯上的信息世界,改變了人與人之間的溝通方式,那么無(wú)線傳感器網(wǎng)絡(luò)就是將邏輯上的信息世界與客觀上的物理世界融合在一起,改變?nèi)祟惻c 自然界的交互方式。人們可以通過(guò)傳感器網(wǎng)絡(luò)客觀的感知世界,從而極大地?cái)U(kuò)展了現(xiàn)有網(wǎng)絡(luò)的功能和人類認(rèn)識(shí)世界的能力。因此,傳感器網(wǎng)絡(luò)被列為21世紀(jì)改變世界的十大技術(shù)之一,又被稱為全球未來(lái)的三大高科技產(chǎn)業(yè)。網(wǎng)絡(luò)的迅猛發(fā)展,對(duì)于網(wǎng)絡(luò)的使用范圍越來(lái)越寬廣,而集傳感器技術(shù)、微機(jī)電系統(tǒng)技術(shù)、無(wú)線通信技術(shù)、嵌入式計(jì)算機(jī)技術(shù)、分布式信息處理技術(shù)和無(wú)線通信技術(shù)于一體的無(wú)線傳感器網(wǎng)絡(luò)就成為當(dāng)今研究的熱點(diǎn)。無(wú)線傳感器網(wǎng)絡(luò)是一個(gè)多學(xué)科交叉的綜合性科學(xué)研究領(lǐng)域,對(duì)于其網(wǎng)絡(luò)所分布的區(qū)域內(nèi)的各種環(huán)境和檢測(cè)對(duì)象的信息能夠進(jìn)行實(shí)吋的監(jiān)控、感知和采集,并且將這些信息先進(jìn)行處理,然后通過(guò)無(wú)線方式傳輸給監(jiān)控主機(jī)或者需要使用這些信息的用戶。無(wú)線傳感器網(wǎng)絡(luò)系統(tǒng)包括傳感器節(jié)點(diǎn),匯聚節(jié)點(diǎn)和管理節(jié)點(diǎn),傳感器節(jié)點(diǎn)監(jiān)測(cè)的數(shù)據(jù)沿著其他傳感器節(jié)點(diǎn)逐跳的進(jìn)行傳輸,然后到達(dá)匯聚節(jié)點(diǎn),用戶通過(guò)管理節(jié)點(diǎn)對(duì)傳感器網(wǎng)絡(luò)進(jìn)行配置和管理,發(fā)布監(jiān)測(cè)任務(wù)以及收集監(jiān)測(cè)數(shù)據(jù)。傳感器節(jié)點(diǎn)由傳感器模塊,處理器模塊,無(wú)線通信模塊和能量供應(yīng)模塊組成。無(wú)線傳感網(wǎng)絡(luò)是一種自組織網(wǎng)絡(luò),它通過(guò)路由算法以多跳的方式傳送信息。路由算法在無(wú)線傳感器網(wǎng)絡(luò)中發(fā)揮著重要作用,它對(duì)各節(jié)點(diǎn)的能耗,壽命以及質(zhì)量起著決定性的作用。建立理想路由的前提是要探測(cè)到傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。然而網(wǎng)絡(luò)拓?fù)湟话銜?huì)隨著網(wǎng)絡(luò)中各節(jié)點(diǎn)的移動(dòng)以及數(shù)量的增減發(fā)生變化,所以要在某固定時(shí)間對(duì)其進(jìn)行探測(cè),即實(shí)行周期性探測(cè)。在無(wú)線傳感器網(wǎng)絡(luò)中,分簇是按照一定規(guī)則將網(wǎng)絡(luò)中的節(jié)點(diǎn)進(jìn)行分組,是一種廣泛采用的拓?fù)淇刂剖侄?。分簇后每組節(jié)點(diǎn)稱為一個(gè)簇,包括一個(gè)簇頭和多個(gè)簇成員。在大多數(shù)分簇?zé)o線傳感網(wǎng)絡(luò)中,簇成員以單跳方式將自己的傳感數(shù)據(jù)發(fā)送給簇頭;簇頭在對(duì)其成員節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行整合之后,采用多跳方式將結(jié)果發(fā)送給基站。在這種兩層數(shù)據(jù)收集模式下,一次簇頭路由的失敗就會(huì)導(dǎo)致一個(gè)簇一段時(shí)間的傳感數(shù)據(jù)全部丟失,因此簇頭路由在分簇?zé)o線傳感網(wǎng)絡(luò)中至關(guān)重要。
由于分簇?zé)o線傳感器網(wǎng)絡(luò)的特性,其簇頭路由設(shè)計(jì)面臨很多獨(dú)特挑戰(zhàn)。首先,因?yàn)樵诜执責(zé)o線傳感網(wǎng)中簇頭承擔(dān)了更多任務(wù),為了平衡簇頭能耗,通常會(huì)進(jìn)行簇頭輪換,因此由簇頭構(gòu)成的多跳網(wǎng)絡(luò)的拓?fù)涫莿?dòng)態(tài)變化的。其次,分簇方法通常不會(huì)考慮簇頭的通信聯(lián)通,因此簇頭構(gòu)成的網(wǎng)絡(luò)的聯(lián)通性得不到保障。雖然近年來(lái)研究人員針對(duì)自組織和無(wú)線傳感網(wǎng)提出了很多路由方法,但這些方法沒(méi)有考慮簇頭路由的特殊性,因此不能完全適應(yīng)其需求。在分簇?zé)o線傳感網(wǎng)中,簇頭要承擔(dān)數(shù)據(jù)收集、聚合處理和簇間轉(zhuǎn)發(fā)任務(wù),因此耗能遠(yuǎn)大于簇成員節(jié)點(diǎn)。為了均衡網(wǎng)絡(luò)中節(jié)點(diǎn)的能耗,分簇?zé)o線傳感網(wǎng)一般按輪運(yùn)行。如圖I所示,每輪開始時(shí)進(jìn)行簇頭輪換,節(jié)點(diǎn)以輪流充當(dāng)簇頭的方式將能量開銷均勻分布到各個(gè)節(jié)點(diǎn),之后進(jìn)行多次簇內(nèi)通信和簇間路由。在分簇傳輸?shù)拿襟w接入控制方法設(shè)計(jì)方面,簇內(nèi)通信一般基于時(shí)分多址接人調(diào)度,簇頭為每個(gè)成員節(jié)點(diǎn)分配不同的通信時(shí)隙。相鄰簇之間的通信干擾一般通過(guò)兩層TDMA調(diào)度或多信道來(lái)避免。簇頭間的數(shù)據(jù)轉(zhuǎn)發(fā)一般利用載波檢測(cè)多址接人來(lái)避免信道爭(zhēng)用。在大部分分簇?zé)o線傳感網(wǎng)中,簇成員以單跳方式與簇頭通信,因此簇內(nèi)通信一般不存在路由問(wèn)題。而簇頭間則大都采用多跳方式進(jìn)行數(shù)據(jù)傳輸,因此簇頭路由協(xié)議不可或缺。而且,在分簇?zé)o線傳感網(wǎng)的兩層數(shù)據(jù)收集模式下,一次簇頭路由的失 敗就會(huì)導(dǎo)致一個(gè)簇一段時(shí)間的傳感數(shù)據(jù)全部丟失,因此簇頭路由在分簇?zé)o線傳感網(wǎng)中至關(guān)重要。
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明的目的是提供一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,鑒于分簇移動(dòng)傳感網(wǎng)的特性,其簇頭路由設(shè)計(jì)面臨很多獨(dú)特挑戰(zhàn)。首先,因?yàn)樵诜执匾苿?dòng)傳感網(wǎng)中簇頭承擔(dān)了更多任務(wù),為了平衡簇頭能耗,通常會(huì)進(jìn)行簇頭輪換,因此由簇頭構(gòu)成的多跳網(wǎng)絡(luò)的拓?fù)涫莿?dòng)態(tài)變化的。其次,分簇方法通常不會(huì)考慮簇頭的通信聯(lián)通,因此簇頭構(gòu)成的網(wǎng)絡(luò)的聯(lián)通性得不到保障。本發(fā)明能在簇頭節(jié)點(diǎn)需要傳輸數(shù)據(jù)時(shí)進(jìn)行即時(shí)路徑發(fā)現(xiàn),能夠適應(yīng)簇頭輪換的動(dòng)態(tài)性。技術(shù)方案本發(fā)明針對(duì)分簇的移動(dòng)傳感器網(wǎng)絡(luò)提出了一種按需多徑的簇頭路由方法,該方法能在簇頭節(jié)點(diǎn)移動(dòng)需要傳輸數(shù)據(jù)時(shí)進(jìn)行即時(shí)路徑發(fā)現(xiàn)。一.體系結(jié)構(gòu)
假設(shè)多個(gè)移動(dòng)傳感器節(jié)點(diǎn)隨機(jī)均勻地分布在一個(gè)大面積區(qū)域內(nèi),其構(gòu)成的網(wǎng)絡(luò)具有如下性質(zhì)(1)所有移動(dòng)傳感器節(jié)點(diǎn)初始時(shí)具有相同的資源和能力,地位平等;(2)傳感器節(jié)點(diǎn)和基站在部署后,無(wú)需人為維護(hù);(3)網(wǎng)絡(luò)在啟動(dòng)后采用低功耗自適應(yīng)集簇分層型方法或者其他分簇方法進(jìn)行分簇;(4)所有簇成員節(jié)點(diǎn)可以與其簇頭節(jié)點(diǎn)直接通信;(5)簇頭節(jié)點(diǎn)無(wú)法保證通信聯(lián)通。在此網(wǎng)絡(luò)拓?fù)渲幸苿?dòng)傳感器節(jié)點(diǎn)的狀態(tài)有三種初始狀態(tài),休眠和探聽相互交替狀態(tài),探測(cè)狀態(tài)。當(dāng)接收到來(lái)自匯聚節(jié)點(diǎn)的控制信息,傳感器進(jìn)入探測(cè)狀態(tài)。其控制信息包括中貞時(shí)間以及一個(gè)時(shí)隙分配表。二.方法流程
I.網(wǎng)絡(luò)分層
網(wǎng)絡(luò)分層目的是構(gòu)造以基站為中心的層次結(jié)構(gòu),為網(wǎng)絡(luò)中的所有節(jié)點(diǎn)分配層ID。網(wǎng)絡(luò)啟動(dòng)后,基站廣播層控制消息,并以廣播方式轉(zhuǎn)發(fā)該消息。如果節(jié)點(diǎn)重復(fù)收到消息,僅當(dāng)它能獲得更小的層的設(shè)定值時(shí),才再次進(jìn)行轉(zhuǎn)發(fā)。路由請(qǐng)求
步驟一當(dāng)簇頭節(jié)點(diǎn)s需要向基站報(bào)告數(shù)據(jù)時(shí),它向鄰居節(jié)點(diǎn)廣播路由請(qǐng)求,進(jìn)行路由發(fā)現(xiàn);
步驟二 每個(gè)簇頭節(jié)點(diǎn)都持有自己的請(qǐng)求序號(hào),并在每次進(jìn)行路由請(qǐng)求時(shí)遞增其值,請(qǐng)求序號(hào)和源序號(hào)一起構(gòu)成該廣播路由請(qǐng)求的唯一標(biāo)識(shí);
步驟三中間節(jié)點(diǎn)i收到廣播路由請(qǐng)求之后,檢查自己是否同時(shí)滿足以下三個(gè)轉(zhuǎn)發(fā)條
件
1)節(jié)點(diǎn)i是簇頭節(jié)點(diǎn);
2)節(jié)點(diǎn)i沒(méi)有轉(zhuǎn)發(fā)過(guò)來(lái)自同一鄰居節(jié)點(diǎn)的這個(gè)廣播路由請(qǐng)求,即包含4個(gè)完全相同域值的廣播路由請(qǐng)求;
3)節(jié)點(diǎn)i的層序號(hào)比廣播路由請(qǐng)求中的域值小。條件I)使得發(fā)現(xiàn)的路徑盡量由簇頭組成,這符合分簇傳輸?shù)脑O(shè)計(jì)初衷;條件2)和條件3)利用層序號(hào)限制了路由請(qǐng)求在網(wǎng)絡(luò)中的廣播,降低了路由控制消息開銷,同時(shí)也限制了所發(fā)現(xiàn)路徑的跳數(shù);如果節(jié)點(diǎn)i不滿足轉(zhuǎn)發(fā)條件,那么丟棄該路由請(qǐng)求。步驟四若滿足上述三個(gè)條件,節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào);
步驟五將該廣播路由請(qǐng)求的兩個(gè)即時(shí)中間值修改為自己的序號(hào)和層序號(hào),向鄰居移動(dòng)節(jié)點(diǎn)以廣播方式轉(zhuǎn)發(fā)該消息;
步驟六節(jié)點(diǎn)i在轉(zhuǎn)發(fā)廣播路由請(qǐng)求之后,對(duì)該消息的進(jìn)一步轉(zhuǎn)發(fā)進(jìn)行偵聽,如果在指定時(shí)間內(nèi)沒(méi)有比該節(jié)點(diǎn)擁有更小層序號(hào)的簇頭節(jié)點(diǎn)繼續(xù)轉(zhuǎn)發(fā)該廣播路由請(qǐng)求,該節(jié)點(diǎn)i向鄰居節(jié)點(diǎn)廣播新的控制消息。步驟一中的廣播路由請(qǐng)求,需在匯聚節(jié)點(diǎn)控制下進(jìn)行,各節(jié)點(diǎn)在相應(yīng)時(shí)隙發(fā)送及接收相關(guān)控制信息,并更新其自身路由。步驟四中的節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào),其方法是當(dāng)基站收到廣播路由請(qǐng)求和新的控制消息時(shí),以單播形式向轉(zhuǎn)發(fā)該請(qǐng)求給它的節(jié)點(diǎn)發(fā)送路由應(yīng)答信息;中間節(jié)點(diǎn)將應(yīng)答消息沿反向路徑回傳,直至到達(dá)源節(jié)點(diǎn),并在此過(guò)程中建立路由。該節(jié)點(diǎn)i向鄰居節(jié)點(diǎn)廣播新的控制消息的方法是當(dāng)簇頭或路由節(jié)點(diǎn)i收到鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)包時(shí),根據(jù)數(shù)據(jù)包的源節(jié)點(diǎn)ID在路由表中查找路徑,轉(zhuǎn)發(fā)該數(shù)據(jù)包;若存在多條路徑,則以路由表中前三個(gè)最小值的隨機(jī)概率向路徑j(luò)轉(zhuǎn)發(fā);對(duì)于關(guān)鍵信息,通過(guò)設(shè)置數(shù)據(jù)包內(nèi)的控制位進(jìn)行標(biāo)識(shí),中間節(jié)點(diǎn)在轉(zhuǎn)發(fā)關(guān)鍵數(shù)據(jù)時(shí),選擇多條路徑并行傳輸。所述節(jié)點(diǎn)i的層序號(hào)比廣播路由請(qǐng)求中的域值小,其方法是若中間節(jié)點(diǎn)可選的路徑小于該域值,則向所有路徑轉(zhuǎn)發(fā)該數(shù)據(jù),同時(shí)修改數(shù)據(jù)包內(nèi)的域值,否則中間節(jié)點(diǎn)選擇指定條數(shù)的路徑,并行傳輸該數(shù)據(jù)包,并將其域值修改為I。節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào),并實(shí)時(shí)更新節(jié)點(diǎn)保存的路由條目的權(quán)重,方法是利用數(shù)據(jù)傳輸?shù)拇_認(rèn)字符進(jìn)行數(shù)據(jù)捎帶,更新路徑的權(quán)重。
路由建立
當(dāng)基站收到廣播路由請(qǐng)求和新的控制消息時(shí),以單播形式向轉(zhuǎn)發(fā)該請(qǐng)求給它的節(jié)點(diǎn)發(fā)送路由應(yīng)答信息。中間節(jié)點(diǎn)將應(yīng)答消息沿反向路徑回傳,直至到達(dá)源節(jié)點(diǎn),并在此過(guò)程中建立路由。數(shù)據(jù)傳輸
步驟一當(dāng)簇頭或路由節(jié)點(diǎn)i收到鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)包時(shí),根據(jù)數(shù)據(jù)包的源節(jié)點(diǎn)ID在路由表中查找路徑,轉(zhuǎn)發(fā)該數(shù)據(jù)包。步驟二 若存在多條路徑,則以概率Pi,Pj向路徑j(luò)轉(zhuǎn)發(fā)。路由條目的權(quán)重反映了這條路徑的剩余能量、跳數(shù)、傳輸可靠性等關(guān)鍵特征。在移動(dòng)傳感網(wǎng)中,多徑傳輸方式除了負(fù)載均衡、提高網(wǎng)絡(luò)吞吐量,還可以用來(lái)提高傳輸?shù)目煽啃浴?duì)于關(guān)鍵信息,可以通過(guò)設(shè)置數(shù)據(jù)包內(nèi)的控制位進(jìn)行標(biāo)識(shí)。中間節(jié)點(diǎn)在轉(zhuǎn)發(fā)關(guān)鍵數(shù)據(jù)時(shí),選擇多條路徑并行傳輸,可以提高關(guān)鍵數(shù)據(jù)的傳輸可靠性。步驟三源節(jié)點(diǎn)按照數(shù)據(jù)的重要等級(jí),可在數(shù)據(jù)包內(nèi)增加路徑域,指定并行傳輸該信息的路徑數(shù)量。步驟四若中間節(jié)點(diǎn)可選的路徑小于該域值,則向所有路徑轉(zhuǎn)發(fā)該數(shù)據(jù),同時(shí)修改數(shù)據(jù)包內(nèi)的域值,否則中間節(jié)點(diǎn)選擇指定條數(shù)的路徑,并行傳輸該數(shù)據(jù)包,并將其域值修改為I。
步驟五在數(shù)據(jù)傳輸過(guò)程中,路徑的剩余能量、傳輸可靠性是變化的。為了保證數(shù)據(jù)傳輸中各條路徑的流量合理分配,節(jié)點(diǎn)保存的路由條目的權(quán)重需要實(shí)時(shí)更新。我們利用數(shù)據(jù)傳輸?shù)拇_認(rèn)字符進(jìn)行數(shù)據(jù)捎帶,更新路徑的權(quán)重。其他參數(shù)的更新很簡(jiǎn)單,值得注意的是節(jié)點(diǎn)間鏈路可靠性的實(shí)時(shí)更新。由于其無(wú)線傳輸和多跳傳輸特點(diǎn),無(wú)線傳感網(wǎng)中的確認(rèn)字符一般是逐跳進(jìn)行的,路徑的選擇將根據(jù)路由表中權(quán)重最小的前三個(gè)值中以隨機(jī)概率選擇路徑,因此兩個(gè)節(jié)點(diǎn)之間的鏈路可靠性,可由前一跳節(jié)點(diǎn)統(tǒng)計(jì)它們之間的傳輸成功率獲得。有益效果本發(fā)明提出了一種移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法。該方法能在簇頭節(jié)點(diǎn)需要傳輸數(shù)據(jù)時(shí)進(jìn)行即時(shí)路徑發(fā)現(xiàn),能很好地適應(yīng)簇頭輪換引起的網(wǎng)絡(luò)動(dòng)態(tài)性。具體來(lái)說(shuō),本發(fā)明所述的移動(dòng)傳感器網(wǎng)絡(luò)的按需多徑路由方法具有如下的有益效果
(I)本發(fā)明所述的移動(dòng)傳感器網(wǎng)絡(luò)的按需多徑路由方法,它有效地限制了路由控制消息廣播和傳輸路徑的跳數(shù)。(2)本發(fā)明所述的無(wú)線傳感器網(wǎng)絡(luò)的按需多徑路由方法,通過(guò)監(jiān)聽路由請(qǐng)求的轉(zhuǎn)發(fā)和任命路由節(jié)點(diǎn),有效地保證了簇頭的通信聯(lián)通。(3)本發(fā)明所述的無(wú)線傳感器網(wǎng)絡(luò)的按需多徑路由方法,多徑傳輸?shù)姆绞教岣吡藚f(xié)議在時(shí)延和可靠性方面的表現(xiàn),提高了網(wǎng)絡(luò)的生產(chǎn)效率。(4)本發(fā)明所述的無(wú)線傳感器網(wǎng)絡(luò)的按需多徑路由方法,根據(jù)路徑的剩余能量、跳數(shù)、傳輸可靠性等因素,采取多徑傳輸方式進(jìn)行負(fù)載均衡。采用此方法,無(wú)線傳感器網(wǎng)絡(luò)的傳輸可靠性會(huì)比現(xiàn)有方法有大幅度提高,網(wǎng)絡(luò)數(shù)據(jù)收集的效率至少比現(xiàn)有方法提高3倍左右。
圖I分簇?zé)o線傳感網(wǎng)絡(luò)一輪的運(yùn)行示意圖,
圖2路由建立不意圖,
圖3無(wú)線傳感節(jié)點(diǎn)結(jié)構(gòu)圖,
圖4網(wǎng)絡(luò)拓?fù)涮綔y(cè)過(guò)程,
圖5造以基站為中心的層次結(jié)構(gòu),
圖6無(wú)線傳感器網(wǎng)絡(luò)的按需多徑路由方法流程示意圖。
具體實(shí)施例方式本發(fā)明利用移動(dòng)傳感節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涮綔y(cè)方法及裝置,如體系結(jié)構(gòu)如圖3所示,網(wǎng)絡(luò)中的節(jié)點(diǎn)由休眠和探聽兩種模式組成,以T為周期交替出現(xiàn),T的值為休眠模式占用時(shí)間與探聽占用時(shí)間之和。在接收其他節(jié)點(diǎn)傳輸過(guò)來(lái)的新的信息后要對(duì)原有信息進(jìn)行更新。圖4顯示了網(wǎng)絡(luò)拓?fù)涮綔y(cè)的過(guò)程,所有節(jié)點(diǎn)都處于初始狀態(tài),一旦接收到來(lái)自匯聚節(jié)點(diǎn)的控制信息之后,所有的節(jié)點(diǎn)都將呈現(xiàn)拓?fù)涮綔y(cè)狀態(tài),也就是說(shuō)即將完成一次探測(cè),探測(cè)之后,節(jié)點(diǎn)將再次探聽,若匯聚節(jié)點(diǎn)再發(fā)出控制信息,該節(jié)點(diǎn)也必須根據(jù)內(nèi)容完成相應(yīng)指令,直至探測(cè)過(guò)程宣布結(jié)束。網(wǎng)絡(luò)分層
網(wǎng)絡(luò)分層操作在第一次分簇之后執(zhí)行,如圖5所示,其目的是構(gòu)造以基站為中心的層次結(jié)構(gòu),為網(wǎng)絡(luò)中的所有節(jié)點(diǎn)分配層序號(hào)。網(wǎng)絡(luò)啟動(dòng)后,基站廣播層控制消息。其消息只包含一個(gè)域,其值初始設(shè)置為O。其他節(jié)點(diǎn)第一次收到基站廣播層控制消息時(shí),將其中的域值遞增1,作為自己的層序號(hào),并以廣播方式轉(zhuǎn)發(fā)該消息。如果節(jié)點(diǎn)重復(fù)收到基站廣播層控制消息,僅當(dāng)它能獲得更小的層時(shí),才再次進(jìn)行轉(zhuǎn)發(fā)。路由請(qǐng)求
(I)路由發(fā)現(xiàn)
本發(fā)明具體實(shí)施方式
如圖6所示,當(dāng)某簇頭節(jié)點(diǎn)要像基站報(bào)告數(shù)據(jù)的時(shí)候就會(huì)向鄰居節(jié)點(diǎn)廣播路由請(qǐng)求,進(jìn)行相應(yīng)的路由發(fā)現(xiàn)。每個(gè)簇頭節(jié)點(diǎn)都會(huì)有自身特定的需求設(shè)定值,一旦自身進(jìn)行路由請(qǐng)求時(shí),該值會(huì)遞增。路由檢測(cè)
當(dāng)中間節(jié)點(diǎn)收到簇頭節(jié)點(diǎn)發(fā)出的廣播路由請(qǐng)求之后,會(huì)檢查自身是否滿足3個(gè)轉(zhuǎn)發(fā)條件(I)該節(jié)點(diǎn)是簇頭節(jié)點(diǎn)。(2)該節(jié)點(diǎn)沒(méi)有轉(zhuǎn)發(fā)過(guò)來(lái)自同一鄰居節(jié)點(diǎn)的這個(gè)廣播路由請(qǐng)求,即包含4個(gè)完全相同域值的廣播路由請(qǐng)求。(3)該節(jié)點(diǎn)的層值比廣播路由中的層值小。其中條件I使得發(fā)現(xiàn)的路徑盡量由簇頭組成,這符合分簇傳輸?shù)脑O(shè)計(jì)初衷。條件2和條件3利用層某特定值限制了廣播路由請(qǐng)求在網(wǎng)絡(luò)中的廣播,降低了路由控制消息開銷,同時(shí)也限制了所發(fā)現(xiàn)路徑的跳數(shù)。如果該節(jié)點(diǎn)不滿足轉(zhuǎn)發(fā)條件,那么丟棄該廣播路由請(qǐng)求。建立反向路由
若滿足以上三個(gè)條件該節(jié)點(diǎn)建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)的序號(hào)和轉(zhuǎn)發(fā)該廣播路由請(qǐng)求給它的上一跳節(jié)點(diǎn)的序號(hào)。將該廣播路由請(qǐng)求的的請(qǐng)求序號(hào)修改為自己的序號(hào)和層序號(hào),向相近移動(dòng)節(jié)點(diǎn)以廣播方式轉(zhuǎn)發(fā)該消息。該節(jié)點(diǎn)在轉(zhuǎn)發(fā)廣播路由之后,需對(duì)這一消息進(jìn)行偵聽。如果在指定時(shí)間內(nèi)沒(méi)有比該節(jié)點(diǎn)擁有更小層序號(hào)的簇頭節(jié)點(diǎn)繼續(xù)轉(zhuǎn)發(fā)該廣播路由請(qǐng)求,該節(jié)點(diǎn)向鄰居節(jié)點(diǎn)廣播另一種類型的控制消息。新的控制消息和原廣播路由請(qǐng)求在格式、內(nèi)容上保持一致。但節(jié)點(diǎn)在收到新消息時(shí)的處理與原請(qǐng)求稍有不同,在決定是否轉(zhuǎn)發(fā)新消息時(shí),為了保證簇頭通信聯(lián)通,對(duì)該節(jié)點(diǎn)是否為簇頭節(jié)點(diǎn)不作要求。為了防止傳輸路徑中包含過(guò)多簇成員節(jié)點(diǎn),簇成員收到新消息后先等待一個(gè)隨機(jī)時(shí)延。如果在此等待期間偵聽到有鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)了該消息,則自己放棄轉(zhuǎn)發(fā)。否則,簇成員節(jié)點(diǎn)任命自己為路由節(jié)點(diǎn),并轉(zhuǎn)發(fā)新的控制消息。路由建立 當(dāng)基站收到廣播路由請(qǐng)求時(shí),以單播形式向轉(zhuǎn)發(fā)該請(qǐng)求給它的節(jié)點(diǎn)發(fā)送路由應(yīng)答信息。廣播路由請(qǐng)求包含以下信息{Source ID (初始序號(hào)),Request ID (需求序號(hào)),Intermediate ID (中間值),Er, hop—cnt’r}。其中 SourceID 和 Request ID 設(shè)置為 RREQ中的對(duì)應(yīng)域值,Intermediate ID設(shè)置為自己的序號(hào),Er設(shè)置為0,hop—cnt設(shè)置為0,r設(shè)置為I。如圖2所示,中間節(jié)點(diǎn)將請(qǐng)求沿反向路徑回傳,直至到達(dá)源節(jié)點(diǎn)S,并在此過(guò)程中建立路由。數(shù)據(jù)傳輸
步驟一當(dāng)簇頭或路由節(jié)點(diǎn)i收到鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)包時(shí),根據(jù)數(shù)據(jù)包的源節(jié)點(diǎn)ID在路由表中查找路徑,轉(zhuǎn)發(fā)該數(shù)據(jù)包。步驟二 若存在多條路徑,則以概率Pi,Pj向路徑j(luò)轉(zhuǎn)發(fā)。路由條目的權(quán)重反映了這條路徑的剩余能量、跳數(shù)、傳輸可靠性等關(guān)鍵特征。在移動(dòng)傳感網(wǎng)中,多徑傳輸方式除了負(fù)載均衡、提高網(wǎng)絡(luò)吞吐量,還可以用來(lái)提高傳輸?shù)目煽啃?。?duì)于關(guān)鍵信息,可以通過(guò)設(shè)置數(shù)據(jù)包內(nèi)的控制位進(jìn)行標(biāo)識(shí)。中間節(jié)點(diǎn)在轉(zhuǎn)發(fā)關(guān)鍵數(shù)據(jù)時(shí),選擇多條路徑并行傳輸,可以提高關(guān)鍵數(shù)據(jù)的傳輸可靠性。步驟三源節(jié)點(diǎn)按照數(shù)據(jù)的重要等級(jí),可在數(shù)據(jù)包內(nèi)增加域,指定并行傳輸該信息的路徑數(shù)量。步驟四若中間節(jié)點(diǎn)可選的路徑小于該域值,則向所有路徑轉(zhuǎn)發(fā)該數(shù)據(jù),同時(shí)修改數(shù)據(jù)包內(nèi)的域值,否則中間節(jié)點(diǎn)選擇指定條數(shù)的路徑,并行傳輸該數(shù)據(jù)包,并將其域值修改為I。步驟五在數(shù)據(jù)傳輸過(guò)程中,路徑的剩余能量、傳輸可靠性是變化的。為了保證數(shù)據(jù)傳輸中各條路徑的流量合理分配,節(jié)點(diǎn)保存的路由條目的權(quán)重需要實(shí)時(shí)更新。我們利用數(shù)據(jù)傳輸?shù)拇_認(rèn)字符進(jìn)行數(shù)據(jù)捎帶,更新路徑的權(quán)重。其他參數(shù)的更新很簡(jiǎn)單,值得注意的是節(jié)點(diǎn)間鏈路可靠性的實(shí)時(shí)更新。由于其無(wú)線傳輸和多跳傳輸特點(diǎn),無(wú)線傳感網(wǎng)中的確認(rèn)字符一般是逐跳進(jìn)行的,路徑的選擇將根據(jù)路由表中權(quán)重最小的前三個(gè)值中以隨機(jī)概率選擇路徑,因此兩個(gè)節(jié)點(diǎn)之間的鏈路可靠性,可由前一跳節(jié)點(diǎn)統(tǒng)計(jì)它們之間的傳輸成功率獲得。
權(quán)利要求
1.一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于該方法所包含的步驟為 步驟一當(dāng)簇頭節(jié)點(diǎn)S需要向基站報(bào)告數(shù)據(jù)時(shí),它向鄰居節(jié)點(diǎn)廣播路由請(qǐng)求,進(jìn)行路由發(fā)現(xiàn); 步驟二 每個(gè)簇頭節(jié)點(diǎn)都持有自己的請(qǐng)求序號(hào),并在每次進(jìn)行路由請(qǐng)求時(shí)遞增其值,請(qǐng)求序號(hào)和源序號(hào)一起構(gòu)成該廣播路由請(qǐng)求的唯一標(biāo)識(shí); 步驟三中間節(jié)點(diǎn)i收到廣播路由請(qǐng)求之后,檢查自己是否同時(shí)滿足以下三個(gè)轉(zhuǎn)發(fā)條件 1)節(jié)點(diǎn)i是簇頭節(jié)點(diǎn); 2)節(jié)點(diǎn)i沒(méi)有轉(zhuǎn)發(fā)過(guò)來(lái)自同一鄰居節(jié)點(diǎn)的這個(gè)廣播路由請(qǐng)求,即包含4個(gè)完全相同域值的廣播路由請(qǐng)求; 3)節(jié)點(diǎn)i的層序號(hào)比廣播路由請(qǐng)求中的域值??; 條件I)使得發(fā)現(xiàn)的路徑盡量由簇頭組成,這符合分簇傳輸?shù)脑O(shè)計(jì)初衷;條件2)和條件3)利用層序號(hào)限制了路由請(qǐng)求在網(wǎng)絡(luò)中的廣播,降低了路由控制消息開銷,同時(shí)也限制了所發(fā)現(xiàn)路徑的跳數(shù);如果節(jié)點(diǎn)i不滿足轉(zhuǎn)發(fā)條件,那么丟棄該路由請(qǐng)求; 步驟四若滿足上述三個(gè)條件,節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào); 步驟五將該廣播路由請(qǐng)求的兩個(gè)即時(shí)中間值修改為自己的序號(hào)和層序號(hào),向鄰居移動(dòng)節(jié)點(diǎn)以廣播方式轉(zhuǎn)發(fā)該消息; 步驟六節(jié)點(diǎn)i在轉(zhuǎn)發(fā)廣播路由請(qǐng)求之后,對(duì)該消息的進(jìn)一步轉(zhuǎn)發(fā)進(jìn)行偵聽,如果在指定時(shí)間內(nèi)沒(méi)有比該節(jié)點(diǎn)擁有更小層序號(hào)的簇頭節(jié)點(diǎn)繼續(xù)轉(zhuǎn)發(fā)該廣播路由請(qǐng)求,該節(jié)點(diǎn)i向鄰居節(jié)點(diǎn)廣播新的控制消息。
2.根據(jù)權(quán)利要求I所述的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于步驟一中的廣播路由請(qǐng)求,需在匯聚節(jié)點(diǎn)控制下進(jìn)行,各節(jié)點(diǎn)在相應(yīng)時(shí)隙發(fā)送及接收相關(guān)控制信息,并更新其自身路由。
3.根據(jù)權(quán)利要求I所述的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于步驟四中的節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào),其方法是當(dāng)基站收到廣播路由請(qǐng)求和新的控制消息時(shí),以單播形式向轉(zhuǎn)發(fā)該請(qǐng)求給它的節(jié)點(diǎn)發(fā)送路由應(yīng)答信息;中間節(jié)點(diǎn)將應(yīng)答消息沿反向路徑回傳,直至到達(dá)源節(jié)點(diǎn),并在此過(guò)程中建立路由。
4.根據(jù)權(quán)利要求I所述的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于該節(jié)點(diǎn)i向鄰居節(jié)點(diǎn)廣播新的控制消息的方法是當(dāng)簇頭或路由節(jié)點(diǎn)i收到鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)包時(shí),根據(jù)數(shù)據(jù)包的源節(jié)點(diǎn)ID在路由表中查找路徑,轉(zhuǎn)發(fā)該數(shù)據(jù)包;若存在多條路徑,則以路由表中前三個(gè)最小值的隨機(jī)概率向路徑j(luò)轉(zhuǎn)發(fā);對(duì)于關(guān)鍵信息,通過(guò)設(shè)置數(shù)據(jù)包內(nèi)的控制位進(jìn)行標(biāo)識(shí),中間節(jié)點(diǎn)在轉(zhuǎn)發(fā)關(guān)鍵數(shù)據(jù)時(shí),選擇多條路徑并行傳輸。
5.根據(jù)權(quán)利要求I所述的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于所述節(jié)點(diǎn)i的層序號(hào)比廣播路由請(qǐng)求中的域值小,其方法是若中間節(jié)點(diǎn)可選的路徑小于該域值,則向所有路徑轉(zhuǎn)發(fā)該數(shù)據(jù),同時(shí)修改數(shù)據(jù)包內(nèi)的域值,否則中間節(jié)點(diǎn)選擇指定條數(shù)的路徑,并行傳輸該數(shù)據(jù)包,并將其域值修改為I。
6.根據(jù)權(quán)利要求I所述的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,其特征在于節(jié)點(diǎn)i建立反向路由,記錄該路由請(qǐng)求的源節(jié)點(diǎn)序號(hào)和轉(zhuǎn)發(fā)該路由廣播請(qǐng)求給它的上一跳節(jié)點(diǎn)序號(hào),并實(shí)時(shí)更新節(jié)點(diǎn)保存的路由條目的權(quán)重,方法是利用數(shù)據(jù)傳輸?shù)拇_認(rèn)字符進(jìn)行數(shù)據(jù)捎帶,更新路徑的權(quán)重。
全文摘要
本發(fā)明提出的一種面向移動(dòng)傳感器網(wǎng)絡(luò)的自組織路由方法,該方法對(duì)比現(xiàn)有按需路由方法,其創(chuàng)新之處在于(1)利用層序號(hào)限制路由控制消息的廣播轉(zhuǎn)發(fā),并控制傳輸路徑的跳數(shù);(2)在路由發(fā)現(xiàn)過(guò)程中根據(jù)需要任命部分成員節(jié)點(diǎn)充當(dāng)路由節(jié)點(diǎn),保證簇頭間的通信聯(lián)通;(3)根據(jù)路徑的剩余能量、跳數(shù)、傳輸可靠性等因素,采取多徑傳輸方式進(jìn)行負(fù)載均衡。采用此方法,無(wú)線傳感器網(wǎng)絡(luò)的傳輸可靠性會(huì)比現(xiàn)有協(xié)議有大幅度提高,網(wǎng)絡(luò)數(shù)據(jù)收集的效率至少比現(xiàn)有方法提高3倍左右。它有效地限制了路由控制消息廣播和傳輸路徑的跳數(shù)。通過(guò)監(jiān)聽路由請(qǐng)求的轉(zhuǎn)發(fā)和任命路由節(jié)點(diǎn),有效地保證了簇頭的通信聯(lián)通。多徑傳輸?shù)姆绞教岣吡藚f(xié)議在時(shí)延和可靠性方面的表現(xiàn)。
文檔編號(hào)H04W40/12GK102740395SQ20121023930
公開日2012年10月17日 申請(qǐng)日期2012年7月12日 優(yōu)先權(quán)日2012年7月12日
發(fā)明者孫萬(wàn)興, 寶磊, 岳文靜, 張亞萍, 楊萌, 陳志 申請(qǐng)人:南京郵電大學(xué)