一种IPv6网络与ZigBee网络的通信方法与流程

文档序号:16009114发布日期:2018-11-20 20:26阅读:1683来源:国知局

本发明涉及网关技术领域,具体的说是一种IPv6网络与ZigBee网络的通信方法。



背景技术:

物联网的不断发展,使得基于802.15.4标准的无线传感器网络与IPv6网的融合越来越迫切。在诸多无线传感网技术中,ZigBee是目前主流的的无线传感器技术,由于ZigBee技术仅支持传感网内部节点间通信,无法直接与IP网互联。而作为下一代互联网核心标准[4]的IPv6,开始仅仅是为互联网通信设计的协议,并没有考虑到应用在无线传感网络中会造成的节点能耗受限和传输带宽低等问题。因此将ZigBee网络与IPv6网络融合面临着能耗、带宽、处理能力有限以及不同协议间的兼容性问题。6LoWPAN技术是当前连接Zigbee(802.15.4)和IPv6(802.3)的主要方式,6LoWPAN(IPv6 over Low WPAN)工作组通过在两种异构网络中间添加适配层的方式来完成两种异构网络的连接。

国内外科研人员提出了很多ZigBee无线传感网和IPv6网络互联的方法,总的来说,可以分为网关协议转换、网关协议承载和直接接入三种方式。

一、网关协议转换。网关协议转换的方案是在网关上面运行IPv6和ZigBee双栈协议,这种方案虽然部署方便,但是要额外投入网关硬件设备,成本较高,还需要重新设计轻量级的IPv6协议栈,且不方便IPv6用户直接寻址物联网节点。该方案存在应用的局限性。

二、网关协议承载、网关协议承载的方式又分为IPv6 over ZiBbee和ZigBee over IPv6两种。

IPv6 over ZigBee的方法是将IPv6堆栈放在ZigBee NWK层的顶部。每个ZigBee节点都被分配一个IPv6地址,IPv6 over ZigBee的关键问题是数据报大小问题(MTU仅有127字节),由于IEEE802.15.4不支持数据报分片,此方案需要处理IPv6所需的1280字节最小传输单元。IETF于2004年成立了6LoWPAN协议工作组,专门用于解决IPv6包在IEEE 802.15.4网络上的传输的问题,它的解决方案是在802.15.4的MAC层以上新增了一个的适配层。该适配层功能是用于IPv6数据报的分片和重组,使得IPv6分组可以分成许多802.15.4帧进行传输。由于它将ZigBee堆栈丢弃,没有ZigBee NWK,因此需要对数据转发、路由结构和地址分配进行重新设计,所以这种设计在具体实现过程中仍有巨大的挑战,但仍不失是针对这两种异构网络融合的一种颇具参考价值的方案。

ZigBee over IPv6的方法是在ZigBee网络的NWK层与APL层间添加IPv6/UDP层,使与ZigBee网络通信的IPv6网络节点上虚拟出虚网络,利用隧道技术,将ZigBee网络中的数据报以负载的方式封装在IPv6数据报中,在IPv6网络中传输。这种方式最大的问题在于报文首部的压缩和数据分片,虽然Reen-Cheng Wang等人对这种基于NAT的方法进行改进,但仍旧存在基站代价高、用户透明度低等问题,而且数据的分片问题仍然未得到解决。

三、直接接入。直接接入方式是一种将ZigBee网络与TCP/IP(v6)直接结合的方式,也称为全IP方式,这种方案是在ZigBee传感器网络全部节点植入TCP/IP(v6)协议栈,为每个节点分配IPv6地址,这种全IP接入方式也需要设计轻量级的IPv6协议栈。目前认可度比较高的是由瑞典计算机科学院的Adam Dunkels等人开发的适用于WSN的轻量级uIP和LwIP协议栈,但是本方案也只是停留在理论研究阶段,并没有实际应用中可以借鉴的模式。

综上所述,以上几种方法都不完全适合将ZigBee/802.15.4和IPv6/802.3网络集成在一起。



技术实现要素:

为了解决现有技术中的不足,本发明提供一种IPv6网络与ZigBee网络的通信方法,有效改善了时延和能耗,并且具有良好的连通性和实际应用的可行性。

为了实现上述目的,本发明采用的具体方案为:IPv6网络与ZigBee网络的通信方法,包括从IPv6网络到ZigBee网络的下行过程和从ZigBee网络到IPv6网络的上行过程;

所述下行过程包括如下步骤:

SD1、检测IPv6数据报的长度;

SD2、若IPv6数据报的长度超过阈值则执行SD3至SD4,若IPv6数据报的长度不超过阈值则执行SD5;

SD3、对IPv6数据报进行分片,得到若干个数据片,每个数据片包括头部信息和数据信息;

SD4、将所有数据片向ZigBee网络传输;

SD5、直接将数据报向ZigBee网络传输;

所述上行过程包括如下步骤:

SU1、检测ZigBee数据报是否分片;

SU2、若ZigBee数据报已进行分片,则执行SU3至SU5,若ZigBee数据报未进行分片,则执行SU6;

SU3、将所有分片后的ZigBee数据报依次缓存入缓冲区;

