拓扑控制中的休眠调度技术
发布时间:2012/3/30 19:41:39 访问次数:1994
在传感器网络的拓扑控制算法中,除了传统EPM7256AFC256-12的功率控制和层次型拓扑控制两个方面之外也提供了启发式的节点唤醒和休眠机制。该机制能够使节点在没有事件发生时设置通信模块为睡眠状态,而在有事件发生时自动醒来并唤醒邻居节点,形成数据转发的拓扑结构。这种机制的引入,使得无线通信模块大部分时间都处于关闭状态,只有传感器模块处于工作状态。由于无线通信模块消耗的能量远大于传感器模块,所以这进一步节省了能量开销。这种机制的重点在于解决节点在睡眠状态和话动状态之间的切换问题,不能独立成为一种拓扑结构控制机制,需要与其他拓扑控制算法结合使用。目前基于启发机制的算法有STEM (SparseTopology and Energy Management) [39]算法和ASCENTI[401 (Adaptive Self-Configuring SensorNetworks Topologies)算法、CCP (Coverage Configuration Protocol) [41]和SPAN[42].
1.STEM
STEM算法是较早提出的节点唤醒算法,其包含两种不同的机制:STEM-B (STEM-Beacon)和STEM-T (STEM-Tone)。在STEM-B算法中每个睡眠节点可以周期性地醒来侦听信道。如果某个节点想要建立通信,它会作为主动节点先发送一连串Beacon包。目标节点在收到Beacon包后,发送应答信号,并自动进入数据接收状态。主动节点在收到应答信号后,进入数据发送阶段。为了避免唤醒信号和数据通信的冲突,使用侦听信道和数据传输信道两个分离信道。如果没有数据通信,节点大部分时间只保持在侦听信道上的周期性侦听,从而在很大程度上节省了能量消耗。
STEM-T算法比STEM-B算法简单。其节点周期性地进入侦听阶段,探测是否有邻居节点要发送数据。当一个节点想与某个邻居节点进行通信时,它首先发送一连串的唤醒包,发送唤醒包的时间长度必须大于侦听的时间间隔,以确保邻居节点能够接收到唤醒包,然后该节点直接发送数据包。所有邻居节点都能够接收到唤醒包并进入接收状态,如果在一定时间内没有收到发送给自己的数据包,就自动进入睡眠状态。可见STEM-T算法与STEM-B箅法相比省略了请求应答过程,但增加了节点唤醒次数。
STEM算法使节点在整个生命周期中的多数时间内处于睡眠状态,适用于类似环境监测或者突发事件监测等应用。这类应用均由事件触发,不要求节点时刻保持在活动状态。值得注意的是,在STEM算法中,节点的睡眠周期、部署密度及网络的传输延迟之间有着密切的关系,所以要针对具体的应用要求进行相应的调整。
2. ASCENT
ASCENT(Adaptive Self-Configuring sEnsor Networks Topologies)算法是另一种节点唤醒机制,其重点在于均衡网络中骨干节点的数量,并保证数据通路的畅通。节点接收数据时若发现丢包严重就向数据源方向的邻居节点发出求助消息;当节点探测到周围的通信节点丢包率很高或者收到邻居节点发出的帮助请求时,它醒来后主动成为活动节点,帮助邻居节点转
发数据包。该算法运行包括触发、建立和稳定3个主要阶段。
节点可以处于4种状态:①休眠状态,节点关闭通信模块;②侦听状态,只对信息进行侦听,不进行数据包的转发;③测试状态,这是一个暂态,参与数据包的转发,并且进行一定的运算,判断自己是否需要变为活动状态;④活动状态,节点负责数据色的转发,能量消耗最大。从本质上说,ASCENT是一个从汇聚节点向数据源节点回溯建立路由的过程。通过SCENT算法,节点能够根据网络情况动态地改变自身状态,从而动态地改变网络拓扑结构,并且节点只根据本地信息进行计算,不依赖于无线通信模型、节点的地理分布和路由协议。但是ASCENT算法需要完善的地方还很多,如应该针对更大规模的节点分布进行改进,并加入负载平衡技术。另外,对于多个数据源节点的应用场景也需加以改进。
3.CCP
用CCP( Coverage Configuration Protocol)来达到网络睡眠节点数最大化的休眠调度效果。CCP中节点有3个基本状态:工作状态、侦听状态和睡眠状态。此外,为了避免由于每个节点根据局部信息独立进行调度而引起的冲突,CCP引入了加入和退出两个过渡状态。初始时,网络中节点都处于工作状态。当处于工作状态的节点如果收到一个HELLO消息,它就检查自己是否符合睡眠的条件,如果符合条件,就进入退出状态并启动退出计时器。在退出状态,如果计时器溢出,就广播一个WITHDRAW消息,进入睡眠状态,并启动睡眠计时器;如果在计时器溢出之前收到来自邻居节点的WITHDRAW或HELLO消息,就撤销计时器并返回活动状态。在睡眠状态,如果计时器溢出,就进入侦听状态,并启动侦听计时器。在侦听状态,如果计时器溢出,就返回睡眠状态,同时启动睡眠计时器;如果在计时器溢出之前收到HELLO、WITHDRAW或JOIN消息,就检查自己是否应该工作,如果是,就进入加入状态,同时启动加入计时器。在加入状态,如果计时器溢出,就进入工作状态并广播JOrN消息;在计时器溢出之前,如果收到JorN消息并判断出没有工作的必要,则该节点就进入睡眠状态。同时,CCP能够根据不同的应用和环境将网络配置到指定的覆盖度与连通度。
4. SPAN
SPAN算法的基本思想是在不破坏网络原有连遁性的前提下,根据节点的剩余能量、邻居节点的个数、节点的效用等多种因素,自适应地决定是成为骨干节点还是进入睡眠状态。睡眠节点周期性地唤醒,以判断自己是否应该成为骨干节点;骨干节点周期性地判断自己是否应该退出。SPAN算法对传感器节点没有特殊的要求,这是它的优点。但是,随着节点密度的增加,SPAN的节能效果表现减弱。这主要是因为SPAN采用了IEEE 802.11的节能特性:睡眠节点必须周期性地唤醒并侦听,这种方式的代价是相当大的。
1.STEM
STEM算法是较早提出的节点唤醒算法,其包含两种不同的机制:STEM-B (STEM-Beacon)和STEM-T (STEM-Tone)。在STEM-B算法中每个睡眠节点可以周期性地醒来侦听信道。如果某个节点想要建立通信,它会作为主动节点先发送一连串Beacon包。目标节点在收到Beacon包后,发送应答信号,并自动进入数据接收状态。主动节点在收到应答信号后,进入数据发送阶段。为了避免唤醒信号和数据通信的冲突,使用侦听信道和数据传输信道两个分离信道。如果没有数据通信,节点大部分时间只保持在侦听信道上的周期性侦听,从而在很大程度上节省了能量消耗。
STEM-T算法比STEM-B算法简单。其节点周期性地进入侦听阶段,探测是否有邻居节点要发送数据。当一个节点想与某个邻居节点进行通信时,它首先发送一连串的唤醒包,发送唤醒包的时间长度必须大于侦听的时间间隔,以确保邻居节点能够接收到唤醒包,然后该节点直接发送数据包。所有邻居节点都能够接收到唤醒包并进入接收状态,如果在一定时间内没有收到发送给自己的数据包,就自动进入睡眠状态。可见STEM-T算法与STEM-B箅法相比省略了请求应答过程,但增加了节点唤醒次数。
STEM算法使节点在整个生命周期中的多数时间内处于睡眠状态,适用于类似环境监测或者突发事件监测等应用。这类应用均由事件触发,不要求节点时刻保持在活动状态。值得注意的是,在STEM算法中,节点的睡眠周期、部署密度及网络的传输延迟之间有着密切的关系,所以要针对具体的应用要求进行相应的调整。
2. ASCENT
ASCENT(Adaptive Self-Configuring sEnsor Networks Topologies)算法是另一种节点唤醒机制,其重点在于均衡网络中骨干节点的数量,并保证数据通路的畅通。节点接收数据时若发现丢包严重就向数据源方向的邻居节点发出求助消息;当节点探测到周围的通信节点丢包率很高或者收到邻居节点发出的帮助请求时,它醒来后主动成为活动节点,帮助邻居节点转
发数据包。该算法运行包括触发、建立和稳定3个主要阶段。
节点可以处于4种状态:①休眠状态,节点关闭通信模块;②侦听状态,只对信息进行侦听,不进行数据包的转发;③测试状态,这是一个暂态,参与数据包的转发,并且进行一定的运算,判断自己是否需要变为活动状态;④活动状态,节点负责数据色的转发,能量消耗最大。从本质上说,ASCENT是一个从汇聚节点向数据源节点回溯建立路由的过程。通过SCENT算法,节点能够根据网络情况动态地改变自身状态,从而动态地改变网络拓扑结构,并且节点只根据本地信息进行计算,不依赖于无线通信模型、节点的地理分布和路由协议。但是ASCENT算法需要完善的地方还很多,如应该针对更大规模的节点分布进行改进,并加入负载平衡技术。另外,对于多个数据源节点的应用场景也需加以改进。
3.CCP
用CCP( Coverage Configuration Protocol)来达到网络睡眠节点数最大化的休眠调度效果。CCP中节点有3个基本状态:工作状态、侦听状态和睡眠状态。此外,为了避免由于每个节点根据局部信息独立进行调度而引起的冲突,CCP引入了加入和退出两个过渡状态。初始时,网络中节点都处于工作状态。当处于工作状态的节点如果收到一个HELLO消息,它就检查自己是否符合睡眠的条件,如果符合条件,就进入退出状态并启动退出计时器。在退出状态,如果计时器溢出,就广播一个WITHDRAW消息,进入睡眠状态,并启动睡眠计时器;如果在计时器溢出之前收到来自邻居节点的WITHDRAW或HELLO消息,就撤销计时器并返回活动状态。在睡眠状态,如果计时器溢出,就进入侦听状态,并启动侦听计时器。在侦听状态,如果计时器溢出,就返回睡眠状态,同时启动睡眠计时器;如果在计时器溢出之前收到HELLO、WITHDRAW或JOIN消息,就检查自己是否应该工作,如果是,就进入加入状态,同时启动加入计时器。在加入状态,如果计时器溢出,就进入工作状态并广播JOrN消息;在计时器溢出之前,如果收到JorN消息并判断出没有工作的必要,则该节点就进入睡眠状态。同时,CCP能够根据不同的应用和环境将网络配置到指定的覆盖度与连通度。
4. SPAN
SPAN算法的基本思想是在不破坏网络原有连遁性的前提下,根据节点的剩余能量、邻居节点的个数、节点的效用等多种因素,自适应地决定是成为骨干节点还是进入睡眠状态。睡眠节点周期性地唤醒,以判断自己是否应该成为骨干节点;骨干节点周期性地判断自己是否应该退出。SPAN算法对传感器节点没有特殊的要求,这是它的优点。但是,随着节点密度的增加,SPAN的节能效果表现减弱。这主要是因为SPAN采用了IEEE 802.11的节能特性:睡眠节点必须周期性地唤醒并侦听,这种方式的代价是相当大的。
在传感器网络的拓扑控制算法中,除了传统EPM7256AFC256-12的功率控制和层次型拓扑控制两个方面之外也提供了启发式的节点唤醒和休眠机制。该机制能够使节点在没有事件发生时设置通信模块为睡眠状态,而在有事件发生时自动醒来并唤醒邻居节点,形成数据转发的拓扑结构。这种机制的引入,使得无线通信模块大部分时间都处于关闭状态,只有传感器模块处于工作状态。由于无线通信模块消耗的能量远大于传感器模块,所以这进一步节省了能量开销。这种机制的重点在于解决节点在睡眠状态和话动状态之间的切换问题,不能独立成为一种拓扑结构控制机制,需要与其他拓扑控制算法结合使用。目前基于启发机制的算法有STEM (SparseTopology and Energy Management) [39]算法和ASCENTI[401 (Adaptive Self-Configuring SensorNetworks Topologies)算法、CCP (Coverage Configuration Protocol) [41]和SPAN[42].
1.STEM
STEM算法是较早提出的节点唤醒算法,其包含两种不同的机制:STEM-B (STEM-Beacon)和STEM-T (STEM-Tone)。在STEM-B算法中每个睡眠节点可以周期性地醒来侦听信道。如果某个节点想要建立通信,它会作为主动节点先发送一连串Beacon包。目标节点在收到Beacon包后,发送应答信号,并自动进入数据接收状态。主动节点在收到应答信号后,进入数据发送阶段。为了避免唤醒信号和数据通信的冲突,使用侦听信道和数据传输信道两个分离信道。如果没有数据通信,节点大部分时间只保持在侦听信道上的周期性侦听,从而在很大程度上节省了能量消耗。
STEM-T算法比STEM-B算法简单。其节点周期性地进入侦听阶段,探测是否有邻居节点要发送数据。当一个节点想与某个邻居节点进行通信时,它首先发送一连串的唤醒包,发送唤醒包的时间长度必须大于侦听的时间间隔,以确保邻居节点能够接收到唤醒包,然后该节点直接发送数据包。所有邻居节点都能够接收到唤醒包并进入接收状态,如果在一定时间内没有收到发送给自己的数据包,就自动进入睡眠状态。可见STEM-T算法与STEM-B箅法相比省略了请求应答过程,但增加了节点唤醒次数。
STEM算法使节点在整个生命周期中的多数时间内处于睡眠状态,适用于类似环境监测或者突发事件监测等应用。这类应用均由事件触发,不要求节点时刻保持在活动状态。值得注意的是,在STEM算法中,节点的睡眠周期、部署密度及网络的传输延迟之间有着密切的关系,所以要针对具体的应用要求进行相应的调整。
2. ASCENT
ASCENT(Adaptive Self-Configuring sEnsor Networks Topologies)算法是另一种节点唤醒机制,其重点在于均衡网络中骨干节点的数量,并保证数据通路的畅通。节点接收数据时若发现丢包严重就向数据源方向的邻居节点发出求助消息;当节点探测到周围的通信节点丢包率很高或者收到邻居节点发出的帮助请求时,它醒来后主动成为活动节点,帮助邻居节点转
发数据包。该算法运行包括触发、建立和稳定3个主要阶段。
节点可以处于4种状态:①休眠状态,节点关闭通信模块;②侦听状态,只对信息进行侦听,不进行数据包的转发;③测试状态,这是一个暂态,参与数据包的转发,并且进行一定的运算,判断自己是否需要变为活动状态;④活动状态,节点负责数据色的转发,能量消耗最大。从本质上说,ASCENT是一个从汇聚节点向数据源节点回溯建立路由的过程。通过SCENT算法,节点能够根据网络情况动态地改变自身状态,从而动态地改变网络拓扑结构,并且节点只根据本地信息进行计算,不依赖于无线通信模型、节点的地理分布和路由协议。但是ASCENT算法需要完善的地方还很多,如应该针对更大规模的节点分布进行改进,并加入负载平衡技术。另外,对于多个数据源节点的应用场景也需加以改进。
3.CCP
用CCP( Coverage Configuration Protocol)来达到网络睡眠节点数最大化的休眠调度效果。CCP中节点有3个基本状态:工作状态、侦听状态和睡眠状态。此外,为了避免由于每个节点根据局部信息独立进行调度而引起的冲突,CCP引入了加入和退出两个过渡状态。初始时,网络中节点都处于工作状态。当处于工作状态的节点如果收到一个HELLO消息,它就检查自己是否符合睡眠的条件,如果符合条件,就进入退出状态并启动退出计时器。在退出状态,如果计时器溢出,就广播一个WITHDRAW消息,进入睡眠状态,并启动睡眠计时器;如果在计时器溢出之前收到来自邻居节点的WITHDRAW或HELLO消息,就撤销计时器并返回活动状态。在睡眠状态,如果计时器溢出,就进入侦听状态,并启动侦听计时器。在侦听状态,如果计时器溢出,就返回睡眠状态,同时启动睡眠计时器;如果在计时器溢出之前收到HELLO、WITHDRAW或JOIN消息,就检查自己是否应该工作,如果是,就进入加入状态,同时启动加入计时器。在加入状态,如果计时器溢出,就进入工作状态并广播JOrN消息;在计时器溢出之前,如果收到JorN消息并判断出没有工作的必要,则该节点就进入睡眠状态。同时,CCP能够根据不同的应用和环境将网络配置到指定的覆盖度与连通度。
4. SPAN
SPAN算法的基本思想是在不破坏网络原有连遁性的前提下,根据节点的剩余能量、邻居节点的个数、节点的效用等多种因素,自适应地决定是成为骨干节点还是进入睡眠状态。睡眠节点周期性地唤醒,以判断自己是否应该成为骨干节点;骨干节点周期性地判断自己是否应该退出。SPAN算法对传感器节点没有特殊的要求,这是它的优点。但是,随着节点密度的增加,SPAN的节能效果表现减弱。这主要是因为SPAN采用了IEEE 802.11的节能特性:睡眠节点必须周期性地唤醒并侦听,这种方式的代价是相当大的。
1.STEM
STEM算法是较早提出的节点唤醒算法,其包含两种不同的机制:STEM-B (STEM-Beacon)和STEM-T (STEM-Tone)。在STEM-B算法中每个睡眠节点可以周期性地醒来侦听信道。如果某个节点想要建立通信,它会作为主动节点先发送一连串Beacon包。目标节点在收到Beacon包后,发送应答信号,并自动进入数据接收状态。主动节点在收到应答信号后,进入数据发送阶段。为了避免唤醒信号和数据通信的冲突,使用侦听信道和数据传输信道两个分离信道。如果没有数据通信,节点大部分时间只保持在侦听信道上的周期性侦听,从而在很大程度上节省了能量消耗。
STEM-T算法比STEM-B算法简单。其节点周期性地进入侦听阶段,探测是否有邻居节点要发送数据。当一个节点想与某个邻居节点进行通信时,它首先发送一连串的唤醒包,发送唤醒包的时间长度必须大于侦听的时间间隔,以确保邻居节点能够接收到唤醒包,然后该节点直接发送数据包。所有邻居节点都能够接收到唤醒包并进入接收状态,如果在一定时间内没有收到发送给自己的数据包,就自动进入睡眠状态。可见STEM-T算法与STEM-B箅法相比省略了请求应答过程,但增加了节点唤醒次数。
STEM算法使节点在整个生命周期中的多数时间内处于睡眠状态,适用于类似环境监测或者突发事件监测等应用。这类应用均由事件触发,不要求节点时刻保持在活动状态。值得注意的是,在STEM算法中,节点的睡眠周期、部署密度及网络的传输延迟之间有着密切的关系,所以要针对具体的应用要求进行相应的调整。
2. ASCENT
ASCENT(Adaptive Self-Configuring sEnsor Networks Topologies)算法是另一种节点唤醒机制,其重点在于均衡网络中骨干节点的数量,并保证数据通路的畅通。节点接收数据时若发现丢包严重就向数据源方向的邻居节点发出求助消息;当节点探测到周围的通信节点丢包率很高或者收到邻居节点发出的帮助请求时,它醒来后主动成为活动节点,帮助邻居节点转
发数据包。该算法运行包括触发、建立和稳定3个主要阶段。
节点可以处于4种状态:①休眠状态,节点关闭通信模块;②侦听状态,只对信息进行侦听,不进行数据包的转发;③测试状态,这是一个暂态,参与数据包的转发,并且进行一定的运算,判断自己是否需要变为活动状态;④活动状态,节点负责数据色的转发,能量消耗最大。从本质上说,ASCENT是一个从汇聚节点向数据源节点回溯建立路由的过程。通过SCENT算法,节点能够根据网络情况动态地改变自身状态,从而动态地改变网络拓扑结构,并且节点只根据本地信息进行计算,不依赖于无线通信模型、节点的地理分布和路由协议。但是ASCENT算法需要完善的地方还很多,如应该针对更大规模的节点分布进行改进,并加入负载平衡技术。另外,对于多个数据源节点的应用场景也需加以改进。
3.CCP
用CCP( Coverage Configuration Protocol)来达到网络睡眠节点数最大化的休眠调度效果。CCP中节点有3个基本状态:工作状态、侦听状态和睡眠状态。此外,为了避免由于每个节点根据局部信息独立进行调度而引起的冲突,CCP引入了加入和退出两个过渡状态。初始时,网络中节点都处于工作状态。当处于工作状态的节点如果收到一个HELLO消息,它就检查自己是否符合睡眠的条件,如果符合条件,就进入退出状态并启动退出计时器。在退出状态,如果计时器溢出,就广播一个WITHDRAW消息,进入睡眠状态,并启动睡眠计时器;如果在计时器溢出之前收到来自邻居节点的WITHDRAW或HELLO消息,就撤销计时器并返回活动状态。在睡眠状态,如果计时器溢出,就进入侦听状态,并启动侦听计时器。在侦听状态,如果计时器溢出,就返回睡眠状态,同时启动睡眠计时器;如果在计时器溢出之前收到HELLO、WITHDRAW或JOIN消息,就检查自己是否应该工作,如果是,就进入加入状态,同时启动加入计时器。在加入状态,如果计时器溢出,就进入工作状态并广播JOrN消息;在计时器溢出之前,如果收到JorN消息并判断出没有工作的必要,则该节点就进入睡眠状态。同时,CCP能够根据不同的应用和环境将网络配置到指定的覆盖度与连通度。
4. SPAN
SPAN算法的基本思想是在不破坏网络原有连遁性的前提下,根据节点的剩余能量、邻居节点的个数、节点的效用等多种因素,自适应地决定是成为骨干节点还是进入睡眠状态。睡眠节点周期性地唤醒,以判断自己是否应该成为骨干节点;骨干节点周期性地判断自己是否应该退出。SPAN算法对传感器节点没有特殊的要求,这是它的优点。但是,随着节点密度的增加,SPAN的节能效果表现减弱。这主要是因为SPAN采用了IEEE 802.11的节能特性:睡眠节点必须周期性地唤醒并侦听,这种方式的代价是相当大的。
上一篇:GAFT和TopDisc
上一篇:无线传感器网络覆盖技术