ZigBee网络Cluster-Tree优化路由算法研究

发布者:静雅心灵最新更新时间:2013-02-21 来源: 21ic 关键字:ZigBee网络  优化路由算法  Cluster-Tree 手机看文章 扫描二维码
随时随地手机看文章
引言

无线通信和嵌入式微传感器技术的快速发展促进了无线传感器网络的崛起。ZigBee协议基于IEEE 802.15.4无线标准制定,包括应用层、网络层、安全层等,实现了网络的自组织和自维护的功能。在无线传感器网络中,节点的能量是有限的,如果节点在最后因为自身的能量消耗殆尽而死亡,将会对整个网络的传输性能造成很大影响。因此,在实际应用中,根据不同的网络情况来选择最符合应用需求的路由协议,让路由协议根据网络拓扑选择合适的路径,平均分布节点的传输能量,降低网络的功耗是网络层必须要考虑的任务。

1 ZigBee路由算法研究

依据设备的能力,ZigBee网络中的设备可以分为全功能设备(Full Function Device,FFD)和半功能设备(Reduced Function Device,RFD)。FFD能转发其他设备的数据帧,RFD则不能。当FFD加入一个网络时,它可以作为协调器。协调器会周期性地广播数据帧,周围的RFD能够发现并加入网络,形成一个星型拓扑网络。在星型拓扑中,协调器负责控制整个网络,所有终端设备都直接与协调器通信,并且由它维护。

ZigBee网络层还支持树型和网状网络。树型网络采用分级路由的策略在网络中传送数据和控制信息,而网状网络则可以进行点对点的通信。在树型网络中,根节点(协调器节点)和所有的内部节点(路由器节点)是FFD,而RFD只能作为叶子节点(终端节点)。当协调器或路由器加入网络时,它必须被分配唯一的网络地址。

1.1 网络地址分配

ZigBee协议规范使用一个分布式地址方案分配网络地址,它设计为给每个潜在父节点提供一个有限的网络地址子块。当一个设备成功加入网络后,其父节点给该节点自动分配一个唯一的网络地址。

1.2 ZigBee路由算法

网络层支持Cluster-Tree、AODVjr和Cluster-Tree+AODVjr算法(以下简称C+A算法)等多种路由算法,因此ZigBee网络的路由协议兼具树型网络和网状网络的特性。

1.2.1 Cluster-Tree算法

树路由机制是根据网络地址和节点间的父子关系来实现路由的。如果目的地址设备不是该路由器的子孙,则直接将数据帧转发给该路由器的父节点,其父节点将按照同样的步骤进行路由。

1.2.2 AODVjr算法

AODVjr是对AODV算法的一种简化改进,当源节点要寻找到达目的节点的路径时,先向其邻居节点组播RREQ分组。收到该分组的邻居节点若具备路由能力,则建立指向源节点的反向路由回复,同时继续向自己的邻居节点组播该RREQ分组。若不具备路由能力,则通过Cluster-Tree路由算法将该分组交由其子孙节点或父节点进行转发。当目的节点接收到此RREQ分组后,通过单播的方式向源节点回复RREP分组,同时,所有接收到此RREP分组的节点都将更新记录自己的邻居表,路由建立成功。实验证明,AODVjr算法在保持了AODV原始功能的基础上,控制开销比AODV算法更小,因此更节能。

1.2.3 Cluster-Tree+AODVjr算法

在此算法中,网络中的节点被分成了4类:Coordinator、RN+、RN-和RFD。其中RN+具有足够的存储空间和能力来进行AODVjr协议;而RN-则因存储空间受限,不能够进行AODVjr协议。Coordinator、RN+、RN-都具有路由功能,在通信时,如果目的节点不是邻居节点,RN+将会启动AODVjr,主动查找到达目地节点的最佳路径;RN-节点只能通过树路由算法来寻找下一跳的节点。仿真证明,采用Cluster-Tree和AODVjr相结合的路由协议在保证分组递交率的情况下,具有比单独使用其中一种路由协议更低的控制开销和平均时延。

