一种快速可靠的无线传感器网络路由
发布时间:2008/5/29 0:00:00 访问次数:351
无线传感器网络(wirelesssensornetworks,简称wsns)是当前在国际上备受关注的涉及多学科高度交叉的热点研究领域。它综合了传感器技术、嵌入式计算技术、现代网络及无线通信技术等,能够通过各类集成化的微型传感器协同工作,完成指定的任务,并进行自组织无线通信网络以多跳中继方式将所感知信息传送到用户终端。
wsns一般运行在人们无法接近的恶劣甚至危险的远程环境中,并且传感器节点通常携带不能补充的有限能量。低能耗、低延迟、自动修复路径成了wsns最根本的要求。目前所存在的wsns路由协议大都不能同时满足这样的条件,或者需要依靠特殊硬件才能实现这些功能,本文提出了一种快速可靠的低能耗路由(afastandreliableprotocol,简称为frp),不仅可以满足上面的基本要求,还可以工作于任务查询方式及事件驱动方式,并具有较强的路径修复能力。
frp主要分为3个部分。首先是构建路由树结构,sink点以洪泛方式向传感器网络传播路由树组建消息,使得网络中的每个节点都拥有自己的级别值和父节点,然后sink点将所要查询的任务通过路由树发布出去;最后源节点将选择最短路径将数据反馈给sink点。frp主要能够实现以下几种功能:任务查询、事件驱动以及路径自我修复。而这些仅依靠普通的射频芯片即可实现,以下将做详细介绍。
1frp路由的建立与运行
1.1路由树的建立
在无线传感器网络里,由于受到射频芯片通信距离的限制,单个节点无法了解网络中全部节点,只能知道其邻节点的一些信息。因此第一步需要建立路由树结构,让节点了解其所处的级别及父节点。sink点首先通过洪泛方式向网络传播路由树组建消息。组建消息由组建标志位、发送节点id、发送节点级值组成。收到该组建消息的节点将发送节点id记录为父节点,然后将级值加1,并以自身id和级值更新消息后继续向邻节点传播,直到网络中所有节点都拥有自己父节点和级值。由于洪泛传输中可能会导致已经发出消息的节点再次收到邻节点将级值加1后重新发送来的消息,从而导致消息循环。为了解决该问题,文中制定如下规则:当一个节点从邻节点处收到组建消息时,首先检查消息中级值是否低于自身级值,如果是,则以该级值更新,并向邻节点发送新的组建消息;否则将不予处理。在组建消息传播过程中,节点选择最早发送其消息,级值更低的节点作为父节点。图1所示为路由树的初始化过程。
1.2任务查询机制
当sink点进行任务查询时,首先以洪泛方式向整个网络发布任务查询命令,该命令主要由任务查询标志位、任务发送节点id、任务发送节点级别、任务条件、任务存活时间等字段组成。收到该命令的节点,将以记录的形式将本次任务存储在本地存储器里,每一条记录代表不同的任务。当节点收到任务查询命令时,首先检查命令中的发送节点级别,若低于本身节点,则与本地存储的任务记录表相比较,如果不存在该任务,则添加该任务记录。然后检查自身是否满足该任务条件,若不满足,则以本身级点更新任务查询命令中的任务发送节点id、任务发送节点级别,然后转发该命令;否则该节点即为源节点,并从任务查询命令中取出任务发送节点id,作为目标节点,准备向其发送任务确认命令。该命令由任务确认标志位、源节点id、数据发送节点id、测量数据等字段组成。收到任务确认命令的节点从中取出数据发送节点id,存储在任务记录中,作为以后相同任务的子节点,然后以自身id作为新的数据发送节点id更新命令,并从任务列表中取出该任务的任务发送节点作为目标节点继续传输任务确认命令,直到返回至sink点。同时,其它未收到任务确认命令的节点将会在任务存活时间到期后,将存储器中的任务记录删除。在任务查询命令广播过程中,若接收节点检测到本地任务记录表中存在相同任务,则从该记录中取出子节点作为目标节点,向其发送任务查询命令,避免洪泛传播,从而大大节约了能量。
1.3事件驱动
当某事件被传感器节点捕捉时,则该节点即为源节点,并向其父节点发送事件命令。该命令由事件类型、源节点id、发送节点id、测量数据组成。收到事件命令的节点,以自身id作为新的发送节点id更新命令,向其父节点继续传输事件驱动命令,直到数据传输至sink点。
2路由修复机制
本文中的节点传输路径是唯一的,这样可以节约能量,提高效率。但是由于这种唯一性,如果一个节点电池耗尽或者物理损害而失效,则会导致其下级节点也脱离了网络。目前有些无线传感器路由协议针对这一问题,采用通过由sink点发起洪泛协议进行路径修复的办法来解决,但是这样明显浪费能量,而且在洪泛期间,失效节点的邻节点若产生事件将无法传递,导致了数据丢失。
frp路径修复机制分为2个部分:节点状态检测和新目标节点的选择。文中采用应答机制来进行节点状态检测。当节点发送数据给目标节点后,若在一
无线传感器网络(wirelesssensornetworks,简称wsns)是当前在国际上备受关注的涉及多学科高度交叉的热点研究领域。它综合了传感器技术、嵌入式计算技术、现代网络及无线通信技术等,能够通过各类集成化的微型传感器协同工作,完成指定的任务,并进行自组织无线通信网络以多跳中继方式将所感知信息传送到用户终端。
wsns一般运行在人们无法接近的恶劣甚至危险的远程环境中,并且传感器节点通常携带不能补充的有限能量。低能耗、低延迟、自动修复路径成了wsns最根本的要求。目前所存在的wsns路由协议大都不能同时满足这样的条件,或者需要依靠特殊硬件才能实现这些功能,本文提出了一种快速可靠的低能耗路由(afastandreliableprotocol,简称为frp),不仅可以满足上面的基本要求,还可以工作于任务查询方式及事件驱动方式,并具有较强的路径修复能力。
frp主要分为3个部分。首先是构建路由树结构,sink点以洪泛方式向传感器网络传播路由树组建消息,使得网络中的每个节点都拥有自己的级别值和父节点,然后sink点将所要查询的任务通过路由树发布出去;最后源节点将选择最短路径将数据反馈给sink点。frp主要能够实现以下几种功能:任务查询、事件驱动以及路径自我修复。而这些仅依靠普通的射频芯片即可实现,以下将做详细介绍。
1frp路由的建立与运行
1.1路由树的建立
在无线传感器网络里,由于受到射频芯片通信距离的限制,单个节点无法了解网络中全部节点,只能知道其邻节点的一些信息。因此第一步需要建立路由树结构,让节点了解其所处的级别及父节点。sink点首先通过洪泛方式向网络传播路由树组建消息。组建消息由组建标志位、发送节点id、发送节点级值组成。收到该组建消息的节点将发送节点id记录为父节点,然后将级值加1,并以自身id和级值更新消息后继续向邻节点传播,直到网络中所有节点都拥有自己父节点和级值。由于洪泛传输中可能会导致已经发出消息的节点再次收到邻节点将级值加1后重新发送来的消息,从而导致消息循环。为了解决该问题,文中制定如下规则:当一个节点从邻节点处收到组建消息时,首先检查消息中级值是否低于自身级值,如果是,则以该级值更新,并向邻节点发送新的组建消息;否则将不予处理。在组建消息传播过程中,节点选择最早发送其消息,级值更低的节点作为父节点。图1所示为路由树的初始化过程。
1.2任务查询机制
当sink点进行任务查询时,首先以洪泛方式向整个网络发布任务查询命令,该命令主要由任务查询标志位、任务发送节点id、任务发送节点级别、任务条件、任务存活时间等字段组成。收到该命令的节点,将以记录的形式将本次任务存储在本地存储器里,每一条记录代表不同的任务。当节点收到任务查询命令时,首先检查命令中的发送节点级别,若低于本身节点,则与本地存储的任务记录表相比较,如果不存在该任务,则添加该任务记录。然后检查自身是否满足该任务条件,若不满足,则以本身级点更新任务查询命令中的任务发送节点id、任务发送节点级别,然后转发该命令;否则该节点即为源节点,并从任务查询命令中取出任务发送节点id,作为目标节点,准备向其发送任务确认命令。该命令由任务确认标志位、源节点id、数据发送节点id、测量数据等字段组成。收到任务确认命令的节点从中取出数据发送节点id,存储在任务记录中,作为以后相同任务的子节点,然后以自身id作为新的数据发送节点id更新命令,并从任务列表中取出该任务的任务发送节点作为目标节点继续传输任务确认命令,直到返回至sink点。同时,其它未收到任务确认命令的节点将会在任务存活时间到期后,将存储器中的任务记录删除。在任务查询命令广播过程中,若接收节点检测到本地任务记录表中存在相同任务,则从该记录中取出子节点作为目标节点,向其发送任务查询命令,避免洪泛传播,从而大大节约了能量。
1.3事件驱动
当某事件被传感器节点捕捉时,则该节点即为源节点,并向其父节点发送事件命令。该命令由事件类型、源节点id、发送节点id、测量数据组成。收到事件命令的节点,以自身id作为新的发送节点id更新命令,向其父节点继续传输事件驱动命令,直到数据传输至sink点。
2路由修复机制
本文中的节点传输路径是唯一的,这样可以节约能量,提高效率。但是由于这种唯一性,如果一个节点电池耗尽或者物理损害而失效,则会导致其下级节点也脱离了网络。目前有些无线传感器路由协议针对这一问题,采用通过由sink点发起洪泛协议进行路径修复的办法来解决,但是这样明显浪费能量,而且在洪泛期间,失效节点的邻节点若产生事件将无法传递,导致了数据丢失。
frp路径修复机制分为2个部分:节点状态检测和新目标节点的选择。文中采用应答机制来进行节点状态检测。当节点发送数据给目标节点后,若在一