袁 雪,王一軍,劉桂波,楊 金
(1.中南大學信息科學與工程學院,湖南長沙410075;2.中國電子科技集團第48研究所,湖南長沙410111)
無線傳感器網絡 (WSN)作為信息感知與傳輸的基礎平臺,應用相當廣泛,如智能電網、工業自動化、智慧城市、家庭自動化、樓宇自動化、工業自動化等[1]。在某些應用中,WSN所涉及的節點數量龐大,節點需要全局唯一標識,且收集過來的數據需要便捷且低成本地共享到以現有Internet為基礎的企業或公用事業部門等的信息系統中去。這就要求WSN具有自組織、自配置、自愈合以及連接互聯網等功能。下一代互聯網IP協議標準IPv6以其海量的地址標識、自動配置機制、各種設備與服務發現機制以及廣泛被采用及部署等特點為WSN設計、開發和實現所面臨的很多問題和挑戰帶來了解決機制[2]。
針對ZigBee開放性和互操作性差、連接互聯網不便捷且成本高等不足而提出的6LoWPAN協議即是IPv6和WSN嘗試相互結合的一個很好的實例?;ヂ摼W工程任務組(IETF)提出了關于在符合IEEE802.15.4標準的低功率無線鏈路上收發傳輸IPv6數據包的框架,同時總結出了在WSN中引入TCP/IP架構所面臨的主要問題及挑戰,以及解決這些問題以及克服這些挑戰所需添加的機制和功能,具體可參看IETF頒布的6LoWPAN協議說明文檔RFC4919和RFC4944。6LoWPAN無線網絡的總體體系架構如圖1所示,無線網絡由LoWPAN主機,LoWPAN路由器和LoWPAN邊界路由器組成,無線網絡通過邊界路由器連接Internet。

