一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法技术方案

技术编号:17798324 阅读:51 留言:0更新日期:2018-04-25 21:50
本发明专利技术提出了本发明专利技术提出了一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,当边界路由器的射频接口接收到了6LoWPAN子网发送来的比特流后,先需要经过适配层对数据包进行分片整合,整合成一个完整的IPv6数据包;之后传递到网络层,经由RPL路由协议判定数据包的目的地址是否是在6LoWPAN网络中:如果不是,则继续判断数据包的目的地址前缀是否属于6LoWPAN网络:如果不属于,则转发到IPv6接入模块;在IPv6接入模块中,先判断是否存在目的地址的路由:如果存在,则直接发送到相应的IPv6主机;如果不存在目的端的路由,则应进行邻居发现操作,根据结果对数据包做出相应处理。

【技术实现步骤摘要】
一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法
本专利技术涉及一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法。
技术介绍
6LoWPAN作为WSN和IPv6技术结合的产物,既继承了IPv6巨大的地址空间的优势,又满足了无线传感网低功耗的要求,受到了越来越多无线传感器网络使用者的喜爱。就6LoWPAN网络自身特性而言,它应当和某些外部网络互连,使外部网络可以监测和控制6LoWPAN网络才具有更实际的意义;而IP网络作为目前的主流网络,如何实现该网络与6LoWPAN网络的连通,是目前亟待解决的问题。OpenWrt作为一个功能强大的开源路由器Linux系统,用户可以很方便地对其进行定制、优化,从而实现自己的功能需求。
技术实现思路
有鉴于此,本专利技术的目的在于提出一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,成功解决了6LoWPAN网络与IP网络之间异构网络互通的问题,对于无线传感网的发展及促进异构网络之间的无缝融合具有深远的意义。根据上述专利技术目的,本专利技术通过以下技术方案来实现:一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,包括如下步骤:当边界路由器的射频接口接收到了6LoWPAN子网发送来的比特流后,先需要经过适配层对数据包进行分片整合,整合成一个完整的IPv6数据包;之后传递到网络层,经由RPL路由协议判定数据包的目的地址是否是在6LoWPAN网络中:如果是,则转发数据包到6LoWPAN网络中;如果不是,则继续判断数据包的目的地址前缀是否属于6LoWPAN网络:如果属于,则因为没有目的端的路由,丢弃;如果不属于,则转发到IPv6接入模块;在IPv6接入模块中,先判断是否存在目的地址的路由:如果存在,则直接发送到相应的IPv6主机;如果不存在目的端的路由,则应进行邻居发现操作,根据结果对数据包做出相应处理。本专利技术提出了一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,通过在边界路由器上分别实现两种协议栈,并在协议栈之间建立SLIP通道来实现数据包在两种异构网络之间的转发和路由,通过对边界路由器进行ping命令的测试,证明该方案是可行的;能够实现6LoWPAN网络和IPv6网络主机之间的通信。而在现实应用中,可以作为物联网设备接入互联网的中间网关设备随着物联网设备的大量使用,该设备具有广价值。附图说明图1为本专利技术的边界路由器的系统架构图;图2为本专利技术边界路由器的系统拓扑图;图3为本专利技术中6LoWPAN边界路由器的硬件结构图;图4为本专利技术中6LoWPAN边界路由协议栈结构图;图5为本专利技术OpenWrt系统的软件结构图;图6为本专利技术Contiki系统的软件结构图;图7为SLIP通道的数据处理流程;图8为6LoWPAN数据帧的处理流程图。具体实施方式为让本领域的技术人员更加清晰直观的了解本专利技术,下面将对本专利技术作进一步的说明。系统架构6LoWPAN边界路由器作为连接IPv6网络和6LoWPAN网络的桥梁,需要同时提供两种网络的接入功能,以及数据包在两种不同网络之间的转发和路由。本专利技术的6LoWPAN边界路由器系统构架如图1所示,主要包括底层硬件、设备驱动、操作系统及上层应用部分;该边界路由器通过自身的以太网接口与IPv6网络进行通信,而与6LoWPAN网络之间的通信,则通过基于IEE802.15.4的射频模块来实现。系统拓扑如图2所示。系统硬件设计6LoWPAN边界路由器主要用来帮助一些能力受限的6LoWPAN节点接入IPv6网络,基于以上目的,该边界路由设备在硬件设计上需具备较好的协议执行能力和一定的处理能力。本文设计的6LoWPAN边界路由器的硬件结构设计如图5所示,主要包括以太网接入部分和6LoWPAN网络接入部分,两部分之间通过串口连接。以太网接入部分主控芯片选用的是台湾雷凌(Ralink)科技公司推出的一款高集成低成本SOC芯片RT5350F。该芯片是一颗高性能的MIPS24KcCPU内核,最高主频为360MHz,较高的主频保证了一定的处理能力。除此之外,该部分采用16MBFlash闪存作为程序存储器,采用32MB的16bitSDRAM作为内存,可以嵌入完整的TCP/IP网络协议,实现强大的网络通信功能,同时还能有足够的空间用于安装程序以及依赖库,满足用户的功能扩展需求。由于RT5350F只提供了IEE802.11协议的射频接口,而6LoWPAN协议目前是建立在IEE802.15.4标准上,所以需要采用其他芯片来提供6LoWPAN网络接入的功能支持。本专利技术采用以CC2530F256芯片为主的射频接入模块及其外部功能拓展电路,提供向6LoWPAN网络的接入。为实现两种异构网络的互连#边界路由器必须同时具有IPv6和6LoWPAN标准。虽然6LoWPAN协议是由IPv6协议转变而来,但该协议具有自己的特殊性:它包含一个适配层来实现IP数据包在IEE802.15.4链路上的传输。由于IPv6数据包的最大传输单元为1280B,而IEE802.15.4定义MAC层的每一帧的长度为127B,这样就会造成IPv6数据报和IEE802.15.4帧在长度上的不匹配,许多IPv6数据包不能完整地放进一个IEE802.15.4帧中进行传输。为了解决这一问题,IPv6数据包需要在适配层进行分片和重组,同时还要对数据包的头部进行压缩,以适应IEE802.15.4帧的大小。根据以上情况,对IEE802.15.4边界路由器协议栈部分进行了如图4示的设计:先分别实现IPv6IEE802.15.4协议栈,然后通过SLIP(SerialLineInternetProtocol)协议在两种协议栈间建立一个串行通信链路,让两种异构网络能够通过该链路进行IP数据报的传输,从而实现两种异构网络之间的通信。IPv6接入模块该模块的建立主要采用OpenWrt操作系统来完成。该系统使用uClibc、busybox和shell解释器等,通过嵌入式Linux工具,提供硬件抽象层和软件包管理,系统的内部组成如图5所示。用户只需要重新编译uClibc和软件包以匹配目标架构,从而获得在不同嵌入式设备上相同的应用程序。鉴于OpenWrt嵌入式系统的诸多优点,它非常适合应用于IP网络接入模块。6LoWPAN接入模块6LoWPAN接入模块主要是基于Contiki操作系统实现,该系统作为一个可以高度移植、支持多任务环境并且开源免费的嵌入式操作系统,非常适合用于6LoWPAN接入模块的设计。该系统的软件结构如图6所示,主要由三部分组成uIP协议栈、Rime协议栈和上层应用程序。uIP是一个小型的符合RFC规范的TCP/IP协议栈,使得Contiki可以直接和Internet通信。uIP协议栈主要任务是处理由底层驱动收到的数据包,或者将需要转发的数据包交由底层设备驱动来实现数据包转发。而其包含的网络层RPL协议,则提供了6LoWPAN的组网功能。MAC层的Rime是一个轻量级的、为低功耗无线传感器网络设计的协议栈,该协议栈提供了大量的通信原语,能够实现从简单的一跳广播通信到复杂的可靠多跳数据传输等通信功能。上层应用程序主要包括桥接程序和边界路由程序,前者用于通过SLIP串本文档来自技高网...
一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法