2 优化ZigBee路由算法

2.1 ZigBee路由算法问题

Cluster-Tree算法必须按照簇树型结构地址分配方式来寻址,路由效率低,并且源节点到目的节点的传输路径由于跳数过多,会影响网络时延。

AODVjr算法在路由发现过程中,会产生分组大量泛洪问题。例如,当目的节点是源节点的子节点时,若采用AODVjr向邻居节点发送RREQ分组,则向其父节点以上的节点发送RREQ分组是多余的;若目的节点不是源节点的子节点,则采用AODVjr向其子节点方向发送RREQ分组是多余的。假设网络的最大深度是1,则数据帧可能被转发的最长路径是21,因此当跳数大于21时,就应停止对RREQ分组的继续广播,将其丢弃;假设从源节点到目的节点的最小跳数为M,当RREQ分组被转发的次数大于M时,再继续转发是多余的。由于每一次AODVjr路由都要产生大量的RREQ泛洪,因此会使节点能量消耗严重。[page]

鉴于以上问题,本文提出一种基于C+A算法的优化路由算法,用以解决Cluster-Tree路由的低效率和AODVjr路由的泛洪严重及能量消耗问题。

2.2 优化路由算法思想

在一个传感器网络中,传感节点只能和与它相邻的,并且在它的射频传输范围之内的节点直接通信。树型网络中每个节点的邻居表中都包含有其射频覆盖范围内各个邻居节点的相关信息。在优化路由算法中利用邻居表中记录的有效信息,可以使源节点发送给目的节点的数据帧经过一跳到达。

在AODVjr路由发现过程中,为了避免RREQ分组无选择性的大量泛洪,在优化路由算法中依据不同的情况,添加对RREQ分组广播跳数的限制条件,使大于限制条件的多余路由不能启用。这样能有效地减少RREQ分组泛洪次数,缩小RREQ广播范围,限制RREQ分组传播方向,从而降低网络的能量消耗。

2.3 优化路由算法设计

优化路由算法的具体步骤如下:

①对树型网络进行分区,并设定辅助变量number的初始值为1(number值代表分区次数)。分区原则如下:以协调器为根节点,将根节点的每一个子树看作一个区域,并为其编号。记录每一个区域中的最大地址Amax和最小地址Amin。由树地址分配机制可以得出,在同一区域中的节点地址An均满足Amin≤An≤Amax,即此区域的地址范围是[Amin,Amax],并且每一个区域的地址范围之间是不相交关系,即一个确定的地址在且仅在一个区域内。

②判断源节点的类型。若为RFD则直接将数据帧转发给其父节点;若为FFD则判断目的节点是否为源节点的子节点。若是,则向下启动AODVjr路由转发数据帧,并将RREQ分组的最大广播跳数限制为|Dd-Ds|(Ds为源节点的网络深度,Dd为目的节点的网络深度),超出范围则丢弃;若不是,则进行第下一步。

③源节点向邻居节点发送RREQ分组,邻居节点判断自身地址是否与目的地址相等。如果相等,则向上层传递,由其上层对数据帧进行解析,并将RREQ分组的最大广播跳数限制为1,超出范围则丢弃。如果不等,则进行第④步。

④判断目的地址在哪个区域中。若目的节点和源节点在同一区域中,进行第⑥步;若不在同一区域中,则进行第⑤步。

⑤判断源节点的邻居节点中是否有和目的节点在同一区域的节点。如果有,将数据帧转发给该节点,并进行第⑥步;如果没有,则进行第⑦步。

⑥number值加1。将目的节点所在区域看作一个树型网络,将其最小地址节点看作该树的根节点,并按照第①步的分区原则将其进行分区。判断目的节点和当前节点是否在同一区域中。若是,重复第⑥步;若不是,则进行第⑦步。