圖1 6LoWPAN無線網絡體系架構
6LoWPAN在數據鏈路層和網絡層之間引入自適應層(LoWPAN),用來減少IP協議開銷,使IPv6數據包能在802.15.4鏈路層上有效地傳輸。自適應層提供報頭壓縮機制來減少報頭傳輸開銷,提供分片機制來滿足傳輸IPv6最小MTU的要求,支持在開放性協議標準參考模型的第二層上通過無線多跳的方式來轉發投遞IPv6數據包[3-4]。
組播、單播和任播是IPv6所支持的三種網絡尋址和有信路由機制。任播是一種新的有信路由機制,其將數據包路由到從路由拓撲上來看是“最近”或者“最佳”的目的地。這種機制常用于為無狀態服務提供高可靠性和負荷平衡。單播傳輸將數據包發送到唯一特定的目的地,其和將數據包發送到所有目的地的廣播機制不同。最后一種是組播,其類似于廣播,使用最有效地策略將數據包發送到某一組目的地。上述3種有信路由機制都可以用到6LoWPAN中[5-6]。當前有關6LoWPAN的研究主要集中在IP網絡層及傳輸層的報頭壓縮、IP層數據報分片及重組以及適合6LoWPAN的路由協議上,本文就是圍繞6LoWPAN的路由協議展開研究的。
一般來說,WSN路由協議依照其網絡結構、協議實現機制、確定性路由還是協同路由等基準可以分為4大類。能量感知QoS路由協議是WSN路由協議研究熱門之一。該路由協議能很好地平衡鏈路帶寬 (延遲)等性能和能效之間的關系。均衡消耗網絡能量,延長網絡整體生命周期。文獻[7]提出了一個基于成本估計的路由協議。其依照預期傳輸次數 (ETX)度量來選擇下跳轉發節點。在投遞數據包到其目的地的所有可選路徑中,ETX找尋一條預期所需傳輸次數最少的路徑 (包括重傳)。此度量通過在每個雙向無線鏈路上進行鏈路丟包率測量來預測所需重傳次數。ETX設計的首要目標是要尋找出具有高吞吐量的路徑,即使有丟失。ETX也不考慮鏈路質量和RSSI等鏈路狀態參數。文獻[8]提出了一個自主路由協議,使WSN的無線通信功能能自適應其網絡拓撲和工作環境的變化。該路由算法是一個獨立的路由協議,無需任何系統級的輔助,便可在任意節點獨立工作。單個節點故障不會影響整個網絡的穩定性,網絡路由數據包的同時可以兼顧負載平衡和能量均衡。因此,網絡可以保持長時間的高覆蓋率。然而,對減少WSN整個網絡的能量消耗來說,只注重平衡網絡中的通信流是不夠的,還需兼顧考慮存在于接收數據包中的用來指示能量強弱的RSSI度量??梢酝ㄟ^估計給定節點的無線電信號衰減模型,動態調整無線電發射功率來中繼網絡數據包,這樣可大大降低WSN的能量消耗。文獻 [9]中提出的成本感知動態路由協議在源節點到目的節點上創建成本度量梯度。利用能量、節點負載、延遲和鏈路可靠性等成本度量信息來求得在性能和能量消耗之間的平衡。鄰居節點提供路線查詢回復及路線丟失高效恢復機制。相比傳統的泛洪,該協議只需其25%的帶寬,端到端得延遲也更小。
提出了一種新的適合IPv6無線傳感器網絡的路由協議——最佳轉發路由協議。在該協議中,基于鏈路估算、成本估計和RSSI三個參數計算最佳轉發數值,然后根據最佳轉發數值選取數據包轉發的下一跳節點。為了能從所有的鄰居節點處獲得上述3個參數值,傳感器節點需要在啟動過程中執行鄰居發現。在所有鄰居中,擁有相對最佳轉發數值的節點被選為數據包轉發的候選下一跳。關于此路由協議的性能,文章采用Moteiv公司的Tmote-sky實驗板組成4*3的節點陣列來進行分析評估。
如前所述,該路由協議是基于一個最佳轉發方程。該轉發方程運算基于鏈路估算、成本估計和RSSI三個參數。擬設機制找尋出投遞率性能最佳時各個參數的加權值。
最佳轉發路由協議的設計包括地理位置管理、鄰居管理和路由管理三大模塊。地理位置管理模塊負責在啟動時基于與3個已知鄰居節點的距離或者GPS系統來定位節點的位置。本實驗中,每個傳感器節點的位置已經預先確定。
鄰居管理采用鄰居發現機制。開啟無線電模塊后,傳感器節點向其鄰居節點廣播路由請求信息。鄰居接收到該信號后,將回復包含鏈路估算、成本估計和RSSI等信息的路由廣播包。請求節點在收到路由廣播后,更新其路由表。如果某節點是新鄰居并且路由表中還有閑置表項,則將其加入到路由表中。若沒有閑置表項,但最后一個表項滿足置信度閾值,則什么也不做。若其已存在,則只需更新鄰居信息。網絡中的每個節點定期發送路由器廣播,鄰居路由表實時同步當前網絡狀況,使路由更高效。表1是鄰居路由表格式。

表1 鄰居路由表格式
路由管理模塊的功能是計算最佳轉發值,并決定轉發報文的最佳候選節點。計算和決定是基于鄰居路由表信息的。該模塊將基于鏈路估算,成本估計和RSSI參數值計算每個鄰居的轉發最佳值,做出決定。
鏈路估算基于式 (1)計算得出。鏈路質量指示(LQI)表征數據包接收信號的強度或質量。LQI取值范圍[0,255]。軟件負責針對不同應用對LQI做適當變換。LQI是由RSSI和相關值組合產生的。Tmote-sky的CC2420收發器基于SFD首8位標志值為每個傳入數據包提供一個平均相關系數[10]。無符號7位值可視為“芯片錯誤率”度量[11]。式 (2)描述LQI的值

變量a和b值是基于PER的值來經驗獲得,PER是相關系數的函數。成本估計是基于傳送給鄰居節點的總數據包量和成功傳輸量。成本估計值越高,投遞率越低。成本估計計算公式如下
"CONF"是總傳輸量而"SUCC"是成功傳輸量。RSSI是接收信號強度指示器。傳播效應將造成傳輸信號的衰減。對退化和衰減建模,可以基于RSSI估算相鄰節點之間的距離。CC2420收發器中創建8位的可讀取的數值來表征RSSI。RSSI在8個符號周期128μs內求均值,這也意味著收發器至少需開啟8個符號周期。RSSI與能量的相互關系如下式

