无线传感器网络TPSN协议的改进刘俊(中国矿业大学计算机科学与技术学院,江苏徐州221116摘要:针对无线传感器网络TPSN同步协议能耗问题,提出一种改进的同步算法,该算法结合了TPSN协议和RBS协议的特点,利用无线信道的广播特性,在两个节点广播域里的所有节点通过监听这两个节点之间的分组交换而达到同步。仿真实验证明,该算法降低了整个网络的能量消耗。关键词:无线传感器网络;TPSN;时间同步中图分类号:TP393ImprovedAlgorithmofTPSNforWirelessSensorNetworksLiuJun(SchoolofComputerScienceandTechnology,ChinaUniversityofMiningandTechnology,XuzhouJiangsu221116,ChinaAbstract:ConsideringtheenergyconsumptionofTPSNinwirelesssensornetwork,animprovedalgorithmthatcombinesthefeaturesofTPSNandRBSprotocolwaspresented.Usingofthebroadcastnatureofwirelesschannel,allthenodesinthebroadcastdomainoftwonodescanachievesynchronizationbymonitoringthepacketsexchangebetweennodes.Simulationresultsshowthatthealgorithmreducestheenergyconsumptionoftheentirenetworks.Keywords:wirelesssensornetworks;TPSN;timesynchronization0引言无线传感器网络是一种新的分布式系统,节点之间相互独立并且以无线的方式通信,每个节点都维护一个本地计时器,计时信号由廉价的晶体振荡器提供。由于晶体振荡器制造工艺的差别,并且其在运行过程中极易受到电压、温度以及晶体老化等多种偶然因素的影响,每个晶体的频率很难保持一致,进而导致网络中节点的计时速率总有偏差,造成网络中节点时间的失步[1][2]。为了维护节点本地时间的一致性,必须进行时间同步操作。目前,无线传感器网络时间同步需要重点解决的问题主要有以下三个方面[1]:(1如何设计时间同步协议,使得同步精度尽可能高;(2如何设计满足应用需求的低功耗的时间同步协议,以尽可能延长网络寿命;(3如何设计可扩展性强的时间同步算法,以适应不断扩大的网络规模和由此带来的系统动态性的增强。无线传感器网络时间同步协议TPSN[3](Timing-syncProtocolforSensorNetworks类似于传统网络的NTP时间同步协议,目的是提供传感器网络全网范围内节点间的时间同步。在网络中有一个与外界通信获取外界时间的节点称为根节点,根节点可装配如GPS接收机的复杂硬件部件,并作为整个网络的时钟源。TPSN协议采用层次型网络结构,首先将所有节点按照层次结构进行分层,然后每个节点都要与上层节点交换分组达到时间同步,最终所有节点都与根节点时间同步,由此可看出,下层有多少个节点,就需要与上层进行多少次分组交换,这样的同步方式消耗了很大的能量,因此本文在该协议的基础上,结合RBS协议分组广播性的特点,提出一种新的改进算法,这种算法能大大减少节点间分组交换的次作者简介:刘俊,(1985-,男,江苏连云港人,硕士研究生,主要研究方向:无线传感器网络.E-mail:liujuncumtcs@163.com数,从降低整个网络的能量消耗。1TPSN协议介绍TPSN协议假定每个传感器都有唯一的标识号ID,节点间的无线通信链路是双向的,通过双向的消息交换实现节点间的时间同步,TPSN协议将整个网络内所有的节点按照层次结构进行管理,负责生成和维护层次结构[4]。TPSN协议包括两个阶段:第一个阶段生成层次数结构,每个节点赋予一个级别,根节点赋予最高级别第0级,第i级的节点至少能够与一个第(i-1级的节点通信;第二个阶段实现所有树节点的时间同步,第1级节点同步到根节点,第i级节点同步到第(i-1级的一个节点,最终所有节点都同步到根节点,实现整个网络的同步。下面详细介绍该协议的这两个阶段。1.1层次发现阶段在网络部署完成后,根节点通过广播级别发现(leveldiscovery分组启动层次发现阶段,级别发现分组包含发送节点的ID和级别。根节点的邻居节点收到根节点发送的分组后,将自己的级别设置为分组中的级别加1,即为第1级,建立它们自己的级别,然后广播新的级别发现分组,其中包含的级别为1,节点收到第i级节点的广播分组后,记录发送这个广播分组的节点ID,设置自己的级别为(i-1,广播级别设置为(i-1的分组。这个过程持续下去,直到网络内的每个节点都赋予一个级别。节点一旦建立自己的级别,就忽略任何其他级别发...