APP下载

一种无线传感器网络区域式服务发现机制研究

2011-10-19唐诗奇闻志平

传感技术学报 2011年8期
关键词:数据包无线机制

唐诗奇,李 迅,闻志平

(国防科学技术大学机电与自动化学院,长沙 410073)

服务发现机制是指网络中各种程序和设备能够声明自己的功能以及提供的服务,而其它程序和设备则可以在权限范围内自动发现并访问所需的服务的一种机制[1]。服务发现机制可以建立资源和客户之间的连接,使能提供服务的设备可以实现自己的能力,需要服务的设备可以及时发现并得到服务,从而实现一切经由网络访问的处理能力和信息资源共享和配置优化。因此对无线传感器网络服务发现机制的研究具有重要的现实意义和理论意义[2]。由于无线传感器网络节点数量巨大,提供的服务也很多,如何在众多的数据和服务中发现服务并利用服务,实现用户与具体服务之间的直观通信,是实现无线传感器网络实际应用的关键。

SLP,UPnP,Salutation,Jini几种传统服务发现机制[3]都是基于有线网络开发的,协议中不论是服务提供者、还是服务需求者都具有较强的计算处理能力、通常不用考虑的能量问题、较充裕的网络带宽以及可靠的网络连接。而无线传感器网络中节点能量有限、计算处理能力很弱、带宽不足、无线通信可靠性差等诸多的特殊性,因此它们在无线传感器网络中都难以使用。

目前,应用于无线传感器网络的服务发现模型[4]主要有无目录和有目录两种结构。当节点数目巨大时,分布式无目录结构采用端对端通信,当多个客户需要同时查找多个服务时,网络传输数据量大,容易出现网络拥塞等问题,通信效能低下,导致网络能量的严重浪费损耗,使得本来就严峻的无线传感器网络能量困乏问题更加突出。目录式服务发现机制[5]中服务的提供者和使用者之间的主要访问过程是通过目录代理完成的,能够有效提高服务发现效率和系统可扩展性。文献[6]介绍了一种IPv6传感器网络服务发现应用系统设计。提出的目录式服务发现模型具有良好的可扩展性,在协议设计时也较好的考虑了协议的简洁实现,可以节约能量,但是由于它的分簇路由算法簇首一直不变更,导致簇首能量迅速消耗殆尽而失效,整个网络陷入瘫痪。

所以设计一种较完善无线传感器网络服务发现机制必须综合考虑可扩展性和安全性、效率及开销、服务信息的动态更新机制、底层通信平台等方面的问题。综合考虑本文提出了一种区域式的服务发现机制模型,在模型的基础上分析了对区域式无线传感器网络服务发现机制起支撑作用的分簇路由算法和数据融合算法,改进GAF算法形成了E-GAF算法,采用了感知器数据融合算法。

1 区域式服务发现模式设计

区域式无线传感器网络服务发现机制,是一种基于位置信息将传感器节点划入相应的单元格,即簇的服务发现机制。只有基于区域式的服务发现机制才能与无线传感器网络以数据为中心和实现监测、控制的应用属性相对应。区域式无线传感器网络服务发现机制的主要思想是采用分布式目录的系统构架,利用E-GAF分簇路由算法,将监控区域划分成若干虚拟单元格,将传感器节点按照位置信息划入相应的单元格;在每个单元格中定期根据剩余能量信息选举产生一个簇首节点,只有簇首节点保持活动,其它节点进入休眠状态,当有服务请求来临时,由簇首节点响应服务并唤醒其它节点,簇内节点感知到数据后发送给簇首,由簇首进行感知器数据融合,把融合后的信息返回给服务请求者。

区域式服务发现机制是将整个无线传感器网络划分为四个服务发现层次的分层式结构,基站作为整个无线传感器网络的顶层目录代理TDA(Top Directory Agent),网关作为二层目录代理SDA(Second Directory Agent),簇首作为基层代理BTA(Base A-gent)以及能够提供各种服务的普通传感器节点。主要定义了四种实体模块:节点实体模块,簇首实体模块,网关实体模块以及基站实体模块。

