ZigBee网络地址分配机制及路由失效自修复研究

合集下载

基于ZigBee的自愈自组网的设计与应用

基于ZigBee的自愈自组网的设计与应用

基于ZigBee 的自愈自组网的设计与应用饶达琴,张文超(杭州电子科技大学电子信息学院,浙江杭州310018)摘要:ZigBee 技术为低功耗、低成本、低复杂度、适中数据传输率和且具有自组织功能的无线监控网络的组建提供了坚实的技术基础。

为了增强无线网络在无人值守、远程监控等应用中的稳定性及智能化,本文在分析ZigBee 协议体系结构以及Z_Stack 协议栈基础上,研究了如何基于CC2530组建具有自组网、自愈特性的ZigBee 无线网络,通过对无人值守的通信基站的交流电压、电流和温湿度环境等参数的远程实时监控的试验,实现了网络的自组网与自愈功能,增强了网络的稳定性及智能化。

关键词:ZigBee ;自组网;Z_Stack ;CC2530中图分类号:TN925文献标识码:A文章编号:1674-6236(2012)23-0111-03Design and application of self -organized and self -healing network based on ZigBeeRAO Da -qin ,ZHANG Wen -chao(School of Electronics&Information ,Hangzhou Dianzi University ,Hangzhou 310018,China )Abstract:ZigBee technology provides a substantial basis for wireless monitoring and controlling network with low -power consumption ,low -cost ,low complexity ,moderate -data -rate ,self -organized and self-healing.In order to enhance the stability and intelligent for the wireless network ’s application in the unattended and remote monitoring ,Based on analysis of the basic architecture of ZigBee protocols and Z_Stack ,discusses how to organize a wireless networking with the features of self -organized and self -healing by CC2530.And with the experiment of the remote real -time monitor for industrial frequency voltage value ,current value ,temperature and humidity of unmanned communication stations ,the function of self -organized and self -healing are realized ,enhancing the wireless network stability and intelligent.Key words:ZigBee ;self -organized ;Z_Stack ;CC2530收稿日期:2012-08-09稿件编号:201208028作者简介:饶达琴(1987—),男,江西上饶人,硕士研究生。

Zigbee节点设备地址分配算法应用研究

Zigbee节点设备地址分配算法应用研究

Zigbee节点设备地址分配算法应用研究作者:蔡彬彬来源:《电脑知识与技术》2020年第28期摘要:ZigBee通信协议采用分布式地址分配机制给网络中每个节点设备分配网络地址,本文在深入研究Zig Bee设备地址分配算法的基础上,以Zig Bee应用最为广泛的树簇拓扑网络结构为例,组建一个包括Zig Bee协调器节点、路由节点及终端设备节点等完整结构的Zig Bee无线网络,给出了详细的节点设备地址分配计算方法及实现流程。

关键词:Zig Bee技术;树簇拓扑;设备节点地址分配中图分类号:TP212 ; ;文献标识码: A文章编号:1009-3044(2020)28-0074-03Abstract: ZigBee communication protocol uses distributed address allocation mechanism to assign network address to each node in the network. In this paper, based on the in-depth study of ZigBee device address allocation algorithm, taking ZigBee tree cluster topology network structure which is the most widely used as an example, a ZigBee wireless network including ZigBee coordinator node, routing node and terminal device node is established The detailed calculation method and implementation process of node device address assignment are given.Key words: Zig Bee;cluster tree network;node address assignmentZigBee技术是一种近距离、低成本、低功耗、低速率的无线通信技术[1],该技术面向的主要领域是低速个人无线区域网,符合IEEE802.15.4标准,主要适用于监控、工业应用、家庭自动控制(智能家居)以及设备远程控制,目的是满足小型低价设备的无线连接和控制。

ZigBee自组网地址分配与路由协议技术详解

ZigBee自组网地址分配与路由协议技术详解
需要注意的是: Coordinator 和 Router 节点可以包含自己的子节点。 End Device 不能有自己的子节点。 有同一个父节点的节点之间称为兄弟节点 有同一个祖父节点的节点之间称为堂兄弟节点 每一个节点都只能和他的父节点和子节点之间通讯。
如果需要从一个节点向另一个节点发送数据,那么信息将沿着树的路径向上传递到最近的祖先节 点然后再向下传递到目标节点。 这种拓扑方式的缺点就是信息只有唯一的路由通道。另外信息的路由是由协议栈层处理的,整个 的路由过程对于应用层是完全透明的
如果一个设备 Cskip(d)的值为 0,则没有路由能力,该设备为终端设备; 如果一个设备 Cskip(d)的值大于 0,则有路由能力,该设备为路由器设备。 网络中分配地址为(n 为当前分配节点个数) 终端:An=Ak+1+Cskip(d)*(n-1) 路由器:An=Ak+Cskip(d)*Rm*(n-1); 下一个路由器设备分配地址为前一个已分配路由器地址加 Cskip 偏移量 CurNodeInfo.NextRouterAddr+ = CurNodeInfo.Cskip; 下一个要分配的终端设备地址为前一个已知分配地址+1 CurNodeInfo.NextEndDevAddr++;
ZigBee 树状路由机制
假设一个路由器要发送数据包到目标地址 D。这个路由器的网络地址个网络深度为 A 和 d。它 首先会判断目标地址设备是否是它的子设备,应当满足: A < D < A+Cskip(d-1) 如果目标设备是它的子设备,下一跳地址就是
否则,路由器将此数据包发向它的父节点。
通常在支持网状网络的实现上,网络层会提供相应的路由探索功能,这一特性使得网络层可以找 到信息传输的最优化的路径。需要注意的是,以上所提到的特性都是由网络层来实现,应用层不 需要进行任何的参与。 网状网络拓扑结构的网络具有强大的功能,网络可以通过“多级跳”的方式来通信;该拓扑结构 还可以组成极为复杂的网络;网络还具备自组织、自愈功能;

ZigBee树型网络地址分配及结构

ZigBee树型网络地址分配及结构

ZigBee树型网络地址分配及结构
树型路由机制包括配置树型地址和树型地址的路由。

当协调器建立一个新的网络,它将给自己分配网络地址0,网络深度d=0。

网络深度表示仅仅采用父子关系的网络中,一个传送帧传送到ZigBee协调器所传递的最小跳数。

如“节点A”加入网络并与协调器连接,那么“节点A”的网络深度是1;“节点B”加入网络并与“节点A”连接,那么“节点B”的网络深度是2,依此类推。

在树簇型网络中,协调器和路由器都可以连接N个路由节点和终端节点做为自己的子节点,形成一个个“簇”。

但是协调器和路由器能连接的子节点的数量是不是无限的呢?
协议栈中,有以下几个参数影响网络拓扑的形态:
Cm(nwkMaxChildren):每个父节点可以连接的子节点的总个数;
Rm(nwkMaxRouters):在Cm中,可以是路由节点的个数,Rm<=Cm;
Lm:网络最大深度,协调器的深度为0。

这三个参数的值在Z-stack中分别由变量CskipChldrn、CskipRtrs、MAX_NODE_DEPTH决定。

这三个变量可以在NWK中的nwk_globals.c 和 nwk_globals.h 两个文件中查找。

地址的分配:
每一个节点加入网络时,都会被分配16位
(未完待续)。

ZigBee路由算法的研究与改进

ZigBee路由算法的研究与改进

KE YW ORDS Z g e ,r u igag r h , cu trte , AODVj, n ih o a l iB e o t lo i m n t lse -re r eg b述
Zg e iB e技术 是 一种短 距 离、 复杂度 、 功耗 、 低 低 低
用 前景 。Zg e iB e协议规范使 用 了 I E 8 2 1 . E E 0 . 5 4定义
在 Zg e iB e网络 层 中 , 采用 分 布式 地址 分 配方案 来 分 配 网络地址 。该 方案 为每 一个 父设备 分配 一个有 限
的 网络地 址 段 , 由父设 备 具 体分 配 一 个 网络 地址 给 再 它的每 个子 设备 , 些 地址在 同一 个 网络 中是唯一 的 。 这 协 调节 点在 建 立 网络 以后使 用 1 6位 的 1 6进 制 数 O 0 XO 0作 为 自己的 网络 地 址 , 由节 点 和终 端 节 点加 路 入 网络后 , 用父设 备 给他分 配 的 1 位 的短 地址来 通 使 6 信 。整 个 网络 的架构 由 3个值 决 定 , 别是 : 分 网络 的最
大 深 度 ( m) 每 个 父 设 备 最 多 拥 有 的 子 节 点 个 数 L ,
的物理 层 ( HY) P 和媒体介质 访 问层 ( MAC , 在此基 )并
础上 定义 了 网络层 ( NWK) 应用 层 ( L 架构 。网 和 AP )
络 层 提供 的 功能 主要是 新建 一个 网络 、 点加 入 和离 节
o i i a l o i m ,p o o e o r c ie r u e me h d b s d o h eg b r t b e a d n i h o o e n n l z s t e a t a r n la g rt g h r p s s a c r e tv o t t o a e n t e n i h o a l n eg b r n d ,a d a a y e h c u l

zigbee入网退网机制分析

zigbee入网退网机制分析

Zstack入网退网代码分析网络初始化和路由:网络初始化:协调器(Coordinator)首先在某个频段发起一个网络,网络频段的定义放在DEFAULT_CHANLIST配置文件里。

如果ZDAPP_CONFIG_PANID定义的PAN ID是0xFFFF(代表所有的PAN ID),则协调器根据它的IEEE地址随机确定一个PAN ID。

否则,根据ZDAPP_CONFIG_PANID的定义建立PAN ID。

当节点为Router或者End Device时,设备将会试图加入DEFAULT_ CHANLIST所指定的工作频段。

如果ZDAPP_CONFIG_PANID没有设为0xFFFF,则Router或者End Device会加入ZDAPP_CONFIG_PANID所定义的PAN ID。

设备上电之后会自动的形成或加入网络,如果想设备上电之后不马上加入网络或者在加入网络之前先处理其他事件,可以通过定义HOLD_AUTO_START来实现。

通过调用ZDOInitDevice(int startdelay)来手动定义多久时间(startdelay)之后开始加入网络。

设备如果成功的加入网络,会将网络信息存储在非易失性存储器(NV Flash)里,掉电后仍然保存,这样当再次上电后,设备会自动读取网络信息,这样设备对网络就有一定的记忆功能。