RSSI_OFFSET是在系統開發時,從前端的增益中憑經驗找出的。RSSI_OFFSET大約是-45。例如,如果RSSI是-20,射頻輸入功率約為-65dBm[11]。典型的RSSI動態值是100dBm,范圍為 [-100dBm,0dBm]。
為了選擇最佳鄰居轉投數據包,路由協議需為鄰居表中的每個鄰居計算其最佳轉發值。計算如下


式 (5)中:λ1+λ2+λ3=1。l1、λ2和λ3的值由實驗測量中估算而來,在下一節中解釋。
WSN測試平臺含硬、軟件部分。測試平臺采用Moteiv公司的Tmote-sky傳感器節點,使用遵循IEEE802.15.4射頻標準的2.4GHz ISM頻段??赏ㄟ^USB連接PC機。傳感器節點設有On/Off開關,必須拔掉電池才能關閉Tmote-sky。Tmote-sky有板載光、溫度和濕度傳感器。這些傳感器節點運行Contiki OS,開發板及體系架構如圖2所示。

圖2 Tmote-sky板及體系結構
軟件含Contiki OS和用戶應用程序。Contiki OS是一款輕量級的、開源的、高度可移植的、多任務的、基于事件的、模塊可動態裝卸的無線傳感器網絡操作系統,專門針對資源 (內存、計算等)高度受約束的硬件平臺而設計的。盡管提供多任務操作和內嵌TCP/IP協議棧,其只需幾kB的代碼和幾百Bytes的RAM。
WSN實驗需要在一個24*16m區域內按4*3的陳列布置12個Tmote-sky傳感器節點。右上角的源節點編號為11,左下角落的匯聚節點編號為0。如圖3所示。源節點和匯聚節點的位置選取是為了在傳輸數據包的過程中增加跳數。使用開源的數據包嗅探器Wireshark來觀察網絡中的數據包。Wireshark是用來捕獲接收器所接收到的數據包。包投遞率和丟包率是衡量評估最佳轉發路由協議性能的指標參數。

圖3 網絡拓撲
實驗由兩部分組成。第一部分確定最佳轉發的系數。第二部分比較評估最佳轉發路由協議與RIP(路由信息協議)和貪婪轉發等路由協議的網絡性能。
RIP協議是基于距離矢量的路由算法。它使用“跳數”來衡量到達目標地的路由距離。貪婪轉發路由算法是基于地理位置信息的一種路由算法。當節點S需要向節點D轉發數據分組的時候,它首先在自己所有的鄰居節點中選擇一個距離D最近的節點作為數據分組的下一跳,然后將數據分組傳送給它。該過程一直重復,直到數據分組到達目的節點D或者某個最佳主機。
在第一部分實驗中,進行了36組測試。流量負載設置為0.5包/秒。系數取值范圍為 [0.1,0.8]。系數總和不超過1。36組系數如表2所示。

表2 概率變量值的組合
實驗的第二部分包速率在 [0.2,20]包/秒中變化。Moteiv公司建議Tmote-sky多跳通信的包速率閾值應設置為0.5包/秒,過高的包速率,可能導致包擁塞或通信隊列溢出[8]。使用貪婪轉發和RIP兩種路由協議重復同樣的實驗。測量三個路由協議下投遞率和丟包率兩個網絡性能指標。
為了確定系數的最佳組合,投遞率閾值設為0.9,如圖4所示。選擇高于閾值的系數組合,忽略低于閾值的系數組合。根據圖4,低于閾值的有4種組合,組合1、4、11和26。其余的系數組合其吞吐率高于閾值,在這些組合中,有17個組合的最高投遞率達到1。穩定區出現在當RSSI相關系數值為0.3的時候,鏈路估計和成本估計的相關系數可以任意取值。在這個穩定區域里,有六個組合,從組合16到組合21。由此,最佳轉發公式表示如下


選取這6種組合任何一種,結果幾乎是一樣。在最佳轉發路由協議中,選擇式 (8)作為最佳轉發公式。

