热点新闻
mesh的配网过程
2023-09-17 10:42  浏览:1093  搜索引擎搜索“富博农业网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在富博农业网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布










配网流程

* Beacon(信标)广播:未配网设备发广播告知配网者我未配网。

信标是一个传统的BLE的应用场景。蓝牙mesh提供了同样的广播机制。

如果一个未配网的设备支持PB-ADV bearer, 它就会广播 未配网设备信标。这是一个特别的报文,使得配网器provisioner能够发现这个设备。

如果使用的是PB-GATT bearer,需要一个叫做Mesh Provisioning Service的 GATT Service。通过beacon包中UUID来判断对应需要配网的设备。配网器是通过标准的BLE SCAN(扫描)的流程来找到这个设备的。

(用户可能需要根据制造商的说明,按照一定的流程,例如键入一组按钮,或将某一按钮长按一段时间等,以此方式启动新设备的广播。)

用户还需要在provisioner设备中启动“添加设备到网络”的流程,以便从Beacon(信标)设备接收广播数据包。需要记住的一点是,provisioner设备可能是智能手机或平板电脑应用,因此在实际操作中会涉及到智能手机解锁、应用程序启动、也许还需要登录应用程序(为了进一步确保安全性),并通过其用户界面启动Beacon设备搜寻。这样,provisioner设备就会意识到新设备的存在和准备就绪状态,可进入后续的启动配网流程。
















* 邀请:信标阶段结束以后,配网器和未配网设备通过PB-ADV或者PB-GATT进行了初步的接触,接下来配网器会发送一个配网邀请PDU,未配网设备就会相应的发一个响应包来回应有关自身的信息。(这些信息将用于认证(Authentication)步骤)











* 交换公共密钥:配网设备将与待配网的设备交换公共密钥,来创建安全通道,以完成剩余的配网流程。

蓝牙mesh 协议规定在交换公钥阶段,可以使用两种算法交换设备的 ECDH 公共密钥:通过蓝牙通道进行明文交换,通过00B 隧道进行交换。在邀请阶段,设备会告知配网器是否存在 00B 公钥,而配网器在交换公钥的第1条信息中,则告知设备是否使用 OOB 公钥。使用 00B 公钥交互方式可以较为可靠地预防中间人攻击,对安全性有很大的提升。当邀请阶段结束后,配网器即开始与末配网设备进入交换公钥的交互流程。

provisiooing start (配网开始)消息由配网器发送给未配网设备。

配网开始消息表示配网器告诉未配网设备公钥交换流程开始,配网需从前面的provisioning Capabiliy (配网能力) 消息中选择公钥交换流程的具体參数。











* 认证(Authentication):配网设备会基于对新设备功能的了解,向其发送消息,指示其输出单一或多位数值,即对其所支持的多种用户操作(例如按下按钮)作出响应;然后,待配网设备和配网设备交换密码散列。

* 启动配置数据的分配: 认证成功完成之后,会通过两台设备的私有密钥(Private Key)和交换的对等公共密钥生成会话密钥(Session Key)。随后,会话密钥即可用于保护完成启动配置流程所需数据的后续分发,包括网络密钥(NetKey)和设备的唯一地址,即单播地址(Unicast Address)。

注: 配网阶段:provisioner为设备分配单播(mesh)地址和netkey;配置阶段:节点使用DevKey,provisioner为节点配置发布地址,订阅地址等(可选的配置),配置完成后,节点元素使用netkey(用于网络层安全,使相同netkey的节点在一个网络中,节点通过广播方式发布消息,若配置发布地址则发布消息到配置的地址A;若节点未配置订阅地址A则该节点就不能处理该消息),AppKey(用于保护应用层消息,仅用于provisioner(配置者)与provisionee(被配置者)之间进行私有通信,即再次配置时使用)

【组内节点可以只配置发布地址到组播地址,不配置订阅地址到组播地址,即可实现组内其他节点发布消息到组播地址时,该节点可以不处理】

网络配置参数

关于对节点特征的定义

Role:定义扮演的mesh角色,一种是device角色,一种是provisioner角色,前者是被配置设备,后者是给人配置的设备。

Relay:置一表示支持中继角色

Proxy:置一表示支持代理角色

Fn:置一表示支持friend角色

Lpn:置一表示支持低功耗角色

Prov:置一表示在系统开始后会先广播入网配置广播(PB-GATT)

Snb:置一表示状态可以被config beacon改变

Bg_scan:置一表示在系统开始后会进行扫描

组网时,provisioner会获取节点支持的model id(即节点支持那些功能,是server midel还是client model)







参考:

https://blog.csdn.net/qq_38531460/article/details/125509061

发布人:8565****    IP:117.173.23.***     举报/删稿
展会推荐
  • 读书
  • 2023-09-16浏览:1303
让朕来说2句
评论
收藏
点赞
转发