硬核答疑 | Thread网络技术,究竟好在哪儿?
Thread是一种基于IPv6的网状网络协议,旨在将家庭和办公产品彼此连接、连接到互联网和云端。Thread网络易于安装,安全性高,可扩展至数百台设备,专为在低功耗的IEEE 802.15.4芯片组上运行而设计。
本文将从主要特性、低功耗技术应用、无单点故障健壮性,及其配网与安全机制几个方面,对Thread网络技术做一个全面的介绍。
Thread网络简介
总体来说,Thread是一种用于物联网产品的低功耗、高时效的网状网络技术,其主要特性包括:
基于IEEE-802.15.4的Mesh网络
6LoWPAN之上的IPv6通信
支持电池供电的低功耗设备联网
安全机制强大,确保网络可靠运行
无单点故障,失去云连接仍可独立运行
网络层上可灵活承载Matter、DotDot等多种应用
Thread网络结构
Thread网络中包括几类功能“角色”不同的节点设备,如终端或路由器、路由器、Leader、边界路由器等。
以下几张图对于Thread网络中不同节点设备的特性进行了更细致的说明。
无单点故障健壮性
与其他无线网络相比,Thread网络的一个突出的特点就是其具有无单点故障的健壮性。
Thread网络的健壮性的实现包括两个要点:
引入Trickle(涓流)机制,在相邻Router之间通过周期性的MLE Adv消息逐步收集并更新完整的网络数据,使得网内所有Router设备同步到最新的网络配置,当任何FTD设备失效后其它FTD设备自动代替之
引入低功耗及有损网络的组播协议MPL(Multicast Protocol for Low Power and Lossy Networks),Router设备通过重传消息确保可靠通信,同时也可以避免应用层多次处理重复收到的组播消息
Thread无单点故障的特性详解如下:
Leader失效后网络内某个Router设备自动升级为Leader设备
当有需要时,比如Router设备失效,网络自动将某个REED升级为Router设备代替失效的Router设备以增强网络内部互连的可靠性
对于单个Border Routers的网络,当BR失效,本地Thread网络内部节点工作不受影响;对于多个BR网络,当某个BR失效,可由其它BR自动代替之
低功耗技术应用
Thread网络的低功耗特性也是其备受青睐的原因之一。
具体来讲,Thread的低功耗技术包括:
极低的无线SOC射频收发功率
SOC支持多种MCU超低功耗模式
很短的工作期(active duty cycle)使得休眠设备使用电池供电也可以正常工作长达数年之久
网络结构限制FTD常电设备的数量而支持大量电池供电的休眠设备,使系统整体功耗大幅降低
IEEE 802.15.4和6LoWPAN
MAC层使用16位短地址使更多负载可用于传输上层应用数据,降低数据包被分段再重组的几率
IP包压缩使原来超过40字节的开销减为不到10字节
链路层包转发(link-layer packet forwarding)机制避免了在本地Mesh网络内的消息传输被提交到上面的网络层进行额外的处理
此外,Thread 1.2中还引入了以下低功耗新特性:
Enhanced Frame Pending(增强帧等待)
消除了SED额外的Poll Request
▲无EFP的休眠设备从父节点获取数据
▲支持EFP的休眠设备从父节点获取数据
Synchronized Sleepy End Devices(同步休眠终端)
IEEE 802.15.4-2015引入Coordinated Sampled Listening (CSL,协调采样侦听)特性,使得休眠设备与其父节点保持同步,在预定时刻接收父节点保存的数据。
Link Metrics Probe(链路指标侦测)
通过建立与父节点之间的链路指标侦测机制获取诸如LQI,RSSI和Link Budget等参数
根据与父节点之间的链路性能动态调整休眠节点的发射功率,接收器放大增益及天线分集等参数
Enhanced Keep Alive(增强的保持链路激活消息)
结合Enhanced Frame Pending,休眠设备无需通过向其父节点不断发送Data Poll Request来确保其自身是活跃设备,而仅仅上报数据就可以确保父节点不会删除该节点
Thread的低功耗特性使其非常适合于各类传感器应用,比如:
大量上报数据
利用定时器周期性唤醒并通过父节点上报数据,如温度传感器
IO口触发事件唤醒并通过父节点上报数据,如PIR传感器
配网与安全机制
Commissioning角色(Role)
Commissioner
作为身份认证服务器和授权者提供网络的 credentials
Border Agent
任何具备在Commissioner和Thread网络节点之间中继转发消息能力的设备
Commissioner Candidate
具有成为Commissioner能力且准备向Leader申请成为Commissioner的设备
Joiner
等待加入Thread网络的设备节点
Joiner Router
Thread网络内距离Joiner一跳的路由器或REED设备
Commissioning类型
Out-of-band Commissioner
Commissioner并不一定具有802.15.4的接口,而是带有WiFi / BLE等其它接口,能够向border agent发MGMT_GET命令
On-mesh Commissioner
Commissioner具有802.15.4的接口,且拥有Thread网络credentials
Native 802.15.4
Commissioner拥有802.15.4的接口但没有Thread网络的credentials
Commissioner
Border Router注册登记(Registration)
Discovery:Commissioner (如带WiFi的手机) 通过某个Border Router发现了Thread网络
Authentication:Commissioner通过commissioning credential安全连至Thread网络
Registration:Commissioner向Border Router注册了其ID
Thread网络管理
申请Petitioning: Border Router向Leader单播请求其将候补Commissioner批准为正式的Commissioner
Management commissioner可以读取或设置诸如commissioner credential, 网络名称, 安全策略等参数
JOINER
Joiner Protocol
Discovery:Joiner加网设备使用802.15.4的主动扫描active scan机制,在所有频道Channel广播发送信标请求beacon request消息以发现存在的Thread网络
Provisional Join:unsecure不安全的至Joiner Router的本地链接
Joiner Authentication:发给Joiner Router的DTLS 握手handshake消息
Joiner Finalization
Entrust:移交(handoff)网络credentials给 Joiner
Provisioning: 若Joiner请求特殊的 commissioning方式,则需要引入特定供应商( vendor-specific)认定的provisioning
Close Session:使用DTLS Alert机制结束当前会话
安全配网(Secure Commissioning)
配网Commissioning 基于节点和Commissioner之间的端到端安全和加密信道,端到端之间其它参与中继转发的节点使用DTLS方式传输但并不会对报文内容进行解密
Shared secret一般通过扫描加网节点上印的QR码建立起来
Elliptic Curve J-PAKE用于生成高强度秘钥,实现消息保护和安全配置数据的分发
Commissioning session 可用于更新网络配置参数
OPENThread NXP解决方案
恩智浦可以提供全面的OPENThread应用解决方案,相关技术信息如下:
▲ 本文作者潘健,恩智浦半导体无线互连产品线系统应用工程师
关注我们
① 选择公众号菜单【用户中心 | 招贤纳士】
② 扫描消息中的二维码,关注恩智浦微招聘
打造安全的连接和
基础设施解决方案
为智慧生活保驾护航
关注NXP客栈