无线传感器网络的数据分发技术

时间:2022-08-12 04:56:41

无线传感器网络的数据分发技术

摘要:无线传感器网络通常由能量有限的大量传感器节点组成,数据分发是无线传感器网络的一个基本功能。设计能量有效的数据分发方案可以优化数据传输路径,减少能量消耗和网络拥塞,有效延长网络寿命。文章在简要介绍数据分发分类的基础上,重点分析了目前主要的数据分发方案,并进行了比较。

关键词:无线传感器网络;数据分发;能量有效;sink节点;方案

0引言

无线传感器网络是由许多具有感知、计算和通信能力的低成本低功耗的微型传感器组成,用于实时感知和采集网络覆盖区域内的感知对象的信息,常常由成百上千个传感器协同工作。这些传感器一般可分成两类:一是具有通信能力的传感器节点,称为源节点。源节点通过内置的一个或多个物理传感器,如温度传感器、光传感器等,可对观察范围内的感知对象产生原始数据。这些节点靠不能补充能量的电池供电,具有有限的能量。二是网关节点,也称为sink节点(或基站),这些节点用于实现传感器网络与Internet的连接,往往个数有限,但能量能够得到补充。无线传感器网络的主要目的是从监测环境中收集用户感兴趣的数据,发送给sink节点。因此,数据分发是无线传感器网络的一个基本功能,而带宽和能量是传感器网络中最为缺乏的资源,为了延长网络的生存时间,设计能量有效的数据分发方案是至关重要的。

1 数据分发的分类

在传感器网络中,数据分发的分类有三种。而一种是按照数据传输的方向,分为三类:

(1)源节点到sink节点的数据分发。源节点把探测到的感知数据发送给sink节点。

(2)源节点之间的数据分发。当源节点之间需要协作时,由请求源节点发送消息给需要合作的其他源节点。

(3)sink节点到源节点的数据分发。sink节点可以改变部分或全部传感器节点的操作模式,向网络中广播一条新的消息,激活或睡眠一个或多个源节点,向网络中发送查询等。

第二种是根据通信周期,分为三类:

(1)事件驱动(event-driven)数据分发。只有在感兴趣的事件发生时才构建路径,发送数据,从而减少了持续更新路径的费用。

(2)连续数据分发(confinuous dissemination)。每个源节点定期地发送数据给sink节点,需要定期重建路径。

(3)查询驱动数据分发。只有sink节点需要查询时,才构建数据分发路径,符合条件的源节点响应查询,并将感知数据发送给sink节点。

第三种是根据应用类型,也分为三类:

(1)固定源节点与固定sink节点间的数据分发。源节点与sink节点一旦配置好,它们的位置就不再改变,直到网络终止,这是使用最广泛的数据分发。

(2)固定源节点与移动sink节点间的数据分发。用户使用如PDA等移动设备在感知区域内移动,通过查询源节点来获取有关对象的当前状态或近来目标活动的概况。

(3)移动源节点与移动sink节点间的数据分发。可用于监测和跟踪移动目标的传感器网络。

2 数据分发方案

无线传感器网络的主要功能是实现数据分发,而有效、可靠的数据分发关键在于建立数据传输路径。设计能量有效的数据分发方案可以优化数据传输路径,减少节点能量的消耗和网络拥塞,提高数据传输性能,有效延长网络寿命。近年来,许多研究者注意到了数据分发的重要性,并提出了许多数据分发方案,其中具有代表性的有以下几种。

2.1基于外部存储的数据分发方案(External Storage-baseddata dissemination scheme,ES)

这是使用最广泛的一种方案,它依赖于一个位于传感器网络外部的集中式基站,该基站用于收集和存储感知数据。这种方案必须把源节点的所有感知数据通过泛洪传送给基站,用户通过查询基站来获取数据。但当查询过多时,ES数据分发方案将非常低效。

2.2基于数据中心存储的数据分发方案(Data-Centric Stor-age-based data dissemination scheme,DCS)

当源节点监测到事件的感知数据时,源节点向它的相邻节点广播感知数据的描述信息,感兴趣的节点发送相应的请求给源节点,源节点才向请求者发送数据信息,接收到数据的节点再向它的相邻节点广播消息,如此重复,使所有节点都有机会接收到任何数据。因此,事件的感知数据可能被存储在网络中的部分或全部源节点上。但不管什么查询,数据都使用预定义的方式传送。这种方案缺乏适应性,并且在查询率较低时,可能会引起很多不必要的数据传输。

