专利摘要
本发明提供了一种基于分布式的无线传感器网络IPv6地址配置实现方法,无线传感器网络包括四类节点:新节点、接入节点、分配节点及普通节点,新节点是没有获取IPv6地址的可移动传感器节点;接入节点和分配节点为已获取IPv6地址且能为其它节点分配IPv6地址的节点,普通节点为已获取IPv6地址且不能为新节点分配IPv6地址的节点。接入路由器、接入节点、分配节点及普通节点构成一个树状结构,树状结构的根节点为接入路由器;树状结构中的节点最多包含k个子节点,k为正整数;新节点从分配节点或接入节点获取IPv6地址并完成节点转换,同时与其构成父子关系。
说明书
技术领域
本发明涉及一种地址自动配置的实现方法,尤其涉及的是基于分布式的无线传感器网络IPv6地址配置实现方法。
技术背景背景技术
随着下一代网络(IPv6网络)的不断成熟和发展,无线传感器网络与下一代网络实现全IP通信互联已成为未来发展的必然趋势,实现WSN与下一代互联网全IP通信需要解决的关键技术之一就是传感器网络的IPv6地址自动配置问题。
IPv6地址自动配置是IPv6的一个重要技术特色,它可以在无人干预的情况下为每个接口配置具有唯一性的IPv6地址,这一特性与WSN自组织、自配置的设计目标十分一致。但与此同时,在资源有限的WSN中实施现有的IPv6地址自动配置方式还存在一些问题,例如现有的有状态地址配置方案采用服务器/客户端的通信方式分配IPv6地址,即节点向DHCP服务器提出申请地址的请求,然后由DHCP服务器统一为网络内的节点分配IPv6地址,显而易见,这种地址配置方案带来大量的控制包开销,同时也消耗了大量的存储资源;在现有的基于邻居发现协议的无状态地址配置方案中,每个被分配的IPv6地址都需要在整个WSN中进行重复地址检测以确保它的唯一性,同样导致了大量的控制包开销,消耗了大量的网络资源。
因此针对资源有限的WSN需要建立一种低开销的IPv6地址自动配置方案。
发明内容发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于分布式的无线传感器网络IPv6地址配置实现方法。
技术方案:本发明公开了一种基于分布式的无线传感器网络IPv6地址配置实现方法,所述无线传感器网络包括四类节点:新节点、接入节点、分配节点及普通节点;
所述新节点是新加入无线传感器网络且没有获取IPv6地址的可移动传感器节点,新节点不为其它节点分配IPv6地址;
所述接入节点是连接无线传感器网络与IPv6互联网的传感器节点,它与IPv6互联网的接入路由器相连,其IPv6地址预设定,能为新节点分配IPv6地址,不能移动;
所述分配节点为已获取IPv6地址且能够为新节点分配IPv6地址的可移动传感器节点;
所述普通节点为已获取IPv6地址且不能为新节点分配IPv6地址的可移动传感器节点;
新节点、分配节点及普通节点的状态可互相转换;
所述无线传感器网络通过一个接入路由器与IPv6互联网连接,接入路由器与多个预设置的接入节点连接,接入节点能移动;
所述新节点从接入节点获取IPv6地址并完成节点转换,同时与其构成父子关系;接入路由器、接入节点、分配节点及普通节点构成一个树状结构,树状结构的根节点为接入路由器,中间节点及叶子节点为接入节点、分配节点或普通节点;树状结构中的节点最多包含k个子节点,k为正整数;
所述新节点从分配节点获取IPv6地址并完成节点转换,同时与其构成父子关系;接入路由器、接入节点、分配节点及普通节点构成一个树状结构,树状结构的根节点为接入路由器,中间节点及叶子节点为接入节点、分配节点或普通节点;树状结构中的节点最多可包含k个子节点,k为正整数;
传感器节点的IPv6地址包括两部分,第一部分是全局网络路由前缀,它唯一标识一个无线传感器网络,全局网络路由前缀长度为64+n比特,其中n为正整数,一个无线传感器网络中所有传感器节点的IPv6地址的全局路由前缀都相同;第二部分为传感器节点ID,它唯一标识无线传感器网络中的一个传感器节点,传感器节点ID的长度为64-n比特,接入路由器的传感器节点ID为0,无线传感器网络中最多容纳k个接入节点,接入节点IPv6地址的传感器节点ID设置区间为[1,k];
一个传感器节点ID为x的节点,其分配给子节点的地址空间区间为[k·x+1,k·x+k],其第i个子传感器节点ID为k·x+i,其中,i为正整数且k≥i≥1。
本发明中,所述接入节点、分配节点及普通节点保存一个地址分配表,用于记录其可分配地址资源的分配状况,地址分配表项包括子节点ID、分配状态以及生存时间三个域:子节点ID值区间为[1,k];分配状态记录已分配或者未分配两个状态;生存时间随着机器时钟自动衰减,当衰减为0时,回收相应子节点的地址资源。
本发明中,所述新节点通过三次握手获取IPv6地址,具体包括以下步骤:
步骤301:新节点在一跳范围内广播获取IPv6地址的请求控制包;
步骤302:在请求控制包一跳范围内的分配节点或接入节点收到控制包后,向新节点返回一个响应控制包,所述响应控制包负载为已分配传感器节点ID数量以及预分配的子节点ID;
步骤303:规定时间后新节点根据响应控制包中已分配传感器节点ID数量,向已分配传感器节点ID数量最小的分配节点或接入节点返回一个确认控制包,确认控制包的内容为其预分配的子节点ID,同时将已分配传感器节点ID数量最小的分配节点或接入节点设置为自己的父节点,然后从响应控制包的源地址中抽取父节点的传感器节点ID并计算自己的传感器节点ID,然后将其与父节点的全局网络路由前缀结合形成自己的IPv6地址;
步骤304:新节点判断其可分配地址资源区间上限是否大于264-n,如果是,进行步骤305,否则进行步骤306;
步骤305:新节点将自己标识为普通节点,进行步骤307;
步骤306:新节点将自己标识为分配节点,进行步骤307;
步骤307:父节点收到新节点返回的确认包后,将地址分配表中预分配给新节点的子节点ID对应表项中的分配状态设置为已分配,生存时间设置为最大生存时间;
步骤308:父节点检测地址分配表中的k个表项是否均为已分配状态,如果是,进行步骤309,否则进行步骤310;
步骤309:父节点将自己标识为普通节点;
步骤310:新节点成功获取IPv6地址。
本发明中,新节点在广播请求控制包后,如果在规定时间内没有收到响应控制包,它将定期发送请求控制包直到收到响应控制包为止,新节点获取IPv6地址后,与其父节点采用多跳路由协议进行通信。
本发明中,所述普通节点或分配节点定期向其父节点发送刷新控制包,父节点收到刷新控制包后,将对应地址分配表项的生存时间设置为最大生存时间,同时父节点向子节点返回刷新响应控制包以表示其在正常工作。
本发明中,所述父节点检测到子节点对应地址分配表项的生存时间衰减到0时,进行地址资源回收操作,具体包括以下步骤:
步骤601:父节点为子节点建立一个地址分配表,地址分配表包括k个表项,每个表项的分配状态设置为未分配,生存时间设置为0,父节点接收目的地址为自己或者为子节点的刷新控制包;
步骤602:在规定时间内,父节点是否收到子节点的子节点发送的刷新数据包,如果是,进行步骤603,否则进行步骤604;
步骤603:父节点收到子节点的子节点的刷新控制包后,将子节点的地址分配表中对应表项的分配状态设置为已分配,生存时间设置为最大生存时间,并向发送刷新控制包的子节点的子节点返回刷新响应控制包,进行步骤605;
步骤604:父节点删除子节点的地址分配表,同时将子节点对应的地址分配表项的分配状态设置为未分配,进行步骤608;
步骤605:判断是否有新节点选择父节点作为父节点,如果是,进行步骤606,否则进行步骤608;
步骤606:父节点将失效子节点的IPv6地址分配给新节点同时将失效子节点的地址分配表发送给新节点;
步骤607:新节点替代失效子节点进行工作;
步骤608:地址资源回收过程结束。
本发明中,如果所述子节点在规定时间内没有收到其父节点返回的刷新响应控制包,则判定父节点失效,并将自己标识为新节点重新获取IPv6地址。
有益效果:本发明提供了一种基于分布式的无线传感器网络IPv6地址配置实现方法,所述无线传感器网络中的每个传感器节点通过本发明所提供的IPv6地址自动配置的实现方法,可拥有全球唯一的IPv6地址,IPv6网络节点通过无线传感器节点的IPv6地址实现彼此的通信,获取传感器节点采集的数据信息。本发明可应用于农业设施现代化及家电智能化等诸多领域,具有广泛的应用前景。本发明采用分布式的IPv6地址分配方法,即每个接入节点或者分配节点都可以为一跳范围内的新节点分配IPv6地址,实现了负载均衡,降低了网络功耗,同时,新节点获取IPv6地址的控制信息传送范围在一跳范围内,降低了网络功耗,缩短了配置时间。此外,当一个节点失效时,其父节点临时代替失效节点维护树状结构,节省了处理失效节点所消耗的能量,增强了系统健壮性,避免了由于节点失效而引起的通信错误,增加了网络寿命。
附图说明附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明所述的无线传感器网络树状拓扑结构示意图。
图2为本发明所述的接入节点/分配节点/简单节点的IPv6地址结构示意图。
图3为本发明所述的地址分配表项结构示意图。
图4为本发明所述的新节点获取IPv6地址的流程示意图。
图5为本发明所述的地址回收流程示意图。
具体实施方式具体实施方式:
本发明提供了一种基于分布式的无线传感器网络IPv6地址配置实现方法,在所述方法中,无线传感器网络中的每个传感器节点可获取全球唯一的IPv6地址,IPv6网络节点通过无线传感器节点的IPv6地址实现彼此的通信,获取传感器节点采集的数据信息。
图1所示的是本发明所述的无线传感器网络树状拓扑结构示意图,所述无线传感器网络包括四类节点:新节点、接入节点、分配节点及普通节点;其中,新节点是新加入无线传感器网络且没有获取IPv6地址的可移动传感器节点,不为其它节点分配IPv6地址;接入节点是连接无线传感器网络与IPv6互联网的传感器节点,它与IPv6互联网的接入路由器相连,其IPv6地址预先设定,能为新节点分配IPv6地址,不具有移动性;分配节点为已获取IPv6地址且能够为新节点分配IPv6地址的可移动传感器节点;普通节点为已获取IPv6地址且不能为新节点分配IPv6地址的可移动传感器节点;新节点、分配节点及普通节点的状态可互相转换;无线传感器网络通过一个接入路由器与IPv6互联网连接,接入路由器与多个预先设置的接入节点连接,接入节点不具有移动性;新节点从接入节点获取IPv6地址并完成节点转换,同时与其构成父子关系;接入路由器、接入节点、分配节点及普通节点构成一个树状结构,树状结构的根节点为接入路由器,中间节点及叶子节点为接入节点、分配节点或普通节点;树状结构中的节点最多包含k个子节点,k为正整数;新节点从分配节点获取IPv6地址并完成节点转换,同时与其构成父子关系;接入路由器、接入节点、分配节点及普通节点构成一个树状结构,树状结构的根节点为接入路由器,中间节点及叶子节点为接入节点、分配节点或普通节点;树状结构中的节点最多可包含k个子节点,k为正整数。
图2所示的是本发明所述的接入节点/分配节点/简单节点的IPv6地址结构示意图,传感器节点的IPv6地址由两部分组成,第一部分是全局网络路由前缀,长度为64+n比特,n为正整数,它唯一标识一个无线传感器网络,一个6LoWPAN无线传感器网络中所有传感器节点的IPv6地址的全局路由前缀都相同;第二部分为传感器节点ID,长度为64-n比特,它唯一标识无线传感器网络中的一个传感器节点,接入路由器的传感器节点ID为0,无线传感器网络中最多容纳k个接入节点,接入节点IPv6地址的传感器节点ID设置区间为[1,k]。一个传感器节点ID为x的节点,其分配给子节点的地址空间区间为[k·x+1,k·x+k],其第i(k≥i≥1)个子传感器节点ID为k·x+i,其中,i为正整数。
图3所示的是本发明所述的地址分配表项结构示意图,接入节点、分配节点及普通节点保存一个地址分配表,用于记录其可分配地址资源的分配状况,地址分配表项由子节点ID、分配状态以及生存时间三个域组成:子节点ID值区间为[1,k];生存时间随着机器时钟自动衰减,当衰减为0时,回收相应子节点的地址资源。
图4所示的是本发明所述的新节点获取IPv6地址的流程示意图,所述新节点通过三次握手获取IPv6地址,具体包括以下步骤:
步骤301:新节点在一跳范围内广播获取IPv6地址的请求控制包;
步骤302:在请求控制包一跳范围内的分配节点或接入节点收到控制包后,向新节点返回一个响应控制包,所述响应控制包负载为已分配传感器节点ID数量以及预分配的子节点ID;
步骤303:规定时间后新节点根据响应控制包中已分配传感器节点ID数量,向已分配传感器节点ID数量最小的分配节点或接入节点返回一个确认控制包,确认控制包的内容为其预分配的子节点ID,同时将已分配传感器节点ID数量最小的分配节点或接入节点设置为自己的父节点,然后从响应控制包的源地址中抽取父节点的传感器节点ID并计算自己的传感器节点ID,然后将其与父节点的全局网络路由前缀结合形成自己的IPv6地址;
步骤304:新节点判断其可分配地址资源区间上限是否大于264-n,如果是,进行步骤305,否则进行步骤306;
步骤305:新节点将自己标识为普通节点,进行步骤307;
步骤306:新节点将自己标识为分配节点,进行步骤307;
步骤307:父节点收到新节点返回的确认包后,将地址分配表中预分配给新节点的子节点ID对应表项中的分配状态设置为已分配,生存时间设置为最大生存时间;
步骤308:父节点检测地址分配表中的k个表项是否均为已分配状态,如果是,进行步骤309,否则进行步骤310;
步骤309:父节点将自己标识为普通节点;
步骤310:新节点成功获取IPv6地址。
新节点在广播请求控制包后,如果在规定时间内后没有收到响应控制包,它将定期发送请求控制包直到收到响应控制包为止,新节点获取IPv6地址后,与其父节点采用多跳路由协议进行通信。
图5所示的是本发明所述的地址回收流程示意图,所述普通节点或分配节点定期向其父节点发送刷新控制包,父节点收到刷新控制包后,将对应地址分配表项的生存时间设置为最大生存时间,同时父节点向子节点返回刷新响应控制包以表示其在正常工作。如果所述子节点在规定时间内没有收到其父节点返回的刷新响应控制包,则判定父节点失效,并将自己标识为新节点重新获取IPv6地址。所述父节点检测到子节点对应地址分配表项的生存时间衰减到0时,它进行地址资源回收操作,具体包括以下步骤:
步骤601:父节点为子节点建立一个地址分配表,地址分配表包括k个表项,每个表项的分配状态设置为未分配,生存时间设置为0,父节点接收目的地址为自己或者为子节点的刷新控制包;
步骤602:在规定时间内,父节点是否收到子节点的子节点发送的刷新数据包,如果是,进行步骤603,否则进行步骤604;
步骤603:父节点收到子节点的子节点的刷新控制包后,将子节点的地址分配表中对应表项的分配状态设置为已分配,生存时间设置为最大生存时间,并向发送刷新控制包的子节点的子节点返回刷新响应控制包,进行步骤605;
步骤604:父节点删除子节点的地址分配表,同时将子节点对应的地址分配表项的分配状态设置为未分配,进行步骤608;
步骤605:是否有新节点选择父节点作为父节点,如果是,进行步骤606,否则进行步骤608;
步骤606:父节点将失效子节点的IPv6地址分配给新节点同时将失效子节点的地址分配表发送给新节点;
步骤607:新节点替代失效子节点进行工作;
步骤608:地址资源回收过程结束。
综上所述,本发明提供了基于分布式的无线传感器网络IPv6地址配置实现方法,此项技术可以应用于农业现代化、医疗健康、军事国防等诸多领域,例如,在农业现代化领域,可将无线传感器网络IPv6地址自动配置技术应用于现代设施农业环境监测控制,传感器节点随机散布在农田中并自动实现IPv6地址配置,这样农业劳动者不受地理位置限制,通过互联网可随时访问农田中的传感器节点,获取农田温度、湿度、光强度等环境参数,及时掌握农作物的生长环境,确保农作物健康成长。由于传感器节点具有体积小、价格低廉、易于布置、易于维护等特点,而互联网具有地理位置覆盖广泛,使用方便,界面友好、费用低廉等特点,因此,本技术具有很高的推广价值。
本发明提供了一种基于分布式的无线传感器网络IPv6地址配置实现方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。
基于分布式的无线传感器网络IPv6地址配置实现方法专利购买费用说明
Q:办理专利转让的流程及所需资料
A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。
1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。
2:按规定缴纳著录项目变更手续费。
3:同时提交相关证明文件原件。
4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。
Q:专利著录项目变更费用如何缴交
A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式
Q:专利转让变更,多久能出结果
A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。
动态评分
0.0