李亞明 劉陳 王辰 劉奇 劉德明
摘 要:無線傳感網絡接入互聯網需要海量地址,將IPv6技術用于無線傳感網絡可解決地址資源不足的問題。論文采用具有6LoWPAN(IPv6 over Low Power wireless Area Network)協議棧的Contiki嵌入式操作系統進行傳感節點設計;開發了支持6LoWPAN協議棧的IPV4/IPV6雙棧邊緣路由器,完成傳感節點數據向以太網的轉發;在教育網IPv6環境下搭建了基于IPv6的無線傳感網絡系統,并進行了測試。測試結果表明,所設計無線傳感器、邊緣路由器均支持基于6LoWPAN通信協議,通過瀏覽器可遠程訪問IPv6傳感節點并能通過管理服務器獲取實時采樣數據。
關鍵詞:IPv6 ;6LoWPAN ;無線傳感網絡;Contiki;遠程訪問;實時
中圖分類號:TN92 文獻標識碼:A 文章編號:2095-1302(2015)03-00-03
0 引 言
傳感網絡技術作為物聯網的核心技術之一,一直是國內外研究熱點,其中無線傳感網絡部署簡單、維護方便,成本低,相對有線傳輸更具有靈活性,在環境監測、農業管理、醫療、及工業監控等多方面具有廣泛應用前景。
目前大多數無線傳感網絡都不是基于IP的網絡架構,要想使傳感節點接入IP網絡,必須要專門設計一個支持其他私有協議的轉換網關,由于網關固有的復雜性,協議轉換過程中很可能會破壞雙方的網絡模型,在大規模網絡部署后的網絡管理與故障檢查方面會有很多不足。端到端IP網絡架構網絡層采用IP技術,具有很好的互通性與穩定性,應用層可以支持多樣性的需求,相對傳統網關具有很多優勢,支持端到端IP架構的傳感網絡是未來迎接大規??煽貍鞲芯W絡的潛在發展方向。
但以IP做基礎的無線傳感網絡規?;瘧妹媾R兩個問題:IPv4地址枯竭與傳感節點成本限制。要無限地延伸網絡邊界,實現全網絡融合與通信,開展全網絡協同服務,必須要使全網系統中最基礎層的被標記物具有網絡IP地址;傳統IPv4地址資源即將枯竭,而IPv6協議具有充足的地址空間,可為需要海量地址的物聯網服務[1,2]。另一方面,無線傳感網絡節點要求體積小且成本低,并且多部署在不易取電的位置,這就要求傳感節點內存資源有限,且工作低功耗[3]。
為此,結合低功耗802.15.4數據鏈路層和物理層協議及IPv6網絡層協議的6LoWPAN (IPv6 over Low Power wireless Area Network)協議棧被提出,通過6LoWPAN適配層對IPv6數據包進行分片和重組,完成IPv6網絡層與802.15.4物理層的融合[4-6]。Contiki是專為內存受限的硬件平臺開發的操作系統,該系統開源且集成了6LoWPAN協議棧 [7]。
論文將采用具有6LoWPAN協議棧的Contiki嵌入式操作系統進行傳感節點設計;研制支持6LoWPAN協議棧的IPV4/IPV6雙棧邊緣路由器,完成傳感節點數據向以太網的轉發;在教育網IPv6環境下搭建基于IPv6的無線傳感網絡系統進行測試。
1 IPv6傳感網絡總體設計
在教育網IPv6環境下構建如圖1所示的無線傳感網絡。
無線傳感網絡由IPv6傳感節點、IPv6路由、管理服務器所構成。本設計中,無線傳感節點采集環境的溫度、濕度與光照度信息。
圖1 IPv6無線傳感網絡架構
基于6LoWPAN傳感節點與IPv6主機間的3層路由過程如圖2所示。傳感器感知環境溫、濕度以及光照等信息,將數據傳給節點的主芯片,在主芯片內完成對數據包的處理,經過6LoWPAN適配層的頭壓縮,將數據以802.15.4數據包格式發送出去,6LoWPAN無線網卡上射頻芯片接收數據包,在網卡主芯片完成6LoWPAN適配層重組,再經過通用串行總線接口將數據轉發到路由器,通過路由器以802.3協議規定轉發到IPv6以太網絡中。整個過程經過IPv6傳感網關完成IPv6分組的壓縮和解壓縮,執行6LoWPAN短地址與IPv6地址的映射,實現了傳感網絡與IP網絡的融合。
圖2 傳感網絡結構分層示意圖
下面將分別對IPv6傳感節點和IPv6傳感網關進行說明。
2 IPv6傳感節點設計
傳感節點功能示意圖見圖3,主要分為主控及通信控制模塊、數據采集模塊、RF通信模塊及射頻天線單元等幾部分。
主控模塊采用Atmel 1284P作為主芯片,采用支持6LoWPAN協議棧的Contiki作為操作系統。通過Contiki為傳感節點分配IPv6地址。傳感器選擇SHT11溫、濕度傳感器以及光敏電阻。節點射頻部分采用Atmel的AT86RF231,通過同步串行與主芯片通信。節點天線電路采用兩個SMA轉接頭外置,利用Johanson公司的2450BM15A0002平衡濾波器芯片實現射頻通信芯片輸出差分信號轉變為單端信號。
圖3 IPv6傳感節點功能示意圖
3 支持IPv4/IPv6雙棧的傳感網絡網關設計
傳感網絡網關由兩部分構成,一部分是IPv6無線網卡,另一部分是基于OpenWRT的IPv6邊緣路由器。
IPv6無線網卡在IPv6邊緣路由器與傳感節點間起橋接作用,它同樣采用Contiki作為操作系統,內置6LoWPAN協議棧,通過6LoWPAN適配層對IPv6報文分片與重組。
IPv6無線網卡的功能示意圖如圖4。主要分為主控模塊,射頻通信模塊和射頻天線三部分。主控模塊芯片采用Atmel公司的AT90USB1287,射頻模塊芯片同樣采用Atmel的AT86RF231,天線采用Antenova公司的小尺寸2.4 GHz貼片天線A5839。
圖4 IPv6無線網卡功能示意圖
IPv6無線網卡與傳感節點均采用Contiki作為操作系統,通過一系列進程完成數據的收發。
IPv6邊緣路由器利用市面上已有的基于OpenWRT的IPv4路由器進行開發。首先,基于OpenWRT的編程將IPv4路由器升級,使其同時支持IPv4/IPv6雙棧,完成6LoWPAN IPv6傳感網絡的數據轉發;其次,開發基于USB的IPv6網卡驅動,可以識別傳感網絡的數據包,并通過路由器Linux內核轉發數據包,實現傳感網絡與互聯網的互通。
圖5為邊緣路由器驅動實現示意圖。整個驅動分兩個部分,一個是USB驅動,實現USB控制器對插入無線網卡的識別,進行數據傳輸;另一個是對網絡的驅動,即實現對6LoWPAN協議棧的支持和IPv6數據包的轉發。通過對Linux內核的系統資源配置,實現上述功能。
圖5 邊緣路由器驅動實現示意圖
4 性能測試
依托CERNET2華中地區主干網華中科技大學子網,在下一代互聯網國家工程實驗室按照圖1搭建IPv6聯網系統。通過Contiki對節點與網卡分配IPv6地址,6LoWPAN無線網卡地址:2001:250:4000:4407::1;傳感節點地址2001:250:4000:4407::1d。地址分配如圖6所示。
圖6 IPv6聯網地址分配示意圖
通過天津教育網對IPv6無線網卡進行網絡連通性測試, ping網卡地址結果如圖7所示,在遠端能得到網卡的回復報文,網絡線路連通正常。
圖7 IPv6無線網卡連通性測試結果
測試IPv6傳感節點的網絡連通性,天津教育網Ping節點地址如圖8所示,同樣可以看到,節點收到發來的數據包并且回復響應的報文,從客戶遠端到節點網絡是正常連通的。
圖8 6LoWPAN傳感節點連通性測試結果
客戶終端在管理服務器通過傳感節點的編號即傳感節點IPv6地址查找特定傳感節點,可以遠程配置傳感節點的采樣時間與采樣間隔,實時查看傳感節點采集環境信息如圖9所示。
圖9 通過管理服務器遠程查看傳感節點數據
5 結 語
本文將IPv6技術應用于無線傳感網絡,采用具有6LoWPAN協議棧的Contiki嵌入式操作系統開發IPv6傳感節點和IPv6無線網卡,研制了支持6LoWPAN協議棧的IPv4/IPv6雙棧邊緣路由器。在教育網IPv6環境下的測試表明:傳感節點及邊緣路由器均支持基于6LoWPAN通信協議,在開發的物聯網管理平臺上可實現對IPv6傳感節點的遠程管理與控制。
參考文獻
[1] Vasseur.J.P,DUNKELS A. Interconnecting Smart Objects with IP:The Next Internet[M].Morgan Kaufmann, 2010.
[2] 蔣林濤.互聯網與物聯網[J].電信工程技術與標準化,2010(2):1-5.
[3] 韓慶普. 融合IPv6的無線傳感器網絡接入技術研究[D]. 大連:大連理工大學,2013.
[4] 謝希仁. 計算機網絡 [M].5版.北京:電子工業出版社,2010.
[5] 付誠. 基于6LoWPAN的無線傳感器網絡路由研究及實現[D]. 北京:北京郵電大學,2012.
[6] 朱曉榮,李鳳國.基于Contiki的6LoWPAN適配層的研究與實現[J].信息通信技術,2013(3):66-70.
[7]于海濱,梁煒,曾鵬. 智能無線傳感器網絡系統 [M].2版.北京:科學出版社,2013.
[8]潘琢金,徐蕾,拱長青,等.嵌入式Internet TCP/IP基礎、實現與應用 [M] .北京:北京航空航天大學出版社,2008.
[9]王義君,錢志鴻,王雪,等.基于6LoWPAN的物聯網尋址策略研究[J].電子與信息學報,2012(4):763-770.
[10]周蘭.IPv6無線傳感網絡網絡層協議研究[D].南京:南京郵電大學,2013.