一种无线传感器网络的高效自组网路由方法

文档序号:7981483阅读:359来源:国知局
一种无线传感器网络的高效自组网路由方法
【专利摘要】本发明提供一种无线传感器网络的高效自组网路由方法,包括微通站、路由节点和传感器节点构成的树形路由,该方法包括如下步骤a)根据所述路由节点到所述微通站需要消耗的能量、路由节点剩余能量和挂载在本路由节点的传感器节点数量来产生权值,动态产生、更新路由表,形成一个处理并转发数据的主干网络;b)根据所述传感器节点到所述路由节点需要消耗的能量、路由节点管理的子网规模来产生权值,动态产生、更新路由表,形成一个收集并转发数据的子网络,本发明有效改善路由系统的能量效率和数据传输的效率。
【专利说明】一种无线传感器网络的高效自组网路由方法
所属【技术领域】
[0001]本发明涉及一种路由方法,特别地,是一种基于无线传感器的路由建立方法。
【背景技术】
[0002]随着无线技术的不断发展,陆续出现多了多种无线通信标准,作为通信标准之一 的Zigbee为无线传感器网络的发展奠定了技术基础。基于Zigbee标准的无线传感器网络 可以采用星型、树型和网状等拓扑结构。在实际应用中,根据不同的应用场景。可以采用不 同的拓扑结构,小型网络常采用星型拓扑结构,这种结构易扩展、易维护、易管理,但是中心 节点压力大,一旦中心节点出错,网络就会瘫痪。最常采用的是树型拓扑结构,这种结构连 接容易、管理简单而且维护方便,它有利于在通信时实现父子节点之间的同步,减少节点的 功率消耗,但是这种结构一旦路由节点出错,子网络就会瘫痪。网状网,这种结构容错性强, 没有固定路径,一条路径出错,可以动态选择最优路径,但是它的可扩展性差,网络规模扩 张后,路由算法是最大瓶颈,路由选择会消耗过多的能量。

【发明内容】

