一種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化的制作方法
【專利摘要】一種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化,包括以下步驟:(1).產(chǎn)生數(shù)據(jù)幀:在源節(jié)點(diǎn)每次發(fā)送副本時(shí)調(diào)用一個(gè)自動(dòng)產(chǎn)生序列號(hào)的函數(shù),并得到一個(gè)序列號(hào),用來(lái)標(biāo)記每次發(fā)送的數(shù)據(jù)幀;(2).判斷數(shù)據(jù)幀:當(dāng)下一個(gè)相鄰節(jié)點(diǎn)收到該數(shù)據(jù)幀,首先提取數(shù)據(jù)幀中的序列號(hào)、目的地址、幀類型等,將緩沖區(qū)中之前收到的數(shù)據(jù)包副本進(jìn)行比對(duì),如果相同,就不做任何操作;如果不相同,就會(huì)接收這個(gè)數(shù)據(jù)副本;(3).通過(guò)幀中的目的地址查看終點(diǎn)地址是否指向當(dāng)前地址;本發(fā)明的優(yōu)點(diǎn)是設(shè)計(jì)了一種ZigBee無(wú)線網(wǎng)絡(luò)的路由算法,有效地避免信息內(nèi)爆和降低整個(gè)網(wǎng)絡(luò)能耗。所述算法經(jīng)應(yīng)用測(cè)試分析,效率提高到96.3%,應(yīng)用前景十分廣闊。
【專利說(shuō)明】-種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及基于ZigBee無(wú)線網(wǎng)的路由算法研究具體涉及一種對(duì)Flooding洪泛算 法進(jìn)行改進(jìn)與優(yōu)化。
【背景技術(shù)】
[0002] 無(wú)線傳感器網(wǎng)絡(luò)是傳感器技術(shù)、無(wú)線通信技術(shù)、計(jì)算機(jī)技術(shù)、嵌入式計(jì)算技術(shù)相結(jié) 合的產(chǎn)物。無(wú)線傳感器網(wǎng)絡(luò)由大量密集的微型智能傳感器節(jié)點(diǎn)組成,通過(guò)無(wú)線通信方式形 成一個(gè)多跳的自組織網(wǎng)絡(luò)系統(tǒng),能協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對(duì)象的信 息,并傳送給觀察者。
[0003] 路由協(xié)議是無(wú)線傳感器網(wǎng)絡(luò)研究的關(guān)鍵技術(shù)之一,主要負(fù)責(zé)路由選擇和數(shù)據(jù)轉(zhuǎn) 發(fā),其中路由選擇是指尋找一條符合一定條件的路徑作為從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的傳輸路 徑,數(shù)據(jù)轉(zhuǎn)發(fā)是指將數(shù)據(jù)分組沿著選擇的傳輸路徑進(jìn)行轉(zhuǎn)發(fā)。Flooding路由協(xié)議是傳統(tǒng)有 線網(wǎng)絡(luò)中最為經(jīng)典和簡(jiǎn)單的路由協(xié)議,它是基于洪泛機(jī)制的路由協(xié)議,F(xiàn)looding路由協(xié)議 不要求維護(hù)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和相關(guān)路由計(jì)算,僅要求無(wú)線網(wǎng)絡(luò)節(jié)點(diǎn)在接收到信息后以廣播 的方式向鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包,鄰居節(jié)點(diǎn)重復(fù)執(zhí)行上述過(guò)程(轉(zhuǎn)發(fā)時(shí)除去剛剛發(fā)送給它們 的節(jié)點(diǎn)),直到數(shù)據(jù)包到達(dá)目的地或者該數(shù)據(jù)包的生命周期結(jié)束。
[0004] ZigBee是一種短距離、低功耗、低功耗、低數(shù)據(jù)速率、低成本,低復(fù)雜度的無(wú)線網(wǎng)絡(luò) 技術(shù)。所以,ZigBee技術(shù)在一定程度上滿足短距離通信中靈活組網(wǎng)的要求。ZigBee技術(shù)特 點(diǎn)使其在家庭和建筑物的自動(dòng)化控制、消費(fèi)性電子設(shè)備、工業(yè)控制、醫(yī)療設(shè)備控制、農(nóng)業(yè)方 面、軍事方面等方面應(yīng)用顯示出極大的優(yōu)勢(shì)。
[0005] ZigBee網(wǎng)絡(luò)主要支持AODVjr算法和Cluster-Tree路由算法。其中AODVjr是一 種按需分配的路由協(xié)議,只有在路由節(jié)點(diǎn)接收到網(wǎng)絡(luò)數(shù)據(jù)包,并且網(wǎng)絡(luò)數(shù)據(jù)包的目的地址 不在節(jié)點(diǎn)的路由表中時(shí)才會(huì)進(jìn)行路由發(fā)現(xiàn)過(guò)程。Cluster-Tree路由算法中每一個(gè)節(jié)點(diǎn)都會(huì) 試圖將收到的信息包轉(zhuǎn)發(fā)給自己的后代節(jié)點(diǎn),如果通過(guò)計(jì)算發(fā)現(xiàn)目的地址不是自己的一個(gè) 后代節(jié)點(diǎn),則將這個(gè)數(shù)據(jù)包轉(zhuǎn)發(fā)給自身上一級(jí)的父節(jié)點(diǎn),由父節(jié)點(diǎn)進(jìn)行類似的判斷處理,直 到找到目的節(jié)點(diǎn)。
[0006] Cluster-Tree路由算法的特點(diǎn)在于使不具路由功能的節(jié)點(diǎn)通過(guò)與各自的父節(jié)點(diǎn) 間的通信仍然可以發(fā)送數(shù)據(jù)分組和控制分組,但是它的缺點(diǎn)是效率不高。因此,如果能根據(jù) 路由算法的特點(diǎn)對(duì)洪泛分組的轉(zhuǎn)發(fā)實(shí)施條件過(guò)濾,從而減少網(wǎng)絡(luò)信道的沖突和分組盲目的 轉(zhuǎn)發(fā),是提高網(wǎng)路性能和降低網(wǎng)絡(luò)整體能耗的途徑之一。
[0007] 傳統(tǒng)的Flooding洪泛路由的優(yōu)點(diǎn)是:①實(shí)現(xiàn)簡(jiǎn)單;②無(wú)需維護(hù)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和實(shí) 現(xiàn)復(fù)雜路由算法消耗資源;③適用于健壯性要求高的場(chǎng)合。但Flooding洪泛路由也有諸多 不足之處:①在信息爆炸問(wèn)題,即出現(xiàn)一個(gè)節(jié)點(diǎn)可能得到一個(gè)數(shù)據(jù)多個(gè)副本的現(xiàn)象;②出 現(xiàn)部分重疊現(xiàn)象,如果處于同一觀測(cè)環(huán)境的兩個(gè)相鄰?fù)悅鞲衅鞴?jié)點(diǎn)同時(shí)對(duì)一個(gè)事件做出 反應(yīng),二者采集的數(shù)據(jù)性質(zhì)相同,數(shù)值相近,這兩個(gè)節(jié)點(diǎn)的鄰居節(jié)點(diǎn)將收到雙份數(shù)據(jù)副本; ③盲目使用資源,只要節(jié)點(diǎn)收到數(shù)據(jù),如果不是目的節(jié)點(diǎn)即進(jìn)行轉(zhuǎn)發(fā)處理,而沒(méi)有考慮各節(jié) 點(diǎn)能量,即使節(jié)點(diǎn)的剩余能量很低也要進(jìn)行轉(zhuǎn)發(fā),這樣導(dǎo)致部分節(jié)點(diǎn)過(guò)快的死亡,降低了網(wǎng) 絡(luò)的平均性能。
[0008] 針對(duì)上述Flooding洪泛算法的問(wèn)題,有學(xué)者對(duì)傳統(tǒng)的洪泛Flooding路由協(xié)議提 出了一些改進(jìn)思想:如①提出了基于分級(jí)的思想,即將一些控制信息封裝在數(shù)據(jù)包中,當(dāng)一 個(gè)節(jié)點(diǎn)收到數(shù)據(jù)包后,讀取封裝信息,從而判斷此數(shù)據(jù)包是否屬于冗佘信息,如果不是則按 照定義好的轉(zhuǎn)發(fā)規(guī)則進(jìn)行轉(zhuǎn)發(fā),否則直接丟棄。②提出一種節(jié)能路由協(xié)議,在協(xié)議中節(jié)點(diǎn) 依據(jù)剩余能量決定是否接收和轉(zhuǎn)發(fā)數(shù)據(jù)幀,節(jié)點(diǎn)維護(hù)由剩余能量、距離網(wǎng)絡(luò)中聚合節(jié)點(diǎn)的 跳數(shù)等信息組成的路由表,結(jié)合路由表動(dòng)態(tài)確定向哪些鄰居節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)幀,算法在節(jié)點(diǎn) 能耗和網(wǎng)絡(luò)負(fù)載均衡方面有良好表現(xiàn)。
[0009] 雖然上述的這些改進(jìn)的路由算法部分解決了無(wú)線傳感器網(wǎng)絡(luò)中的問(wèn)題,但是在無(wú) 線傳感器網(wǎng)絡(luò)中采用的平面路由協(xié)議中,所有的傳感器節(jié)點(diǎn)的地位都是平等的,實(shí)現(xiàn)的路 由功能基本相同。而采用ZigBee技術(shù)的傳感器網(wǎng)絡(luò)不同于前面提到的傳統(tǒng)的無(wú)線傳感器 網(wǎng)絡(luò),除了協(xié)調(diào)器節(jié)點(diǎn)具有與無(wú)線傳感器網(wǎng)絡(luò)中的匯聚節(jié)點(diǎn)相似的功能和地位外,其余節(jié) 點(diǎn)功能并不相同。ZigBee網(wǎng)絡(luò)主要支持Cluster-Tree和AODVjr路由算法,傳統(tǒng)無(wú)線傳感 器網(wǎng)絡(luò)中廣泛使用的Flooding路由協(xié)議并不能直接移用到ZigBee網(wǎng)絡(luò)中。
【發(fā)明內(nèi)容】
[0010] 為了解決上述問(wèn)題,本發(fā)明提供一種改進(jìn)的Flooding路由協(xié)議,能有效避免其缺 點(diǎn)且適用于ZigBee無(wú)線網(wǎng)絡(luò)。改進(jìn)的算法結(jié)合ZigBee無(wú)線網(wǎng)絡(luò)技術(shù)特點(diǎn),適當(dāng)?shù)叵拗坡酚?發(fā)現(xiàn)過(guò)程中的分組洪泛,通過(guò)一過(guò)濾機(jī)制限制原有協(xié)議中多余的數(shù)據(jù)包的轉(zhuǎn)發(fā)并對(duì)節(jié)點(diǎn)的 剩余能量值加以考慮算法除了保留Flooding協(xié)議本身的健壯性、無(wú)需路由維護(hù)等優(yōu)點(diǎn)外, 采用的技術(shù)方案如下:
[0011] 一種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化,包括以下步驟:
[0012] (1).產(chǎn)生數(shù)據(jù)幀:在源節(jié)點(diǎn)每次發(fā)送副本p時(shí)調(diào)用一個(gè)自動(dòng)產(chǎn)生序列號(hào)的函數(shù) Count,并得到一個(gè)2個(gè)節(jié)點(diǎn)的序列號(hào)N,用來(lái)標(biāo)記每次發(fā)送的數(shù)據(jù)幀。
[0013] (2).判斷數(shù)據(jù)幀:當(dāng)下一個(gè)相鄰節(jié)點(diǎn)收到該數(shù)據(jù)幀p時(shí),首先提取數(shù)據(jù)幀p中的 序列號(hào)、目的地址、幀類型等,將緩沖區(qū)中之前收到的數(shù)據(jù)包副本序列號(hào)、目的地址、節(jié)點(diǎn)類 型進(jìn)行比對(duì),如果相同,就不做任何操作;如果不相同,就會(huì)接收這個(gè)數(shù)據(jù)副本;
[0014] (3).通過(guò)幀中的目的地址查看終點(diǎn)地址是否指向當(dāng)前地址:此時(shí),路由節(jié)點(diǎn)通過(guò) 幀中的目的地址查看終點(diǎn)地址是否指向當(dāng)前地址,如果接收的目的地址和路由節(jié)點(diǎn)地址不 吻合,接收數(shù)據(jù)幀,并將剛才接收到的數(shù)據(jù)幀廣播并記錄下這個(gè)的數(shù)據(jù)幀;若是目的地址和 路由節(jié)點(diǎn)地址吻合,需要執(zhí)行的命令則立即執(zhí)行,無(wú)需再進(jìn)行數(shù)據(jù)幀的廣播。
[0015] 所述步驟(1)中源節(jié)點(diǎn)源節(jié)點(diǎn)每發(fā)一個(gè)副本,目的節(jié)點(diǎn)理論上應(yīng)該收到副本數(shù) 為:
[0016]
【權(quán)利要求】
1. 一種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化,其特征在于,包括以下步驟: (1) .產(chǎn)生數(shù)據(jù)幀:在源節(jié)點(diǎn)每次發(fā)送副本時(shí)調(diào)用一個(gè)自動(dòng)產(chǎn)生序列號(hào)的函數(shù),并得到 一個(gè)2個(gè)節(jié)點(diǎn)的序列號(hào),用來(lái)標(biāo)記每次發(fā)送的數(shù)據(jù)幀; (2) .判斷數(shù)據(jù)幀:當(dāng)下一個(gè)相鄰節(jié)點(diǎn)收到該數(shù)據(jù)幀p時(shí),首先提取數(shù)據(jù)幀中的序列號(hào)、 目的地址、幀類型等,將緩沖區(qū)中之前收到的數(shù)據(jù)包副本序列號(hào)、目的地址、節(jié)點(diǎn)類型進(jìn)行 比對(duì),如果相同,就不做任何操作;如果不相同,就會(huì)接收這個(gè)數(shù)據(jù)副本; (3) .通過(guò)幀中的目的地址查看終點(diǎn)地址是否指向當(dāng)前地址:此時(shí),路由節(jié)點(diǎn)通過(guò)幀中 的目的地址查看終點(diǎn)地址是否指向當(dāng)前地址,如果接收的目的地址和路由節(jié)點(diǎn)地址不吻 合,接收數(shù)據(jù)巾貞,并將剛才接收到的數(shù)據(jù)幀廣播并記錄下這個(gè)的數(shù)據(jù)幀;若是目的地址和路 由節(jié)點(diǎn)地址吻合,需要執(zhí)行的命令則立即執(zhí)行,無(wú)需再進(jìn)行數(shù)據(jù)幀的廣播。
2. 根據(jù)權(quán)利要求1所述的一種基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化,其特征在 于:所述步驟(1)中源節(jié)點(diǎn)源節(jié)點(diǎn)每發(fā)一個(gè)副本,目的節(jié)點(diǎn)理論上應(yīng)該收到副本數(shù)為:
m表示源節(jié)點(diǎn)相鄰節(jié)點(diǎn)的個(gè)數(shù),η表示源節(jié)點(diǎn)間隔節(jié)點(diǎn)的個(gè)數(shù)。
3. 根據(jù)權(quán)利要求1所述的一種基于基于ZigBee無(wú)線網(wǎng)洪泛路由算法改進(jìn)優(yōu)化,其特征 在于:從源節(jié)點(diǎn)傳送一副本P,經(jīng)過(guò)改進(jìn)以后的洪泛模型,目的節(jié)點(diǎn)收到副本P,其洪泛效率 提高了 " = ^ = ^^96.3%。 c 81
【文檔編號(hào)】H04W40/02GK104301963SQ201410415558
【公開(kāi)日】2015年1月21日 申請(qǐng)日期:2014年8月17日 優(yōu)先權(quán)日:2014年8月17日
【發(fā)明者】王志超, 張乾燕, 沈微微, 顧江水 申請(qǐng)人:宿遷學(xué)院