首页> 中国专利> 一种支持IPv6无线传感器网络的混合式路由

一种支持IPv6无线传感器网络的混合式路由

摘要

一种支持IPv6无线传感器网络的混合式路由,节点依据各自所要求的信息相似度值选择不同的子网加入,每一个子网由微型传感路由器和微型传感器节点共同组成,微型传感路由器为子网的中心节点,微型传感器节点为子网成员节点,每一个中心节点都拥有一个从sink节点处获得的独立地址分配池,负责该子网成员节点的IPv6地址配置,报文直接封装在适配层之后;在子网外部,微型传感路由器之间,在mac层采用802.11协议,路由模式采用route-over的路由方式,报文直接封装在IPv6报头之后,并使用专门的IPv6地址编址规则进行路由。本发明的优点是,能够在大规模异构组网条件下满足低功耗有损网络路由需求。

著录项

  • 公开/公告号CN102421162A

    专利类型发明专利

  • 公开/公告日2012-04-18

    原文格式PDF

  • 申请/专利权人 北京交通大学;

    申请/专利号CN201110387780.6

  • 申请日2011-11-29

  • 分类号H04W40/26;H04W84/18;

  • 代理机构北京王景林知识产权代理事务所;

  • 代理人王景林

  • 地址 100044 北京市海淀区上园村3号

  • 入库时间 2023-12-18 04:59:56

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-06-01

    专利实施许可合同备案的生效 IPC(主分类):H04W40/26 合同备案号:2016990000185 让与人:北京交通大学 受让人:北京新联铁科技股份有限公司 发明名称:一种支持IPv6无线传感器网络的混合式路由 申请公布日:20120418 授权公告日:20141022 许可种类:普通许可 备案日期:20160505 申请日:20111129

    专利实施许可合同备案的生效、变更及注销

  • 2014-10-22

    授权

    授权

  • 2012-05-30

    实质审查的生效 IPC(主分类):H04W40/26 申请日:20111129

    实质审查的生效

  • 2012-04-18

    公开

    公开

说明书

技术领域

本发明涉及一种IPv6无线传感器网络的混合式路由,具体来说,是一 种支持大规模异构组网、适用于低功耗、有损环境的IPv6无线传感器网的 混合式路由,属于计算机网络技术领域。

背景技术

目前,随着IPv6无线传感器网络技术的不断发展和应用领域的逐渐扩 大化,实际的网络部署规模和节点的数量级也发生着巨大的改变,呈现出 大规模、异构、有损等网络特性。这些特点均为IPv6无线传感器网络的路 由协议设计带来了严峻挑战。

现有的IPv6无线传感器网络中主要有两种路由转发方式,一种是 mesh-under路由,另外一种是route-over路由。

所述mesh-under路由是指,路由转发过程发生在数据链路层之上的适 配层的路由方式,如图1所示,数据包的路由和转发过程都是基于链路层地 址。mesh-under为IP协议提供一个虚拟的广播链接,网络层可以假设所有 一个子网内的节点都可以直接到达,IP层的数据在网络中传播的过程中不 需要改变,因此分片的数据不需要在每一跳都要完成重组,同时 mesh-under支持分片数据的多路径传输,只需在目的节点完成整个数据包 的重组,这样可以大大简化数据包在网络中的传输过程。

然而,数据包在mesh转发的过程中链路层的源地址和目的地址随着数 据包的转发而改变,只能记录两个节点一跳通信范围的源、目的地址,因 此,mesh路由必须使用适配层中的mesh头,实现数据包的多跳转发。同时, mesh-under路由使得网络的配置管理和网络故障诊断变得更加困难,现有 的一些网络诊断工具(例如trace route、基于SNMP的网络诊断工具)并不能 应用在mesh-under网络中,IP层视mesh-under网络中的所有节点均为一 跳。考虑mesh-under的以上特性,在IEEE802.15.4网络中可以采用 mesh-under路由体系。

所述route-over路由是指,路由的选路及决策在网络层中完成的路由, 如图2所示。中间节点对接收到得数据包会进行IPv6报头处理,因此可以充 分利用IPv6优势保证数据包的安全性和服务质量,并且路由过程中使用 IPv6地址,因为上文中提到的IPv6编址方式具有很好的逻辑性,因此路由 协议的可扩展性很好,并且可以引入现有互联网中路由表项的存放和查询 机制,当网络规模很大的情况下,节省路由表的存储空间和查询时间,同 时,route-over路由使现有的网络诊断工具在低功耗有损网络中应用成为可 能,提高网络的可靠性和可管性。

