英文太垃圾,纯属个人翻译,用于后期个人需要,看起来方便~

目录

3.9 Mesh beacon

3.9.2 Unprovisioned Device beacon

3.9.3 Secure Network beacon

3.9.3.1 Secure Network beacon behavior

3.9.4 Mesh Private beacon

3.9.4.1 Private beacon generation

3.9.4.2 Mesh Private beacon behavior


3.9 Mesh beacon

Mesh beacons用于node或up周期性的去广播
         Mesh Beacon AD Type 的格式如下图所示:

The Beacon Type values定义如下表所示:

Mesh beacon 的 广播需要的类型是 non-connectable and non-scannable undirected 类型,即,不可连接,不可扫描,非定向的 广播。

3.9.2 Unprovisioned Device beacon

Unprovisioned Device beacon 用于unprovisioned Device被provisioner发现。

Unprovisioned device beacon的格式如下图所示:

其中:0x00为unprovisioned Device beacon type,Device UUID 用于标记当前 Advertising 的唯一设备号,OOB Information 用于在加入 mesh 网络过程中指明可用的 OOB data,

OOB Information field如下图所示:

Authentication Value field

与unprovisioned Device beacon一起,设备还可以广播具有统一资源标识符 (URI) 数据类型的单独的不可连接的广告数据包,该数据类型指向带外 (OOB) 信息,例如作为公钥。 为了允许广播的 URI 与unprovisioned Device beacon的关联,beacon可以包含一个可选的 4 字节 URI 哈希字段。

URI Hash 字段的值使用以下公式计算:

URI 数据是包含统一资源标识符 (URI) 数据类型的buffer。

3.9.3 Secure Network beacon

Secure Network beacon用于node识别subnet及其安全状态。

Secure Network beacon 的格式如下图所示:

         The Flags field :

Network ID field 包含该network的Network ID;

IV Index field 该mesh network当前的IV Index;

Authentication Value field的计算如下:

3.9.3.1 Secure Network beacon behavior

当在已知的subnet接收到Secure Network beacon并进行身份验证时,node应监控IV Index updates和Key Refresh procedures 。为了对Secure Network beacon进行身份验证,node计算Authentication Value field并检查其是否等Private于接收到的Secure Network beacon中的Authentication Value field字段。

Secure Network beacon可以被发送至node所在的每一个subnet来识别该子网,并通知IV Index updates和Key Refresh procedures。

Relay和Friend nodes应该发送信标,其他nodes也可以发送信标。两个连续的beacon之间的时间称为beacon interval。实现可以定义beacon interval和back-off procedure,以防止其他node使用过多beacons使网络过载。预期的行为是,每个节点大约每10秒接收一个给定子网的信标。

对于每个subnet,要确定beacon interval,node应持续观察beacon,并在给定的观 察期内滚动计算子网的beacon数量。 beacon interval应使用以下公式确定:

如果计算的“beacon interval”小于10秒,则应设置为10秒。如果计算的“beacon interval”大于600秒,则应设置为600秒。

Observation Period以秒为单位,通常应为典型beacon interval的两倍。每个subnet都有一个单独的Secure Network beacon,因此,每个subnet的Expected Number of Beacons、Observed Number of Beacon和Observation Period可能不同。Observed Number of Beacon是在观察期内为此subnet 观察到的信标数。

Expected Number of Beacons是Observation Period除以 10 秒。

3.9.4 Mesh Private beacon

Mesh Private beacon用于node去鉴别subnet的Key Refresh Flag ,IV Update Flag,IV Index 。

该beacon的格式如下图的所示:

         Random field包含一个 13 个八位字节的随机数,该数会定期或在网络的 Flags 或 IV Index 发生变化时发生变化。

Obfuscated_Private_Beacon_Data field 包含obfuscated value of the Private Beacon Data。

Private Beacon Data 的格式:

其中,  Private Beacon Data 中的flag如下图所示:

Authentication_Tag 字段包含用于验证Private_Beacon_Data的标签。

3.9.4.1 Private beacon generation

3.9.4.2 Mesh Private beacon behavior

当接收到Mesh Private beacon 时,private Beacon Data 会根据每个已知的PrivateBeaconKey 进行身份验证以识别网络。 node可以缓存 Random 字段或 Authentication_Tag 字段或这两个字段,用于过滤重复的Mesh Private beacons.

对于已识别的网络,node监控IV Index updates 和 KeyRefresh procedures 。

如果Private Beacon state为Enable(0x01),则应为node所属的每个subnet发送一个Mesh Private beacon,以识别该subnet并通知indicate IVIndex updates和Key Refresh procedures 。Mesh Private beacon中的Random field应按照Random Update Interval Steps state 的定义重新生成。如果Mesh Private beacon for the subnet中的Flags field或IV Index field与先前传输的esh Private beacon for the subnet中的相应字段不同,则应重新生成Mesh Private beacon中的Random field。当Mesh Private beacon在Advertising bearer上传输时,Mesh Private beacon应在广告PDU的AdvA字段中使用resolvable private address 或on -resolvable private address。每当重新生成Random field时,应重新生成用于AdvA字段的地址。