[0003]为了解决上述问题,本实的目的在于提供一种用于无线传感器网络的高效自组网 路由方法,该路由方法,在路由节点出错时,使用类似网状拓扑的路由算法重新生成最优路 径,有效改善路由系统的能量效率和数据传输的效率。
[0004]本发明解决其技术问题所采用的技术方案是:
[0005]一种无线传感器网络的高效自组网路由方法,包括以下步骤:
[0006]包括微通站、路由节点和传感器节点构成的树形路由,所述微通站和至少一个所 述路由节点组成一个树型主干网络,所述微通站管理整个网络并生成网络拓扑;所述主干 网络中的路由节点和至少一个所述传感器节点组成子网络,所述路由节点作为所述子网络 的管理节点,所述微通站生成整个网络的拓扑,所述微通站接收到拓扑数据帧,提取出拓扑 数据帧中的路由表信息;判断拓扑结构中是否已经有该节点信息,如否,则直接插入该拓扑 结构中,如是,则先删除原有拓扑结构中的信息,在添加新的拓扑信息,所述方法包括以下 步骤:
[0007]a)根据所述路由节点到所述微通站需要消耗的能量、路由节点剩余能量和挂载在 本路由节点的传感器节点数量来产生权值,动态产生、更新路由表,形成一个处理并转发数 据的主干网络,本步骤具体执行步骤如下:
[0008]11.所述微通站启动后定时发送心跳数据帧;
[0009]所述传感器节点需要发送收集到的数据时,所述路由节点或传感器节点判断所述 主干网络是否建立,若建立则向路由网络发送数据帧,否则进入下一步骤;
[0010]13.所述路由节点若接收到路由节点发送的心跳数据帧或微通站的心跳数据帧, 则进入下一步骤,否则进入休眠状态,继续监听信道,等待路由或微通站的心跳数据帧;
[0011]14.所述路由节点从心跳数据帧中提取路由节点的剩余能量、子网规模和到该路由节点需要的能量,若不是第一次接收到路由信息,进入下一步骤,否则创建路由表,填充路由信息,并发送请求入网数据帧;
[0012]15.所述路由节点判断心跳数据帧中数据是否优于原路由表中的数据,选择最优者,若不修改路由信息,则丢弃该心跳数据帧,若修改路由表,则发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点;
[0013]16.所述路由节点或微通站接收到入网数据帧、退网数据帧后,更新子网管理表。
[0014]所述的主干网络的节点运行过程中,动态产生、更新各路由节点路由表的步骤为:
[0015]步骤101、所述路由节点已入网正常工作后,接收到心跳数据帧,提取出心跳数据帧的源地址,判断源地址是否是传感器节点的地址,若是,则丢弃该心跳数据帧,若否,则进入下一步骤;
[0016]步骤102、所述路由节点接收到心跳数据帧后,判断源地址是否在所述路由节点的主干网管理表中,若是,则修改主干网管理表,记录该节点来过心跳数据巾贞,若否,则进入下
一步骤;
[0017]步骤103、所述路由节点从心跳数据帧中提取路由节点的剩余能量、子网规模和到该路由节点需要的能量,通过上述三项数据计算出的一个权值,判断计算出的权值是否优于原路由表中的数据,选择最优者,若不修改路由信息,丢弃该数据帧,若修改路由表,则发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点。
[0018]b)根传所述传感器节点到所述路由节点需要消耗的能量、路由节点管理的子网规模来产生权值,动态产生、更新路由表,形成一个收集并转发数据的子网络,本步骤具体执行步骤如下:
[0019]21.传感器节点启动后,判断是否已经入网,若没入网则进入下一步,否则收集传感器信息,生成数据帧,发送给路由节点;
[0020]22.传感器节点广播申请入网数据帧,启动一个定时器,并监听信道,若有数据帧到来时,判断是否是路由回复数据帧,若是则进入下一步,若不是继续监听;
[0021]23.所述传感器节点从路由节点或微通站回复的数据帧中提取路由信息,判断发送数据给该路由节点需要消耗的能量,若不是第一次接收到路由回复数据帧,则进入下一步,否则创建路由表,填充路由信息,并发送请求入网数据帧;
[0022]24.所述传感器节点判断所述传感器节点到达路由节点需要消耗的能量是否优于原来的路径,若不是,则丢弃该数据帧,若是,则修改路由表,发送请求入网数据帧给新路由节点,确认入网后,再发送退网数据帧给原路由节点;
[0023]25.所述路由节点接收到请求入网数据帧后,判断子网管理表中是否已经有该路由节点或传感器节点的信息,若无,则插入该节点信息,若有,丢弃该数据帧,并发送确认入网数据帧;
[0024]26.所述路由节点接收到退网数据帧后,判断子网管理表中是否有该节点的信息,若无,则丢弃该数据帧,若有,则删除该节点信息,并发送确认退网数据帧。
[0025]方法步骤a)是路由组网过程,主要目标是组建主干网络并保证全局拓扑最优。方法步骤b)是传感器节点组网过程,主要目标是组建子网络并保证局部传输最优。当传感器节点出现故障时,处理方案具体步骤:[0026]31.路由节点查询子网管理表,判断时间t内,子网管理表的传感器节点是否未发 送心跳数据帧,若无,则没有故障节点,如有,则该传感器节点出现故障或者挂载到别的路 由节点下,发送所述传感器节点出错数据帧给微通站;
[0027]32.所述微通站接收到节点出错数据后,提取出错传感器节点ID,查询网络拓扑 结构,判断出错的传感器节点是否挂载到了别的路由下,若无,则传感器节点出错,产生报 警给维护人员,若有,则所述传感器节点挂载到了别的路由节点下,微通站发送反馈信息给 刚才报错的路由节点;
[0028]33.路由节点接收到报错回复后,修改子网管理表。
[0029]所述的子网络中节点运行过程中,动态产生、更行传感器节点路由表的步骤为:
[0030]步骤201、所述传感器节点已入网正常工作后,接收到心跳数据帧,提取出心跳数 据帧的源地址,判断源地址是否是路由节点,若否,则丢弃该心跳数据帧,若是,则转到下一
I K
少;
[0031]步骤202、所述传感器节点从心跳数据帧中提取路由节点的剩余能量、子网规模和 到该路由节点需要的能量,通过上述三项数据计算出的一个权值,判断计算出的权值是否 优于原路由表中的数据,选择最优者,若不修改路由信息,丢弃该数据帧,若修改路由表,则 发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点;
[0032]本发明的优点在于:
[0033]第一,提高了传统树型网络的规模可拓展性;第二,采用了改进的树型路由协议, 提高了最优路径的性能,降低了路由在构建路由表时的能量开销;第三,采用分层结构,同 一子网内采用同步传输机制,降低了层次之间传输的碰撞率。
【专利附图】