2.3基于本地存储的数据分发方案(Local Storage-baseddata dissemination scheme,LS)

源节点只有收到sink节点的查询时,才发送数据给sink节点,这样可以避免传输不必要的感知数据。这种方案需要建立一个sink-source的匹配机制,使sink节点容易找到持有所需数据的源节点,大多数采用的匹配机制遵循flood-response模式,需要在网络中泛洪某些控制消息。比如,在DirectedDiffusion(DD)中,sink节点把查询泛洪到整个网络中,沿途节点按需对各查询进行缓存,并根据查询计算梯度,使具有被请求数据的源节点知道把数据发送到什么位置。而在Two-TierData Dissemination(TTDD)中,由监测到某个事件发生的源节点以自身作为网格的一个分发节点构造一个网格,sink节点在本地发送泛洪查询请求到最近的分发节点,该节点再转发给邻近的分发节点,直到把查询请求发送到该源节点,数据再反向传送到sink节点。LS数据分发方案由于需要大范围的网络泛洪,可能会引起严重的网络阻塞和大量的能量消耗。

2.4多级数据分发方案(Multi-Resolution data dissemination scheme,MR)

这是综合LS和DCS数据分发技术的一种数据分发方案,其基本思想是在数据源中选择一个头节点,代表数据源中所有源节点在最近的注册节点上进行注册,sink节点把查询发送到所有注册节点上,从注册节点再把查询发送到所有匹配的头节点,当头节点收到查询后,使用局部节点选择算法在数据源内选择一组节点进行查询。由于sink节点的位置包含在它分派的查询中,查询节点可以直接把感知数据发送给sink节点,如图1所示。这种数据分发方案避免了查询泛洪,能有效减少能量消耗,而且通过减少冗余数据的分发进一步达到节省能量的作用。但是在数据源中只是基于感知范围参数来选择查询节点,没有考虑数据的分布情况。

2.5基于索引的数据分发方案(Index-based Data DisseminationScheme,IDDS)

为了克服以上几种数据分发方案存在的问题,提出了基于索引的数据分发方案。在这种方案中,负责监测某对象的源节点定期产生有关该监测对象的感知数据,并把感知数据存储到存储节点(storing nodes)3:,存储节点可能是该源节点,也可能是邻近的某个节点。同时,存储节点的位置信息,称为索引(Index),要增加到与监测对象有关联的某些节点上,这些节点称为索引节点(Index nodes),并在索引节点上进行维护。当被监测对象移动时,要改变相应的监测源节点。但是,新的监测节点仍然使用原来的存储节点保存感知数据,直到监测节点离存储节点很远时,才选择新的存储节点。当选择了一个新的存储节点时,原来的存储节点处理以前存储的数据,产生一个汇总数据,发送给新的存储节点。如果不汇总以前的数据,新的存储节点可以使用一个指针指向原来的存储节点,这样,从当前存储节点也可以访问以前的数据。并且,新的存储节点也应在与该监测对象有关的索引节点上注册它的索引。

当sink节点想查询某个监测对象的感知数据时,就发送一个查询消息给与监测对象有关的索引节点,索引节点收到该消息后转发该请求给相应的存储节点,由存储节点直接发送查询结果给sink节点,存储节点只有接收到sink节点的查询时,才发送数据给sink节点。其基本思想如图2所示。这种数据分发方案避免了发送不需要的感知数据,也不需要把控制信息泛洪到整个网络,改善了整个系统的性能,但是增加了维护索引节点的额外费用。

3 数据分发方案的比较

根据上一节的说明和分析,表1对以上5种数据分发方案的特点进行了总结和比较。方案特点包括:是否建立最佳数据分发路径;是否存在影响数据分发的关键节点;是否支持sink节点移动;是事件驱动、查询驱动还是连续数据分发;数据分发所需的通信量、计算量和存储量。

4 结束语

由于传感器网络节点的能量非常有限,因此,在数据分发时应尽可能地节能。基于泛洪的方法虽然简单、可靠,但最为耗能。为了降低能耗,延长网络的生存时间,己提出了一些能量有效的数据分发方案。本文对几种典型的数据分发方案进行了说明和分析,并归纳、总结和比较了它们的特点。

上一篇:数字水印技术在电子签章中的应用 下一篇:支持协同工作的工作流系统模型及其框架