考虑到低功耗有损网络设备的硬件和网络环境特性,设计的route-over 路由协议必须要考虑底层协议对上层数据包长度的支持,路由协议所需的 处理资源以及存储资源因素,尽可能设计一种高效、快速、低成本route-over 路由协议。然而,相比mesh-under路由协议,route-over路由协议对节点 的资源要求更高,处理过程更复杂一些。

考虑到IPv6无线传感器网络的子网内部和外部的通信需求差异和传感 器节点设备的功能特点,在大规模组网条件下,若单一的采用以低功耗为 主的mesh-under路由转发或以服务为主的route-over路由转发,路由协议 的可扩展性必然受到影响。

因此,在大规模、异构的IPv6无线传感器网络条件下,能够同时满足 低功耗有损需求的路由方法,成为IPv6无线传感器网络路由需要解决的关 键问题。

发明内容

本发明的目的在于提供一种IPv6无线传感器网络的混合式路由,其能 够在大规模异构组网条件下满足低功耗有损网络路由需求。

为此,本发明提供了一种支持IPv6无线传感器网络的混合式路由,其 特征在于,混合式路由协议工作在链路层或网络层,网络中的节点是异构 的,相同性质的节点归入同一个社区,形成一个子网;不同性质的节点属 于不同的社区,从而网络被划分为不同的子网;节点依据各自所要求的信 息相似度值选择不同的子网加入,每一个子网由微型传感路由器和微型传 感器节点共同组成,微型传感路由器为子网的中心节点,微型传感器节点 为子网成员节点,每一个中心节点都拥有一个从sink节点处获得的独立地 址分配池,负责该子网成员节点的IPv6地址配置,在一个子网内部,节点 mac层采用802.15.4协议,路由模式利用mesh-under的方式,报文直接封装 在适配层之后;在子网外部,微型传感路由器之间,在mac层采用802.11 协议,路由模式采用route-over的路由方式,报文直接封装在IPv6报头之后, 并使用专门的IPv6地址编址规则进行路由。

优选地,对报文格式中的IPv6地址进行有效压缩,压缩格式是:

全局路由前缀:在整个IPv6无线传感器网络范围内唯一,由网关设备 分配,子网内、子网间路由的报文格式中均可以压缩;

子网ID:在每个IPv6微型传感路由器所管辖的子网内均相同,当微型 传感路由器加入网络后由网关设备指定,子网内建立多跳路由时可将该字 段压缩;

节点ID:由64位接口ID通过哈希映射得到,在每个子网内唯一,在微 型传感路由器之间建立子网间多跳路由。

优选地,在进行IPv6报头封装之前,RREQ和RREP路由报文通过对 比源地址与目的地址的子网ID号,而RERR报文和入口表通过判断产生该 报文的设备类型,各自识别路由报文的路由方式是子网内mesh-under或子 网间route-over,若子网ID号相同或生成报文的设备类型为IPv6微型传感 器节点,判断该报文用于子网间路由;反之,若子网ID号相同或生成报文 的设备类型为IPv6微型传感路由器,判断该报文用于子网间路由,子网间 路由报文情况下,IPv6地址的全球路由前缀字段和子网ID字段均压缩掉, 只需携带8比特的节点ID号;反之,对于子网间路由,IPv6地址的全球路 由前缀和节点ID压缩掉,128位IPv6地址直接用子网ID来取代。

优选地,进一步包括路由表项中IPv6地址的压缩以及路由表项的汇聚; 路由表项中IPv6地址的压缩存储同路由报文的地址压缩方案,使用节点ID 取代IPv6微型传感器节点上路由表中的IPv6地址,使用子网ID取代IPv6微 型路由器上路由表中的IPv6地址;仅对IPv6微型传感路由器的路由表项中 的子网ID进行地址聚合。

优选地,混合式路由协议采用按需驱动方式,仅当节点有数据需要发 送时,建立路由。

优选地,混合式路由协议根据ACK数据帧来判断邻居节点可靠性,如 果向邻居节点发送数据在一定的时间内并没有收到邻居节点确认的ACK 帧,重传该数据后若仍然没有收到该邻居节点确认的ACK帧,表明该邻居 节点已经失效,则缓存当前的数据,重新进行路由请求;同时,查找路由 表以该邻居节点为下一跳的路由表项,取出前驱节点地址,封装RERR报 文,向这些前驱节点单播RERR报文,然后删除路由表中以该邻居节点为 下一跳和最终地址的路由表项;前驱节点接收到RERR报文,同样在路由 表中处理该不可达地址,同时继续查找前驱节点发送RERR报文,直到这 条路由中所有的前驱节点都被通知该节点地址已经失效。