1.1 节点和簇首子模块

普通传感器节点主要负责采集数据,并将采集到的数据发送给簇首节点。它主要包括数据采集模块、数据处理和控制模块、通信模块和能量供应模块。控制模块主要负责接收簇首节点发来的控制命令,节点的休眠和唤醒、数据的采集处理、为客户端提供服务以及监控等。数据处理模块能够将传感器感知到的数据打包交给通信模块发送给簇首节点,在服务发现框架内数据处理模块需要根据服务描述规则,描述自己所能提供的服务的详细情况,并封装成服务通告,向所属的簇首节点注册服务。程序流程如图1所示。

簇首实体模块主要是负责本簇与网关的通信、综合本簇各节点的服务信息向网关注册本簇服务、节点唤醒、数据融合和将融合后的信息返回给客户;簇首是经过周期性能量选举产生的,具有和普通节点相同的硬件结构和所有功能。当节点成功当选为簇首时,数据融合算法、节点管理算法等就会被激活。程序流程图如图2所示。

图1 节点程序流程图

图2 簇首程序流程图

1.2 网关子模块

网关实体模块负责接收簇首节点发来的服务注册信息,然后综合本局部网络中所有服务信息向基站注册,同时响应基站服务请求命令,指挥本局部网络的簇首完成服务任务;网关软件结构图如图3所示。其中服务管理模块主要是为每一次服务发现应用会话过程提供数据包的解析、暂存以及管理服务注册过程,提供服务的注册、更新、删除等功能;协议转换模块是将无线传感器网络中使用的通信协议IEEE802.15.4和基站连接互联网的IP通信协议进行协议转换。在无线传感器网络体系中可以存在多个网关,因此本文把网关作为二层目录代理,实现简单的目录代理功能,一方面接收簇首节点发来的服务注册信息,然后综合本局部无线传感器网络中所有服务信息,提供本局部无线传感器网络内各节点所提供服务的注册,各网关的所有注册信息再汇总给基站,实现整个网络体系所能提供的服务的注册,以对用户服务请求信息做出正确响应;另一方面功能是简单的帧格式转换协议,实现将无线传感器网络内部使用的IEEE 802.15.4的数据帧格式和以太网帧格式相互转换。网关程序流程图如图4所示。

图3 网关软件结构图

图4 网关程序流程图

1.3 基站子模块

基站负责接收并处理以太网中客户发来的服务发现请求信息包,同时接收并储存网关提供的该局部WSN中所有节点能够提供服务的简要注册信息,并生成服务注册信息表,当客户向基站发来服务发现请求信息时,基站根据服务发现请求信息里的所需要的服务发现类型查找服务注册信息表,如果找到能够提供该服务的传感器节点,并且判断该类型节点当前可用,那么返回所有能够提供该服务的节点信息给用户,客户得到基站的信息反馈后,选择客户认为最好的节点,开始获得服务;如果未能找到能够提供该类型服务的节点或者该类型节点当前不可用,那么返回客户不可用信息。当客户端对某种服务或者某个提供服务节点的服务请求过多时,根据客户的优先级筛选出优先级较高的客户端进行服务。基站软件结构图如图5所示。基站程序流程图如图6所示。

图5 基站软件结构图

图6 基站程序流程图

总体服务发现流程框架图如图7所示。

图7 服务发现总体设计流程图

2 区域式服务发现支撑技术研究

2.1 GAF的改进算法E-GAF

