无线传感器网络路由协议分析以及在6LoWPAN的应用
2019-08-13周虹
周虹
摘 要:最近几年,国家将“互联网+”定为国家发展战略的一个重要项目,制定很多的扶持政策。在《2018年政府工作报告》《2016—2017年中国物联网年度报告》等重要文件中都提到了很多的科技热点,其中就有很多应用领域中提到“互联网+”和网络信息惠民等其他智慧城市领域的关键技术。作为“互联网+”重要的技术基础,物联网无线传感器网络技术也必须满足发展所需。在无线传感网络中,6LoWPAN网络作用十分显著,可以解决无线网络中很多的问题。6LoWPAN网络可以支持IPv6协议,而且可以解决IP地址空间小的缺陷,还能和现有的网络实现互相联通。
关键词:无线传感器 路由协议 6LoWPAN
中图分类号:TN929.5;TP212.9 文献标识码:A 文章编号:1672-3791(2019)05(c)-0013-03
经过多年的发展,现在无线传感网络已经能夠真正应用于实践中,而且已经被使用在很多的领域,在军事和环境监测方面担任着非常重要的角色,同时还在天文领域、预报洪水、监测森林火灾等诸多领域得到应用。
IPv6可以为无线传感网络提供多方面的支持,而且该网络也可以促进IPv6的应用,在未来的发展中它们会实现更多功能的互联和融合。随着通信的发展以及“互联网+”等领域的发展,互联也是二者必然发展的趋势。
6LoWPAN网络是一种依据IPv6标准的技术,具有很多的优点。首先是无线低功耗,其消耗能量少;其次就是可以自组织网络,其对于物联网感知层、无线传感网络非常的重要,能够提供关键技术支持。
1 国内外研究现状
在2008年,“智慧地球”[1]由IBM第一次提出,其主要的含义就是对社会和物理世界的有效融合的实现过程。紧接着,欧盟提出发展物联网的方案[2]。次年,我国在十一届全国人大三次会议中也相继提出加速对物联网的研究,并且在政策上给予相关的项目很大的支持力度[3]。在过去的2004年时,IEEE组建6LoWPAN网络工作组[4],主要的任务就是引入以IEEE802.15.4作为底层标准的无线局域网。主要的研究内容是为适配层、报头压缩、网络接入、路由等其他的技术[5]。
6LoWPAN在发展的过程中获得很多团体的赞同,例如,在2008年IP智能物件联盟的建立,该组织主要通过将IP协议当成网络互联传输标准。再如,在2009年国家自动化学会中制定的新工业标准,在这些组织中则将6LoWPAN视作网络层协议,而且此标准也得到当前国际组织的认可,使之成为继Zig Bee、WirelessHART、WIA-PA之后的又一个新的国际标准[6]。
学术界和产业界也关注到6LoWPAN技术的应用,例如,在美国的加州大学伯克利分校、瑞典计算机科学院,还有思科Cisco等很多的企业,都相继研制出对应的产品[7]。6LoWPAN技术在很多的开源软件中都得到广泛应用,其中最具代表的为Contiki、Tinyos,通过6LoWPAN均实现对其完整的协议栈。在测试和应用方面也得到广泛关注。
6LoWPAN协议栈的结构图在图1中进行了展示。由上至下,各层分别为应用、传输、网络、6LoWPAN、MAC以及IEEE802.15.4。其中的应用层主要是提供服务,满足各种的需要,使用的是目前最为流行的Socket接口。利用Core/COAP协议,在传输层协议中有着轻量级的TCP和UDP这两种协议,其中前者使用频率较多。在网络层采用的是IPv6协议。RPL路由协议主要用于路由的建立和维护。6LoWPAN适配层可以对IPv6的数据报采取压缩、数据报分片以及重组,实现在IEEE802.15.4层上的有效传输。MAC包含CSMA/CA和低功耗MAC,它们的帧格式满足IEEE802.15.4MAC的要求。
2 无线传感器网络中几种重要的路由协议分析
2.1 Flooding协议和Gossiping协议
Flooding协议是最传统、最普遍使用的路由协议,用来传接无线网。它的工作原理是将该点所检测或转送的信号传送到其他的感应点,其余感应点都能够锁定信号发出的位置,如果信息不是传递给此节点,那么就转送给其余感应点。因此信息会在多个感应节点转送,最终将会被转送到属于自己的数据节点,这个过程即可完成。Flooding协议虽然工作原理很简单,是一个使用较为广泛的路由协议,不过它也有不足之处。因为它的信息是要传射给每一个感应点,这些感应点都会将信息转送。因此这个节点会收到多个同一数据,这样一收到就转送,忽略该点所具有能力和作用。Gossiping协议就是对前一种协议做出的改善,一个节点的信息会任意转发给某个或某几个点,这样就不会有堵塞,但在效率上也有所延时。
2.2 SPIN协议
它是一种数据路由协议。为了给接收信息的节点一个转送指导,会先转送有ADV的报文。一个节点为另一个转送的信号中就有ADV报文。如果信息是另一个节点收取,它就会向节点转送回带有REQ信息的报文。节点接收到之后,就会把完整的数据发送给另一个节点。这一协议具有通过ADV报文,防止信息堵塞,还可为接收信息的节点利用自身功能选择是否进行通告的优点。SPIN协议相比于前两种来说节约节点能量。但是如果接受信息的点是较远的点,相近的点不转发它就不能实现对信息的接收功能。当Sink(汇聚)节点很少的情形下,问题就会更明显。并且因为网络系统多乱复杂,若大量ADV报文被转发,占用的空间会更大。
2.3 Directed Diffusion协议
这一协议是数据型的、用查询来驱动的路由。Sink节点会向附近的广播询问新信息所带的属性列表、发送时间差、位置等请求Interest。每一个接收点都会接受最适合自己的Interest报文,并对报文进行整理融合。还能根据报文对它的梯度值进行计算,比如说关于数据的性质、下一跳等。如此一来通往Sink节点的路就不止一条。此节点还能够调整信息的上报率。协议的路由有多条路,所以传播系统发达;节点能够综合的处理数据,所以大幅度地减少了网络中的数据包个数。因此这种查询驱动式的路由不会存储过多信息,也减轻开支。