蓝牙mesh网络角色
其他
2019-06-16 12:04:53
阅读次数: 0
1、蓝牙mesh网络角色
mesh网络
中的设备被称为节点(Node)
,而非mesh网络中的设备
称为未经启动配置的设备
。将未经启动配置的设备
转换为节点
的过程称为启动配置
。
启动配置
是一个安全
的过程,原本未经启动配置的设备
经过启动配置
后会拥有一系列加密密钥
,并被启动配置
的设备识别
。
启动的设备
可以是provisioner(配置角色)
,或者是provisionee(节点角色)
。其中provisionee(节点角色)
又可以分为client(客户端)
和server(服务端)
。
provisioner(配置角色)
就是用于配置
这些设备的端
。同时要注意,传统的BLE低功耗设备
不能直接兼容mesh网络
,而如果我们想把手机等具有BLE的设备
加入mesh网络
中,则需要加入proxy(代理节点)
。
provisioner(配置角色)
启动配置是用于为新设备
提供加入网络所需的信息
。在这个配置过程中,为新设备
提供了一个网络密钥
、一个地址
和一个设备密钥
。该密钥是一个专用密钥
,仅用于在provisioner(配置者)
和provisionee(被配置者)
之间进行私有通信
。
节点(Node)
是已经启动配置(Provision)
并成为mesh网络
中的一员的设备
。所有节点
都能够在网络中发送
并接受mesh消息
,此外还可以选择性地支持一个或多个
其他网络特性
,如下所列:
(1)中继(Relay)
特性:通过广播承载
层接收并重新发送mesh消息
,以构建更大规模
网络的能力。
(2)代理(Proxy)
特性:在GATT
和广播承载层
之间接收
并重新发送mesh消息
的能力。
(3)低功耗(Low-Power)
特性:能够以明显较低
的接收端占空比
在mesh网络
中运行。通过将无线电接收器启用时间最小化
可实现节点功耗的降低
,只有在绝对必要
时才启动接收器。低功耗节点(LPN)
通过与好友(friend)
节点建立友谊(friendship)
关系来实现这一点。
(4)好友(Friend)
特性:通过存储
发往LPN
的消息
,仅在LPN明确发出请求
时才进行转发
来帮助LPN
运行的能力。
要了解友谊
是如何帮助LPN降低功耗
的,传感器
是很好的例子,它可以利用友谊
,并被用作LPN
。它们通常将绝大部分时间用于传输数据
,且很少
需要接收数据
。传感器
可能只有在温度超出一系列预设的限制时才会发送温度读数,而这种情况每天可能只会发生两次。正是这种不频繁的数据传输
才使得此类设备的能耗使用维持在较低水平
。
2、代理节点的加入
低功耗蓝牙(BLE)
是一项相当成功的无线技术。低功耗蓝牙设备
只要具有正确的低功耗蓝牙功能
和一些附加软件
,就能加入蓝牙mesh网络
中。以智能手机为例,可能只需要一个可以与蓝牙mesh网络
对话的普通应用程序(App)
就足够了。
非mesh低功耗蓝牙设备
成为蓝牙mesh网络
成员的过程中,代理节点
是关键。代理节点
的根本目的
是执行承载层转换
。它能够实现从广播承载层
到GATT承载层
的转换,反之亦然。因此,不支持广播承载层
的设备可通过GATT连接
来收发各类蓝牙mesh消息
。
节点
可通过在特性字段
中设置代理特性位(proxy feature bit)
,来表示自身可用作代理节点
。特性字段
是所有节点都具有的成分数据状态
的一部分。
代理节点(Proxy Node)
可实施称为mesh代理服务
的GATT服务
,即文本中代理服务器(Proxy Server)
。mesh代理服务
包含两个GATT特性
:mesh代理数据输入
和mesh代理数据输出
。代理客户端(Proxy Client)
使用GATT Write Without Response
子程序,将代理协议PDU
写入mesh代理数据输入特性
,并从GATT通知
中的mesh代理数据输出特性
接收代理协议PDU
。这就是互联GATT设备
通过代理节点
在mesh网络
中进行数据交换
的机制。
转载自blog.csdn.net/Hongwei_1990/article/details/90085476