SU4、待所有ZigBee数据报缓存完毕后进行重组,得到IPv6数据报;

SU5、将IPv6数据报向IPv6网络传输;

SU6、直接将ZigBee数据报向IPv6网络传输。

所述下行过程还包括如下步骤:

SD6、对每个数据片的头部信息进行压缩。

SD6的具体方法包括:

SD61、将数据片的头部信息映射到一个长度为若干个比特的标记字段上;

SD62、建立头部信息到标记字段的映射表;

SD63、将除了第一个数据片之外的所有数据片的头部信息替换为标记字段。

所述下行过程还包括如下步骤:

SD7、所有数据片到达ZigBee网络后ZigBee网络设备读取映射表;

SD8、ZigBee网络设备将数据片的标记字段转换为头部信息;

SD9、ZigBee网络设备将具有相同头部信息的所有数据片重组得到IPv6数据报。

所述标记字段的长度设置为8比特。

所述缓冲区包括头字段和数据字段,所述映射表存储在头字段中,IPv6数据报分片后得到的所有数据片以及分片后的ZigBee数据报均缓存入数据字段。

所述阈值设置为127比特。

有益效果:本发明重点改进了数据报分片及重组和报头压缩的过程,相较于现有技术进一步减少了各分片的冗余数据,通过仿真实验验证,在通信规模较大的网络状态下,本发明有效改进了时延和能耗,并且具有良好的连通性和实际应用的可行性。

附图说明

图1是仿真实验一中节点总消耗的对比结果图;

图2是仿真实验一中平均时延的对比结果图;

图3是仿真实验二中连通性测试的结果图;

图4是仿真实验三中可行性测试的结果图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

IPv6网络与ZigBee网络的通信方法,包括从IPv6网络到ZigBee网络的下行过程和从ZigBee网络到IPv6网络的上行过程。

下行过程包括SD1至SD9。

SD1、检测IPv6数据报的长度。

SD2、若IPv6数据报的长度超过阈值则执行SD3至SD4,若IPv6数据报的长度不超过阈值则执行SD5,阈值设置为127比特。

SD3、对IPv6数据报进行分片,得到若干个数据片,每个数据片包括头部信息和数据信息。

SD4、将所有数据片向ZigBee网络传输。

SD5、直接将数据报向ZigBee网络传输。

SD6、对每个数据片的头部信息进行压缩,具体的压缩方法包括SD61至SD63。

SD61、将数据片的头部信息映射到一个长度为8个比特的标记字段上,标记字段可以映射最高达到256比特的头部信息。

SD62、建立头部信息到标记字段的映射表。

SD63、将除了第一个数据片之外的所有数据片的头部信息替换为标记字段。

SD7、所有数据片到达ZigBee网络后ZigBee网络设备读取映射表。

SD8、ZigBee网络设备将数据片的标记字段转换为头部信息。

SD9、ZigBee网络设备将具有相同头部信息的所有数据片重组得到IPv6数据报。

上行过程包括SU1至SU6。

SU1、检测ZigBee数据报是否分片。

SU2、若ZigBee数据报已进行分片,则执行SU3至SU5,若ZigBee数据报未进行分片,则执行SU6。

SU3、将所有分片后的ZigBee数据报依次缓存入缓冲区,缓冲区包括头字段和数据字段,映射表存储在头字段中,IPv6数据报分片后得到的所有数据片以及分片后的ZigBee数据报均缓存入数据字段。

SU4、待所有ZigBee数据报缓存完毕后进行重组,得到IPv6数据报。

SU5、将IPv6数据报向IPv6网络传输。

SU6、直接将ZigBee数据报向IPv6网络传输。

为了对本发明的效果进行验证,设定如下仿真实验。

仿真实验一,传输性能测试。

图1显示系统在处理超过400字节的数据报时开始出现越来越显著的能耗降低,这是因为通过压缩数据片头部信息降低了数据片的冗余,每个数据片的负载更多,总的数据片个数更少,因此本发明在处理大数据报上有更优的效果。

图2显示了压缩方案改进前后的平均时延,可以看出,在处理大于500的数据报时,本发明的平均时延有明显的降低,因此本发明对于数据报较大的应用场景效果更好。

仿真实验二,连通性测试。

利用ping命令对网关节点进行ping测试,在一台支持IPv6的PC上面打开命令行窗口,利用ping命令测试本发明的连通性,把IPv6网络节点的地址设置为:fe80::74ac:6aff:fe71:327,测试结果如图3所示,说明本发明的连通性良好。

仿真实验三,可行性测试。

因为ZigBee网络最常见的应用场景是传感器网络,所以对上位机的传感器数据采集性能进行测试。仿真实验三中设计了环境监控系统,实现对ZigBee传感器温湿度、烟雾、红外、风扇的监控,图4为实际室内环境下,通过IPv6网络内的上位机采集到了ZigBee传感器数据,验证了本发明的可行性。

综上所述,本发明重点改进了数据报分片及重组和报头压缩的过程,相较于现有技术进一步减少了各数据片的冗余数据,通过仿真实验验证,在通信规模较大的网络状态下,本发明有效改进了时延和能耗,并且具有良好的连通性和实际应用的可行性。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1