优选地,实施步骤包括:

1)子网成员节点发送RREQ;

2)子网中间节点接收到RREQ;

3)子网中心节点接收RREQ和发送RREP;

4)目的地址子网中心节点接收RREQ和发送RREP;

5)目的节点接收RREQ和发送RREP;

6)子网中心节点接收RREP。

优选地,在第1)步骤,当一个成员节点发送数据或者转发到其它目的 节点的数据时,首先查找本地路由表,如果发现到目的地址的路由不存在, 则缓存当前数据包进行路由建立过程,并在所属子网内部广播路由请求报 文;

优选地,在第2)步骤,中间节点接收RREQ报文后,首先判断RREQ 报文目的地址是否是自己,如果不是,那么查询是否已经接收到该RREQ 源地址发送的相同ID号的RREQ报文,该节点抛弃该RREQ报文;如果没 有存在该入口项,则进行查询路由表中到RREQ源地址的路由,如果已经 存在该路由,那么比较这两条路由,选择最好的路由进行存储,同时修改 RREQ报文信息,如果不存在该路由,则建立一条到RREQ源地址的逆向 路由;然后查询路由表中到RREQ报文中目的地址的路由,如果已经存在 该路由,那么向该路由单播RREQ消息,否则继续广播RREQ报文。

优选地,在第3)步骤,中心节点查询RREQ报文的目的地址是否在子 网内部,若是,则启动mesh-under路由协议,建立最优路径,并发送RREP; 若不是,则缓存RREQ报文,在子网间启动route-over路由协议,广播RREQ 报文给邻居子网中心节点;通过路由表项汇聚,查询是否存在路径可到达 RREQ报文的目的地址所属的子网,从而形成一条以子网的中心节点构成 的骨干路径;

优选地,在第4)步骤,目的地址子网中心节点接收RREQ报文后,如 果判断RREQ报文目的地址是自己或子网成员,那么该节点在子网内部广 播该RREQ;同时进入发送RREP报文过程:首先节点缓存RREQ报文消息, 等待合理时间T,综合比较骨干路径LQI和跳数值,进行多路由的优劣评判, 保证链路的可靠性,然后,基于目的中心节点选择一条最优路由进行单播 RREP报文响应。

优选地,在第5)步骤,目的节点收到子网中心节点或其它成员节点的 RREQ报文,立即发送RREP给中心节点,并在子网间启动mesh-under路 由协议,以稳定性和可靠性为基础,建立子网内部最优传输路径;

优选地,在第6)步骤,如果是目的子网的中心节点收到目的节点的单 播子网路由回复,先查询本地地址池列表,采用mesh-under方式建立子网 内部路由;如果是子网的中心节点收到源节点的子网路由回复,同样采用 mesh-under方式建立子网内部反向路由;同时,当子网中心节点收到目的 子网中心节点的子网间骨干路由回复,对路由报文进行压缩和汇聚,采用 route-over方式建立反向骨干路径;而各个子网中的其他中间节点收到子网 的路由回复时,首先判断RREP目的地址是自己或者在子网成员,如果是 则建立到RREP源地址的子网内路由表项,发送缓存队列中的缓存数据, 否则建立或者更新到RREP源地址的路由表项,查找到RREP目的地址路 由,并把下一跳地址写入路由表前驱节点地址选项,然后继续单播RREP 报文。

根据本发明,其技术效果至少包括,能够在大规模异构组网条件下满 足低功耗有损网络路由需求。

附图说明

图1是根据现有技术的子网内mesh-under路由体系示意图。

图2是根据现有技术的子网间route-over路由体系示意图。

图3是根据本发明的混合式路由体系架构示意图。

图4是根据本发明的可聚集全球单播地址压缩格式示意图。

图5是根据本发明的RREQ、RREP路由报文压缩处理流程示意图。

图6是根据本发明的混合式路由建立过程示意图。

图7是根据本发明的混合式路由报文广播示意图。

图8是根据本发明的接收RREQ路由报文流程示意图。

图9是根据本发明的接收RREP路由报文流程示意图。

具体实施方式

本发明提供了一种支持IPv6无线传感器网络的混合式路由,其路由协 议体系架构见附图3。

混合式路由协议工作在链路层或网络层,由于在一个子网内部由于通 信量较少,本发明的节点mac层采用802.15.4协议,路由模式利用 mesh-under的方式,报文直接封装在适配层之后;而在子网外部,微型传 感路由器之间由于数据量较大,对服务质量以及路由协议的要求更高,在 mac层本发明采用802.11协议,路由模式本发明采用route-over的路由方式, 报文直接封装在IPv6报头之后,并使用专门的IPv6地址编址规则进行路由。