如果需要使用NV Flash的设置,可以通过定义NV_RESTORE宏和关闭SW_BYPASS_NV来使用。

有关网络参数的设置大多保存在协议栈Tools文件夹的f8wConfig.cfg里。

路由:Z-Stack采用无线自组网按需平面距离矢量路由协议AODV,建立一个Hoc网络,支持移动节点,链接失败和数据丢失,能够自组织和自修复。

当一个Router接受到一个信息包之后,NMK层将会进行以下的工作:首先确认目的地,如果目的地就是这个Router的邻居,信息包将会直接传输给目的设备;否则,Router将会确认和目的地址相应的路由表条目,如果对于目的地址能找到有效的路由表条目,信息包将会被传递到该条目中所存储的下一个hop地址;如果找不到有效的路由表条目,路由探测功能将会被启动,信息包将会被缓存直到发现一个新的路由信息。

ZigBee无线网络原理

ZigBee无线网络原理

ZigBee无线网络原理
ZigBee无线网络是一种低功耗、低速率的无线网络通信协议,其原理基于IEEE 802.15.4标准。

它适用于需要将大量节点连
接到一个中心控制器的应用场景,具备自组织、自修复和自动路由等特性。

ZigBee网络由三种设备组成:协调器(Coordinator)、路由器(Router)和终端设备(End Device)。

协调器是网络的核心,负责管理网络配置和协调各个设备的通信。

路由器可以转发数据包,并帮助建立路由表,使数据传输更高效。

终端设备是最简单的节点,功能有限且通信范围较短。

这些设备可以通过无线信道进行通信,并使用MAC层和物理层协议来实现数据传输。

ZigBee网络采用星型、树型或网状拓扑结构,其中协调器处
于网络的根节点,其他设备通过与协调器的直接或间接连接来实现通信。

网络中的节点可以根据实际情况自动组建和拓扑重组,无需手动配置。

在数据传输过程中,ZigBee网络使用CSMA-CA(载波感知多路访问监听)机制来协调节点的发送行为,避免冲突和碰撞。

每个节点都有一个64位的唯一地址,用于标识设备和建立通
信连接。

节点之间可以通过短距离的无线信道进行通信,距离一般在几十米到几百米之间,受限于无线信号传播和环境干扰等因素。

ZigBee网络支持多种应用层协议和功能,例如家庭自动化、
工业控制、智能电网等。

它的低功耗特性使得它在电池供电设备、传感器网络等场景下得到广泛应用。

通过合理设计和优化网络结构和通信机制,ZigBee无线网络可以实现可靠的数据传输和灵活的网络管理。

ZigBee地址模式分析

ZigBee地址模式分析

ZigBee地址模式分析我们知道ZigBee设备有两种地址。

一种是64位IEEE地址(物理),即MAC地址,另一种是16位网络地址。

64位地址使全球唯一的地址,设备将在它的生命周期中一直拥有它。

它通常由制造商或者被安装时设置。

这些地址由IEEE来维护和分配。

我们刚买到的调和上的IEEE地址应该是全部的F,我们可以通过TI的软件SmartRF Flash Programmer重新写入一个IEEE地址,这就像我们的PC上的物理地地类似,在全球范围内物理地址是唯一的。

不过在ZigBee设备中我们也可以更改这个地址,其实也就不确保全球唯一了,当然,在PC上也可以通过软件更改物理地址,不过只要在一个局域网中没有两个相同的物理地址,是一样可以连接互联网。

很多学校里的上网帐号就是和物理地址进行绑定的,分配给一台PC上的IP地址,是不可能在另一个PC上使用,除非修改PC的物理地址。

说多了,其实也就是你应该必须保证在你组成的网络中,不可以写入相同的IEEE地址。

16为网络地址是当设备加入网络后由协调器或路由器分配的。

它在网络中是唯一的,用来在网络中鉴别设备和发送数据。

