Zigbee系列(网络)
Zigbee设备类型
Coordinator:形成网络,选择信道、PANID、允许其他设备加入等。
Router: 作为路由节点,转发报文。
End Device: 终端节点,不转发报文。
Zigbee网络类型

Zigbee PRO标准只支持mesh网络类型。
R
outer device常规入网流程示例

- 子设备在各个信道广播beacon request,查询哪个网络允许加入。
- 协调器和路由节点回应beacon报文。
主要字段:
PAN Coordinator: 是否是协调器 (source address)
Association permit: 是否允许新设备入网
GTS相关字段: zigbee pro不使用GTS非竞争网络的字段。
Stack profile、NWK protocol version: zigbee版本。
Router Capacity: 是否能接受路由设备的入网请求
End Device Capacity: 是否能接受end device的入网请求,即作为end device设备的父节点。
NWK extended pan id: 网络的唯一标识,pan id可变,extended pan id不变。

- 子设备在可入网的网络中,选择信号最优的一个进行关联。
Association Request

- 协调器接收设备的关联请求后,单播回应Association Response.
给子设备分配短地址。

- 协调器通过子设备的认证后,发送网络密钥,负载使用tc link key加密。
Transport Key

- 子设备解析network key,入网成功。发送device announce通知网络中的其他设备,自己加入网络。
Zigbee3.0子设备入网后需要更新link key,参考《zigbee3.0 security特性.docx》
End device入网流程
- End device通过beacon request查询信道是否有网络可以加入。
- 协调器和路由节点回应beacon
- End device选择协调器或路由节点加入。
End device 直接接入协调器

- End device发送association request,请求加入网络
- 协调器(父节点)回应association response,分配短地址给子设备。
- 协调器(Trust Center)通过Transport Key命令传输nwk key,报文使用TC link key加密。(这里协调器和子设备没有使用install codes,使用的是global link key)
- 子设备正确解析transport key报文,获得nwk key
- 子设备广播device announce报文,通知其他设备自己已成功加入网络。
以路由节点做父节点
- 向父节点发送Association Request
- 父节点回应Asspciation Response, 提供短地址
- 父节点向协调器发送update device,通知协调器有设备加入(unsecured join, 还没有经过TC验证)
- TC验证通过后,协调器经过end device的父节点给end device发送network key,需要父节点做中转。协调器和该父节点的数据使用nwk key加密,父节点转发给子设备的数据,去掉tunnel头,使用link key加密。
- 子设备获得网络密钥,入网成功。
- 子设备广播device announce.


BDB中定义的流程:

Zigbee系列(网络)的更多相关文章
- ZigBee无线网络技术在小区路灯照明系统的应用
小区路灯照明系统是楼宇智能的一部分,但受制于布线.成本等的问题,难以得以实施.随着计算机技术的迅猛发展,无线网络技术越来越成熟,ZigBee无线网络成本低.功耗低.传输距离远等的特点,非常适合在无线路 ...
- OpenStack实践系列⑤网络服务Neutron
OpenStack实践系列⑤网络服务Neutron 3.8 Neturn 服务部署 注册neutron服务 [root@node1 ~]# source admin-openrc.sh [root@n ...
- 抓住“新代码”的影子 —— 基于GoAhead系列网络摄像头多个漏洞分析
PDF 版本下载:抓住“新代码”的影子 —— 基于GoAhead系列网络摄像头多个漏洞分析 Author:知道创宇404实验室 Date:2017/03/19 一.漏洞背景 GoAhead作为世界上最 ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- Linux网路编程系列-网络I/O模型
应用程序从网络中拿数据,要经历两个阶段:1.等待数据准备好-分组到达,被拷贝到内核缓冲区,组装数据报:2.数据从内核缓冲区拷贝至用户态应用程序的缓冲区.Unix下五个I/O模型: 阻塞I/O: 进程调 ...
- Zigbee系列(end device)
End device设备分为睡眠和非睡眠两种(RxOnWhenIdle标记不同). 入网时的association请求,会使用这个标记. 共同特性 子节点多次发送数据失败(无回应),发送孤点扫描(re ...
- Zigbee系列(概览)
Zigbee技术特点 低速率: 数据传输速率只有20~250kb/s, 2.4GHZ提供250kb/s, 915MHz对应40kb/s, 868Mhz对应20kb/s 低功耗:睡眠模式设备使用电池供电 ...
- 三、ZigBee无线网络工具
CC2530概述 CC2530是德州仪器Ti公司用于2.4-GHz IEEE 802.15.4.ZigBee 和 RF4CE 应用的一个真正的片上系统(SoC)解决方案,是作为ZigBee无线传 感网 ...
- 二、ZigBee无线网络
概述 ZigBee是基于IEEE802.15.4标准的低功耗局域网协议.根据国际标准规定,ZigBee技术是一种短距离.低功耗的无线通信技术.这一名称(又称紫蜂协议)来源于蜜蜂的八字舞,由于蜜蜂(be ...
随机推荐
- windows ionic bash: command not found
安装好了node.js和npm后,执行npm install -g cordova ionic后,成功安装,但是执行ionic命令后,返回 command not found. 配置好了环境变量后,仍 ...
- curl http code 0
使用curl进行post请求后,接收status code ,结果返回的结果是0 ,但是请求返回的数据是正常的. 检查后发现是执行顺序问题: $response = [ 'statusCode' =& ...
- LD-sketch源码阅读
目录 util.h hash.hpp/cpp mangle函数 GenHashSeed函数 AwareHash模块 LDSketch.hpp/cpp LDSketch更新函数,对一个sketch插入键 ...
- 使用XWAF框架(4)——LunarCalendar日历组件
XWAF提供了管理日历的com.xwaf.date.LunarCalendar静态类,可以直接使用,非常方便.该类包括六个主要静态方法: 4.1 isLeapYear(int year) 判断公历年 ...
- C3P0连接池的配置与使用
1.下载c3p0-0.9.1.2.jar 下载地址:http://download.csdn.net/detail/chunxiaqiudong5/9661922 2.添加配置文件c3p0-confi ...
- VB
on error resume next: 从该语句开始,遇到错误时程序不会中止,也不会出现错误提示,将继续运行.作用范围直至程序结束或语句所在函数等结束 Public Property :可读也可写 ...
- Angular2 报错 ERROR Error: If ngModel is used within a form tag
今天写textarea的双向数据绑定报错,错误如图: 错误代码如下: <div class="form-group"> <textarea id="&q ...
- 【Linux】文件、目录权限及归属
访问权限: 可读(read):允许查看文件内容.显示目录列表 可写(write):允许修改文件内容,允许在目录中新建.移动.删除文件或子目录 可执行(execute):允许运行程序.切换目录 归属: ...
- Linux系统Java环境配置
1.卸载Linux系统自带的JDK java -version rpm -qa | grep -i java 我们要删除掉自带的JDK环境 rpm -e --nodeps java-1.6.0-ope ...
- MySQL+Service+Servlet+Jsp实现Table表格分页展示数据
下面以一个示例讲解如何使用MySQL+Service+Servlet+Jsp实现Table表格分页展示数据: eg:请假管理系统 要求如下: 一.打开首页页面, 访问查询请假记录的 servlet , ...