zigbee设备入网流程分析

时间:2024-03-27 22:03:33

下图片展示的是一个zigbee设备的入网流程
zigbee设备入网流程分析

下面是一个router设备连接到coordinator的过程:

1、router发送beacon request
zigbee设备入网流程分析

router会在每一个信道发送一个beacon request(用的地址是0xffff的广播地址),直到有人回复他。我们可以看到在beacon request的包后面,有三个beacon类型的包,这是不同的coordinator回复的,里面会包含不同的信息,包括是否允许你入网
zigbee设备入网流程分析

可以看到router收到的第一个beacon包是不允许其入网的,直到第三个coordinator允许其加入网络(这个设备就是我的coordinator,我手动开启了允许其它设备加入的功能)。当然,也有可能会有多个coordinator允许入网,router会选择信号强度最强的。
zigbee设备入网流程分析

从我蓝色圈出来的地方来看,回复的beacon包中包含了这个网络的PAN ID、是否允许入网和coordinator自己的extend PAN ID等等。如果router选择这个coordinator作为自己的父节点的话,就会发送一个association request
zigbee设备入网流程分析

我们可以看到目的地址换成了0x0000和对应的PAN ID,也包含了自己的MAC地址。另外也指明自己是哪一类设备,这里的FFD是full function device的简称,一般coordinator和router都是FFD(全功能设备),而end device和sleepy end device都是RFD(reduce function device)。

coordinator在收到router发来的request后,就回应一个association respond
zigbee设备入网流程分析

这时候的coordinator知道router的地址后,就可以单播发送了,也顺便给router分配一个短地址0x3F07。router想要在这个网络进行通信,需要知道network key,所以coordinator需要告诉router
zigbee设备入网流程分析

router获取network key后,后续和网络内的其它设备就可以进行加密通信了。然后router会发送一个device announce的报文(从目的地址为广播地址可以看出)通知全网,我入网了、我的设备信息都有哪些。
zigbee设备入网流程分析

红色的框里面有三项信息,分别是

1)用于标识是否coordinator设备

2)自己是router设备

3)是否电源供电还是电池供电(这里是电源供电)

2)自己是router设备

3)是否电源供电还是电池供电(这里是电源供电)