对于网格环境中实现的路由算法[7-8]有很多。本文的区域式服务发现机制是基于网络分簇结构和地理位置信息而提出的,必须使用一种基于地理位置信息的分簇路由算法。由于节点处于侦听状态也会消耗很多能量,GAF算法[9]使节点尽量处于休眠状态可以节约很多节点能量。但是假设最坏的情况,开始当选簇首的节点在后来的簇首竞选中一直获胜,那么它的能量将迅速消耗殆尽,导致本簇内部所有节点和网关无法通信而失效,无法提供服务,这是一种严重的浪费。因此在GAF算法的基础上本文提出一种基于能量选举的分簇路由算法E-GAF,目的是使得各节点的能量消耗达到均衡,延长无线传感器网络的生存周期。

E-GAF分簇路由算法的具体分簇流程如图8所示。

图8 E-GAF分簇路由算法具体分簇流程

2.2 感知器数据融合算法

区域式服务发现机制是针对无线传感器网络以数据为中心的特点,即客户并不需要知道每个节点的数据,只关心某个区域内的数据,同时无线传感器网络存在能量约束,减少传输的数据量能有效的节省节点的能量,因此在从各个传感器节点收集数据的过程中,需要利用节点的本地计算和存储能力处理数据的融合,去除冗余信息,从而达到节省能量的目的,提高信息的准确度。数据漏斗模型属于估计融合算法的一种[10],能够大大减少网络中传输的数据包,降低带宽占用率,提高通信效率,增强服务发现的实时性,符合无线传感器网络区域式服务发现模型的特点[11]。

感知器数据融合算法,就是一种基于数据漏斗模型的算法,即自适应加权数据融合算法[12],采用权值W表示各个测量数据的相对重要程度。精度高的数据误差小,权重值应该更大;而精度低的数据误差大,权重值应该较小。将测量数据按照精度分别乘以权重值再进行平均值处理,有利于提高测量结果的准确性。在一个簇内各节点的传感器对应不同的权重值,在总均方误差最小这一最优条件下,根据各个传感器的历史测量值找到其对应的最优权重值。节点在提供服务时,发送数据到簇首,簇首根据各节点的最优权重值,使融合后的感知数值达到最优。

假设有n个传感器节点,各个节点的传感器的方差分别为 σ21,σ22,σ2n,传感器的测量值分别为X1,X2,…,Xn它们彼此互相独立,并且是X的无偏估计,各传感器的加权因子分别为W1,W2,…,Wn,则有:

故σ2可写成:

由式(4)可以看出,总均方差σ2是关于加权因子的多元二次函数,因此它必然存在最小值。可求出总均方误差最小时所对应的加权因子为:

将式(5)代入式(4)得到对应的最小均方误差为:

因此本次数据融合结果,也就是估计值值为

节点感知到数据,发送给簇首节点,簇首节点将本簇内数据融合完成以后,将融合得到的数据发送给网关,网关同样根据感知器数据融合算法,把各簇首返回的数据融合以后再传输给基站,从而完成服务。

3 算法仿真分析

本文在NS2平台上进行仿真,仿真环境如下:在1 000 m×1 000 m范围内,设定节点位置固定。根据Deborah Estrin在Mobicom 2002会议上的特邀报告 (Wireless SensorNetwork,PartⅣ:Sensor Network Protocols)中所述传感器节点各部分能量消耗的情况,假设发送一个比特的数据所消耗的能量约为4 000 nJ/bit;接收一个比特的数据所消耗的能量约为3 000 nJ/bit;监听所消耗的能量约为2 500 nJ/bit;休眠所消耗的能量约为50 nJ/bit;数据一跳的最大距离R=100 m。数据包长度为128 bit,控制包长64 bit。

3.1 E-GAF算法仿真分析

仿真试验设置网络节点数目为400个,单元格为40个,每个单元格有10个节点,数据包长度为128 bit,控制包长64 bit。节点的初始能量均为1 000 J,当节点剩余能量为100 J时视其为死亡节点。仿真中设置5 min为一个周期,一个周期内完成一次分簇过程需要大约5 s,使数据传输时段约为295 s,远大于分簇时段。一个周期完成后,开始下一个周期,5 s内完成下一簇首选举。仿真时间为1 h(12个周期)。仿真采用传统路由算法DSR[13]、GAF 算法以及E-GAF 算法,通过比较节点失效个数来比较三种无线传感器网络网络生存周期。如图9所示。

