適合無線傳感器網(wǎng)絡(luò)的路由算法MSAODV 2011-06-09 14:13:02來源:互聯(lián)網(wǎng)

引言
隨著通信技術(shù)、嵌入式計(jì)算技術(shù)和傳感器技術(shù)的飛速發(fā)展和日益成熟,具有感知能力、計(jì)算能力和通信能力的微型傳感器開始在世界范圍內(nèi)出現(xiàn)。由這些微型傳感器構(gòu)成的傳感器網(wǎng)絡(luò)引起了人們的極大關(guān)注。這種傳感器網(wǎng)絡(luò)綜合了傳感器技術(shù)、嵌入式計(jì)算技術(shù)、分布式信息處理技術(shù)和通信技術(shù),能夠協(xié)作地實(shí)時監(jiān)測、感知和采集網(wǎng)絡(luò)分布區(qū)域內(nèi)的各種環(huán)境或監(jiān)測對象的信息,并對這些信息進(jìn)行處理,獲得詳盡而準(zhǔn)確的信息,傳送到需要這些信息的用戶。本文在AODV路由協(xié)議的基礎(chǔ)上,提出了一種全新的路由協(xié)議—MSAODV協(xié)議,這種路由算法適合在微型無線傳感器網(wǎng)絡(luò)上使用。
2 MSAODV路由算法的基本思想與算法原理
2.1 路由算法的基本思想
在研究了AODV路由協(xié)議之后,本文提出了一種全新的路由算法,這種路由算法適合在微型無線傳感器網(wǎng)絡(luò)上使用,又由于是基于AODV路由協(xié)議之上,故稱之為MSAODV(Micro- Sensor Ad-hoc On- Demand Distance Vector Algorithm)路由協(xié)議。
無線傳感器網(wǎng)絡(luò)與傳統(tǒng)無線移動網(wǎng)絡(luò)有區(qū)別,無線傳感器網(wǎng)絡(luò)最關(guān)心的是整個網(wǎng)絡(luò)的成存周期,而傳統(tǒng)無線移動網(wǎng)主要關(guān)心的是網(wǎng)絡(luò)拓?fù)渥兓闆r下可靠傳輸質(zhì)量。微型無線傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)具有體積小,功耗小,通信距離短等特點(diǎn),他們應(yīng)用的場合非常廣泛,像戰(zhàn)場敵方信息采集,森林火災(zāi)監(jiān)控等,這些場合往往是一些無人區(qū),傳感器節(jié)點(diǎn)拋撒到這些地方再回收的可能性非常小,所以節(jié)點(diǎn)的功耗決定了他的使用時間。針對這些特點(diǎn),MSAODV路由算法采用了按需查詢方式,他簡單實(shí)用,易于擴(kuò)充,協(xié)議開銷小,應(yīng)用了這種路由算法傳感器節(jié)點(diǎn)大部分時間都可以處在睡眠狀態(tài),這樣就延長了節(jié)點(diǎn)的使用時間,適合無線傳感器網(wǎng)絡(luò)的使用環(huán)境。
2.2 MSAODV路由算法原理
MSAODV路由協(xié)議算法是在AODV路由協(xié)議的基礎(chǔ)上改進(jìn)演化而來的,他繼承了AODV路由算法的許多特點(diǎn),但是又與AODV路由協(xié)議算法有所不同。無線傳感器網(wǎng)絡(luò)的體系結(jié)構(gòu)將有助于設(shè)計(jì)MSAODV路由協(xié)議算法,圖1顯示了無線傳感器網(wǎng)絡(luò)的體系結(jié)構(gòu)。
MSAODV路由算法同樣假設(shè)網(wǎng)絡(luò)中的所有鏈路都是雙向?qū)ΨQ的,即某個源節(jié)點(diǎn)通過一條路由可以到達(dá)無線網(wǎng)絡(luò)中的某個目的節(jié)點(diǎn)時,該目的節(jié)點(diǎn)同樣也可以通過這條路由的反向路由回到源節(jié)點(diǎn)。MSAODV路由協(xié)議同樣是一種按需的距離向量路由協(xié)議,具有按需路由協(xié)議的特點(diǎn),網(wǎng)絡(luò)中的每個節(jié)點(diǎn)在需要進(jìn)行通信時才發(fā)送路由分組,而不會周期性地交互路由信息以得到所有其它主機(jī)的路由:同時具有距離向量路由協(xié)議的一些特點(diǎn),即各節(jié)點(diǎn)路由表只維護(hù)本節(jié)點(diǎn)到其他節(jié)點(diǎn)的路由,而無須掌握全網(wǎng)拓?fù)浣Y(jié)構(gòu)。


點(diǎn)擊看大圖
圖1 無線傳感器網(wǎng)絡(luò)體系結(jié)構(gòu)
MSAODV路由協(xié)議中只有兩種類型的消息控制幀:路由請求RREQ和路由應(yīng)答RREP。和AODV路由協(xié)議一樣,當(dāng)源節(jié)點(diǎn)需要發(fā)送數(shù)據(jù)而又沒有到目的節(jié)點(diǎn)的有效路由時,啟動一個路由發(fā)現(xiàn)過程:向網(wǎng)絡(luò)廣播一個路由請求包RREQ,中間節(jié)點(diǎn)轉(zhuǎn)發(fā)該路由請求,收到請求的目的節(jié)點(diǎn)以單播的方式向源節(jié)點(diǎn)返回一個RREP包,RREP沿著剛建立的逆向路徑傳輸回源節(jié)點(diǎn),源節(jié)點(diǎn)收到該RREP包后則開始向?qū)?yīng)目的節(jié)點(diǎn)發(fā)送數(shù)據(jù)。在路由請求包的正向傳播過程中,網(wǎng)絡(luò)中能收到該路由請求的節(jié)點(diǎn)都建立起了到源節(jié)點(diǎn)的反向路由,當(dāng)目的節(jié)點(diǎn)收到路由請求而回送路由應(yīng)答時,逆向路徑上的節(jié)點(diǎn)又建立了前向路由。整個MSAODV路由發(fā)現(xiàn)過程如圖2所示,a圖表示的是反向路由的建立過程,節(jié)點(diǎn)S需要和節(jié)點(diǎn)D通信,但是他沒有節(jié)點(diǎn)D的路由,所以節(jié)點(diǎn)S發(fā)起到節(jié)點(diǎn)D的路由請求,節(jié)點(diǎn)S廣播一個路由請求包,收到路由請求包的節(jié)點(diǎn)轉(zhuǎn)發(fā)節(jié)點(diǎn)S的請求,最終節(jié)點(diǎn)D收到了節(jié)點(diǎn)S的路由請求包,這個過程建立了節(jié)點(diǎn)S到節(jié)點(diǎn)D的反向路由;