传感器网络中的数据聚合技术研究
2017-09-12程文静��
程文静��
摘 要:在传感器网络中,数据通信消耗了网络的大部分能量。因此,如何使数据在本地进行计算或各种方式的聚合以减少数据通信量成为无线传感器网络中数据处理工作的核心技术之一。讨论了几种不同的数据聚合方法以及其中涉及的路由协议和聚合函数,并通过一系列定义的参数把它们比较和总结。
关键字:传感器网络;数据聚合;路由协议;聚合函数
中图分类号:TB 文献标识码:A doi:10.19311/j.cnki.16723198.2017.21.096
传感器网络中的数据聚合技术旨在把源节点或者中间节点上的多个数据合并在一起,形成高质量的信息,以此尽量减少网络中的通信量。在较早的研究中,网内聚合技术的着重于通信协议的设计,通过选择合并数据包的最优路径来实现。最近的研究中,出现了一些更高效的方法,提出了新的数据表达方式,并且能够支持更复杂的聚合功能。
1 影响网内聚合的因素
网内聚合方法的主要性能指标包括生存时间、数据准确率和延迟时间。
网络生存时间指定了直到a%的传感器节点死亡为止的数据传输的轮数,a由应用需求决定。总体来说,网络生存时间和能源效率是一致的,因此能效的提高可以延长网络生存周期。
数据准确率取决于具体的应用,即网络设计的目的,路由方案和聚合算法的效率。
延迟描述了数据传输和聚合过程中的延迟状况。它可以由数据包到达基站及在源节点产生数据的时间延迟来定义。
网内聚合技术和三方面有关:路由协议、聚合函数和数据结构。在传感器网络中,网内聚合技术和路由方案是紧密结合在一起的,在目前已经开发出来的一系列协议中,“以数据为中心”的路由协议是比较重要的一种类型。该协议是基于查询的,由被查询数据的命名决定。它通过减少冗余、最小化消息的尺寸和数量来实现不同传感器节点之间的数据聚合,以此来节省网络能量,延长网络生存时间。
数据聚合函数是网内聚合技术的另一个重要方面。它决定了如何根据具体需求来合并数据。这些函数包括去除冗余、求最大值max、求最小值min、求平均值average和一些复杂的函数,如求中间值median和整体值holistic。在本文中,通过两种主要的范例来考虑对这些函数的分类:
无损耗和有损耗的聚合:无损耗聚合允许把单个数据项在一个较大数据包中连接起来,发送之后在基站可以把这些数据元素恢复出来,也就是说,没有数据会丢失。相反,对于有损耗聚合,在路由过程中存在数据值的合并,因此之后在基站中无法重建原始的数据元素。例如,对于大多数方法来说,min,count和average是有损耗的,因为数据值在路由过程中被进行了聚合操作,因此在整个查询过程中,聚合的数据元素的尺寸始终和原始数据的尺寸是一致的。也就是说,整体数据的尺寸大大的减小了。相反,函数median是无损耗的,因为数据聚合只有在所有原始数据都到达基站之后才能进行,因此在每个中间节点,多个小数据包中的数据元素被混合在一个较大的数据包中,没有数据尺寸的减小。
冗余敏感性:对冗余不敏感的聚合如min和max不受冗余数据的影响,而对冗余敏感的聚合如sum和count,它们的最终结果受冗余数据个数的影响。
除了上述提到的常见的聚合函数之外,还有一些关于旨在发掘传感数据相关性的其他聚合算法的研究。相关性为网内聚合的发展带来了重要的效率。
影响网内聚合的第三个因素是存储、聚合或者传输数据的数据结构。一个数据结构的详细设计取决于应用程序的需要,目的在于用合适的方式表达不同传感器节点上的数据对于网内聚合技术来说,这三个因素都得考虑到。然而较早的研究主要集中在开发基于传感器节点特征、结构和应用需求的路由协议上。近期的研究更多地集中在聚合函数和数据结构上。
2 两种典型的数据聚合方式
2.1 基于水平路由的数据聚合
Directed Diffusion是数据聚合和“以数据为中心”的路由思想发展的里程碑。在这种方法里,数据以属性-数值对来命名。它提供了一个对应用程序有意识的路由方案,尤其适用于以下情况:有一个或多个下沉节点(注入查询的节点)将查询(任务)传播到网络中的所有节点,来获取特定信息(事件)。例如,“在接下来的T秒时间内,每I毫秒汇报一次区域R中的所有四条腿动物的估计位置”。
一个传感任务的“兴趣”定义为一个属性-数据对的列表,包括如对象的名称、时间间隔、持续时间和地理位置。在本方法中,下沉节点在网络中注入一个兴趣,并沿着它的邻居节点传播下去。在传播过程中会建立多条候选路径,这些路径也是之后传感器节点至下沉节点的数据返回路径。产生满足兴趣的事件的节点被称为源节点,它产生的数据包沿着之前形成的候选路径传送到下沉节点。当一个中间节点收到一个数据包时,它先检查自己产生的包是否包含可能来自相同事件的相似的数据,来进行聚合,然后新产生的数据包被传回下沉节点。当所有节点都到达下沉节点后,网络会加强一条或几条路径。其他路径被忽略,因此冗余数据包会减少。之后下沉节点会沿着加强路径重新发送一个修正过的兴趣到节点,这个兴趣的数据汇报时间间隔变短。如此,源节点会以一个较高的速率发送数据包。选择加强路径的规则由应用程序本身的特点决定,比如需要低延迟率或者需要接收到较多的数据包。
在水平路由的网络中,所有的节点角色相同,而在层次结构网络中,节点被进行了分组,属于不同的层次,被分配了不同的任务,接下来介绍其中的一种结构。
2.2 基于树结构的数据聚合
在一个基于树形结构的传感器网络中,节点被组织成一个树形结构,其中基站是根节点,传感数据从叶子节点传输到根节点,并且可能在中途节点进行聚合。最具有代表性的树形聚合方法为TAG(Tiny AGregation)。
TAG方法集成于TinyDB系统中,是為监控应用设计的,采用了“以数据为中心”协议方式,它为聚合查询提供了一个类似于SQL的接口。TAG的实现包括两个阶段:“分配”和“收集”。在“分配”阶段,聚合查询在全网内传播,一个节点被选为根,它通过广播消息告诉其它节点组成一棵路由树,建立一个树形路由方案。每个节点产生的消息包含自己的节点ID和举例根的层数。当一个没被标识层数的节点收到一条消息,它就把自己的层数标识为该消息中的层数加1,并且把该消息来源的节点看作自己的父节点。通过这种方法,所有节点就组成了一棵树,之后的查询就沿着这棵树进行。在“收集”阶段,收集的数据沿路进行适当的聚集,最终传送到根。除了常见的几种聚集函数,TAG还支持另外四种对传感器网络来说很重要的函数,如单调性和局部状态。endprint
除了TAG之外还有一些基于树形的路由协议也各具特色。但是这些所有的方法都和TAG相似,缺点在于路由结构的健壮性较弱。
3 结论
本文介绍了传感器网络中最重要的数据处理技术,即网内聚合的相关研究。根据影响网内聚合的因素,总结了两种最典型的数据聚合方式,及基于水平路由的聚合和基于树型结构的聚合。前者的优点在于事先不需要了解网络拓扑的全局知识,因为节点之间可以通过建立候选路径和加强路径来很好地彼此交互。另外,由于建立了多条传输路径,通信的健壮性很可靠,显著地降低了数据丢失率。因此,这种方式适用于频繁动态变换的网络,比如追踪应用,而不适合于需要持续传输数据的环境监控应用。后者的优点在于使用了类SQL接口。用户不需要了解数据是如何进行聚合的,而只需要在查询时调用相应的聚合函数即可。另外,同步机制使用的传感器状态转换模式也可以节省能量。然而,缺點在于一个失败的节点可能导致其整个子树和其父节点的失联。因此,在频繁的节点失败或者拓扑变化的状况下,TAG不是一个高效的方法,因为频繁的路由树重组会消耗大量的能量。
参考文献
[1]R. Rajagopalan. Data aggregation techniques in sensor networks: A survey[J]. IEEE Communications Surveys & Tutorials, vol. 8, no. 4, pp. 4863, 2010.
[2]E. Fasolo. In-network aggregation techniques for wireless sensor networks: A survey[J]. IEEE Wireless Communication Magazine, vol. 14, no. 2, pp. 7087, April 2012.
[3]I. Solis. The impact of timing in data aggregation for sensor networks[C]// In Proceedings of IEEE International Conference on Communications, vol. 6, pp. 36403645, June 2010.
[4]T. Abdelzaher. Feedback control of data aggregation in sensor networks[C]// In Proceedings of IEEE Conference on Decision and Control, pp. 14901495, December 2012.
[5]S. Madden. TAG: a tiny aggregation service for ad-hoc sensor networks[C]// In ACM SIGOPS Operating Systems Review, vol. 36, pp. 131146, December 2010.
[6]C. Intanagonwiwat. Directed Diffusion: a scalable and robust communication paradigm for sensor networks[C]// In Proceedings of the 6th annual ACM/IEEE international conference on Mobile computing and networking, pp. 5657, August 2010.endprint