图9 节点失效个数比较

由图9可知,相比前两种算法,同一时刻,E-GAF算法网络中出现的是失效节点数最小。节点失效情况在45 min以前变化都是非常缓慢的,45 min以后网络网络开始出现失效节点。失效节点曲线坡度最大,大部分节点能量接近失效,表明网络中大部分节点出现了能量消耗,能量消耗相对于其他两种算法更加均匀。当接近60 min时,失效节点数达到200,视为网络失效。采用E-GAF算法网络的生存周期远长于其他两种算法。

3.2 感知器数据融合算法仿真分析

本实验中采用了相同的服务发现机制进行了仿真实验,服务发现机制中采用了E-GAF分簇路由算法,分析采用了感知器数据融合算法,没有采用感知器数据融合算法两种方式在数据包损失概率和网络能耗方面的性能差距。实验中采用在总节点数相同的情况下各仿真20次取平均值,每次仿真时间均为100 s。仿真实验数据如图10所示。

图10 数据包损失概率比较

当节点数在50~130之间时,两种算法的数据包损失概率都在10%以下,表明区域式服务发现机制在密度较大的无线传感器网络中具有较低的数据包损失概率。随着节点密度进一步增加,采用感知器数据融合算法的服务发现机制的数据包损失概率,明显小于没有采用数据融合算法的服务发现机制。可见在节点密度很大的无线传感器网络中,引入感知器数据融合算法的区域式服务发现机制能够提高包的传送概率。

当网络节点密度过大时,数据包传输量急剧增加,数据包冲突十分频繁,导致网络数据包损失概率较高,区域式服务发现机制的分簇结构使得数据包传输更加有序,有效地减少了数据包传输量,降低了数据包遗失概率。而簇内引入的感知器数据融合算法能有效地除去冗余节点和冗余信息,大大降低了数据包传输量,进一步降低了数据包损失概率。

设定单元格数量为20个,仿真时间为100s,单元格内节点个数以5递增,仿真结果如图11所示。

图11 单元格数量固定时下单个节点能耗的比较

无线传感器网络各节点将数据发送到簇首,如果不采用数据融合算法,那么由于冲突等情况,簇首节点需要发送多次数据包,这个次数绝对超过节点个数的;如果采用数据融合算法,簇首接收完数据包以后,仅需要发送少数几次,因为网络中传输数据量大大减少,数据包冲突大大减少,所以采用数据融合算法的网络能够节约将近一半的节点能量。该仿真表明使用感知器数据融合算法的网络,能够较好的降低网络能耗,随着节点密度的增加,这种效果更加明显。

上述两个仿真实验清楚的表明,感知器数据融合算法在不较大影响数据包传送概率的情况下,能很大程度的减少网络中能量的消耗,能更好的满足无线传感器网络服务发现机制的能量要求。

综上所述无线传感器网络区域式服务发现机制具有以下优势:

①采用的 IEEE802.15.4通信协议,只要在网关中内置了简单的协议转换程序,就可以实现外网的客户端与传感器节点之间经过基站和网关的间接通信,大大增强了无线传感器网络的兼容性和应用范围。

②使用双服务器方法,提高基站的健壮性,同时只要在基站上设置了安全保护功能,在未经基站授权或许可的情况下,采集到的数据就不可能流失出去,保证数据源及传感器节点的安全。

③采用分簇路由机制能够减少网络中传输的大量数据,减少冲突的可能,减少网络中带宽的使用,从而提高无线传感器网络服务发现的实时性,实现服务的快速响应。

④采用分簇路由休眠机制和数据融合机制能够减少网络中的数据量,使转发数据包的节点转发数据包减少,从而减少节点的能量消耗,延长网络的生存周期。

