无线传感网络–拓扑控制0拓扑控制的概念与意义概念拓扑控制(topologycontrol)是一种协调节点间各自传输范围的技术,用以构建具有某些期望的全局特性(如,连通性)的网络拓扑结构,同时减少节点的能耗或增加网络的传输能力。意义1、减少节点的通信负载,提高通信效率;2、减少网络耗能,延长网络寿命;3、辅助路由协议;1拓扑控制的研究方向WSN中拓扑控制可以分为两个研究方向:功率控制和层次拓扑结构控制。功率控制机制调整网络中每个节点的发射功率,保证网络连通,在均衡节点中直接邻居数目(单跳可达邻居数目)的同时,降低节点之间的通信干扰。层次拓扑控制是利用分簇思想,使网络中的部分节点处于激活状态,成为簇头节点。由这些簇头节点构建一个连通的网络来处理和传输网络中的数据,并定期或不定期地重新选择簇头节点,以均衡网络中节点的能量消耗。2拓扑控制与网络体系的关系思考一个问题?拓扑控制是否一个单独的技术?它与MAC层、链路层、网络层、应用层等有没有联系?MAC协议:基本任务是节点共享网络媒体的接入问题,为两个节点的MAC层实体之间提供可靠的数据链路。数据链路层:主要任务是完成组帧、差错控制、流量控制、功率控制、链路管理。网络层:提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若直干个中间节点传送到目的端,从而向传输层提供最基本的端到端的数据传送服务。具体功能包括寻址和路由选择、连接的建立、保持和终止等。3拓扑控制的评价指标连通性在没有拓扑算法前,两个节点之间存在k条路径,那么使用拓扑算法后,这两个节点中也应该有存在k条路径。覆盖性覆盖问题中,最重要的因素是网络对物理世界的感知能力。吞吐量化简后的网络拓扑结构应该能够支持与原始网络相似的通信量。扩展性(网络容量)减少数据传输节点所能影响的邻居节点的数量,减少节点通信的传输范围,可以有效减小网络中的冲突域,从而降低通信冲突的概率。相反,网络中的冲突就越多,节点通信也就更容易发生数据丢包或重传现象。鲁棒性网络发生变化时,一些节点可能会变化它们的拓扑信息,显然,鲁棒的拓扑结构只需要进行少量的调整,这样可以避免对本地节点的重新组织而造成整个网络的波动。4实现拓扑控制的手段1、在保证网络的连通性与覆盖性的情况下,控制节点的发射距离,减少发射功耗,同时减少分组冲突的可能性,减少协议不必要的开销;2、尽可能让多的节点进行休眠,降低功耗;3、数据融合,减少分组的冗余。5拓扑控制的表现1、网络寿命:尽量降低网络能耗,延长网络生存周期;2、减小节点通信负载,提高通信效率:传感器节点分布密度一般比较大,通过拓扑控制技术中的功率控制技术可以通过选择节点的发射功率合理调整节点的通信范围,使得节点在连通性与覆盖性得到一个平衡点。3、辅助路由协议:只有活动的节点才能进行数据转发,而拓扑控制可以确定由哪些节点作为转发节点,同时确定节点之间的邻居关系。4、数据融合策略的选择;5、节点冗余:由于传感器节点本身固有的脆弱性不能保证节点一直持续正常工作。6拓扑控制的应用效果7拓扑控制的分类8•1、概述与算法•2、适用环境•3、优缺点•4、实际应用的问题•5、协议改进突破口如何理解一个协议?9基于位置的拓扑控制算法-邻近图基本思想设所有节点都使用最大发射功率发射时形成的拓扑图G,按照一定的邻居判别条件q求出该图的邻近图G',最后G'中的每个节点以自己所邻近的最远通信节点来确定发射功率。经典的邻近图算法RNG、GG、DG、YG、MST、DRNG、DLMST、DLSS10DRNG与DLSS算法第一步:每个节点以最大的发射功率广播HELLO信息,该信息至少包括:节点ID号、最大的发射功率、自身的位置。节点在收到HELLO信息后,确定了自己可以达到的邻居集合。第二步:DRNG与DLSS以各自的邻居算法确定邻居集合,DRNG以与它节点最近的邻居节点选择优先;而DLSS最小化了图中所有边的最大能量消耗,并取单跳距离的节点作为其邻居节点。第三步确定邻居节点后,将发射半径调整到最远邻居节点的距离,进一步通过对拓扑图的边进行增删,使网络达到双向连通。11邻近图算法仿真结果对比12基于方向的拓扑控制算法基于方向的功率控制:这种方法通常需要节点配备多个有向天线,以精确的获得可靠的方向信息来解决到达角度问题。微软亚洲研究院和康奈尔大学的Li等人提出了一种能够保证网络连通性的基于圆锥的拓扑控制算法(CBTC)。基本思想是:节点u选择最小功率P,使得在在任何以u为中心且角度为a的锥形区域内至少有一个邻居。并且理论证明了当时,就可以保证网络的连通性。13dGtGrPrPt发送接收14基于邻居的拓扑控制算法基于节点度数(邻居)的算法LMA、LMN、LINT、LILTLMA(localmeanalgorithm)--本地平均算法给定节点度的上限和下限,动态地调整节点发射功率,使节点的度数始终维持在度数的上限和下限之间.这种算法利用局部信息来调整相邻节点的连通性,从而在保证网络连通的同时使得节点间的链路具有一定的冗余性和扩展性。LMN(localmeanofneighborsalgorithm)--本地邻居平均算法与LMA不一样的地方是,LMN的邻居节点的数目依据于所有邻居的邻居节点数求平均值作为自己的邻居节点数。仿真结果显示,这种策略在保证网络连通的同时,通过少量的局部信息使网络性能达到了一定程度的优化.但是,这两种算法缺乏严格的理论推导.15LINTLILTLINT(LocalInformationNoTopology)LINT的主要思想是根据预先设定好的节点度的上限和下限(三个主要参数),每个节点周期性的根据自己当前度的情况,动态调整其传输能量,使其节点度数在两个阈值之间。LINT中每个节点只需要自己邻居的局部信息,忽略了全局的能量分布。LILT(LocalInformationLink-StateTopology)LILT利用链路状态路由协议获得网络全局信息,以便更好的调整能量来保证网络连通。LILT分三种状态:连通但不是双向、双向连通、不连通。初始状态时,全网节点以最大功率通信,保证网络的连通性,以获取全网的链路状态信息更新,然后启动邻居增减协议(NRP、NAP)调整全网节点发射功率。当节点处于双向连通的时候,不作任何动作;当节点处于不连通状态时,把该节点立刻调节到最大发射功率,以保证连通性;当节点处于单向连通状态时,节点随机以t等待,如果时间t后仍然状态不改变,就立刻调节到最大发射功率。真实验表明算法相比没有拓扑控制时,吞吐量有提高,最大的传输能量有减小。但是,这两个分布式算法也不能确保网络的连通性。16LINT/LILT仿真结果仿真结果发现LINT、LILT算法,当在节点密度为每平方米2~3个节点时,会有效降低链路状态的更新。17层次型拓扑结构控制•层次型拓扑结构产生背景传感器节点在无线通信模块在空闲状态与收发状态下的能耗相当,因此只有关闭其节点的无线通信模块才能真正有效的降低非工作能耗。层次分簇就是在这一背景下产生的。18层次型拓扑控制的思想与关键技术关键技术层次分簇算法的核心是如何选择簇头集合,并把剩余的节点划分到已经产生簇头集合中。分簇的基本思想通过簇首对簇内节点间的相关信息融合及转发机制减少数据的传输量和距离,进而降低通信能量,达到网络节能的目的。19WSN中不同拓扑下的数据传输方式20•LEACHLEACH不是一个单纯的路由协议,它提供了一个包括分群、路由、MAC和物理层的完整的无线传感网络的协议框架,也可以说是一个分层路由的体系结构。LEACH协议是众多分层协议参考的模型,称为经典。LEACH21LEACH•LEACH概述LEACH算法是一种分布式、自组织的分簇协议。运行LEACH协议的无线传感器网络会随机选择一些节点成为簇头,并令所有节点周期性地轮换成为簇头,使整个网络的能量负载达到均衡。在LEACH协议中,簇头节点将来自其成员节点的数据进行压缩聚合,然后将聚合后的数据通过单跳的方式直接发送给基站节点,大大减小了整个网络中的数据交换量,使得总体能耗有了大幅度的下降。22LEACH算法的假设基站是固定的而且远离传感器节点网络中的传感器节点都是同型传感器节点而且能量受限的每个节点都有能力和基站通信节点没有位置信息对称二进制信道簇首可以进行数据融合23LEACH工作流程簇头选择算法1、确定最优簇头数目;2、计算每个节点成为簇头的概率;相关参数:全网的节点数、簇头数目、能量评估(单节点与全网)、当前的循环数。目的:确保所有节点大致在相同时刻耗尽能量而停止工作,延长网络的生命周期。24LEACH时序图251、簇头进行数据融合,减少冗余数据量;2、在MAC层中使用了TDMA、CSMA、CDMA等机制来共同处理簇内与簇间的冲突问题;3、采用选举簇头算法,保证WSN能量消耗平均负载到各节点上;4、采用层次路由,路由路径选择比较简单,不需要存储很大的路由信息。LEACH优点26LEACH缺点1、簇头选举随机性很强,可能会出现簇头集中在某一个区域的现象,造成簇头分布不均匀。27LEACH缺点2、信息的融合和传输都是通过簇头节点来进行,造成了簇头节点能量消耗过快的问题;3、发射机和接收机必须严格遵守时隙的要求,避免在时间上互相重叠,然而,维持时间同步又增加了一些额外的信令通信量。节点的时间表可能会需要较大的存储器。4、LEACH要求节点之间和节点与Sink点之间都能进行直接通信,网络的扩展性差,对于大规模网络而言,节点直接进行通信需要消耗大量的能量。并且采用单跳路由方式,增加了交换数据的能量。28LEACH适用场合LEACH适用于周期性信息报告,对延时不敏感。网络布设范围小,所有节点到sink的距离可以认为相等。实际应用:博物馆的文物保护检测29LEACH改进LEACH-MH算法:相比LEACH协议,在数据稳定传输阶段,采用簇头多跳传输,增强网路的扩展性,已减少单个簇头的能量消耗,但多跳又造成了多跳的路由选择的耗能。30LEACH改进LEACH-COOP算法:相比LEACH协议,引入了协同节点,在最后数据融合后,发送数据到sink节点时,采用群内选择好的协同节点发送,以减少由于原LEACH协议中存在的由于群首节点分布不均匀造成的通信传输消耗大的问题。311、如何实现时间同步?2、要实现CDMA技术必须物理层支持DSSS(直接扩频序列);在高斯信道中当传输系统的信噪比下降时,可用增加系统传输带宽B的办法来保持信道容量C的不变。3、如何进行全网的能量评估?4、簇头是否可靠与sink节点通信?5、实现睡眠与唤醒的计算ttotal=toperation+tawaken+ttransmit;还有很多实际问题~~~LEACH实际的应用32HEED算法HEED--HybridEnergy-EfficientDistributedclustering混合能量高效分布式分簇算法HEED产生背景HEED是在LEACH算法簇头分布不均匀这一问题基础上而作出对LEACH协议分簇算法的改进,它以簇内平均可达能量(AMRP)作为衡量簇内通信成本的标准。HEED算法的实质在LEACH算法基础上,重点修改了选举簇头的算法。在全网时间同步的基础上,将节点根据当前剩余能量占初始能量的比例p划分为若干“等级”,等级较高的节点率先公布自己为簇头,而等级较低的节点在收到簇头广播后加入这个簇。如果节点的剩余能量降为初始能量的1%就被除去竞选簇头的资格。),/max(minmaxPEECPresidentprob33HEED分簇算法HEED分簇依据:注:Cprob和Pmin是整个网络统一的参量,合适的参数可以有效地增加算法的收敛性。Eresident/Emax代表节点剩余能量与初始化能量的百分比。HEED协议主要依据主、次两个参数,分别反应能耗状况和节点的通信代价,通过将能耗平均分布到整个网络来延长网络生命周期。