支持Relay feature 或 the Friend feature的node应发送 Mesh Private beacon。 发送两个连续的Mesh Private beacon之间的时间称为Private Beacon Transmit Interval。 一个实现可以定义Private Beacon Transmit Interval和 back -off procedure,以防止其他节点因过多的网状私有信标使网络过载。 预期的行为是每个节点大约每 10 秒接收一个给定subnet的Mesh Private beacon 。

对于每个subnet,要确定Private Beacon Transmit Interval,node应持续观察Mesh Private beacon,并在给定的观察期内滚动计算该子网的网状专用beacon数量。 Private Beacon Transmit Interval应使用以下公式确定:

[ble_mesh]3.9 Mesh beacon相关推荐

  1. BLE Mesh (9) —— Mesh beacons

    前面说的都是在 node 已经入 mesh 网以后的行为,那么一个 node 是怎么入 mesh 网的呢?这里就要分为两个部分来介绍了,一边是,自报家门希望入网的节点,另一边是把这个希望入网的节点拉入 ...

  2. BLE MESH组网(二)友谊功能和设备管理

    BLE MESH组网(二) Friendship功能 一.概述 1.Friendship是什么 2.Friend和LPN 3.Friend参数 4.好友建立 Friendship消息 安全 友谊终止 ...

  3. BLE 技术(八)--- BLE MESH 各层报文是如何设计的(上)?

    文章目录 前言: 一.SIG MESH Bearer Layer 1.1 Advertising Bearer Layer 1.2 GATT Bearer Layer 二.SIG MESH Provi ...

  4. 【BLE MESH】PB-ADV入网详解

    设备在一个mesh网络中通讯,需要获取该mesh网络的net key /dev key/app key等密钥,才能加解密mesh数据包,入网的目的其实就是为了获取这些密钥.MESH协议规定有两种入网方 ...

  5. BLE Mesh(六)配网流程

    配网流程 概述 配网协议 配网承载层(Provisioning Bearer) 配网协议(Provisioning Protocol) 流程详解 发送Beacon信号 邀请 交换公共密钥 认证 输出带 ...

  6. 蓝牙Sig Mesh 概念入门⑤——Mesh通信消息格式详解

    文章目录 一.Access Layer 二.Transport layer 三.Network layer 3.1 Address 3.2 Network PDU 3.3 Network transm ...

  7. 转载 解密蓝牙mesh系列 | 第七篇【低功耗蓝牙】【承载层(bearer layer)】【节点与特性】【代理节点(Proxy Node)】【蓝牙mesh代理服务】【发现代理节点】【代理协议】

    SYD8801是一款低功耗高性能蓝牙低功耗SOC,集成了高性能2.4GHz射频收发机.32位ARM Cortex-M0处理器.128kB Flash存储器.以及丰富的数字接口.SYD8801片上集成了 ...

  8. [蓝牙 Mesh Zephyr]-[003]-加入 Mesh 网络

    1. 基础知识 Provisioning 是将未配置设备添加到网状网络的过程,由 Provisioner 管理. Provisioner 为未配置的设备提供配置数据,使其成为网状节点. 配置数据包括网 ...

  9. Airoha BLE SIG Mesh AB1611 天猫精灵配网过程整理

    目录 1:BLE SIG Mesh初始化 2:未配网设备的unprovisioned mesh beacon 3:配网数据传输控制 4:天猫精灵PB-ADV配网过程 4.1 provisioning ...

  10. 蓝牙mesh应用开发笔记

    蓝牙mesh实战 基础协议:蓝牙技术联盟(Bluetooth SIG)在2017年发布的蓝牙Mesh协议. 蓝牙mesh系统分层架构 蓝牙mesh系统分层架构如图2.1所示,可以看到蓝牙mesh是基于 ...

最新文章

  1. aws lambda使用_使用AWS Lambda安排Slack消息
  2. 企业智能化升级之路:CSDN《2017-2018中国人工智能产业路线图V1.0》重磅发布
  3. ES6学习(五) -- 箭头函数
  4. Android.mk文件的解析
  5. Spring5的Web 组件
  6. 柱坐标系下的ns方程_麦克斯韦方程组小结
  7. 考研计算机考试408背诵,今年上岸计算机准研究生分享一下计算机考研(408)经验...
  8. Django的Modelforms的介绍
  9. MySQL数据库安装、初始化及修改密码
  10. Hi3519A调试记录
  11. 【毕设教程】NBIOT 窄带物联网介绍
  12. WIFI类物联网产品配网方式简述
  13. Spring涉及到的9种设计模式
  14. JS中常用的函数求和方法总结【五种方法】
  15. 手机屏幕取词翻译软件哪个比较好?快看这篇文章,它能告诉你
  16. Scala中Seq转Map的方法(:_*)
  17. 微观机器人会使用激光脉冲穿过人体
  18. Sybase数据库自动备份的实现
  19. Python可以做什么?
  20. redis的过期键删除策略

热门文章

  1. 苹果开发者账号的申请
  2. Vue生命周期和钩子函数详解
  3. router跳转外部链接
  4. php 操作 PSD,PHP中使用Imagick操作PSD文件实例
  5. 一块自制自行车码表从B站火到GitHub,稚晖君点赞,网友催量产
  6. supp(),支持集理解
  7. 用Python绘制漫天繁星
  8. 20大风控文本分类算法-基于字符级的tfidf+逻辑回归
  9. 博士申请——Research Proposal
  10. 培养好习惯是很难,但也有方法