0 引言
低功耗无线电通信技术、嵌入式计算技术、卫星传感器技术及集成电路技术的飞速发展和日益成熟,使得大量低成本的卫星传感器通过无线链路自组织成无线传感器网络成为现实。无线传感器网络具有自组织性、自适应性与容错性高等特点,在军事、工农业、生物医疗、环境监测等许多重要领域具有十分广泛的应用前景[1]。
无线传感器网络大量传感器节点(sensor node)和少数汇聚节点(sink node)组成。位于监测区域的传感器节点负责采集相关数据信息,最终将数据传送至汇聚节点,无线传感器网络是以数据为中心的,其目标是采集具有某种特征属性的数据,而不关心数据具体来源于哪个传感器节点。基于上述思想,数据库研究者把无线传感器网络抽象为数据系统,使无线传感器网络的物理实现与应用相分离[2]。由于无线传感器网络数据特点是数据量大、时效性强、网络节点在能量、计算、存储及通信能力方面存在局限性[3],所以良好的数据管理技术能够提高传感器节点协作感知、采集、处理、发布数据信息的效率,进而更好地确定无线传感器网络的可用性和有效性。
移动agent是一种分布式计算技术,具有很多优点。本文提出个一种基于移动agent技术改进现有的无线传感器网络数据管理模式的框架,利用移动agent不仅收集数据而且能够处理数据的特点,减轻数据管理中心负载,克服了当前数据管理方案的局限性。
1 移动agent机制[4]
移动agent是分布式计算技术和人工智能技术相结合的产物,本质上是一个程序实体,拥有一定的智能和判断能力,它可以自己的控制下,按照一定的规程在网络节点间迁移,寻找并处理合适的资源,代表用户完成特定的任务。agent在一个执行环境中被创建后,能够携带自身状态和代码在网络中迁移到另一个环境中恢复执行。
移动agent的特性主要体现以下几个方面:
a)自主性:agent一旦被初始化便可独立执行,无需后来的直接干预,agent控制自身的内部状态和外部行为,也可以被授权做出某种决定,完成相关的任务。
b)反应性:agent能感知和作用于其所处的环境,对环境的变化能做出及时的响应,这些环境可以是物理的世界、使用图形接口的用户、其他agent集合或所有这些的组合。
c)能动性:agent不仅能对所处环境做出响应,还能主动展现面向目标的行为。
d)通信性:agent之间的交互随任务驱动的变化而进行调整,彼此协作完成复杂的任务。
e)移动性:agent可在一个网络上随时、自主地实现节点间迁移,正在运行中的agent状态可以被存储且传送到目标节点,且中止agent程序可以被恢复执行。
2 数据管理体系结构
目前,无线传感器网络数据管理大多采用近似客户/服务器的数据处理模式[5],可分为集中式数据管理结构和分布式数据管理结构两种。
集中式数据管理结构的特点是感知数据的处理和无线传感器网络的访问是相对独立的,各传感器节点感知的数据经多跳后路由至汇聚中心或服务器处理,网络的数据管理决策由处理中心负责,这种方法很简单,但是由于所有传感器的数据都要求传送到中心处理节点,通信开销很大,使用范围较小。
分布式数据管理结构又称网内处理结构。考虑到无线传感器网络节点的大规模分布,大量冗余信息传输可能造成的能耗损失及较大的通信开销,因此分布式数据关系结构特点是网络中部分传感器节点除负担数据转发任务外,还负责部分的数据管理任务,如执行聚集操作等。
3 基于移动agent的数据管理框架
在支撑传感器网络实际数据服务环境中,上述体系结构在占用网络带宽、负载平衡以及因节点失效而动态调整数据处理策略等方面尚存在不足[6]。
基于移动agent的数据管理思想是利用agent将网内数据驻留在获取它的节点上,通过agent或计算引擎将特定信息需求的代码及状态在网络中传播与处理,并将最终的信息返回给数据管理中心(汇聚节点或中心服务器)。
基于移动agent的无线传感器网络如图1所示。
来源:互联网