由无线收发部件构成的通信子系统负责节点的通信任务。无线收发部件采用的调制模式、数据率、发射功率和操作周期等都是影响通信子系统能量消耗的关键因素。另外,由于通信元器件本身的物理特性等原因,通信子系统即使处于空闲期,也有着与接收期几乎相近的能量消耗。因此,在没有通信任务时,应尽可能地使通信子系统进入休眠期,而不是让其处于空闲期。
短距离无线通信和减少网络通信流量是通信子系统能量消耗控制的主要手段。传感器网络中普遍采用的级跳通信就是通过缩短通信距离,降低发射功率的方法实现能量节省的;数据融合则是通过减少网络流量达到降低能量消耗的目的。
数据冗余是保证即使个别节点或部分通信链路失效时,基站仍能获取完整数据的有效手段;然而,直接传输原始数据则会严重增加网络通信量,造成大量无为的能源消耗。簇首数据融合是消除冗余数据,减少网络通信量的有效手段之一。传统的簇首数据融合方式中,簇首节点接收簇内各节点传来的数据,然后通过内容检查并消除冗余后将结果数据上传基站。此种方式仅是降低了数据路由过程中的能源消耗,对簇内数据传输的节点能源消耗问题没有影响。
如图2所示,基于安全模板的数据融合机制,是通过少量数据传输替代大量数据传输的方法来更进一步地降低簇内的网络通信量[5]。其中,传感器节点并不直接传输采集数据,而是用从簇首节点接收到的安全模板生成采集数据的组合代码后再上传;簇首节点接收到传感器节点上传的代码数据,检查冗余后有选择地向部分传感器节点申请传输实际数据,以有效降低簇内的网络通信量。最后,簇首节点从选定的传感器节点接收到无冗余的采集数据并直接上传基站。
图2基于安全模板的数据融合
基于安全模板的数据融合机制是对传统数据融合机制的有益补充,使整个网络的能源消耗更加合理,安全模板还可减化数据加密算法,更进一步地降低能源消耗。不过,模板种子的更换频率太慢会严重影响到网络安全,太快又可能造成不必要的模板数据传输,频繁唤醒传感器节点进行模板数据处理,导致无为的能源消耗。因此,此方法的有效性取决于网络数据冗余的量,和冗余数据传输与模板数据传输/处理的能源消耗比例。
2 能量攻击防范
传感器网络节点无人值守、资源有限的固有特性,使其遭受的攻击范围和形式更加多样化。与常规的资源消耗攻击有所不同,能源攻击即是针对节点能源的有限性,不以消耗节点的计算和存储资源为目的,而是着重消耗节点的能量。攻击者利用侵入节点,向网络注入大量的虚假数据,致使节点,尤其是路由节点,在大量的数据通信中耗尽能量而失效,从而导致整个网络瘫痪。由此而言,入侵者的首要目的是消耗路由节点的能量,其注入的虚假数据的传送距离越远,影响的节点数就越多。由于入侵者可能获得侵占节点的完全控制权,标准的验证机制对这类网络内部攻击的行为是没有作用的。
文献[6]提出的检出虚假数据机制,是在网络中设置汇流节点,并由汇流节点来认证传感器节点的身份和整合数据报,基站与汇流节点进行有效的分析和交互验证后检出虚假的数据报。该机制的重点是由基站检出入侵者注入的虚假数据以防止决策错误,而由于其不能减少虚假数据报的传送距离,故不能被用于能量攻击的防范措施。
为尽早检出和丢弃由被攻击节点注入的虚假数据包,以达到安全需要和降低由此产生的能源消耗,文献[7]将交互验证的思想进一步扩展,在簇首节点到基站的数据传送链路上的各个节点间建立关联关系,如图3所示,从而所有节点以一种交错的逐跳方式验证其要传递的数据包。只有t+1(t是设定的安全上限,取簇内的节点数)个节点全部通过认证,数据包才能被传递到基站,因此,只要被攻击的节点数小于等于t,基站或没有被攻击的节点就能检测出并丢弃由入侵者注入的虚假数据包。
图3节点关联示意图(t=3)
3 结论
涉及传感器网络软件、硬件各个层面的能量消耗问题至关网络生命周期。从网络构成及其运行过程而言,节点各个子系统的能量消耗又相互影响,此消彼长,针对单一子系统的能量消耗控制策略并不能从根本上解决问题。因此必须结合网络的应用环境,从器件选择、数据处理算法的有效性和复杂性、数据通信量和网络运行机制等方面兼顾各个子系统的功能特点和性能要求,整体上评估能量消耗问题,必要时甚至适当降低性能标准,以设计相应的消耗控制策略,有效延长网络生命周期。总体上而言,传感器网络能量消耗控制策略应着重从器件本身的功耗特殊性、休眠进入原则、缩短通信距离和减少网络流量这几个方面进行量化和设计。然而到目前为止,传感器网络的能量有效性还没有被模型化和量化,也不具有被普遍接受的标准,需要更进一步地深入研究。