【技术保护点】
一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,其特征在于,包括如下步骤:当边界路由器的射频接口接收到了6LoWPAN子网发送来的比特流后,先需要经过适配层对数据包进行分片整合,整合成一个完整的IPv6数据包;之后传递到网络层,经由RPL路由协议判定数据包的目的地址是否是在6LoWPAN网络中:如果是,则转发数据包到6LoWPAN网络中;如果不是,则继续判断数据包的目的地址前缀是否属于6LoWPAN网络:如果属于,则因为没有目的端的路由,丢弃;如果不属于,则转发到IPv6接入模块;在IPv6接入模块中,先判断是否存在目的地址的路由:如果存在,则直接发送到相应的IPv6主机;如果不存在目的端的路由,则应进行邻居发现操作,根据结果对数据包做出相应处理。

【技术特征摘要】
1.一种基于OpenWrt操作系统的6LoWPAN边界路由器的实现方法,其特征在于,包括如下步骤:当边界路由器的射频接口接收到了6LoWPAN子网发送来的比特流后,先需要经过适配层对数据包进行分片整合,整合成一个完整的IPv6数据包;之后传递到网络层,经由RPL路由协议判定数据包的目的地址是否是在6LoWPAN网络中:如果是,则转发数据包...

【专利技术属性】
技术研发人员:许家峰
申请(专利权)人:佛山市校友桥网络科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1