⑦将数据帧经由树路由转发到第number次分组的根节点,然后启动AODVjr路由,由此根节点将RREQ分组广播至目的节点的相应分组内,寻找目的节点,并将RREQ分组的最大广播跳数限制为|Dd-number+1|,超出范围则丢弃。

目的节点接收到RREQ分组后,将向寻找路由的源节点回复一个RREP分组,其传送路径为路由建立过程的反向路由。所有接收到RREP分组的节点将此路由信息替换并且记录,正向路由从源节点到目标节点建立成功。优化路由算法的流程图如图1所示。



具体实现过程举例如下:假设一树型网络,网络参数Cm=4,Lm=4,Rm=3,依据前面的网络地址分配方式给网络中各节点分配相应地址,选定源节点为37,在其射频覆盖范围内的邻居节点是25、36和90。具体网络节点分布图如图2所示。[page]



  首先将树型网络按照自定义的方式进行分区,分区后的网络如图3所示。其中,原树型网络被分为I、II、III、IV4个区域。



树型网络的分区步骤如下:

①当目的节点是41时,直接转发,并将RREQ分组传播跳数限制为|4-3|=1。

②当目的节点是90时,由于90是源节点的邻居节点,直接将数据帧转发,并将RREQ分组传播跳数限制为1。

③当目的节点是8时,由于目的节点和源节点属于同一区域I,则number=number+1,即number=2。并且将区域I继续分区,第二次分区后的树型网络如图4所示。此时,节点8和节点37不属于同一区域,则将数据帧沿树路由转发给第2次分区的根节点,即节点1。然后,由节点1向区域I-1内的节点广播RREQ分组,并限制RREQ分组的跳数为|Dd-number+1|=2。



④当目的节点是72时,由于邻居节点中有和目的节点同区域的节点90,则先将数据帧转发给节点90,然后再由其通过和③类似的步骤转发给目的节点。

3 仿真与实验结果分析

为了比较优化算法与C+A算法的性能,在相同的仿真环境下分别对两种算法进行了仿真,重点比较了两者在网络剩余节点数、路由平均跳数、数据包发送成功率及端到端时延等方面的差别。仿真结果表明,该优化算法具有更优越的性能。但是在节点数目相同的情况下,优化算法的传输时延还是比C+A算法要小很多。这是因为算法优化后,数据帧从源节点到达目的节点的传输路径变短,因而传输时延减少。

结语

在分析了ZigBee路由协议中Cluster-Tree和AODVjr算法的基础上,提出了一种基于C+A算法的优化路由算法。优化路由算法利用ZigBee协议中的邻居表,使数据帧的传送跳数减少,并通过将树型网络自定义分区,来控制路由发现过程中RREQ分组传播的跳数,从而防止无效的RREQ泛洪,节省了网络的能量。仿真结果证明,优化的路由算法能够有效地减小路由跳数,延长网络的寿命,提高路由效率,从而使网络整体能耗减低。
关键字:ZigBee网络  优化路由算法  Cluster-Tree 引用地址:ZigBee网络Cluster-Tree优化路由算法研究

上一篇:基于线程局部存储技术的多通道数控系统仿真
下一篇:机器人在自动焊锡行业的应用

推荐阅读最新更新时间:2024-05-02 22:33

