李亚明 刘陈 王辰 刘奇 刘德明
摘 要:无线传感网络接入互联网需要海量地址,将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架构的传感网络是未来迎接大规模可控传感网络的潜在发展方向。
但以IP做基础的无线传感网络规模化应用面临两个问题: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.