在这个版本的中Z-Stack-1.4.3-1.2.1中,可以看到下面typedef enum{afAddrNotPresent = AddrNotPresent, //绑定afAddr16Bit = Addr16Bit,//短地址afAddrGroup = AddrGroup, //组发送afAddrBroadcast = AddrBroadcast//广播发送} afAddrMode_t;typedef struct{union{uint16 shortAddr;} addr;afAddrMode_t addrMode;byte endPoint;} afAddrType_t;这里的地址模式只有4种,而没有IEEE地址的什么事,不过可以想像,在一个ZigBee网络中,当ZigBee的协调器建立网络成功以后,终端设备或者路由器设备打开电源开关加入网络时,网络成功后协调如何知道它管辖的表具号呢?这时会分配一个16位的短地址,当加入网络时终端会发送一个响应给协调器,协调器的短地址是知道的因为是0x0000,当设备加入成功后,会产生一个ZDO_STATE_CHANGE_EVT事件,这个事件就是设备加入网络成功后,并在网络中的身份确定后产生的一个事件,我们可以在这里处理,一些初始化,比如可以发送终端的短地址,IEEE地址等,这里协调器接收到以后,可以提取出终端的短地址,其实在终端给协调器发送的每个数据包中,都含有其自身的短地址,如下面的结构体当中的afAddrType_t srcAddr;协调器在接收到短地址后,就可以知道自己下面管辖的终端结点,或者路由结点有那些了,协调器提取到的短地址可以存放到一个非易失性的存储器中,这时如果要使用直接地址模式,也就是单播的话,就可以在这个表中查找,当然这要和上位机的软件结合起来,起码应该让用户看到这些短地址,这种短地址再和某种应用中的属性对应起来。

基于ZigBee的无线传感器网络的自愈功能

基于ZigBee的无线传感器网络的自愈功能

基于ZigBee的无线传感器网络的自愈功能李振汉;唐余亮;雷鹰【摘要】无线传感器网络(wireless sensor network,WSN)中如何延长路由节点的生命期和保证网络正常运行非常重要.以WSN主控芯片CC2430为硬件基础,建立了在ZigBee协议下固定节点的链状网络路由模型,提出了一种网络自愈的方法,即为每跳路由节点配备一个备用路由节点,利用高斯算法对各路由节点接收信号强度(received signal strength indication,RSSI)值进行检测,依据检测的RSSI值判定电池的供电情况,进而决定是否启动处于睡眠的备用路由代替当前路由承担相应的工作.实验结果表明,在没有环境因素的情况下,可以较好地实现自愈功能.%In wireless sensor network (WSN) ,it's of vital importance to prolong the lifetime of the routing node and to ensure the network running properly. In this paper,a chain network routing model of ZigBee protocol of the fixed nodes is built and a method of self-healing is put forward on the base of CC2430 of the WSN main control chip. The method is firstly to equip every routing node with an alternate routing node. Then,use the Gauss Algorithm to detect the received signal strength indication (RSSI) of the routing node in order to determine the battery power supply state,and then to decide whether to activate the dormant alternate routing node replacing the current routing node to work or not . As the experimental results show,if the environmental factors are ignored, the self-healing function can be achieved.【期刊名称】《厦门大学学报(自然科学版)》【年(卷),期】2012(051)005【总页数】5页(P834-838)【关键词】无线传感器网络;自愈;RSSI;ZigBee【作者】李振汉;唐余亮;雷鹰【作者单位】厦门大学信息科学与技术学院,福建厦门361005;厦门大学信息科学与技术学院,福建厦门361005;厦门大学建筑与土木工程学院,福建厦门361005【正文语种】中文【中图分类】TN915ZigBee是一种低成本、低速率、低功耗的短距离无线通信技术,其主要用于无线传感器网络(wireless sensor network,WSN)技术当中.在WSN中,节点一般采用电池供电,在能量耗尽后无法及时更换电池导致该节点变成死亡节点.作为整个WSN的路由节点,其正常工作与否对整个网络的持续运行至关重要.文献[1]是针对WSN提出了一种基于代理的自愈模型,即通过网络的自主计算可以监视到拒绝服务攻击(denial of service,DoS)等威胁,这样有效避免节点坏死和网络失效,但文献[1]对网络中存在的多种不同的攻击还并未找出一种有效的解决办法.文献[2]对几种组密钥分配方案的WSN自愈方法进行了分析,并指出现有的3种方案都无法满足大规模和资源受限的WSN网络,现有的WSN网络的自愈方法还需深入研究和改进.文献[3-4]通过路由算法的优化提出了一种自愈的方法,实验结果表明节点的生命期得到了提高,但它们的结论都是由仿真分析而来,并不是在实际的WSN实验中得出的.本文借鉴了文献[1]主动监测网络动态的思路,利用接收端接收功率与节点间距离的关系针对固定传感器网络提出了一种新的备用路由的自愈方法,具体设计如下:首先,建立WSN,存储当前工作路由节点的接收信号强度(received signal strength indication,RSSI)[5]值.其次,定时检测当前工作路由的健康状况,判断其是否已经无法正常工作.最后,利用备用路由替换坏死的路由节点进行网络恢复工作.本文的主要创新点在于:1)本文提出了利用节点RSSI值检测路由节点的状况并决定是否启动网络自愈的方法.RSSI检测方法为高斯算法.2)本文以CC2430芯片为硬件基础,建立ZigBee链状网络,对本文提出的理论进行了验证,具有实际的工程应用意义.CC2430是一款符合ZigBee技术的2.4 GHz射频系统单芯片.结合ZigBee协议栈,用户可以进行快速的设计开发.CC2430有4个定时器,提供睡眠模式和工作模式,睡眠模式下仅有0.9μA的流耗,可以很好地延长节点电池寿命,通过外部或定时器中断的方式让CC2430由睡眠模式转入工作模式.CC2430提供数字化的RSSI支持,ZigBee协议栈为此提供了RSSI的编程接口,用户只需调用该接口,即可从CC2430的RSSI寄存器中获取相应的RSSI值.网络结构采用链状网络[6](特殊的树状网络),简化网络模型如图1.图1中当前执行路由功能的路由器R1、R2、R3和R4我们定义为Using_Route,备用的路由节点R2′和R3′定义为Ready_Route.本文设计过程中R1和R4并没有备用节点,原因见实验分析部分.首先,协调器建立网络,为自己分配网络短地址0.然后按照下面公式进行分配其它节点的网络短地址.Using_Route_Addr=Parent_Addr+1;Ready_Router_Addr=Using_Route_Addr+1;Node_Type_Addr=Parent_Addr+2+i;其中Using_Route_Addr表示Using_Route的网络短地址,Parent_Addr表示当前节点的父节点的网络短地址,Ready_route_Addr表示Ready_Route的网络短地址,Node_Type_Addr表示终端节点的网络短地址,i表示第i个加入父节点的终端节点,0<i≤3.这样,在协调器建立网络后,依据上述公式,所有节点都可以快速有序的加入进来.本文设计了网络传输过程中命令包的结构(如图2所示).图2中1 Byte表示1个字节,命令包的第1个字节Packet_ID表示标识符,即通过命令包的第1个字节识别包的功能,第2个字节Length表示包长度,第3个Src_Addr表示源地址,第4个字节Dest_Addr表示目的地址,第5个字节Route_Type表示路由节点的类型,即Using_Route还是Ready_Route,第6个字节RSSI表示接收端接收信号的RSSI值大小.无需人为干预,网络就能在极短的时间内从失效故障中自动恢复所携带的业务,使用户感觉不到网络已出了故障,此为自愈网的定义.其基本原理是使网络具备发现替代传输路由并重新确立通信的能力.本文设计的自愈模型状态机如图3所示.状态机的主要过程为:状态1为开始启动状态,硬件初始化,建立网络,网络建立完毕进入状态2等待状态,写好路由表,分配路由节点类型并让Ready_Route睡眠,发送采集数据命令进入状态3数据采集状态,在数据传输过程中定时进入状态4自愈检测阶段,如果RSSI值检测正常则返回状态3,否则进入状态5网络重建状态,协调器通知存在异常的Using_Route离开网络,通知对应的Ready_Route重新加入网络,为其分配短地址并复制路由表,网络重建完成转入状态2,网络自愈功能完成.无线传感器链状网络组建完成,分配网络短地址后,协调器通知各Using_Route 将其路由表信息发送回来,Using_Route收到后回复相关信息,协调器收到后将各Using_Route路由表信息存储起来,通知Ready_Route进入休眠模式,然后进入定时循环检测模式,即协调器与Using_Route持续通信收集数据,每隔一段时间对各Using_Route节点发送的信号强度(RSSI值)进行检测,检测方法如2.2节所述,检测完成后按照状态机判定机制判定进入相关的状态.WSN中RSSI值与距离d及功率P有如下关系:取参考距离d0=1 m,n为经验值,经过测试我们选取n=1.6,这样式(2)转化成通过实验方法可得到多个P(1)值,采用高斯模型确定P(1)的最佳范围,具体如下:式中,d为接收端与发射端之间的距离(m);d0为参考距离(m),一般取1m;P(d)为距离为d的接收端的接收信号功率(dBm),也就是距离为d的接收端检测到得RSSI值(d Bm);P(d0)为距离为的接收端的接收信号功率(dBm);n是路径损耗指数,是一个与环境相关的值;XdBm是一个均值为0的高斯随机变量(dBm),反映了当距离一定时,接收信号功率的变化.在此,我们忽略XdBm的影响.式(1)可简化为式中,Xi表示参考节点第i个RSSI采样值(通过抓包器获取,单位为dBm);m 为参考节点记录RSSI值的次数;u和σ2分别为m次RSSI值的均值和方差[8].式中,f(x)为参考节点RSSI值的概率密度数;Φ(x)为某节点RSSI值的概率分布函数.由概率论知识可知,取与u值邻近的x值概率大,取与u值远的值概率小;即f(x)值越接近1,x概率越大,反之越小;用概率分布函数解释就是Φ(x):函数值与Φ(u)值(其中Φ(u)=0.5)越接近说明x概率越大,在此选取0.35作为临界点,如式(8):根据式(8)得到2个数值x1和x2(假设x1<x2),这样就可以得到:本文定义[x1,x2]为P(1)的最佳范围值,即当P(1)值变化范围在[x1,x2]之内时,我们认为P(1)值正常.所以可由式(3)计算出距离为d的RSSI 最佳值,在定时检测节点RSSI值的过程中,如果检测值在[x1-16lg d,x2-16lg d]中,则判定该节点正常,如果不在该范围之内,对该节点重新检测,如果5次都不在该范围之内,由式(9)可知,此事件发生的概率为p=0.35=0.002 43,由小概率事件理论可知,p<0.01,即事件为小概率事件,但是居然发生了,由此可得该节点的RSSI值不正常,在不考虑环境和距离因素的情况下由式(3)可判定该节点的电池供电出了问题,进入网络重建状态.在协调器通过RSSI值检测得知某Using_router电池供电不足的消息后,首先,协调器向该Using_Route发送离开网络的命令,然后,通知该Using_Route对应的Ready_Route重新加入协调器,Ready_Route收到后发送入网请求,协调器接收到后将其加入,同时将原来分配给故障Using_Route的地址分配给该路由器,将故障Using_Route路由表[7]信息发送给Ready_Route,该路由器收到后将此信息更新为最新的路由表,该路由节点的Router_Type变为Using_Route,整个网络重建成功,通知其它Ready_Route进入睡眠状态,然后网络又进入传输数据和RSSI值检测状态.以图1的拓扑结构图组建WSN.其中,路由器R1(参考节点)和距离协调器距离1 m,实验过程中可通过R1获取P(1)的最佳范围值.R2、R2′、R3、R3′、R4则为待测节点,通过改变其与协调器的距离来获得不同的接收RSSI值,其中R2和R2′距离协调器的0.64 m,R3和R3′距离协调器4.5m,R4距离协调器10m.R4节点并没有替代节点,R4节点主要用于观察电池供电整个过程RSSI值的变化,R1采用稳定的直流电源供电,保证该处节点的RSSI值稳定,其它节点采用2节1.5 V普通电池供电,整个实验在室内无阻隔环境中完成,基本消除了环境变化干扰.经过长期观察,统计各节点的RSSI值数据,得到结果如图4~7.建立高斯模型如图4所示,通过公式(8)计算得到P(1)最佳范围值为[-67,-63](RSSI值整数化),由公式(3)求的P(0.64)、P(4.5)、P(10)的最佳范围值分别为[-65,-61]、[-77,-73]、[-83,-79],从图形中我们可以看出一开始节点在电能供应充足的情况下RSSI值变化幅度很小,基本保持在最佳范围值内波动,图7中当节点RSSI波动很大时,芯片指示灯逐渐变暗,即此时电池供电不足,这从实验的角度表明了式(3)的合理性,同时,从图5,6可以看出在电池出现供电不足导致RSSI波动很大时,网络自愈功能启动,替代节点很好的代替了原供电不足节点的工作,整个网络恢复正常,图5,6的结果还说明此处工作的节点寿命延长了约1倍,有效提高了网络当中非常重要的路由节点的生命期.本文针对ZigBee组建的网络提出了一种自愈算法,主要是检测网络中是否有因电池电量耗尽而坏死的路由节点和如何避免这种情况的发生,保障整个网络的通畅,整个过程在室内坏境下完成,实验数据表明本文的自愈模型基本解决了电池导致的节点坏死问题,但本算法也带来了一些问题需要进一步研究和解决:首先,节点之间距离的测量可能会带来误差,影响自愈功能的效果;其次,本文是在室内环境下完成,本文自愈算法对于复杂环境之下的干扰是否适应还不清楚,最后,由于协调器作为主控制器需要循环检测路由节点是否正常以及路由节点死亡后重建网络等工作需消耗较大的能量,对于如何减少主控制器的能耗问题还需仔细研究.总之,本文给出了WSN技术上的一种新型的自愈方法.【相关文献】[1] Ma C G,Lin X J,LüH W,et al.ABSR:an agent based selfrecovery model for wireless sensor network[C]//Eighth IEEE International Conference on Dependable,Autonomic and Secure Computing.Chengdu,China:IEEE,2009:400-404.[2] Wang Q H.Practicality analysis of the self-healing group key distribution schemes for resource-constricted wireless sensor networks[C]//Third International Conference on Communications and Mobile Computing.Qingdao,China:IEEE,2011:37-40.[3]刘林峰,吴家皋,邹志强,等.面向节点失效问题的无线传感器网络拓扑自愈算法[J].东南大学学报:自然科学版,2009,39(4):695-699.[4]李予东,黄宏光,向西西.基于能量均衡的ZigBee路由算法优化[J].计算机工程与设计,2011,32(2):397-400.[5]张洁颖,孙懋珩,王侠.基于RSSI和LQI的动态距离估计算法[J].电子测量技术,2007,30(2):142-145.[6]陈俊,唐余亮,雷鹰.基于桥梁结构健康监测的无线传感系统自愈性研究[J].中国新通信,2010,12(7):69-71.[7]章坚武,张璐,应瑛,等.基于ZigBee的RSSI测距研究[J].传感技术学报,2009,22(2):285-288.[8] Li J B,Li J Z,Guo L J,et al.Power-efficient node localization algorithm in wireless sensor networks[C]//APWeb 2006 International Workshops.Harbin,China:Springer,2006:420-430.。

ZigBee网络分布式地址分配算法研究的开题报告

ZigBee网络分布式地址分配算法研究的开题报告

ZigBee网络分布式地址分配算法研究的开题报告一、选题背景随着物联网技术的发展和普及,无线传感器网络(WSN)的应用越来越广泛。

其中,ZigBee是一种低功耗、短距离、低速率的无线传感器网络技术,已经被广泛应用于家居自动化、智能建筑、工业控制等领域。

在ZigBee网络中,每个设备都有一个唯一的64位IEEE地址(Extended Address),用于唯一标识一个设备,并提供路由功能。

作为分布式无线传感器网络,ZigBee网络在适应不断变化的环境中有着更好的性能。

但是,ZigBee网络中的地址分配问题一直是一个研究热点。

当前的ZigBee网络中的设备地址分配方式是由网络协调器(Coordinatror)负责分配地址,这种方式存在单点故障和通信瓶颈等问题。

因此,如何设计一种分布式的地址分配算法,以提高ZigBee网络的可靠性、可扩展性和安全性,成为了一个研究热点和难点。

二、研究目的和内容本文的研究目的是设计一种分布式的ZigBee地址分配算法,通过在网络中的多个设备间协调完成地址分配过程,提高ZigBee网络的可靠性、可扩展性和安全性。

具体研究内容包括:1. 分析当前ZigBee网络中的设备地址分配方式,分析其存在的问题和不足;2. 研究分布式无线传感器网络中的地址分配算法,比较各种算法的优劣;3. 设计一种基于分布式的ZigBee地址分配算法,包括地址分配流程、地址冲突处理、地址管理等方面;4. 利用NS-3仿真工具对设计的算法进行模拟实验证明其可行性和有效性;5. 对设计的算法进行优化和改进。

三、研究方法本文采用以下研究方法:1. 文献调研法:分析已有的ZigBee网络地址分配算法,比较各种算法的优劣,为后续设计提供参考。

2. 理论分析法:针对ZigBee网络中的设备地址分配问题,分析其特点和存在的问题,为设计分布式算法提供理论基础和指导思路。

3. 分布式算法设计法:结合ZigBee网络的特点,设计一种分布式的地址分配算法,并对其进行改进和优化。

ZigBee地址分配算法及路由策略研究与改进的开题报告

ZigBee地址分配算法及路由策略研究与改进的开题报告

ZigBee地址分配算法及路由策略研究与改进的开题报告一、选题背景及意义ZigBee技术是一种无线通信技术,被广泛用于家庭自动化、智能建筑、工业控制等领域。

ZigBee网络由大量的设备组成,这些设备需要被分配唯一的地址以实现互相之间的通信。

本论文将研究ZigBee地址分配算法及路由策略的问题,旨在提出一种有效的算法,用于更好地管理和传输ZigBee网络中的数据。

二、研究目标本论文的研究目标如下:1、分析ZigBee地址分配算法和路由策略的原理和优缺点;2、通过对现有算法的评估和分析,提出一种改进的算法;3、设计并实现改进的ZigBee地址分配算法,并对其进行性能测试;4、设计并实现改进的ZigBee路由策略,并对其进行性能测试;5、通过比较改进的算法和已有算法的实验结果,验证改进算法的有效性和优越性。

三、研究内容本论文将包括以下研究内容:1、ZigBee地址分配算法研究将分析现有的ZigBee地址分配算法,并比较其优缺点。

基于这些分析结果,提出一种改进的算法。

改进的算法将考虑如何更好地管理ZigBee网络的地址空间,避免地址冲突和浪费,并提高网络的可靠性和可扩展性。

2、ZigBee路由策略研究将分析现有的ZigBee路由策略,并比较其优缺点。

基于这些分析结果,提出一种改进的路由策略。

改进的路由策略将考虑如何更好地维护网络拓扑结构、保证数据传输的安全性和稳定性、以及提高网络的吞吐量。

3、实验设计与数据分析将设计实验评估改进算法的性能,并与现有算法进行比较。

实验数据将被收集并进行统计和分析,以评估改进算法的有效性和优越性。

四、预期结果本研究预期将提出一种改进的ZigBee地址分配算法和路由策略,可以有效地应用于ZigBee网络中的地址管理和数据传输,提高网络的性能和可靠性。

预期结果包括:1、改进的算法可以更好地管理ZigBee网络地址空间,避免地址冲突和浪费,并提高网络的可靠性和可扩展性。

2、改进的路由策略能够更好地维护网络拓扑结构、保证数据传输的安全性和稳定性、以及提高网络的吞吐量。

ZigBee路由协议分析与优化

ZigBee路由协议分析与优化

ZigBee 路由协议分析与优化摘要:ZigBee 协议是一种低功耗、低数据速率、短距离通信的无线传感器网络协议,适用于许多物联网应用场景。

然而,由于其复杂的路由机制,ZigBee 网络的性能容易受到负载和干扰的影响。

为了优化ZigBee 网络的性能,本文针对其路由协议进行了分析,并提出了一系列优化措施,包括基于负载均衡的路由、基于信号干扰的路由、基于链路质量的路由以及基于自适应路由的路由。

关键词:ZigBee 协议;路由协议;负载均衡;信号干扰;链路质量;自适应路由。

一、引言ZigBee 是一种基于IEEE 802.15.4 标准的低功耗、低数据速率、短距离通信的无线传感器网络协议,广泛应用于智能家居、智能医疗、智能交通等物联网应用领域。

ZigBee 网络通常由若干个传感器节点、一个集中器以及若干个路由器组成,节点之间通过无线信道进行通信,集中器负责维护网络拓扑,路由器则负责中转节点之间的数据包。

由于ZigBee 网络的拓扑结构往往非常复杂,节点密度较大,因此对其路由协议进行优化显得尤为重要。

二、ZigBee 路由协议分析ZigBee 路由协议主要包括基于源路由的路由协议和基于分散路由的路由协议。

在基于源路由的路由协议中,数据包的路由路径由源节点指定,中间节点只充当转发器的角色;在基于分散路由的路由协议中,数据包的路由路径由中间节点根据网络拓扑信息决定。

从ZigBee 路由协议的工作原理来看,它往往容易受到负载和干扰的影响,造成网络性能下降。

同时,ZigBee 协议的路由机制较为复杂,会导致路由器计算和存储负担增加,从而使路由器的能耗增加。

三、ZigBee 路由协议优化为了提高ZigBee 网络的性能,本文提出了基于负载均衡的路由、基于信号干扰的路由、基于链路质量的路由以及基于自适应路由的路由四种优化措施。

1.基于负载均衡的路由基于负载均衡的路由是指根据节点的负载情况来选择最优路径进行数据包传输,可以使网络资源的利用更加均衡,从而提高网络的吞吐量和稳定性。

ZigBee网络地址的分配

ZigBee网络地址的分配

ZigBee网络地址的分配一、ZigBee 有两种类型的地址:一种是64 位IEEE 地址,即MAC 地址,另一种是16 位的网络地址。

(1)64 位的IEEE地址是一个全球唯一的地址,一经分配就将跟随设备一生。

它通常由制造商或者被安装时设置。

这些地址由IEEE 组织来维护和分配。

问题:用Z-stack 协议栈编程,64位IEEE地址是否是芯片自带的,还是需要在编程时给予赋值?这点需要继续深入研究后找出答案(2)16 位网络地址是当设备加入网络后分配的,它在网络中是唯一的,用来在网络中鉴别设备和发送数据。

二、网络地址的分配(1)ZigBee使用分布式寻址方案来分配网络地址。

这个方案保证整个网络中所有分配出去的地址都是唯一的,同时,这个寻址算法本身的分布特性保证设备只能与它的父辈设备通讯来接收一个唯一的网络地址。

(2)在每个路由加入之前,寻址方案需要知道和配置一些参数,这些参数是:MAX_DEPTH,MAX_ROUTERS,MAX_CHILDREN。

这些参数是协议栈的一部分,在ZigBee2006中MAX_DEPTH = 5,MAX_ROUTERS = 6,MAX_CHILDREN = 20。

(a)MAX_DEPTH 决定了网络的最大深度,协调器位于深度0 ,其子设备位于深度1,其子子设备位于深度2(b)MAX_CHILDREN 决定了一个路由或者一个协调器节点可以处理的子节点的最大个数(c)MAX_ROUTERS 决定了一个路由或者协调器节点可以处理的具有路由功能的子节点的最大个数,这个参数是MAX_CHILDREN 的一个子集。

(3)如果开发时想改变这些值,需完成以下几个步骤:(a)首先要保证这些参数的新植要合法,整个地址空间不能超过2 ,这就限制的参数能设置的最大值。

可以使用project\ZStack\tools文件夹下的CSkip.xls文件来确认这些值是否合法。

当表格中设置的数据不合法时,就会出现错误提示。

浅谈ZigBee协议的4类路由机制

浅谈ZigBee协议的4类路由机制

浅谈ZigBee协议的4类路由机制ZigBee路由机制有以下种类:●TableRouting●BroadcastRouting●MulticastRouting●Many-to-One/SourceRouting一、TableRouting源节点为了发现到目标节点的路径,首先源节点发送路由发现请求从而形成路由表。

当两个节点之间的路由建立后,源节点只需要将数据发送给路由中的第一个节点,此节点存在源节点的路由表中。

因此每一个中间节点都通过查询自己的路由表将数据转发到路由的下一个节点,直到数据到达目标节点。

如果路由失败,则将路由错误发送回给源节点,然后源节点可以重新发起路由发现请求。

二、BroadcastRouting广播路由是在网络中给所有设备发送消息的一种路由机制。

网络层广播具有选项可以选择是将消息只发送给路由设备,还是发送到非休眠的终端设备,或者还是发送到带休眠的终端设备。

如下表格,通过广播地址设置一条广播消息会被网络中所有路由设备重复广播3次,以确保传送到所有设备。

虽然广播是发送消息的可靠方法,但由于对网络性能的影响,应谨慎使用广播。

重复广播可能会限制网络中其他正在发生的通信。

广播也不是给休眠设备发送消息的可靠方式,因为父设备负责缓冲发送给休眠子设备的消息,但可能会在休眠子设备唤醒前丢掉消息。

三、MulticastRouting组播路由提供一对多通信的路由选项。

当一个设备想要向一组设备发送消息时使用组播,例如一个开关向一组10个等发送开命令。

在这种机制下,所有设备加入到一个组中。

只有那些属于该组成员的设备才会收到消息,而其他设备将路由转发这些组播消息。

组播可以理解成被限制的广播,同样过多使用会降低网络性能。

广播和组播都是没有ACK的。

四、Many-to-One/SourceRoutingMany-to-One Routing,是一种简单的路由机制,使得整个网络中的路由设备拥有回到中心节点(集中器)的路由,在这种机制下,中心节点(集中器)周期性发送Many-to-One route discovery广播(默认60秒可以根据需求设置)。

zigbee入网退网机制分析

zigbee入网退网机制分析

zigbee入网退网机制分析第一篇:zigbee入网退网机制分析Zstack入网退网代码分析网络初始化和路由:网络初始化:协调器(Coordinator)首先在某个频段发起一个网络,网络频段的定义放在DEFAULT_CHANLIST配置文件里。

如果ZDAPP_CONFIG_PANID定义的PAN ID是0xFFFF(代表所有的PAN ID),则协调器根据它的IEEE地址随机确定一个PAN ID。

否则,根据ZDAPP_CONFIG_PANID的定义建立PAN ID。

当节点为Router或者End Device时,设备将会试图加入DEFAULT_ CHANLIST所指定的工作频段。

如果ZDAPP_CONFIG_PANID没有设为0xFFFF,则Router或者End Device会加入ZDAPP_CONFIG_PANID所定义的PAN ID。

设备上电之后会自动的形成或加入网络,如果想设备上电之后不马上加入网络或者在加入网络之前先处理其他事件,可以通过定义HOLD_AUTO_START来实现。

通过调用ZDOInitDevice(int startdelay)来手动定义多久时间(startdelay)之后开始加入网络。

设备如果成功的加入网络,会将网络信息存储在非易失性存储器(NV Flash)里,掉电后仍然保存,这样当再次上电后,设备会自动读取网络信息,这样设备对网络就有一定的记忆功能。

如果需要使用NV Flash的设置,可以通过定义NV_RESTORE宏和关闭SW_BYPASS_NV来使用。

有关网络参数的设置大多保存在协议栈T ools文件夹的f8wConfig.cfg里。

路由:Z-Stack采用无线自组网按需平面距离矢量路由协议AODV,建立一个Hoc网络,支持移动节点,链接失败和数据丢失,能够自组织和自修复。

当一个Router接受到一个信息包之后,NMK层将会进行以下的工作:首先确认目的地,如果目的地就是这个Router的邻居,信息包将会直接传输给目的设备;否则,Router将会确认和目的地址相应的路由表条目,如果对于目的地址能找到有效的路由表条目,信息包将会被传递到该条目中所存储的下一个hop地址;如果找不到有效的路由表条目,路由探测功能将会被启动,信息包将会被缓存直到发现一个新的路由信息。

基于反向路由的Zigbee 网络本地修复机制改进

基于反向路由的Zigbee 网络本地修复机制改进

山东科学SHANDONGSCIENCE第31卷第3期2018年6月出版Vol.31No.3Jun.2018DOI:10.3976/j.issn.1002 ̄4026.2018.03.019收稿日期:2017 ̄09 ̄15基金项目:江苏风力发电工程技术中心开放基金(ZK16 ̄03 ̄13)ꎻ南京工业职业技术学院学校科研基金(YK17 ̄02 ̄04)ꎻ南京工业职业技术学院2017年度高等职业教育研究立项课题(GJ17 ̄03Z)作者简介:何智勇(1984 )ꎬ男ꎬ硕士ꎬ讲师ꎬ研究方向为通信技术㊁物联网应用技术ꎮ基于反向路由的Zigbee网络本地修复机制改进何智勇1ꎬ2(1.南京工业职业技术学院电气工程学院ꎬ江苏南京210046ꎻ2.南京工业职业技术学院江苏风力发电工程技术中心ꎬ江苏南京210046)摘要:针对当前ZigBee网络链路故障修复机制时延长和数据分组丢失的缺陷ꎬ提出了一种改进的Zigbee网络本地修复算法(ILRA ̄AODVjr)ꎮ通过空闲路由节点反向路由机制ꎬ向邻居节点广播一个具有两跳生命周期反向路由构建报文S ̄RREQꎬ为空闲节点产生多个备用局部路由ꎬ增加网络中节点有效路由数量ꎬ提高网络发现路由速度ꎬ缩短网络局部故障修复时间ꎮ仿真结果表明ꎬ改进的Zigbee网络本地修复算法ꎬ有效减少了网络故障修复响应时间ꎬ延长网络生命周期ꎬ减轻了网络拥塞和延迟ꎮ关键词:Zigbee网络ꎻILRA ̄AODVjrꎻ修复机制中图分类号:TN923㊀㊀㊀文献标识码:A㊀㊀㊀文章编号:1002 ̄4026(2018)03 ̄0119 ̄06ImprovementoflocalrepairmechanismforZigbeenetworkbasedonreverseroutingHEZhi ̄yong1ꎬ2(1.CollegeofElectricalEngineeringꎬNanjingInstituteofIndustryTechnologyꎬNanjing210046ꎬChinaꎻ2.JiangsuWindPowerEngineeringTechnologyCenterꎬNanjingInstituteofIndustryTechnologyꎬNanjing210046ꎬChina)AbstractʒAimingatthedefectsoftimedelayanddatapacketlossinZigBeenetworklinkrepairmechanismꎬanimprovedlocalrepairalgorithm(ILRA ̄AODVjr)forZigbeenetworkswasproposedinthispaper.Basedonthereverseroutingmechanismofleisureroutingnodesꎬatwo ̄hopreverseroutingS ̄RREQpacketwasbroadcasttotheneighbornodesꎬwhichgeneratedapluralityofalternatelocalroutingfortheleisurenodeꎬincreasedthenumberofeffectiveroutesinthenetworkꎬimprovedthespeedofnetworkdiscoveryꎬandshortenedthelocalfaultrecoverytime.ThesimulationresultsshowthattheimprovedlocalrepairalgorithmforZigbeenetworkcaneffectivelyreducetheresponsetimeofnetworkfaultrepairꎬprolongthenetworklifecycleꎬandreducethenetworkcongestionanddelay.KeywordsʒZigbeenetworkꎻILRA ̄AODVjrꎻrepairmechanism㊀㊀Zigbee是一种低功耗㊁低成本㊁可靠性好的无线网络技术ꎬ具有延时小和网络容量大的特点[1 ̄2]ꎬ目前主要应用于医疗㊁矿井㊁环境检测等ꎬ无线传感器网络物理层和MAC层采用IEEE802.15.4协议标准ꎬ网络层采山㊀东㊀科㊀学㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀2018年用Cluster ̄Tree路由算法[3]和AODVjr路由算法[4 ̄5]ꎬCluster ̄Tree路由算法只需要根据网络节点之间的父子关系进行转发ꎬ路由方式简单ꎬ不需要存储路由表ꎮAODVjr路由算法[5]可以在源节点与目的节点之间寻找最优路径ꎬ节点路由发现过程通过广播形式发送RREQ报文建立路由ꎬ节点能量消耗大ꎬ节点依靠电池供电ꎬ节点的电量绝大部分用于节点之间的分组转发的通信消耗ꎬ由于网络总体能量有限ꎬ特别是在协调器附近的高层节点ꎬ随着网络运行时间不断增长ꎬ节点能量耗尽ꎬ导致网络链路出现中断ꎬAODVjr路由算法采用本地修复机制ꎬ当网络中出现链路中断ꎬ故障链路的上游节点重新启动路由发现过程ꎬ通过向网络中广播RREQ数据分组来启动路由发现过程ꎬ寻找一条新的可达路由ꎬ在发现路由的过程中ꎬ链路上传送的数据分组直接被丢失ꎬ网络出现拥塞ꎬ延长了数据端到端时间ꎬ因此ꎬ局部链路的快速修复显得非常重要ꎮZigbee网络国内外学者的研究热点主要集中在路由局部修改过程中RREQ报文的处理方法和链路选择方面ꎮShang等[6 ̄7]研究协议运行机制ꎬ提出给每个局部修复进程分配优先级ꎬ来提高链路修复过程中网络性能ꎬ但该算法只是在故障修复过程中对进程的优先级进行分类ꎬ没有减少网络链路中断出现和对链路数据分组进行保护ꎮ肖雳[8]提出在网络链路启动本地修复过程中ꎬ首先对链路中断位置上一处节点进行分析ꎬ由上游节点发送有限跳数的发现报文RREQ进行局部路由修复ꎬ但该算法路由发现过程是在链路中断后启动修复机制ꎬ不能减少因重建路由而产生的数据分组端到端时延ꎮ李子璇等[9]提出根据网络链路最大剩余能量来选择最佳路由ꎬ避免局部节点死亡导致的网络分割ꎬ根据链路能量选择路径ꎬ延长网络生命周期ꎬ但是该算法没有考虑在节点能量耗尽出现死亡ꎬ网络出现链路故障的情况ꎮ针对以上研究的不足ꎬ结合空闲路由节点反向路由机制ꎬ本文提出一种改进的Zigbee网络本地修复机制ILRA ̄AODVjr(improvedlocalrepairalgorithm ̄AODVjr)ꎬ通过向邻居节点定期广播一个具有两跳生命周期反向路由构建报文S ̄RREQꎬ为ZigBee网络产生多个备用局部路由ꎬ增加网络中节点可达路由数量ꎬ提高网络发现路由过程的效率ꎬ缩短网络局部故障修复时间ꎬ减少数据分组丢失ꎮ图1㊀AODVjr本地算法修复过程Fig.1㊀AODVjrlocalalgorithmrepairprocess2㊀ZigBee故障机制存在的问题如图1所示ꎬ在AODVjr路由算法建立路径的过程中ꎬ源节点S要发送数据分组到目的节点DꎬS首先查找本身路由表ꎬ寻找源节点到目的节点的路径ꎬ如果节点路由表不能找到目的节点的路由ꎬ由源节点S启动路由发现过程ꎬ通过广播RREQ报文进行建立路由ꎬ路由建立成功后ꎬ发送数据分组到目的节点ꎮ在AODVjr路由算法中ꎬ节点选择下一跳路由的原则是选择先返回RREP报文的节点ꎬ随着网络运行时间增长ꎬ节点能量耗尽失效ꎬ导致链路中断ꎬ特别是网络中高层节点数据转发频繁ꎬ节点能量损耗快ꎬ网络会提前出现分割现象ꎮ如图1所示的网络结构中ꎬ节点1是网络关键节点ꎬ数据分组转发频繁ꎬ节点能量耗尽死亡ꎬ网络出现链路中断ꎬ{7ꎬ1}㊁{8ꎬ1}㊁{13ꎬ1}变成中断链路不能发送数据分组ꎬAODVjr启动局部修复机制ꎬ由中断链路的上游节点7重新启动路由发现过程ꎬ向网络中广播发送RREQ报文再次寻找到目的节点的路由{Sꎬ6ꎬ7ꎬ2ꎬ8ꎬ12ꎬ13ꎬ14ꎬD}ꎬ由于RREQ是广播发送ꎬ增加网络节点的负担ꎬ网络中传送的数据分组被直接丢弃ꎬ直接影响网络传输效率ꎬ增大了网络数据分组端到端时延ꎮ021第3期何智勇ꎬ等:基于反向路由的Zigbee网络本地修复机制改进3㊀ILRA ̄AODVjr算法提出本文提出的改进的Zigbee网络本地修复算法ILRA ̄AODVjr的基本思想是网络节点处于空闲状态时ꎬ即节点在一个时间段内除了与向邻居节点发送KEEP_ALIVE报文进行路由维护之外ꎬ不进行任何其他数据分组的发送㊁转发和接收ꎬ充分利用网络节点空闲时间ꎬ通过空闲路由节点反向路由机制ꎬ向邻居节点广播一个具有两跳生命周期反向路由构建报文S ̄RREQꎬ节点产生多个备用局部路由ꎬ减少路由发现等待过程ꎬ缩短网络局部故障修复时间ꎮ源节点通过路由发现过程建立链路之后ꎬ路由进入路由维护阶段ꎮ在链路有效时间内ꎬ目的节点定期向源节点发送KEEP_ALIVE数据分组来维持链路信息ꎬ如果源节点成功收到KEEP_ALIVE数据分组ꎬ链路可达ꎬ否则认为链路失效ꎬ重新进行路由发现过程ꎬKEEP_ALIVE路由维护报文发送如图2所示ꎮ图2㊀ILRA ̄AODVjr算法产生备用路由过程Fig.2㊀GenerationofastandbyroutingprocessbyILRA ̄AODVjralgorithm在网络运行过程中ꎬ路径{Sꎬ6ꎬ7ꎬ2ꎬ8ꎬ12ꎬ13ꎬ14ꎬD}的节点有数据分组发送ꎬ不属于空闲链路ꎮ网络中节点在一定周期Tidle内ꎬ系统设置的空闲超时时间为Tꎬ节点没有任何数据分组㊁RREQ报文或RREP报文发送或者转发ꎬ该节点处于空闲状态ꎮ在整个Zigbee网络中ꎬ同一时间内有很多的节点处于没有数据分组转发的状态ꎬ以节点2为例ꎬ当节点2的Tidle>Tꎬ为了节省网络资源ꎬ节点2向网络发送生命周期为2的路由发现报文S ̄RREQ建立备用路由ꎬ算法具体执行步骤如下:(1)空闲节点Tidle>T时ꎬ向邻居节点发送TTL=2的路由发现报文S ̄RREQꎬ对2跳范围内能到达的节点建立备用路由ꎬ收到S ̄RREQ数据分组的节点回复RREP报文进行路径建立确认ꎮ(2)备用路由建立成功后ꎬ节点定期对已建立的路由进行维护ꎬ让已存在的备用路由不会因为超时被删除ꎬ如图2所示ꎬ节点2建立的备用路由{2ꎬ3ꎬ9}ꎬ{2ꎬ3ꎬ19}ꎬ{2ꎬ8ꎬ9}ꎬ{2ꎬ8ꎬ12}ꎬ{2ꎬ8ꎬ1}在链路时间到期ꎬ目的节点发送KEEP_ALIVE数据分组到节点2确定路由存在ꎬ刷新路由信息ꎮ(3)节点发起新的路由过程后ꎬ节点向网络中发送RREQ报文ꎬ空闲节点维护的路由表中有备用路由信息ꎬ节点19要发送数据分组到目的节点Dꎬ向网络中广播RREQ报文启动路由发现过程ꎬ节点3收到RREQ报文ꎬ对比本身存储的路由信息ꎬ由于节点有备用路由ꎬ节点3直接给节点19回复响应RREP报文确定链路的建立ꎬ大大提高了路由发现过程的效率ꎮ(4)节点能量耗尽链路出现断裂ꎬ网络出现中断ꎬ如节点1能量耗尽死亡ꎬ路径{1ꎬ7}㊁{1ꎬ8}㊁{1ꎬ13}中断ꎬ上游节点7发起局部路由修复机制ꎬ向全网发送RREQ报文ꎬ等待目的节点D回复RREP数据分组确定121山㊀东㊀科㊀学㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀2018年路由的建立ꎬ由于节点7到目的节点的跳多ꎬ响应时间慢ꎮ通过空闲路由节点反向路由信息ꎬ节点2收到节点7发起的路由发现报文后ꎬ查看自身的路由表ꎬ节点2维护的路由表中有到过目的节点的路由信息ꎬ节点2直接回复RREP报文给节点7ꎬ路由本地修复完毕ꎬ节点2到节点D的新路径重新构建完毕ꎬ大大减少了网络节点故障本地修复时间ꎮ整个算法的流程如图3所示ꎮ图3㊀改进的路由算法处理过程Fig.3㊀Improvedroutingalgorithmprocess4㊀仿真分析通过NS2平台验证本文提出的ILRA ̄AODVjr算法ꎬ仿真实验中ꎬ网络覆盖面积为100ˑ100ꎬ节点120个ꎬ信道数据传输率为200kbit/sꎬ节点初始能量为5Jꎬ仿真时间为200sꎬ数据包长度为128bitꎬ本仿真实验中ꎬ节点能量低于初始能量2%ꎬ节点被认为是死亡节点ꎬ系统设置空闲超时时间为T=0.01sꎮ仿真实验从平均节点故障修复时间㊁数据分组端到端延时和网络剩余能量比率三方面与AODVjr算法进行了比较ꎮ4.1㊀节点故障平均修复时间网络运行后ꎬ改进ILRA ̄AODVjr路由算法与AODVjr算法节点故障平均修复时间对比图见图4ꎬ由于改进算法在网络节点处于空闲状态时ꎬ通过空闲路由节点反向路由机制ꎬ建立备用链路信息ꎬ在网络中构建多条备用路由信息ꎬ网络中节点能量耗尽死亡ꎬ网络中出现链路中断ꎬ由于ILRA ̄AODVjr路由算法中有备用链路存在ꎬ减少路由发现过程ꎬ缩短网络局部故障修复时间ꎬILRA ̄AODVjr路由算法优于AODVjr路由算法ꎮ221第3期何智勇ꎬ等:基于反向路由的Zigbee网络本地修复机制改进4.2㊀数据分组端到端延时数据分组端到端延时仿真结果见图5ꎬ随时间的增长ꎬ网络中有节点能量耗尽死亡ꎬ节点数据分组端到端延时不断增加ꎬ由于改进ILRA ̄AODVjr路由算法采用备用路由机制ꎬ提高了节点故障修复时间ꎬ避免了数据分组的丢失ꎬILRA ̄AODVjr路由算法优于AODVjr路由算法ꎮ4.3㊀网络剩余能量比率网络剩余能量比率仿真结果见图6ꎬ随网络运行时间的增长ꎬ网络中数据分组不断发送需要消耗能量ꎬAODVjr算法在网络出现链路中断后ꎬAODVjr上游节点启动路由发现过程ꎬ广播RREQ报文ꎬ节点能量消耗快ꎬ改进的ILRA ̄AODVjr路由算法采用空闲路由节点反向路由机制ꎬ避免了RREQ报文泛洪ꎬ有效保护了节点剩余能量ꎬ网络剩余能量比率ILRA ̄AODVjr路由算法优于AODVjr路由算法ꎮ图4㊀节点故障平均修复时间对比图Fig.4㊀Comparisongraphoftheaveragerepairtimefornodefailure图5㊀数据分组端到端延时对比图Fig.5㊀Comparisongraphofdatapacketend ̄to ̄enddelay图6㊀网络剩余能量比率对比图Fig.6㊀ComparisongraphofNetworkResidualEnergyRatio5㊀结语本文在对Zigbee路由协议进行深入研究的基础上ꎬ提出了改进ILRA ̄AODVjr路由算法ꎬ通过空闲路由节点反向路由机制ꎬ向邻居节点发送TTL=2反向路由构建报文S ̄RREQꎬ在网络中产生多个备用局部路由ꎬ当网络高层节点能量耗尽ꎬ链路出现中断后ꎬ减少路由发现等待过程ꎬ缩短网络局部故障修复时间ꎬ减轻了网络拥塞和延迟现象ꎮ通过仿真实验ꎬ将改进ILRA ̄AODVjr路由算法与AODVjr路由算法进行比较ꎬILRA ̄AODVjr算法在节点故障平均修复时间和数据分组端到端延时方面有优势ꎬ延长了网络生命周期ꎮ321421山㊀东㊀科㊀学㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀2018年参考文献:[1]周武斌ꎬ罗大庸.ZigBee路由协议的研究[J].计算机工程与科学ꎬ2009ꎬ31(6):12 ̄14.[2]赵博ꎬ吴静.基于ZigBee无线网络的Cluster ̄Tree路由算法研究[J].电子技术应用ꎬ2016ꎬ42(4):116 ̄119.[3]LEEKKꎬKIMSHꎬCHOIYSꎬetal.AmeshroutingprotocolusingclusterlabelintheZigBeenetwork[EB/OL].[2017 ̄09 ̄01].http://dx.dor.org/10.1109/MOBHOC.2006.278654.[5]QIUFꎬWANGJMꎬLENGJꎬDesignandimplementationofawirelesspersonalareanetworkbasedonAODVjrRouting[EB/OL]. [2017 ̄09 ̄01].http://dx.doi.org/10.1049/cp:20061277.[6]SHANGTꎬWUWꎬLIUXDꎬetal.AODVjrroutingprotocolwithmultiplefeedbackpolicyforZigBeenetwork[EB/OL].[2017 ̄09 ̄01].http://dx.doi.org/10.1109/ISCE.2009.5156814.[7]韩林呈ꎬ陈喜春.AODV协议局部修复机制改进[J].微型电脑应用ꎬ2016ꎬ32(4):65 ̄67.[8]肖雳.AODV路由协议路由修复研究和改进[D].北京:北京邮电大学ꎬ2010.[9]李子璇ꎬ童孟军ꎬ江浩然.AOMDV多路径协议的研究和改进[J].计算机时代ꎬ2016ꎬ8(8):7 ̄12.(上接第112页)[12]WEIXLꎬWEIJC.AstudyofthepruinosespeciesofHypogymnia(ParmeliaceaeꎬAscomycota)fromChina[J].TheLichenologistꎬ2012ꎬ44(6):783 ̄793.[13]MCCUNEBꎬTCHABANENKOSꎬWEIXL.Hypogymniapapilliformis(Parmeliaceae)ꎬanewlichenfromChinaandFarEastRussia[J].TheLichenologistꎬ2015ꎬ47(2):117 ̄122.[14]WEIXLꎬCHENKꎬLUMBSCHHTꎬetal.RhizinesoccasionallyoccurinthegenusHypogymnia(ParmeliaceaeꎬAscomycota) [J].TheLichenologistꎬ2015ꎬ47(1):69 ̄75.[15]WEIXLꎬMCCUNEBꎬLUMBSCHHTꎬetal.Limitationsofspeciesdelimitationbasedonphylogeneticanalyses:AcasestudyintheHypogymniahypotrypagroup(ParmeliaceaeꎬAscomycota)[J].PLoSOne.2016ꎬ11(11):e0163664.[16]CULBERSONCF.Improvedconditionsandnewdatafortheidentificationoflichenproductsbyastandardizedthin ̄layerchromatographicmethod[J].JournalofChromatographyAꎬ1972ꎬ72:113 ̄125.[17]CULBERSONCFꎬKRISTINSSONH.Astandardizedmethodfortheidentificationoflichenproducts[J].JournalofChromatographyAꎬ1970ꎬ46:85 ̄93.[18]RASSADINAKA.SpeciesetformaeHypogymniaenovaeetcuriosae. ̄NovitatesSystematicaePlantarumnonVascularium[M].LeningradꎬRUS:AcadSciURSSꎬ1967:289 ̄300.。

基于地址分配的ZigBee自愈算法

基于地址分配的ZigBee自愈算法

基于地址分配的ZigBee自愈算法
陶志勇;高鹏涛
【期刊名称】《微电子学与计算机》
【年(卷),期】2014(0)10
【摘要】ZigBee技术为低功耗、网络容量大、传输速率适中的具有自组织功能的无线通讯技术.通过地址分配和树路由算法的改进,当网络中有路由节点坏死时,不需要重新分配节点地址,也不需要重组网络,就能实现网络的自愈;能有效提高网络的生存周期,并在一定程度上解决了网络中孤节点的问题.通过OPNET仿真分析表明算法的可行性.
【总页数】5页(P168-172)
【关键词】ZigBee;自愈网;地址分配;树路由
【作者】陶志勇;高鹏涛
【作者单位】辽宁工程技术大学电子与信息工程学院;辽宁工程技术大学研究生学院
【正文语种】中文
【中图分类】TN92
【相关文献】
1.基于分段的ZigBee网络按需可扩展地址分配算法 [J], 任智;李鹏翔;姚玉坤;黄勇
2.ZigBee地址分配算法及树路由算法改进 [J], 尹甲;别红霞
3.基于两跳邻居的ZigBee网络借地址分配算法 [J], 吴许俊;王永利
4.树簇拓扑无线ZigBee巡更节点的地址分配算法应用 [J], 蔡彬彬;周杰
5.Zigbee节点设备地址分配算法应用研究 [J], 蔡彬彬
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ZigBee网络地址分配机制及路由失效自修复研究李清平;刘清华;傅幼萍【摘要】探讨了ZigBee网络中用于路由发现和数据传输的网络地址以逻辑树方式进行分配的机制,以基于Cluster-Tree和AODVjr算法的路由选择策略阐述了ZigBee网络规模与节点转发率及平均延时的关系,并通过OPNET平台仿真某路由节点失效后ZigBee网络的自修复功能,评估了其对网络性能产生的影响.最后通过分析节点自我修复能力、各节点应用层数据传输的影响以及点对点的延时情况,验证了ZigBee网络良好的鲁棒性和收敛性.%The mechanism of allocating network address used in routing discovery and data trans-mission in the ZigBee network by means of logical tree is work address allocation algorithm show s that 16-bit short addresses of terminal equipment having the same parent node are all continuous.Routing strategy based on Cluster-Tree and AODVjr algorithm indicates that with the expansion of ZigBee network,the node forwarding rate is on the decline,the average de-lay reduce gradually.Through the OPNET platform,self-healing function of ZigBee network is emulated after a routing node failure,and its influence on network performance is evaluated. The good astringency and strong robustness of ZigBee network have been tested and verified by analyzing the self-healing capacity of failed nodes,the influence on data transmission in the appli-cation layer of each node and point-to-point delay.【期刊名称】《山东理工大学学报(自然科学版)》【年(卷),期】2018(032)003【总页数】6页(P38-42,47)【关键词】ZigBee网络;网络地址;分配机制;路由失效;自修复能力【作者】李清平;刘清华;傅幼萍【作者单位】浙江育英职业技术学院信息技术分院,浙江杭州310018;浙江育英职业技术学院信息技术分院,浙江杭州310018;杭州万向职业技术学院经济贸易系,浙江杭州310023【正文语种】中文【中图分类】TP393.02基于IEEE802.15.4标准的ZigBee是一种低功耗、近距离的WSN(Wireless Sensor Network,无线传感器网络)通讯技术,具有短时延、低复杂度、自组织、低功耗、免执照频段等特点 [1-4].作为一种新兴的无线通信技术,ZigBee得到了越来越广泛的关注和应用.由于ZigBee联盟直到2005年6月才推出技术规范[5],因此对于IEEE802.15.4和ZigBee的研究仍处于活跃阶段,目前主要存在以下几方面的问题:(1)ZigBee的核心技术之一是动态组网,即网络中的每个节点相隔一定时间,需要以无线信号交流的方式重新组网,这就涉及到网络地址的分配机制问题;(2)由于ZigBee网络中部署了大量微型无线传感器,节点分布密集,每一个网络节点除了自身作为信息采集点和执行来自中心的命令外,还承担着来自网络的数据中转任务.当由于能量耗尽、传感器损坏、环境变化等因素导致节点失效后,ZigBee网络能否有效修复路由路径、确保数据传输,也是技术瓶颈之一.此外,ZigBee网络节点能耗问题、数据传输时延问题以及传输距离问题,均为当前ZigBee技术实际应用亟待解决和完善之处[6-8].1 ZigBee设备类型及网络地址分配机制1.1 ZigBee网络设备类型ZigBee网络的基本单元是节点,按功能可分为全功能设备(Full Function Device,FFD)和简化功能设备(Reduced Function Device,RFD).FFD可用作网络协调器,连接协调器或另一个通信设备,还能发现其它FFD和RFD并建立通信联系.RFD按最少RAM和ROM资源设计成简单的收/发节点,能搜索现有网络,必要时传输数据,向协调器请求数据,多数时间处于休眠状态以节省电池能耗[9].(1)协调器(Coordinator):启动和配置网络的设备,具有最高权限,负责网络正常工作以及保持与网络中其它设备的通信并负责网络ID的分配.一个ZigBee网络只允许有一个ZigBee 协调器.(2)路由器(Router):一种支持关联的设备,能够实现其它节点消息的转发功能,同时还具有为其它子节点分配网络ID的功能,这就意味着路由器和终端设备可以不依赖协调器而自行构成一个ZigBee网络.(3)终端设备(EndDevice):具体执行数据采集和传输的设备,不能转发其它节点消息.1.2 ZigBee网络地址分配机制ZigBee网络中的所有节点都有两个地址:64位的IEEE地址(MAC地址)和16位的网络地址.64位的MAC地址是全球唯一地址,由IEEE组织来分配和维护.16位网络地址是节点加入网络时动态分配的,用于设备识别和数据传输,仅在网络内部使用,采用逻辑树层次机制进行分配 [9-10].网络地址是节点加入网络时由其父节点动态分配的,彼此形成父子关系,所有的节点共同组成树状逻辑关系,逻辑树中的每一个节点都拥有两个参数:网络地址A和网络深度d,网络深度表示仅仅采用父子关系的网络中,一个数据分组发送到ZigBee协调器所传递的最小跳数[10-11].Coordinator是整个ZigBee网络的根节点,当Coordinator建立一个新网络时,它将给自己分配网络地址A0=0,网络深度d0=0.如果节点i加入网络,并且与节点k连接,那么父节点k将根据自身的网络地址AK和网络深度dk,为子节点i分配网络地址Ai和网络深度di=dk+1,网络地址Ai的算法为[10-11]:(1)如果加入的是没有路由功能的RFD节点,则:Ai=AK+Cskip(di)×Rm+i,1≤i≤Cm-Rm.(2)如果加入的是具有路由功能的FFD节点,则:Ai=AK+1+Cskip(di)×(i-1),1≤i≤Rm.式中Cskip(d)=(1)式(1)中:Cskip(d)表示不同深度下父节点拥有的地址数;Cm表示父节点可以拥有的最大子节点数;Lm表示网络最大深度;Rm表示父节点可以拥有的最大子路由节点数.以图1为例说明网络地址的分配算法.协调器Coordinator节点的Cskip(d)=31,所以Coordinator关联的第1个路由器节点Router1分配地址1,第2个路由器节点Router2分配地址1+31=32,第3个路由器节点Router3分配地址32+31=63,第4个路由器节点Router4分配地址63+31=94,各个子路由器节点的地址以此类推.由于终端节点的父节点Coordinator的Rm=4,所以第1个终端节点EndDevice1的地址为0+31*4+1=125,第2个终端节点EndDevice2的地址为0+31*4+2=126,可见网络中所有同一父节点的终端设备的16位短地址都是连续的.图1 ZigBee网络地址分配算法示意图Fig.1 Diagram of address allocation algorithm of ZigBee network2 ZigBee网络路由算法及路由选择路由协议是自组网体系结构的核心部分,ZigBee协议采用Cluster-Tree和AODVjr作为自身的路由算法,主要是发现和维护路由,选择路由并转发数据,监控网络拓扑结构变化等,以达到成本低、功耗低、可靠性高的设计目标[11-12].2.1 ZigBee网络路由算法1)Cluster-Tree路由算法Cluster-Tree算法按树型结构分层遍历,节点根据目的网络地址计算下一跳.假设网络地址为A,网络深度为d的路由节点收到目的地址位为D的数据分组,则根据A<D<A+Cskip(d-1)(2)判断是否为自己的子节点.如果是自己的子节点,则转发给子节点N.N由公式(3)确定,即(3)如果不是自己的子节点,则转发给其父节点.2)AODVjr路由算法AODVjr(AODV Junior)算法是一种按需分配的路由协议,是对AODV(Ad-Hoc On Demand Distance Vector)算法的一种简化改进.首先源节点以广播的方式发送RREQ(Router Request,路由请求分组),具有路由功能的节点收到消息后,建立反向路由,转发RREQ分组,并将源节点到此节点的路由开销添加到路由搜索表和RREQ中,直到目的节点收到此RREQ.目的节点选择开销最少的反向路由,将RREP(Router Replies,路由回复分组)返回源节点,同时所有接收到此RREP分组的节点都将更新自己的邻居表,最终建立各个节点的路由表.2.2 ZigBee网络路由策略按有无路由功能,ZigBee网络节点可分为有路由功能的RN+节点(Coordinator设备、Router设备)和无路由功能的RN-节点(EndDevice设备).RN+节点有足够的存储空间和路由选择能力,执行AODVjr路由算法;RN-节点存储空间受限,不具备路由选择能力,收到分组后只能采用Cluster-Tree算法处理[12-14].不同规模下结合两种算法的ZigBee网络节点转发率和平均延时分别如图2和图3所示. 图2 不同网络规模的节点转发率Fig.2 Forwarding rate of nodes of different network scale图3 不同网络规模的平均延时Fig.3 The average delay of different network scale图2和图3显示,随着网络规模的扩大,ZigBee网络转发节点数占节点总数的比例整体上呈现不断下降趋势,平均延时逐渐减少,其原因在于随着网络规模的扩展,同一区域内的节点密度也随之增加,使得网络节点的转发率不断减小,平均延时因数据传输距离缩短,转发效率提升而降低.3 基于OPNET平台的ZigBee网络路由失效自修复仿真通过OPNET平台,仿真ZigBee网络的某个路由器节点失效后,其关联的子节点如何重新找到路由路径,从而体现ZigBee网络在无需人工干预情况下的自组织功能,并分析和评估由此对整个网络产生的影响.3.1 OPNET仿真平台简介OPNET是一个能够准确分析复杂网络性能和行为的仿真平台,提供Process(进程)、Node(节点)和Network(网络)三层建模机制,三层模型完全对应实际的协议、设备和网络层次,用户通过OPNET平台能完整而深入了解网络的相关特征.采用离散事件驱动模拟机理和混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,在提高仿真效率的同时,可得到详细的模拟结果[15-16].3.2 场景设置及拓扑结构设置一个2 000m×1 750m的ZigBee网络仿真场景,网络中包含一个ZigBee协调器Coordinator、一个ZigBee固定路由器Fixed_Router,一个ZigBee可移动路由器Mobile_Router和两个ZigBee终端节点EndDevice1、EndDevice2.终端节点EndDevice1、EndDevice2都无法直接与协调器Coordinator进行通信,必须通过各自关联的父节点路由器转发数据,EndDevice1通过Fixed_Router路由器接收转发Coordinator传送的数据分组,EndDevice2通过Mobile_Route 路由器接收转发Coordinator传送的数据分组,如图4所示的粗实线展示部分.当Mobile_Route路由器沿着设定的白色细实线轨迹移动到ZigBee网络信号覆盖范围之外时,模拟该节点“失效”后EndDevice2的路由重发现和数据分组新的转发路径如图4虚线展示部分.图4 ZigBee网络路由失效前后数据分组转发路径拓扑图Fig.4 Topological graph of data packet forwarding path before and after the routing failure of ZigBee network3.3 仿真参数设置设置ZigBee仿真场景中所有节点的PAN ID为1,信号传输频段为2 450MHz,发射功率为3mW,接收灵敏度为-85dBm.dBm是无线网络发射功率的绝对值,其计算公式为:10lg(p/1mW)式中,p是以mW为单位的功率值.场景中,仿真节点发射功率为3mW,求得p=10lg3=4.77dBm ;因此,发射功率减去接收灵敏度的差值为4.77-(-85)=89.77dB.自由空间路径损耗公式为FSPL=32.45+20lgd(C)+20lgf(4)式(4)中:FSPL(Free Space Path-Loss)单位为dB;d(C)为视距传播距离,单位km;f为频率,单位MHz.已知f=2 450MHz,FSPL=89.77dB,由式(4)可得d(C)=0.299 80km=299.8m. 从部署的仿真场景可知Coordinator的坐标(1 871,1 263),EndDevice1的坐标(673,970),EndDevice2的坐标(640,1 422),由此可以计算EndDevice1、EndDevice2分别与Coordinator之间的直线距离D(E1-C)=1 233.31m、D(E2-C)=1 241.23m,两者的值都大于视距传播距离d(C),说明两个终端节点接收的数据分组都无法通过协调器直接发送,且D(E1-C)和D(E2-C)两者之间的直线距离D(E1- E2)=453.2m,也大于视距传播距离d(C),说明彼此之间的信号区域不会覆盖重叠[16-18].因此终端节点EndDevice1、EndDevice2必须通过各自的父节点进行数据转发,这为模拟其中某一父节点失效后重新建立路由并转发数据的实验提供了可行性.3.4 仿真结果分析图5显示,Mobile_Route路由器沿着设定的轨迹移动,大约在12min后离开ZigBee网络,节点的路由功能“失效”.图5 Mobile_Route节点路由功能变化情况Fig.5 The variation of routing function of Mobile_Route node图6显示,开始阶段所有节点启动发送和接收工作,数据分组转发速率明显加大,几分钟之后趋于平稳,然后Mobile_Route路由器开始移动至约12min后离开ZigBee网络而路由功能“失效”,EndDevice2节点的接收速率因此而产生抖动现象,在与Mobile_Route路由器失联后,其数据接收中断,但在较短时间内重新恢复了与Coordinator协调器之间的通信,验证了网络设备较强的自我修复功能,同时也显示了ZigBee网络良好的鲁棒性.图6 EndDevice2节点自我修复情况Fig.6 Self-healing of EndDevice2 node 路由节点“失效”后,网络数据传输的变化如图7所示.由于受影响节点能够在极短的时间内实现自我修复,重新恢复中断的收/发路径,因此从网络节点的接收速率来看,路由节点的“失效”对整个ZigBee网络的数据传输影响较小,显示了ZigBee网络良好的收敛性.图8为Coordinator节点到EndDevice2节点的延时曲线.开始时节点延时增大,随后因Mobile_Route的移动引发延时曲线振荡加剧,路由“失效”后,数据传输中断,延时曲线陡然下降,但在很短时间内Coordinator就将数据分组通过Fixed_Router传送给EndDevice2节点,此时点对点延时曲线趋向平稳,进一步验证了ZigBee网络的“失效”自修复能力.图7 ZigBee网络各节点应用层数据分组接收情况Fig.7 Reception of the application layer data packet of each node in the ZigBee network图8 Coordinator节点到EndDevice2节点的延时情况Fig.8 Time delay from Coordinator node to EndDevice2 node4 结束语无线传感器网络WSN涉及嵌入式计算、无线传感器、现代通信、分布式信息处理等交叉学科,为当前无线组网技术的重点研究领域.自组网能力强、自恢复能力强的无线自组网技术标准ZigBee发展迅速,已在部分智能传感器场景中得到应用,智慧城市的建设和发展将进一步推动ZigBee产品的推广应用和不断更新. ZigBee网络存在的问题主要体现在地址分配机制、节点能耗、数据传输时延、传输距离以及路由失效自修复等方面.逻辑树分配机制说明ZigBee网络中同一父节点的终端设备的16位短地址都是连续的,结合Cluster-Tree和AODVjr路由算法的RN+节点和RN-节点路由选择策略,使得网络转发节点数占节点总数的比例随网络规模的扩大呈下降趋势,平均延时逐渐减少,通过设置OPNET平台的仿真场景和拓扑结构,分析了路由失效对数据传输、点对点延时等性能产生的影响,通过路由收敛性验证了ZigBee网络的自我修复能力和网络的鲁棒性.【相关文献】[1]AKYILDIZ I F, SU W, SANKARASUBRAMANIAM Y, et al. A survey on sensor networks[J]. IEEE Communications Magazine, 2002,40(8):102-114.[2]IEEE Std.15.4:Wireless Medium Access Control(MAC) and PhysicalLayer(PHY) Specifications for Low-Rate Wireless Personal AreaNetworks[S]. NewYork: IEEE, 2003. [3]RACHANA B S,RAJESH prehensive survey on effect of mobility over routing issues in wireless multimedia sensor networks[J].International Journal of Pervasive Computing and Communications, 2016,12(4):447-465.[4]MANJEET S,SURENDER K S.A comprehensive review of fuzzy-based clustering techniques in wireless sensor networks[J].Sensor Review,2017,37(3):289-304.[5] 郭昌飞.基于ZigBee的无线传感器组网技术研究与应用[D].北京:北京信息科技大学,2012.[6] 潘恒曦,辛旺,范蟠果.ZigBee在无线传感器网络中的应用[J].机械与电子,2010(S1):245-248.[7] 刘承鹏.无线传感器网络定位算法研究[D].淄博:山东理工大学,2016.[8] 李冉.基于ZigBee无线传感器网络定位的研究[D].广州:广东工业大学,2016.[9] 杨春华.基于ZigBee技术的无线网络协调器的研究[D].成都:西南石油大学,2011.[10] 李明.IEEE802.15.4MAC协议中能耗与时延均衡研究[D].广州:暨南大学,2010.[11] 王月平,耿晓菊,刘春涛,等.IEEE802.15.4MAC协议低功耗研究[J].计算机技术与发展,2009,19(12):139-142,165.[12] 练云翔.无线传感器网络路由算法与能耗模型研究与仿真[D].兰州:兰州交通大学,2016.[13] 周登龙,陈硕.ZigBee网络中不同路由性能的研究与仿真[J]无线互联科技,2012(9):69-71.[14] 穆嘉松,刘开华,史伟光.ZigBee网络中基于节点移动性的路由选择策略[J].天津大学学报,2012,45(4):301-308.[15] 李清平.基于进程核心的网络仿真建模及统计分析[J].武汉理工大学学报(信息与管理工程版),2012,34(6):681-683.[16] 陈敏.OPNET网络仿真[M].北京:清华大学出版社,2004.[17] 范燕,俞洋,李永义,等.基于ZigBee 无线传感器网络的远程监控系统[J].实验室研究与探索,2016,35(1):80-84.[18] 王一棋,何丽莉,胡成全,等.基于ZigBee和Internet的无线智能家居网关系统[J].吉林大学学报(理学版),2015,53(2):302-306.。

相关文档
最新文档