基于tinyos的無線傳感器網絡路由協議的研究與實現
路由容錯性能是指路由算法的魯棒性,數據通過該路由算法確定的路徑到達目的地的可靠性。比如當某個傳感器節點失效時,路由算法可以通過路徑修補繞過該點,當網絡里信道間誤碼率較高或傳感器節點所處的環境影響信號傳輸時能夠保證數據的安全傳輸等等。
數據傳輸方式是指信息在傳感器網絡里是通過直接的點對點傳輸還是通過中間節點,以接力棒的形式進行數據傳輸。
網絡生命周期指的是所布置的無線傳感器網絡能夠進行有效工作的時間,如果網絡中某些節點由于過度使用而提前失效,致使其他節點不能進行組網而破壞了網絡的聯通性,這樣雖然其他節點本身能夠采集并發送數據,但是由于網絡聯通性被破壞,數據不能到達目的節點。網絡生命周期是傳感器網絡里非常周要的一個指標。
數據發送模式指的是數據是主動發送的還是通過其他節點的要求來發送的。主動發送的數據是根據本地的設定的采樣頻率連續發送的,當傳感器采集到數據便打包發送;通過其他節點的要求來發送的模式一般是指匯聚節點根據需要向目的監測區域發送查詢命令,通知目的區域發送某種類型的數據,目的區域節點接到命令后,開啟數據采集功能,根據命令中要求的頻率進行采樣并發送。
數據/查詢緩存是指路由算法是否設置緩沖池用來為那些已經發送的數據在本地保留副本以便數據包丟失后進行重傳,或者用來緩存那些接收到的查詢命令等控制信息。數據/查詢緩存的使用一方面可以用于保證數據的可靠性或優化路徑,但是另一方面它增加了維護路由的開銷,設計路由要均衡利弊選擇使用。
數據聚集指的是在數據包發到目的地之前是否都發到某一個中間節點進行一些必要的處理,比如某個監測區域監測到的數據先發往一個控制節點進行數據融合,進行一些必要的數據過濾或者對數據進行求平均值等必要的計算,然后再發往目的地,這樣可以減少網絡通信量。資源有效性是指監測區域收集的數據與匯聚節點實際想得到的數據是否一致,監測區域收集數據的頻率和發送時延是否滿足要求。
分層是指無線傳感器網絡中的節點之間功能的劃分,如果傳感器網絡中各個節點的功能一樣,都是即可以采集數據又可以控制路由選擇,那么這種路由是不分層的,又叫平面路由;如果節點收集到數據后要發往一個專門的控制節點進行選路,那個專門的節點又稱為簇頭,這種路由機制屬于分層的路由,又叫做層次路由。
§2.3路由協議接入方式
前面說過無線傳感器網絡不同于一般的Ad Hoc網絡,它在資源、傳輸方式以及應用對象方面有自己的特點。無線傳感器網絡的路由協議與傳感器網絡的特點對應,是與應用緊密相連的。前面提到的幾個應用分別應用的場合也不盡相同,每種協議都有自己獨特的優勢和缺點。這就要求對于不同的應用能夠進行自由的切換路由,路由能夠進行方便的更替。現在一些應用于無線傳感器網絡的系統中有一些對路由層做了封裝,以配置文件的形式可以動態的鏈入,比如:加州大學伯克利分校研究的tinyos系統把路由層以組件的形式實現,提供給上層接口進行調用。組建可以自由的更換,只要提供的接口一致,給上層應用的開發提供了極大的方便,路由層的加入也很方便。Jennic公司研制的bos系統類似于tinyos,相當于tinyos簡化版,傳感器網絡中各部分也是以API接口的形式提供給應用層調用。這些系統的共同之處是為方便應用,把下層包括路由層封裝起來,以API接口的形式提供功能調用。下面以tinyos中路由層的調用方式[3]來說明無線傳感器網絡中路由層的自由變更方式。
如圖2-3所示,AM模塊用于連接發送模塊,和下面的mac層、物理層通信,調用下層功能完成信息的收發功能。路由模塊MultiHopRouter利用AM層的收發接口完成路由選擇、路徑優化等功能,提供給上層收發接口和Intercept接口,其中Intercept接口用于那些收到的不是發給本地節點的信息。其中AM模塊(Active Message)用專門的組件封裝好,提供基本的數據的發送和接收功能。路由層架設在AM層之上,提供路由功能,在路由層之上是傳輸層,由于并沒有在系統中實現,所以用虛線表示。路由層之上實際上是應用層,實現的路由都提供這些接口,上層應用在使用時直接調用這些接口,根本不關心具體的實現。這樣封裝有利于路由層的靈活替換,只要提供相同的接口,就可以很方便的連入應用程序。
傳感器網絡可能需要在相同的監測區域內完成不同的任務,如果為每種任務部署專門的傳感器網絡將增加傳感器網絡的成本。因此,為了完成任務,傳感器網絡需要根據應用環境和網絡條件自主選擇適用的路由協議,并在各個路由協議之間自主切換。靈活的路由自主切換為應用提供了方便,節省了成本,但是為路由協議的開發增加了約束條件,加大了開發難度,提出新的挑戰。
評論