圖4 最佳轉發系數測定的實驗結果
如圖5(a)所示,3種路由協議 (OF,RIP和貪婪轉發)在不同的數據包速率下的吞吐量。它顯示了OF路由協議與貪婪轉發和RIP路由協議吞吐量網絡性能比較,OF提供了最佳吞吐量性能。包速率低于2包/秒,3個路由協議的性能表現相似,且吞吐量都為1。然而,在包速率2包/秒以上時,貪婪轉發的吞吐量開始下降。當包速率為20包/秒時,該協議吞吐量性能最差,為0.57。包速率增加到20包/秒以上時,此協議的性能會不斷下降。RIP路由協議的吞吐量性能比貪婪轉發好。該協議的最低吞吐量出現在當包速率為20包/秒時,為0.89??傮w而言,最佳轉發在不同的包速率下吞吐量都等于1,因此該路由協議提供了更好的性能。
3個路由協議的數據包丟失情況如圖5(b)所示。3個協議在包速率低于2包/秒時,數據包幾乎不發生丟失。然而,貪婪轉發協議數據包丟失是從包速率為5包/秒時開始的,而且數據包的丟失,隨著包速率增加而增大。最大丟包是在20包/秒時達38.7%。對于RIP,嚴重丟包只發生在包速率為20包/秒時,百分比是11.8%。幾乎沒有觀察到最佳路由協議的丟包情況,意味著所有傳輸的數據包都成功到達目的地。因此,在包丟失方面,與其他兩個路由協議相比,最佳轉發的性能更好。

圖5 三種路由協議的性能比較
本文介紹了一種基于IPv6的無線傳感器網絡最佳轉發路由協議。該路由協議綜合考慮了鏈路估算、成本估計和RSSI,更好地實現了高投遞率、低丟包率。為了確定鏈路估算、成本估計和RSSI相關系數值,實驗第一部分完成了36種組合下的性能測試。實驗表明,有6種系數組合下的投遞率表現良好。選擇其中一個組合用于路由算法和路由的實際性能測試評估。實驗選取的兩個比較路由協議分別為RIP和貪婪轉發路由協議。結果表明,相比RIP和貪婪轉發路由協議,最佳轉發路由協議在投遞率和丟包率方面提供了更好的性能。
[1]Jean-Philippe Vasseur,Adam Dunkels.Interconnecting smart objects with IP-the next internet[M].Massachusetts:Morgan Kaufmann Publishers,2010:25-30.
[2]Jonthan WHui,David E Culler.Extending IPto low-power wireless sensor network [J].IEEE Computer Science,2008,27(6):202-210.
[3]LI Hai.Research and implementation of6LoWPAN adaptation layer[D].Shanghai:East China Normal University,2007:8-13(in Chinese).[李海.6LoWPAN適應層的研究與實現[D].上海:華東師范大學,2007:8-13.]
[4]WANG Xiaonan,GAO Deiming.Design and implementation of 6LoWPAN sensor node [J].Journal of Tansduction Techno-logy,2010,19(2):150-154.
[5]WANG Xiaonan,GAO Demin.6LoWPAN sensor node design and implementation[J].Journal of Computer Science and Technology,2010,18(6):120-126(in Chinese).[王曉喃,高德民.6LoWPAN傳感器節點的設計與實現[J].傳感技術學報,2010,18(6):120-126.]
[6]Ali A,Rashid R A,Ariffin S H F,et al.Fisal optimal forwarding probability for real-time routing in wireless sensor network [J].Automatica,2009,18(3):105-110.
[7]Couto D De,Aguayo D,Bicket J,et al.High throughput path metric for multi-hop wireless routing [J].IEEE Trans Automat Contr,2008,15(7):160-168.
[8]Joe-Air Jiang,Cheng-Long Chuang,Chia-Pang Chen,et al,A RSSI-based environment-adaptive dynamic radiation power management for wireless sensor networks[J].IEEE Trans Sign Proc,2008,43(11):184-190.
[9]Jukka Suhonen,Mauri Kuorilehto,Marko Hann ikainen,et al.Cost-awared dynamic routing protocol for wireless sensor network-design and prototype experiment[J].IEEE Trans Sign Proc,2010,26(10):52-60.
[10]Jean-Philippe Vasseur,Adam Dunkels.Moteiv tmote-sky datasheet[M].Massachusetts:Morgan Kaufmann Publishers, 2011:100-110.
[11]Chipcon,CC2420 2.4 GHz IEEE 802.15.4/ZigBee-Ready RF Transceiver.