本发明定义了中心节点、成员节点及子网的概念。在大规模IPv6无线 传感器网络的实际应用中,网络中的节点是异构的,相同性质的节点可归 入同一个社区,我们称社区为一个子网;不同性质的节点属于不同的社区, 从而网络被划分为不同的子网。具体地,节点可依据各自感兴趣的信息相 似度值选择不同的子网加入,每一个子网由微型传感路由器和微型传感器 节点共同组成,这里,我们定义微型传感路由器设备为子网的中心节点, 微型传感器节点为子网成员节点。特别地,每一个中心节点都拥有一个从 sink节点处获得的独立地址分配池,负责该子网成员节点的IPv6地址配置。

由于IPv6地址需占用大量的存储空间,从低功耗的角度考虑,本发明 中,混合式路由协议专门提供了相应的压缩机制,用于支持路由报文和路 由表项中的IPv6地址压缩。此外,对路由表项还可进行汇聚,进一步降低 路由协议的存储开销,节省有限的能量资源,最终达到低功耗的性能指标。 具体如下:

1.路由报文的低功耗设计

路由报文的低功耗设计的关键点在于对报文格式中的IPv6地址进行有 效压缩。考虑到IPv6无线传感器网络中设备的通信地址均使用可聚集全球 单播地址,包括全局路由前缀、子网ID和节点ID。根据它们各自的特点, 我们提出的地址压缩格式如附图4所示。

a)全局路由前缀:在整个IPv6无线传感器网络范围内唯一,由网关设 备分配,子网内、子网间路由的报文格式中均可以压缩;

b)子网ID:在每个IPv6微型传感路由器所管辖的子网内均相同,当微 型传感路由器加入网络后由网关设备指定,子网内建立多跳路由时可将该 字段压缩;

c)节点ID:由64位接口ID通过哈希映射得到,在每个子网内唯一, 在微型传感路由器之间建立子网间多跳路由的情况下,无需考虑节点ID可 以将其压缩。

根据上述规则,在进行IPv6报头封装之前,RREQ和RREP路由报文 通过对比源地址与目的地址的子网ID号,而RERR报文和入口表通过判断 产生该报文的设备类型,各自识别路由报文的路由方式(子网内 mesh-under/子网间route-over)。若子网ID号相同或生成报文的设备类型为 IPv6微型传感器节点,判断该报文用于子网间路由;反之,若子网ID号相 同或生成报文的设备类型为IPv6微型传感路由器,判断该报文用于子网间 路由。具体地,子网间路由报文情况下,IPv6地址的全球路由前缀字段和 子网ID字段均可以压缩掉,只需携带8比特的节点ID号;反之,对于子网 间路由,IPv6地址的全球路由前缀和节点ID可以压缩掉,128位IPv6地址 直接用子网ID来取代,大大提高了路由报文的压缩效率。路由报文的压缩 处理流程如附图5所示。

2.路由表项低功耗设计

路由表项的低功耗设计主要是通过对路由表项中IPv6地址的压缩以及 路由表项的汇聚两方面来实现的。

其中,路由表项中IPv6地址的压缩存储同路由报文的地址压缩方案。 使用节点ID取代IPv6微型传感器节点上路由表中的IPv6地址,使用子网ID 取代IPv6微型路由器上路由表中的IPv6地址。

由于不同的节点ID之间没有任何的关联性,而且仅为1字节,占用的 空间很少,按需驱动式路由方式下,生存时间满后路由表项将无效,因此, IPv6微型传感器节点的路由表项不需要进行地址汇聚。

但是,不同的子网ID会有一定的关联性,而且IPv6微型传感路由器的 路由表项期望能够存放整个网络的全部路由器信息,因此,通过借鉴传统 IP网络中CIDR(Classless Inter-Domain Routing)的思想对IPv6微型传感路 由器的路由表项中的子网ID进行地址聚合。具体实例见附表1和附表2。表 1是本发明中某IPv6微型传感路由器中路由表条目的实例图;而表2是本发 明中引入CIDR思想进行路由表汇聚后的路由表条目。

表1

表2

此外,由于实际的大规模IPv6无线传感器网络环境是有损的,链路具 有不稳定性,为了克服该缺点,本发明中,混合式路由协议在选路策略方 面,综合考虑了邻居节点周围的各种环境信息素,如:丢包率、跳数、链 路质量(LQI,Link Quality Indication)、及链路延时等,从而保证数据传 输的可靠性。具体如下:

1.路由选路与决策:提出的混合式路由协议属于按需驱动方式,开销 小,符合IPv6无线传感器网络设备的节能要求。当节点有数据需要发送时, 按照附图6所示方式建立路由。

2.路由维护与容错处理:混合式路由协议根据ACK数据帧来判断邻居 节点可靠性,如果向邻居节点发送数据在一定的时间内并没有收到邻居节 点确认的ACK帧,重传该数据后若仍然没有收到该邻居节点确认的ACK 帧,表明该邻居节点已经失效,则缓存当前的数据,重新进行路由请求。 同时,查找路由表以该邻居节点为下一跳的路由表项,取出前驱节点地址, 封装RERR报文,向这些前驱节点单播RERR报文,然后删除路由表中以 该邻居节点为下一跳和最终地址的路由表项。前驱节点接收到RERR报文, 同样在路由表中处理该不可达地址,同时继续查找前驱节点发送RERR报 文,直到这条路由中所有的前驱节点都被通知该节点地址已经失效。

有关本发明的技术内容及详细说明,配合附图7-9说明如下:

第一步:子网成员节点发送RREQ:在IPv6无线传感器网络中,当一 个成员节点发送数据或者转发到其它目的节点的数据时,首先查找本地路 由表,如果发现到目的地址的路由不存在,则缓存当前数据包进行路由建 立过程,并在所属子网内部广播路由请求报文(Route Request,RREQ)。 如附图7所示。

第二步:子网中间节点接收到RREQ:中间节点接收RREQ报文后,首 先判断RREQ报文目的地址是否是自己,如果不是,那么查询是否已经接 收到该RREQ源地址发送的相同ID号的RREQ报文,为了减少IPv6无线传 感器网络能量损耗以及广播包的泛洪阻塞,该节点抛弃该RREQ报文;如 果没有存在该入口项,则进行查询路由表中到RREQ源地址的路由,如果 已经存在该路由,那么比较这两条路由,选择最好的路由进行存储,同时 修改RREQ报文信息,如果不存在该路由,则建立一条到RREQ源地址的 逆向路由;然后查询路由表中到RREQ报文中目的地址的路由,如果已经 存在该路由,那么向该路由单播RREQ消息,否则继续广播RREQ报文。 如附图8所示。

第三步:子网中心节点接收RREQ和发送RREP:中心节点查询RREQ 报文的目的地址是否在子网内部,若是,则启动mesh-under路由协议,建 立最优路径,并发送RREP;若不是,则缓存RREQ报文,在子网间启动 route-over路由协议,广播RREQ报文给邻居子网中心节点;通过路由表项 汇聚,查询是否存在路径可到达RREQ报文的目的地址所属的子网,从而 形成一条以子网的中心节点构成的骨干路径。如附图8所示。

第四步:目的地址子网中心节点接收RREQ和发送RREP:目的地址 子网中心节点接收RREQ报文后,如果判断RREQ报文目的地址是自己或 子网成员,那么该节点在子网内部广播该RREQ;同时进入发送RREP报 文过程:首先节点缓存RREQ报文消息,等待合理时间T,综合比较骨干 路径LQI和跳数值,进行多路由的优劣评判,保证链路的可靠性。然后, 基于目的中心节点选择一条最优路由进行单播RREP报文响应。该方法比 由中间节点以及RREQ源节点进行判断最优路由,更加减少网络中的数据 流量和能量消耗。如附图8所示。

第五步:目的节点接收RREQ和发送RREP:目的节点收到子网中心 节点或其它成员节点的RREQ报文,立即发送RREP给中心节点,并在子 网间启动mesh-under路由协议,从稳定性和可靠性方面考虑,建立子网内 部最优传输路径。如附图8所示。

第六步:子网中心节点接收RREP:如附图9所示,如果是目的子网 的中心节点收到目的节点的单播子网路由回复,先查询本地地址池列表, 采用mesh-under方式建立子网内部路由。如果是子网的中心节点收到源 节点的子网路由回复,同样采用mesh-under方式建立子网内部反向路由; 同时,当子网中心节点收到目的子网中心节点的子网间骨干路由回复,对 路由报文进行压缩和汇聚,采用route-over方式建立反向骨干路径。而各 个子网中的其他中间节点收到子网的路由回复时,首先判断RREP目的地 址是自己或者在子网成员,如果是则建立到RREP源地址的子网内路由表 项,发送缓存队列中的缓存数据,否则建立或者更新到RREP源地址的路 由表项,查找到RREP目的地址路由,并把下一跳地址写入路由表前驱节 点地址选项。然后继续单播RREP报文。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号