4 结论

本文提出了一种区域式无线传感器网络服务发现机制,该机制采用的有目录结构,使得网络结构层次分明,簇内数据传输有序进行,一方面增加了无线传感器网络的应用范围,有效提高了无线传感器网络的安全性,另一方面减少了网络中传输的数据量,减少了网络带宽的使用,减少了节点的能量消耗,提高了服务发现的实时性,实现了服务的快速响应,延长网络的生存周期。

对区域式无线传感器网络服务发现机制起支撑作用的分簇路由算法和数据融合算法进行了分析,改进GAF算法形成了E-GAF算法,采用了感知器数据融合算法。通过分析和仿真,从能量消耗等多方面论证E-GAF算法和感知器数据融合算法对区域式服务发现机制的支撑作用。仿真表明,感知器数据融合算法大大减少了无线传感器网络中传输的数据量,从而降低了网络节点的能量消耗,延长了网络的生存周期;同时降低了传输数据使用网络带宽,从而增加了服务发现的实时性,提高了服务质量。

[1]周晓,沈振宇,陈鸣.服务发现机制研究[J].计算机工程,V01.28,No.10,2002,10-12.

[2]周晓,沈振宇,陈鸣.服务发现机制的比较和分析[J].计算机工程与科学,V01.25,No.2,2003,56-60.

[3]Pierre-Guillaume Raverdy,RafikChibout.TheMSDA Multi-Protocol Approach to Service Discovery and Access in Pervasive Environments,Demo proposal[C]//Accepted for,Middleware 2005,Grenoble,France.

[4]Christian Frank,Vlado Handziski,Holger Karl.Service Discovery in Wireless Sensor Networks[J].2004.03.

[5]雷万保,朱怡安,钟冬.服务发现机制研究进展[J].计算机应用研究,2009,5:1604-1605.

[6]黄琼.IPv6传感器网络服务发现系统的设计与实现[D].北京交通大学硕士学位论文,2006.12.

[7]魏伟,史浩山,刘明.传感器网络分层多路径路由协议[J].传感技术学报,2007,20(6):1353-1361.

[8]毛郁欣,魏贵义.基于多反馈路径的无线传感器网络安全路由机制[J].传感技术学报,2010,23(10):1486-1490.

[9]Xu Y,HeidemannJ,EstrinD.Geography-Informed Energy Conserva-tion for Ad Hoc Routing[C]//Proc 7th Annual Intel Conf on Mobile Computing and Networking(MobiCOM),Rome,Italy.July 2001,70-84.

[10]Eduardo F N,Antonio A F L,Alejandro C F.Information Fusion for Wireless Sensor Networks:Methods,Models,and Classifications[J].ACM Computing Surveys,2007,39(3): - .

[11]Petrovicd,Shahrc,Ramchandran K,et al.Data Funneling:Routing with Aggregation and Compression for Wireless Sensor Networks[C]//Proc of the 1st IEEE.2003:156-162.

[12]Kong F T,Chen Y P,Xie J M,et al.Distributed Temperature Control System Based on Multi-Sensor Data Fusion[C]//Institute of Electrical and Electronics Engineers Computer Society,Guangzhou,China:Piscataway,NJ 08855-1331,United States,2005.494-498.

[13]Wang Jin,Cho Jinsung,Lee Sungyoung,et al.Hop-Based Energy A-ware Routing Algorithm for Wireless Sensor Networks[C]//IEICE Transactions on Communications,No.2:305-316,2010.

猜你喜欢

数据包无线机制
二维隐蔽时间信道构建的研究*
基于Jpcap的网络数据包的监听与分析
《无线互联科技》征稿词(2021)
无线追踪3
基于ARM的无线WiFi插排的设计
SmartSniff
自制力是一种很好的筛选机制
ADF7021-N在无线寻呼发射系统中的应用
破除旧机制要分步推进
注重机制的相互配合