【附图说明】
[0034]图1是本发明一具体实施方案的网络结构示意图;
[0035]图2是本发明具体实施方案中组网流程图,
【具体实施方式】
[0036]下面结合附图和实施例对本发明进一步说明:
[0037]在本实施例中,如图1,组建了一个无线传感器网络,包括微通站、路由节点和传感 器节点构成的树形路由,所述微通站和路由节点组成一个树型主干网络,所述微通站管理 整个网络并生成网络拓扑;所述主干网络中的路由节点和传感器节点组成子网络,所述路 由节点作为所述子网络的管理节点,其中I为微通站,2、3、4、6和7是路由节点,5、8-12是 传感器节点:
[0038]步骤a、所述微通站I启动后,根据网络规模参数,初始化子网管理表,初始化网络 拓扑结构,设置主网络号为0,并将主网络号以及网络参数写入心跳数据帧中,发送出去,后 休眠;
[0039]步骤b、未入网的路由节点2、3、4、6、7(路由节点6、7由于距离因素,接收到微通 站I的信号较弱)启动后先初始化节点,再监测信道,接收到来至微通站I的数据帧后,提 取出数据帧中网络参数,与本节点的路由参数进行比对,判断是否需要更新最优路径,如果 是,则发送入网请求给微通站I ;微通站I根据网络规模参数、本节点挂载节点数量和网络传输能耗,判断是否接收该发送请求的设备,如果接收,则向它发送一个确认入网信号,如果不接受,则发送拒绝响应;
[0040]步骤C、步骤b中路由节点6、7因为距离微通站I距离较远,信号较弱,接收不到微通站I发来的心跳数据帧,所以进过步骤b后不能入网,再2、3和4节点,接收到确认入网信号后,修改本节点的路由表,填充网络参数,再发送心跳数据帧。此时路由节点6会接收到节点2、3两个心跳数据帧,提取出其中的路由信息后,选择最优路径,发送入网请求给最优路径的下一跳路由2,路由2接收到入网请求,判断是否接收节点6的请求,如果接收发送确认入网信号,如果不接受,则发送拒绝入网信号。节点6接收到2的确认入网信号后,修改路由表,并发送心跳数据帧;
[0041]步骤d、传感器节点5、8_12节点启动后,先初始化,再监听信道,如果接收到路由节点发送的心跳数据帧后,提取出数据帧中的路由信息,判断是否是接收到的第一个路由心跳数据帧,如是,则发送请求入网信息,如否,则判断路由信息是否优于自身路由表中的路径,选择最优者,如是,则发送请求入网信息给发送该数据帧的路由,如否,则丢弃该包。路由接收到传感器节点的入网请求数据帧后,根据网络规模参数、本路由已挂载节点数量和网络传输能耗,判断是否接收该发送请求的设备,如是,则向它发送一个确认入网信号,并修改子网管理表,如否,则发送拒绝响应。传感器节点接收到确认入网信号后,修改路由表,发送心跳数据帧后,进入休眠;
[0042]步骤e、网络中所有节点休眠醒来后,先判断是否入网,如否,则继续监听信道,如是,则监测环境一氧化碳的浓度,判断是否超过警戒线,如是,则发送报警数据帧,如否,则判断是否需要发送心跳数据巾贞,如是,则发送心跳数据巾贞,如否,则进入休眠。路由节点接收到报警数据帧后,修改数据帧中的路由信息,发送给上一层路由,直到发送给微通站1,微通站1,接收到报警数据帧后,通过广域网向手持终端、微通站或者管理中心报警;
[0043]步骤f、路由节点使用定时器,每tl时间检查子网管理表,判断在t2时间内是否有节点未发送心跳数据帧,如否,则休眠,如是,则发送出错数据帧给微通站1.微通站I接收至拙错数据帧后,查询网络拓扑,判断该节点是否出错,若否,则节点挂载到了别的路由下,发送节点未出错信号,若是,则通过广域网向手持终端、微通站或者管理中心发出有节点出错,需要维护。
[0044]如图2,是整个无线传感器网络的组网流程图,所述无线传感器网络以此进行逻辑处理。
[0045]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种无线传感器网络的高效自组网路由方法,包括微通站、路由节点和传感器节点构成的树形路由,所述微通站和至少一个所述路由节点组成一个树型主干网络,所述微通站管理整个网络并生成网络拓扑;所述主干网络中的路由节点和至少一个所述传感器节点组成子网络,所述路由节点作为所述子网络的管理节点,其特征在于,包括以下步骤:a)根据所述路由节点到所述微通站需要消耗的能量、路由节点剩余能量和挂载在本路由节点的传感器节点数量来产生权值,动态产生、更新路由表,形成一个处理并转发数据的主干网络;b)根据所述传感器节点到所述路由节点需要消耗的能量、路由节点管理的子网规模产生权值,动态产生、更新路由表,形成一个收集并转发数据的子网络。
2.根据权利要求1所述的一种无线传感器网络的高效自组网路由方法,其特征在于, 所述步骤a)具体为:步骤11、所述微通站启动后定时发送心跳数据帧;步骤12、所述传感器节点需要发送收集到的数据时,所述路由节点或传感器节点判断所述主干网络是否建立,若建立则向路由网络发送数据帧,否则进入下一步骤;步骤13、所述路由节点若接收到路由节点发送的心跳数据帧或微通站的心跳数据帧, 则进入下一步骤,否则进入休眠状态,继续监听信道,等待路由或微通站的心跳数据帧;步骤14、所述路由节点从心跳数据帧中提取路由节点的剩余能量、子网规模和到该路由节点需要的能量,若不是第一次接收到路由信息,进入下一步骤,否则创建路由表,填充路由信息,并发送请求入网数据帧;步骤15、所述路由节点判断心跳数据帧中数据是否优于原路由表中的数据,选择最优者,若不修改路由信息,则丢弃该心跳数据帧,若修改路由表,则发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点;步骤16、所述路由节点或微通站接收到入网数据帧、退网数据帧后,更新子网管理表。
3.根据权利要求2所述的·一种无线传感器网络的高效自组网路由方法,其特征在于, 所述步骤a)中所述的主干网络的节点运行过程中,动态产生、更新各路由节点路由表的步骤为:步骤101、所述路由节点已入网正常工作后,接收到心跳数据帧,提取出心跳数据帧的源地址,判断源地址是否是传感器节点的地址,若是,则丢弃该心跳数据帧,若否,则进入下一步骤;步骤102、所述路由节点接收到心跳数据帧后,判断源地址是否在所述路由节点的主干网管理表中,若是,则修改主干网管理表,记录该节点来过心跳数据帧,若否,则进入下一步骤;步骤103、所述路由节点从心跳数据帧中提取路由节点的剩余能量、子网规模和到该路由节点需要的能量,通过上述三项数据计算出的一个权值,判断计算出的权值是否优于原路由表中的数据,选择最优者,若不修改路由信息,丢弃该数据帧,若修改路由表,则发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点。
4.根据权利要求1所述的一种无线传感器网络的高效自组网路由方法,其特征在于, 所述步骤b)具体为:步骤21、传感器节点启动后,判断是否已经入网,若没入网则进入下一步,否则收集传感器信息,生成数据帧,发送给路由节点; 步骤22、传感器节点广播申请入网数据帧,启动一个定时器,并监听信道,若有数据帧到来时,判断是否是路由回复数据帧,若是,则进入下一步,若不是,则继续监听; 步骤23、所述传感器节点从路由节点或微通站回复的数据帧中提取路由信息,判断发送数据给该路由节点需要消耗的能量,若不是第一次接收到路由回复数据帧,则进入下一步,否则创建路由表,填充路由信息,并发送请求入网数据帧; 步骤24、所述传感器节点判断到达路由节点需要消耗的能量是否优于原来的路径,若不是,则丢弃该数据帧,若是,则修改路由表,发送请求入网数据帧给新路由节点,确认入网后,再发送退网数据帧给原路由节点; 步骤25、所述路由节点接收到请求入网数据帧后,判断子网管理表中是否已经有传感器节点的信息,若无,则插入该节点信息,若有,丢弃该数据帧,并发送确认入网数据帧;步骤26、所述路由节点接收到退网数据帧后,判断子网管理表中是否有该节点的信息,若无,则丢弃该包,若有,则删除该节点信息,并发送确认退网数据帧。
5.根据权利要求4所述的一种无线传感器网络的高效自组网路由方法,其特征在于,所述步骤b)中所述的子网络中节点运行过程中,动态产生、更行传感器节点路由表的步骤为: 步骤201、所述传感器节点已入网正常工作后,接收到心跳数据帧,提取出心跳数据帧的源地址,判断源地址是否是路由节点,若否,则丢弃该心跳数据帧,若是,则转到下一步;步骤202、所述传感器节点从心跳数据帧中提取路由节点的剩余能量、子网规模和到该路由节点需要的能量,通过上述三项数据计算出的一个权值,判断计算出的权值是否优于原路由表中的数据,选择最优者,若不修改路由信息,丢弃该数据帧,若修改路由表,则发送退网数据帧给原来的路由节点,再发送请求入网数据帧给最优路径的路由节点。
6.根据权利要求4所述的一种无线传感器网络的高效自组网路由方法,其特征在于,所述步骤b)中的所述子网络中的传感器节点发生故障后运行的步骤为: 步骤31、路由节点查询子网管理表,判断时间t内,子网管理表的传感器节点是否未发送心跳数据帧,若无,则没有故障节点,如有,则该传感器节点出现故障或者挂载到别的路由节点下,发送所述传感器节点出错数据帧给微通站; 步骤32、所述微通站接收到节点出错数据后,提取出错传感器节点ID,查询网络拓扑结构,判断出错的传感器节点是否挂载到了别的路由下,若无,则传感器节点出错,产生报警给维护人员,若有,则所述传感器节点挂载到了别的路由节点下,微通站发送反馈信息给刚才报错的路由节点; 步骤33、路由节点接收到报错回复后,修改子网管理表。
【文档编号】H04W84/18GK103582065SQ201210266849
【公开日】2014年2月12日 申请日期:2012年7月31日 优先权日:2012年7月31日
【发明者】李春杰, 王子龙, 张晓宇, 李希洋, 唐晓伟, 刘潇 申请人:中国科学技术大学苏州研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1