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 ... 
随机推荐
- jquery 中 attr 和 prop 的区别
			问题:在jQuery引入prop方法后,什么时候使用attr,什么时候使用prop,两者区别. 判断: 对于HTML元素本身所有的固有属性,在处理的时候,使用prop方法 对于HTML元素后来我们自己 ... 
- PAT——1047. 编程团体赛
			编程团体赛的规则为:每个参赛队由若干队员组成:所有队员独立比赛:参赛队的成绩为所有队员的成绩和:成绩最高的队获胜. 现给定所有队员的比赛成绩,请你编写程序找出冠军队. 输入格式: 输入第一行给出一个正 ... 
- 404 Note Found 队-Alpha 事后诸葛亮
			目录 设想和目标 计划 资源 变更管理 设计/实现 测试/发布 团队的角色,管理,合作 总结: 本小组和其他组的评分 分工和贡献分 全组讨论的照片 问题 第一组提问回答:爸爸饿了队 第二组提问回答:拖 ... 
- git add用法
			git add命令是将工作区内容添加到暂存区.git commit 将暂存区内容添加到版本库. git add -A 提交所有变化 git add -u 提交被修改(modified)和被删除(d ... 
- Python 学习笔记(十四)Python类(二)
			创建简单的类 新式类和经典类(旧式类) Python 2.x中默认都是经典类,只有显式继承了object才是新式类 Python 3.x中默认都是新式类,经典类被移除,不必显式的继承object 新式 ... 
- 简单的  Android 菜单
			Android 创建简单的菜单 一:上下文菜单: 1.在 res 下创建菜单项资源文夹 menu app->右击res->new->android resourse director ... 
- DB数据源之SpringBoot+Mybatis踏坑过程实录系列(一)
			DB数据源之SpringBoot+MyBatis踏坑过程(一) liuyuhang原创,未经允许进制转载 系列目录 DB数据源之SpringBoot+Mybatis踏坑过程实录(一) DB数据源之Sp ... 
- Linux Centos平台下安装Nginx
			以home下安装为例,切换到home目录下 cd /home 安装依赖 nginx相关依赖 yum -y install make gcc gcc-c++ openssl openssl-devel ... 
- webpack使用打包的一些心得
			webpack打包工具: module.exports:输出require:引入 require('!style-loader!css-loader!./***.css'):静态样式引入 npm in ... 
- js 里常用的字符串操作方法
			/*var str='啦啦啦'; var str1='哈哈哈' //charAt() 返回指定索引处的字符串 console.log(str.charAt(3)) //charCodeAt() 返回指 ... 
