蓝牙mesh协议的架构讲解

BLE Mesh 的基础架构

  BLE Mesh的架构一共可以分成8层,如图所示在这里插入图片描述

1.蓝牙低功耗(Bluetooth Low Energy Core Specification)

  最底下的 蓝牙低功耗 这一层,我将它标成了浅蓝色与上面几层进行了区分,原因是 蓝牙低功耗 并非仅是mesh架构的其中一层,而是完整的蓝牙低功耗协议栈,是提供基础无线通信功能所必需的组件,这些功能可为位于其上的mesh架构所用,并且 mesh系统 有赖于 蓝牙低功耗协议栈 的可用性,这一点与上面几层不同。

2.承载层(Bearer Layer)

  Bearer Layer 定义了Mesh节点怎么传递网络消息的。定义了两种承载方式:广播advertising bearer 和GATT bearer 。
  Advertising Bearer(广告承载层)利用的是BLE GAP广播包的advertising 和scanning的功能来传递接收mesh的报文。
  The GATT Bearer(通用属性协议承载层)允许不支持Advertising Bearer的设备间接的与mesh节点进行通讯。怎么通讯呢?使用前面讲的Proxy Protocol(代理协议)。Proxy Protocol是封装在GATT里面,当然会用特别定义的GATT characteristics。而支持Proxy Feature的Proxy Node也就是代理节点,因为可以同时支持两种Bearer Layer,因此当然可以作为mesh节点和非mesh节点的中间桥梁。

3.网络层(Network Layer)

网络层定义了几件事情:
  1:是定义如何将传输消息寻址到一个或多个元素,以及允许承载层传送传输层PDU的mesh消息格式。
  2:决定是否中继/转发消息,接收消息以进行进一步处理,还是拒绝消息。
  3:定义如何加密和认证(authentication)网络消息。

4.底层传输层(Lower Transport Layer)

  从上层传输层接收PDU,并将其发送到对等设备的底层传输层,如果PDUs太长,将其进行分段(Segmentation)和重组(Reassembly),底层传输层就只有这两个功能。

5.上层传输层(Upper Transport Layer)

  上层传输层主要是负责加密,揭秘和应用数据授权,还负责传输控制消息,这些消息内部生成、并发送于不同对等节点的上层传输层之间,包括与友谊和心跳相关的消息(也就是心跳包Heartbeats)

6.访问层(Access Layer)

访问层主要负责的是:
  1.定义应用数据的格式
  2.定义并控制在上层传输层中执行的应用数据的加密和解密
  3.在将数据上传到堆栈之前,对来自上层传输层的数据进行验证,判断其是否适用于该网络和应用
  4.定义更高层的应用如何跟上层传输层通讯

7.基础Model层(Foundation Models Layer)

  定义配置(访问层的状态,消息)和管理Mesh网络所需的状态,消息和模型。

8.Model层(Models Layer)

  定义用于标准化典型用户场景操作的模型,并在蓝牙Mesh模型规范或其他更高层规范中定义(Bluetooth Mesh Model specification)。 高层模型规范的示例包括用于Lighting(照明)和Sensor的模型。

发布了40 篇原创文章 · 获赞 80 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_19408097/article/details/97623770
今日推荐