文章目录
- BLE Mesh 架构:
- 1、模型层(Model Layer)
- 2、基础模型层(Foundation Model Layer)
- 3、访问层(Access Layer)
- 4、上层传输层(Upper Transport Layer)
- 5、底层传输层(Lower Transport Layer)
- 6、网络层(Network Layer)
- 7、承载层(Bearer Layer)
BLE Mesh 架构:
序号 | 分层 | 作用 | 主要包含 |
1 | 模型层 (Model Layer) | 用户场景/应用 例如 Generic(通用),Lighting(照明),Sensor(传感器),Vendor(厂商) | |
2 | 基础模型层 (Foundation Model Layer) | 配置 Mesh,管理 | |
3 | 访问层 (Access Layer) | 格式化应用数据,正确应用上下文管理 | Dev key,App key, |
4 | 上层传输层 (Upper Transport Layer) | 应用数据 加密,解密和认证 | |
5 | 底层传输层 (Lower Transport Layer) | 分段和重组 | |
6 | 网络层 (Network Layer) | 网络管理,网络信息 认证,中继和转发消息。 地址:单播,组地址,虚拟,广播 | Net key, |
7 | 承载层 (Bearer Layer) | 广播承载,GATT 承载 |
在Mesh架构
堆栈底部,有一层名为 蓝牙低功耗 。实际上,这并非仅是Mesh架构
的其中一层,而是完整的蓝牙低功耗协议栈
,是提供基础无线通信
功能所必需的,这些功能可为 位于其上的Mesh架构
所用。
应该清楚的是,Mesh系统
有赖于 蓝牙低功耗协议栈 的可用性。
1、模型层(Model Layer)
定义用于标准化典型用户场景操作
的模型,并在蓝牙Mesh模型规范
或其他更高层规范中定义。
高层模型规范的示例,包括用于Lighting
(照明)和Sensor
的模型。
2、基础模型层(Foundation Model Layer)
定义配置
和管理
Mesh网络所需的 状态,消息和模型。
3、访问层(Access Layer)
访问层 负责定义应用 如何利用上层传输层,包括:
序号 | 描述 |
1 | 定义 |
2 | 定义并 |
3 | 在将 |
确认和非确认消息(Acknowledged & Unacknowledged Messages)
序号 | 非确认消息(Unacknowledged) | 确认消息(Acknowledged) |
1 | 对非确认的消息 没有回应(No response) | 每个接收元素通过 回应消息,进行确认 |
2 | 如果消息已经被传递或处理,不太可能发送元素去终结 | 回应是典型的 状态消息(Status message) |
3 | 对等节点 会被状态消息通知状态变化 | 在规定时间周期内,没有收到消息 会进行 重传(retransmit) |
4 | 状态消息 被发送到模型的发布地址,该模型与改变的状态相关联 | 消息超时时间 最小应被设置为30秒 |
5 | - | 不推荐 向所有节点地址,发送 确认消息 |
4、上层传输层(Upper Transport Layer)
序号 | 描述 |
1 | 负责对传入和传出 访问层的应用数据进行 加密、解密和认证(authentication) |
2 | 负责 传输控制消息,这些消息内部生成、并发送于不同对等节点的上层传输层之间,包括与友谊和心跳相关的消息 |
序号 | 消息分类 | 描述 |
1 |
| (1)定义了 应用数据 的格式 (2)应用密钥(App key)或者 设备密钥(Device key)用于 加密和认证信息 |
2 |
| (1)用于创建和管理 |
序号 | 用于 加密 和 认证 信息的Key | 具体作用 |
1 | 应用密钥(App key) | 用于 模型数据 |
2 | 设备密钥(Device key) | (1)用于 配置和密钥管理 (2)配对密钥 (3)只有 Provisioner 和 单一设备 知道 |
友谊信息(Friendship):
5、底层传输层(Lower Transport Layer)
序号 | 描述 |
1 | 从 |
2 | 对 |
6、网络层(Network Layer)
序号 | 描述 |
1 | 定义如何将 传输消息寻址到一个或多个元素,以及允许承载层传送传输层PDU的Mesh消息格式 |
2 | 决定是否 中继/转发 消息,接收消息 以进行进一步处理,还是 拒绝消息 |
3 | 定义如何 加密和认证(authentication)网络消息 |
7、承载层(Bearer Layer)
定义如何在节点
之间 传输网络消息。
定义了 两个承载层,即 广播承载层和GATT承载层。
序号 | 承载层 | 描述 |
1 |
| 利用 BLE 的 |
2 |
| 允许不支持 |