Flooding算法改进及其应用.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Flooding算法改进及其应用

Flooding算法改进及其应用   摘 要:针对泛洪式路由算法(Flooding)中路由信息内爆的缺点,提出一种基于Flooding的改进路由算法,该算法根据所有路灯采用静态地址,并通过序列号对协调器所发的命令帧进行标记。子节点根据序列号对数据帧进行过滤。最后,结合智能路灯控制系统和改进的Flooding算法进行路由实验 关键词关键词:Flooding算法;静态地址;路灯控制系统 DOIDOI:10.11907/rjdk.161531 中图分类号:TP312 文献标识码:A :1672-7800(2016)008-0006-04 0 引言 随着网络技术的迅速发展与人们对共享资源需求的不断增长,网格技术已成为分布式计算领域近年来研究的一个热点[1]。无线传感器网络是集信息采集、信息处理、信息传输于一体的综合系统[2]。Flooding路由协议[3]是传统网络中最为经典和简单的路由协议,是基于泛洪机制的路由协议,可以应用到无线传感器网络中。该协议不要求维护网络的拓扑结构和相关路由计算,仅要求传感器网络节点在接收到信息后以广播的方式向邻居节点转发数据包,邻居节点重复执行上述过程(转发时除去刚刚发送给它们的节点),直到数据包到达目的地或者该数据包的生命周期结束 1 国内外研究现状 路由协议是无线传感器网络的重要技术[4],目前国内外学者作了相关研究。在路由表中,通过增加路由方向与资源状态信息两者之间的关联度,有效增加资源请求被转发到可满足节点的概率[5];根据Power-Law规律,总选择具有最大聚集度的节点进行转发[6];先根??一定的标准判断两个查询请求的相似性,然后将最新的查询请求转发给最近满足相似查询的邻居节点[7] 2 Flooding路由算法 在无线传感器网络中数据包的生命周期中,一般预先设定该数据包所转发的最大跳转数。假设源节点A需要将数据包p发送至汇聚节点D,网络拓扑结构如图1所示,节点之间的联机表示两者在通信范围内可通信。节点A首先将p的副本进行广播,则其邻居节点B、E、G接收到p副本之后,直接将p副本通过广播的形式转发(除去节点A),以此类推,直到p达到汇聚节点D或TTL。以节点B、C为例,如图2所示,B将p副本转发至节点C、E、F,C将p副本转发至节点E、F、D 3 改进后的Flooding路由算法 针对Cluster-Tree算法和Flooding算法的缺点,给出了一种基于Flooding算法的改进路由算法。该算法通过修改网络层的帧结构,在末尾加入序列号,标记中心协调器每次发送的数据帧。中心协调器在每次发帧时生成序列号。当路由节点收到一个数据帧时,提取帧中的序列号,将其跟之前刚收到的序列号进行校验,若相同,则不进行任何操作,反之,就会处理接收的数据帧,执行相关命令,记录数据帧并进行广播。算法流程如图3所示 4 改进后的Flooding路由算法实现 4.1 平台简介 为了有效提高网络的传输效率,中心协调器和路由器以MC13213芯片安装在路灯上,软件部分采用基于MsstatePAN的协议栈,在网络层部分,不采用Cluster-Tree的地址分配方法,使用改进的Flooding算法进行测试 4.2 数据帧结构设计 在重新定义帧结构时,由于考虑到路灯的实际使用情况,结合该算法,总共设定了60字节的帧结构,目前只使用了33个字节,剩余27个字节作保留,数据帧结构定义如图4所示。在设计帧时,网络ID是识别该网络的唯一标识,帧总共分为两种类型,命令帧和确认帧,命令帧是从协调器发出的,确认帧是从节点发出的,协调器需要处理的帧如图5所示 (1)目的地址。标识接收开关灯等命令的最终节点,而不一定是指路由结点。如果不是0xFF,则表示控制单盏灯,如果是0xFF,则表示控制多盏灯,此时“开灯间隔参数”有效 (2)开灯间隔。由协调器进行处理,间隔为1表示开二分之一的灯,2表示开三分之一的灯,表示单侧灯的间隔状况。这是为某些天气情况下,需要开间隔灯而设计的 (3)左右标识。表示路两侧哪一侧的灯,0x01表示“左”侧,0x02表示“右”侧,0x03表示所有的侧,“左右”由人为指定包含在帧里面。只有当“目的地址”为0xFF时,“开灯间隔”以及“左右标识”参数才有效。这3个参数由协调器进行处理 (4)序列号。由协调器生成,大小为2个字节,当值达到0xFFFF时,系统自动清零,目的是对协调器发出的命令帧进行标记 4.3 命令帧及确认帧的演示及说明 如图6所示,总共八盏灯被依次编号,每盏灯都被看作是一个节点。在所有节点正常运作情况下,使用协调器通过串口发出命令,命令7号灯开灯,并且运用改进的Flooding路由算法,图6展示的是其

文档评论(0)

linsspace + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档