【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 & 定向转发机制

目录

节点的功能

节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration Server 模型所定义(见原文2.3.13. 特性和功能):

  • 中继功能 -- 通过广告承载接收和重新传输网状消息以支持更大的网络的能力。
  • 代理功能 -- 能够在 GATT 和广告承载之间接收和重新传输网状消息。
  • 低功耗功能 -- 能够以显著降低的接收器占空比在网状网络中运行,仅与支持 Friend 功能的节点结合使用。
  • Friend 功能 -- 通过存储发往这些节点的消息来帮助支持 Low Power 功能的节点运行的能力。
  • 某些节点支持 "Friend" 功能,这意味着它们可以与其他低功耗节点建立"友谊"关系。
  • 支持 Friend 功能的节点可以为 Low Power Nodes(低功耗节点) 缓存消息,让低功耗节点不需要一直监听无线信道,从而节省电量。

承载层(GATT/Adv)

蓝牙Mesh(Bluetooth Mesh) 网络中,GATT BearerAdvertising Bearer(简称 Adv Bearer) 是两种不同的消息传输方式(即"承载层",Bearer,持票人;持有者;送信人;传播者)

  • Advertising Bearer 是蓝牙Mesh网络默认使用的通信方式,基于BLE的广播机制。
  • GATT Bearer 主要用于传统BLE设备(如手机)接入Mesh网络,通过GATT连接进行通信。
对比项 Advertising Bearer GATT Bearer
是否必须支持 是(所有 Mesh 节点必须支持) 否(可选)
是否需要连接 是(需与 Proxy Node 建立 GATT 连接)
是否支持广播
是否支持分段 否(由 Proxy Node 处理)
适用对象 所有 Mesh 节点 BLE 设备(如手机)
通信方式 广播/泛洪 单播(GATT 连接)

局限性:

  • Advertising Bearer的数据包大小有限(通常不超过 39 字节有效载荷)。如果消息太大,会被分段处理,增加传输延迟。
  • GATT Bearer 仅支持单播通信,效率低于广播承载。不支持自动重传和分段功能,因此依赖于 Proxy Node 处理。

拓扑关系

节点 类型 描述
Q, R, S Relay Node 具备转发消息能力,将接收到的消息重新广播出去,以扩大网络覆盖范围
N 支持 Friend 未启用 Friendship
O, P Friend Node 为 Low Power Nodes 提供消息缓存
I, J, K Low Power Node 一般用于电池供电设备;使用 P 作为 Friend
L, M Low Power Node 一般用于电池供电设备;使用 O 作为 Friend
T GATT Proxy Client 通过 S 接入网络
S Proxy Node 为 T 提供 GATT 到 Mesh 的桥接
  • 虽然节点 N 支持 Friend 功能,但它并没有与任何低功耗节点建立连接或缓存消息,所以它不算真正的 Friend Node。

  • 节点 O 和 P 是真正的 Friend Node,因为它们有对应的 Low Power Nodes 与之建立连接。

  • 例如,如果要从 T 向 L 发送一条消息,T 将通过 GATT 承载方式把该消息发送给节点 S。节点 S 将使用广播承载方式重新广播这条消息。节点 H、R、N 和 O 处于节点 S 的无线通信范围内,因此它们都会接收到这条消息。由于节点 O 是 L 的好友节点,它会将这条消息缓存起来。如果该消息是分段的消息,O 会在底层传输层回复一个确认(acknowledgment)。一段时间后,L 会轮询节点 O 以检查是否有新消息,这样 O 就会将最初由 T 发送的消息转发给 L。

定向转发机制

  • 节点 M 是一个 低功耗节点(Low Power Node),它不能持续监听网络。
  • 它与节点 O 建立了"友谊"关系(Friendship),所以节点 O 会为它缓存消息,并代表它发送或接收数据。
    • 节点 O 不仅是 Friend Node,还支持 Directed Friend 功能,即它可以主动为低功耗节点建立一条优化的、指向特定目标的路径。
    • 它为节点 M 到目标节点 H 建立了一条 2-lane path(双车道路径)
      • "2-lane" 表示路径可以双向使用(从 M 到 H 和从 H 到 M)。
      • 这种路径可能是根据网络延迟、信号强度或其他路由指标优化后的最佳路径。

定向转发意义

因此,无论支持定向中继的节点数量有多少,通信流量都会被限制在已建立的路径之内。在这个例子中,即使节点 E、G、N 和 Q 接收到了从 M 发往 H 的消息,它们也不会参与转发。

  • BLE Mesh 中引入 定向转发机制 的目的是:
    • 避免传统泛洪机制造成的广播风暴和资源浪费。
    • 将流量限制在已知的最佳路径上,提升效率、降低延迟、减少能耗。
    • 提高网络可扩展性,特别是在大型网络中。

CG

相关推荐
難釋懷6 分钟前
分布式锁-redission锁重试和WatchDog机制
分布式
Hacker_Z&Q30 分钟前
CSS 笔记2 (属性)
前端·css·笔记
丝斯20111 小时前
AI学习笔记整理(67)——大模型的Benchmark(基准测试)
人工智能·笔记·学习
whale fall1 小时前
2026 年 1-3 月雅思口语完整话题清单(1-4 月通用最终版)
笔记·学习
xian_wwq1 小时前
【学习笔记】对网络安全“三化六防挂图作战”的理解与思考
笔记·学习·三化六防
三伏5222 小时前
Cortex-M3权威指南Cn第十章——笔记
笔记·单片机·嵌入式硬件·cortex-m3
AI视觉网奇2 小时前
metahuman 购买安装记录
笔记·学习·ue5
koo3642 小时前
pytorch深度学习笔记19
pytorch·笔记·深度学习
历程里程碑2 小时前
Linux 17 程序地址空间
linux·运维·服务器·开发语言·数据结构·笔记·排序算法
kobe_t3 小时前
分布式定时任务系列14:XXL-job的注册模型
分布式