基于ZigBee无线传感网络的节水灌溉系统设计
“节约用水,人人有责”,水资源正在变成一种宝贵的稀缺资源。因此,推广节水灌溉也已成为世界各国为缓解水资源危机和实现农业现代化的必然选择。本文提出一种基于ZigBee无线传感器网络的设计方案,并根据农田的特殊条件,设计出一套节水灌溉系统,避免了依附于其他通信网络所产生的额外费用。   1 系统平台整体设计方案   按照功能需求,硬件平台共可分为以下五个部分:数据采集站,传输基站,数据处理中心,远程监测站以及电磁阀控制站。图1为系统的硬件平台结构图。 图1 系统结构框图   系统中各部分的功能与工作流程如下:首先根据农田的管道分布情况,以及ZigBee无线节点的有效通信距离,将灌溉区分割为数块独立的灌溉控制单元,在每个
[单片机]
基于<font color='red'>ZigBee</font>无线传感<font color='red'>网络</font>的节水灌溉系统设计
组建SMAC协议构架的ZigBee星形网络
摘要 在FREESCALE公司SMAC协议构架的基础上提出一种组建ZigBee星形网络的有效方法。本文给出了网络节点的硬件构成,详细分析了网络组建的软件设计思想;并将该无线网络应用于某纺织车间线路改造的项目中,解决了原车间布局下的多台设备之间不易走线的问题,大大降低了成本。 引言     ZigBee技术是最近发展起来的一种近距离无线通信技术,功耗低、成本低、易应用,工作在2.4 GHz频段,采用扩频技术。ZigBee被业界认为是最有可能应用在工业监控、传感器网络、家庭监控、安全系统等领域的无线技术。目前市场上已经有多家公司提供ZigBee产品,可是大多功能齐全的ZigBee无线通信系统(含协议栈)的价格却比较昂贵,单独的
[网络通信]
组建SMAC协议构架的ZigBee星形网络
引言 ZigBee技术是最近发展起来的一种近距离无线通信技术,功耗低、成本低、易应用,工作在2.4 GHz频段,采用扩频技术。ZigBee被业界认为是最有可能应用在工业监控、传感器网络、家庭监控、安全系统等领域的无线技术。目前市场上已经有多家公司提供ZigBee产品,可是大多功能齐全的ZigBee无线通信系统(含协议栈)的价格却比较昂贵,单独的ZigBee模块又不具有组网通信、节点自主加入的功能,这在很大程度上限制了ZigBee产品应用的灵活性和广泛性。本文在Freescale公司的SMAC协议包的软件构架的基础上,采用MC13192 RF收发器成功组建了一个ZigBee星形网络。在该网络中,多个通信节点能够自由入网,在网络
[单片机]
组建SMAC协议构架的<font color='red'>ZigBee</font>星形<font color='red'>网络</font>
基于ZigBee技术的无线传感器网络构建与应用
   引言   无线网络的市场发展在逻辑上可分为而向语音的市场和面向数据的市场两类。在许多以数据传输为主的无线网络中,小型、低成本、低复杂度的无线网络的应用场合十分广泛。ZigBee是其中一种具有代表性的短距离无线通信技术,其网络标准由IEEE802.15.4规定。ZigBee协议比蓝牙、高速率PAN(个人局域网)或者IEEE802.11x无线局域网更加简单实用。    1 IEEE802.15.4标准和ZigBee技术   IEEE的无线PAN工作组制定的IEEE802.15.4技术标准是ZigBee技术的基础,目的是为低能耗的简单设备提供有效覆盖范围在10m左右的低速连接。   1.1IEEE802.15.4协议架构及
[模拟电子]
基于ZigBee与51内核的射频无线传感器网络节点设计方案
  0 引 言   近年来,无线传感器网络技术得到了飞速发展,由于2.4 GHz 通信频段免费、开放等特性,各种基于该频段的通信协议,如Wi-Fi、蓝牙等技术已相当成熟,并得到了广泛应用。ZigBee 是一种基于IEEE802.15.4 标准的低功耗个域网协议,该协议基于2.4 GHz 频段,是一种低成本、低功耗的近距离无线组网通信技术,近年来广泛应用于各种射频通信领域,如区域定位、视距数据传输、物联网标签、车用无线电子设备等。   以Chipcon 公司基于ZigBee 协议的系列产品为代表的SOC(片上系统)也日趋成熟。因此,方案设计了一个成本低廉、性能稳定、功能齐全的开发系统一直是相关研究的一个重要组成。本文将提出一种基
[单片机]
基于<font color='red'>ZigBee</font>与51内核的射频无线传感器<font color='red'>网络</font>节点设计方案
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved