基于tinyos的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議的研究與實(shí)現
無(wú)線(xiàn)傳感器網(wǎng)絡(luò )具有與傳統網(wǎng)絡(luò )不同的特點(diǎn),它與應用緊密相關(guān)。傳統網(wǎng)絡(luò )路由協(xié)議不能有效地用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò ),因而人們研究了眾多的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議。本章對幾種典型的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議做一些分析介紹,比較他們的優(yōu)劣,為后面要設計的路由提供理論基礎。
本文引用地址:http://dyxdggzs.com/article/154959.htm無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中信道非常復雜,節點(diǎn)所處的環(huán)境無(wú)法預測,因此給無(wú)線(xiàn)傳感器網(wǎng)絡(luò )帶來(lái)了很多不確定因素,對無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的路由協(xié)議的研究是一項極負挑戰性的工作。根據不同的分類(lèi)標準無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的路由協(xié)議可進(jìn)行多種分類(lèi),比如:
1、根據應用要求,傳感器網(wǎng)絡(luò )可分為:能量感知路由、基于查詢(xún)的路由、地理位置路由和可靠性路由。
無(wú)線(xiàn)傳感器網(wǎng)絡(luò )具有與傳統網(wǎng)絡(luò )不同的特點(diǎn),它與應用緊密相關(guān)。傳統網(wǎng)絡(luò )路由協(xié)議不能有效地用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò ),因而人們研究了眾多的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議。本章對幾種典型的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議做一些分析介紹,比較他們的優(yōu)劣,為后面要設計的路由提供理論基礎。
§2.1 無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議的分類(lèi)與性能指標
無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中信道非常復雜,節點(diǎn)所處的環(huán)境無(wú)法預測,因此給無(wú)線(xiàn)傳感器網(wǎng)絡(luò )帶來(lái)了很多不確定因素,對無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的路由協(xié)議的研究是一項極負挑戰性的工作。根據不同的分類(lèi)標準無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中的路由協(xié)議可進(jìn)行多種分類(lèi),比如:
1、 根據應用要求,傳感器網(wǎng)絡(luò )可分為:能量感知路由、基于查詢(xún)的路由、地理位置路由和可靠性路由。
2、 根據數據收集方式又可分為傳統的當需要時(shí)再建立路徑的按需路由機制比如動(dòng)態(tài)源路由(On-Demand Source Routing protocol , DSR)和基于數據驅動(dòng)的主動(dòng)路由機制比如定向擴散路由(Directed diffusion, DD)以及后面本文提出混合路由機制——動(dòng)態(tài)擴展多路徑路由機制。
3、 根據傳輸過(guò)程中采用的路徑的跳數,可分為單路徑路由和多路徑路由。
4、 根據路由是否考慮Qos約束,可分為保證Qos的路由協(xié)議與不保證Qos的路由協(xié)議。保證Qos的路由協(xié)議是指在路由建立的時(shí)候綜合考慮時(shí)延、誤碼率等Qos參數,從多條路由中選出一條適合Qos約束的最佳路徑。
5、 根據節點(diǎn)路由過(guò)程是否有層次結構,節點(diǎn)在選路過(guò)程中所起到的作用又可分為平面路由和層次路由。平面路由結構簡(jiǎn)單,健壯性好,適應傳感器節點(diǎn)計算功能不強、存儲能力低以及信道復雜多變的特點(diǎn),但是維護路由的開(kāi)銷(xiāo)大,擴展性不好,數據傳輸跳數多,適合小型網(wǎng)絡(luò )。層次路由擴展性好,適合大型網(wǎng)絡(luò ),但是對于簇的維護開(kāi)銷(xiāo)大,算法復雜,對節點(diǎn)功能要求高。
針對無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由機制的特點(diǎn),評價(jià)一個(gè)路由協(xié)議設計是否成功,往往采用以下指標:
1、能量的有效利用節點(diǎn)所帶的能源有限,如果過(guò)多的使用會(huì )使部分節點(diǎn)提前失效,這樣容易產(chǎn)生路由空洞,甚至導致某個(gè)區域的不可到達。為了維持無(wú)線(xiàn)傳感器網(wǎng)絡(luò )最大的生命周期,設計路由不僅要考慮能量消耗少的路徑,而且要綜合考慮整個(gè)網(wǎng)絡(luò )的生命周期,均衡整個(gè)網(wǎng)絡(luò )中節點(diǎn)能量的消耗,避免出現過(guò)度使用某些節點(diǎn),使其失效以致出現路由空洞。
2、擴展性
在無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中,由于布置的節點(diǎn)所處的地理位置環(huán)境不同,節點(diǎn)的生存周期也不盡相同。有時(shí)甚至是隨即放置節點(diǎn),比如:軍方應用時(shí),通過(guò)飛機向敵方陣地播撒節點(diǎn),這時(shí)節點(diǎn)有的可能會(huì )被撒在障礙物比較多的地方,甚至是直接掉進(jìn)洞里無(wú)法于其他節點(diǎn)聯(lián)絡(luò ),有的可能放在比較潮濕的地方使電池及早失效,有的在使用過(guò)程中由于某種原因引起了位置的移動(dòng)等等??偠灾?,由于節點(diǎn)的失效等原因可能要引起整個(gè)網(wǎng)絡(luò )拓撲的變化,這就要求路由機制能動(dòng)態(tài)的適應這種變化,具有擴展性,隨著(zhù)網(wǎng)絡(luò )拓撲的變化動(dòng)態(tài)調整路由。
3、可靠性
前面說(shuō)過(guò)無(wú)線(xiàn)傳感器節點(diǎn)所處的環(huán)境非常復雜,而且難以預測,再加上無(wú)線(xiàn)信道非常復雜,數據傳輸的可靠性就顯得非常重要。尤其是某些敏感區域的探測,比如外太空某區域環(huán)境的監測,煤礦礦井下的瓦斯的監測等等,這些數據非常寶貴,數據的安全到達要求無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的路由機制具有較強的容錯能力。
4、時(shí)延
傳感器網(wǎng)絡(luò )具有相當多的不確定因素,比如拓撲會(huì )動(dòng)態(tài)變化,節點(diǎn)間的通信鏈路質(zhì)量隨著(zhù)網(wǎng)絡(luò )中信息包發(fā)送的數量和節點(diǎn)間的距離動(dòng)態(tài)變化等,這些都對數據成功到達目的地的時(shí)間提出了挑戰。無(wú)線(xiàn)傳感器網(wǎng)絡(luò )路由協(xié)議必須能夠快速收斂,特別是一些對實(shí)時(shí)任務(wù)對時(shí)間有較高的的要求時(shí)。在這方面一般都是減小通信開(kāi)銷(xiāo),提高網(wǎng)絡(luò )傳輸的效率。
§2.2現有典型無(wú)線(xiàn)傳感網(wǎng)絡(luò )路由算法的介紹與比較
目前對于無(wú)線(xiàn)傳感網(wǎng)絡(luò )路由算法的設計,國內外提出了很多解決方案,其中比較具有代表性的有泛洪式算法(Flooding)[7]、動(dòng)態(tài)源路由算法(DSR)[2]、低功耗自適應聚類(lèi)路由算法(LEACH)[8,11]、GEAR算法[9]和定向擴散算法(Direct Diffusion)[10,12,13,14]。這些路由算法各有其優(yōu)勢也有缺陷,而且針對不同的具體應用表現出來(lái)的性能也大不一樣,但是他們提供了幾種不同的思考方向,對后來(lái)的很多路由算法提供了借鑒。接下來(lái)將簡(jiǎn)單對他們進(jìn)行介紹。
1、 泛洪式算法(Flooding)
泛洪式算法是一種傳統的洪泛式路由技術(shù),它不需要維護網(wǎng)絡(luò )的拓撲結構和路由計算,接收到消息的節點(diǎn)以廣播形式轉發(fā)數據包給所有的鄰節點(diǎn),這個(gè)過(guò)程重復執行,直到數據包到達目的地或者已經(jīng)達到預先設定的最大跳數。
對于自組織的傳感器網(wǎng)絡(luò ),泛洪路由是一種較直接簡(jiǎn)單的實(shí)現方法,但存在消息的“內爆”(implosion)和“重疊”(overlap)以及“資源盲點(diǎn)”(resource blindness)的特點(diǎn)。
2、動(dòng)態(tài)源路由算法(DSR)
動(dòng)態(tài)源路由算法(Dynamic Source Routing protocol)[2]是按需建立路由的一種自適應算法。當某個(gè)傳感器節點(diǎn)采集到數據后,調用路由選取機制,從它的鄰居節點(diǎn)中選取一個(gè)信道較好、能量充沛或者致匯聚節點(diǎn)(sink節點(diǎn))距離最近的節點(diǎn)作為其轉發(fā)節點(diǎn)。其他節點(diǎn)收到這樣的數據包后運行同樣的算法,從其鄰居節點(diǎn)中找出一個(gè)最佳轉發(fā)節點(diǎn)進(jìn)行轉發(fā),直到數據包被發(fā)送到目的地。這種算法簡(jiǎn)單,要維護的數據結構簡(jiǎn)單,路由維護開(kāi)銷(xiāo)小,但是它路由選擇時(shí)只考慮眼前最優(yōu),沒(méi)有考慮網(wǎng)絡(luò )負載,容易導致部分節點(diǎn)提前失效;單路徑發(fā)送可靠性低,路由的選取具有盲目性,容易走向網(wǎng)絡(luò )空洞。
評論