蓝牙Mesh基础(3)蓝牙Mesh协议--总览

2023-05-16

蓝牙Mesh协议

    • 总览
    • Bearer Layer(承载层)
    • Network Layer(网络层)
    • Low Transport Layer(下层传输层)
    • Upper Transport Layer(上层传输层)
    • Access Layer(访问层)
    • Foundation Model Layer(基础模型层)/Model Layer(模型层)

在这里插入图片描述

总览

学习蓝牙Mesh,绕不开学习协议。蓝牙Mesh协议由7部分组成:“Model Layer”、“Foundation Model Layer”、“Access Layer”、“Upper Transport Layer”、“Low Transport Layer”、“Network Layer”、“Bearer Layer”。
在上面蓝牙Mesh协议图中还有一部分“Bluetooth Low Energy Core Specification”在整个协议的底部,这部分是ble的协议,说明Mesh是建立在ble协议之上的,作为Mesh的依赖层,不属于Mesh协议的一部分。同时也说明了蓝牙Mesh是一个纯软件协议。

Bearer Layer(承载层)

功能:
定义网络层PDU(消息包)如何被给定的通信系统处理。包括广播承载层和GATT承载层

  • 广播承载层:利用ble的GAP广播和扫描功能来传送和接收mesh PDU
  • GATT承载:为不支持广播承载层的设备提供代理服务,间接的与mesh网络中的节点通信

Network Layer(网络层)

功能

  • 定义地址的类型(未配置地址、单播地址、群组地址、虚拟地址)
  • 定义 Network PDU
  • 过滤来自承载层的输入消息,确定是否向上层传输;过滤来自下层传输层的输出消息,确定是否丢弃
  • 支持多个承载层,每个承载层可具有多个网络接口,可以实现同一节点部分元素之间的通信
  • 中继和代理功能在该层实现

Low Transport Layer(下层传输层)

功能

  • 传输上层传输层下发的PDU,如果PDU超过了单包长度限制则进行分段
  • 接收网络层上传的PDU,如果是分段的数据包则进行重组

Upper Transport Layer(上层传输层)

功能

  • 对传入和传出的消息进行解密、加密、认证
  • 传输控制消息。控制消息生成于节点的内部,并在不同节点间的上层传输层间传输,比如friendship消息、heartbeat消息

Access Layer(访问层)

功能

  • 定义应用数据的格式
  • 定义并控制上层传输层的加解密过程
  • 在将数据上传到堆栈之前,对来自上层传输层的数据进行验证,判断是否适用于该网络和应用(判断消息中Netkey、Appkey是否有效)

Foundation Model Layer(基础模型层)/Model Layer(模型层)

基础模型层
负责mesh网络的配置和管理相关模型的实施
模型层
模型层涉及模型的实施,因此涉及一个或多个模型规格中定义的行为、消息、状态、状态绑定等的实现。模型层是用户应用开发过程中打交道最多的一个层

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

蓝牙Mesh基础(3)蓝牙Mesh协议--总览 的相关文章

  • xacro 中mesh_Gazebo教程(使用roslaunch启动Gazebo,world文件和URDF模型)

    启动Gazebo xff0c 打开world模型以及向仿真环境中插入机器人模型的方法有很多 xff0e 在这个教程中 xff0c 我们将使用rosrun和roslaunch来实现 xff0e 这里包括将URDF文件存储在ROS包中 xff0
  • ESP32 WiFi Mesh开发(二):ESP WiFi Mesh接口简析

    1 ESP MDF架构 ESP MDF是ESP Mesh Development Framework的缩写 xff0c 也就是 ESP Mesh开发架构 xff0c 其结构如下 xff1a 红框部分是WiFi Mesh协议栈 xff0c 其
  • 计算机网络笔记(五):传输层

    文章目录 前言 多路复用和多路分用 UDP User Datagram Protocol RFC 768 可靠数据传输原理 流水线机制与滑动窗口协议 Go Back N GBN 协议 Selective Repeat SR 协议 TCP 协
  • BLE MESH组网(一)简介和基本概念

    BLE MESH组网 一 BLE MESH简介 BLE MESH来源 BLE MESH用处 BLE MESH的通讯方式 管理洪水 市场内蓝牙设备支持 安全性 BLE MESH协议栈模型 BLE MESH基本概念 节点 元素 模型和状态 地址
  • Ble Mesh的Generic Model ID&Opcode

    MODEL ID 标准的为16为 自定义的Vendor Model ID为32位 Model Group Model Name SIG Model ID Generic Generic OnOff Server 0x1000 Generic
  • unity---Mesh网格编程(二)

    目录 1 绘制一个3X3的面 2 代码 unity Mesh网格编程 一 1 绘制一个3X3的面 前面说了mesh的基础知识点 现在绘制一个3X3的面 2 代码 using System Collections using UnityEng
  • 什么是体素(Voxel)

    复制粘贴的知乎 题图中是3D数据的不同表示类型 a 点云 Point clouds b 体素网格 Voxel grids 多边形网格 Polygon meshes d 多视图表示 Multi view representations 其中
  • 显示线框和纯色

    是否可以在同一对象上显示对象的线框及其面的纯色 我找到了一种使用对象克隆并分配不同材质的方法 例如 var geometry new THREE PlaneGeometry plane width plane height width 1
  • 平滑圆锥法线

    我正在尝试计算圆锥体的平滑法线 在寻找代码示例和解释时 我不断地遇到面部法线的方向 我在下面发布了几张我正在做的事情的照片 第一个 基本上只是标准化顶点位置 给了我相当平滑的阴影 但边缘 缺失 底面也不坚固 第二个有边缘 但阴影是平坦的 面
  • SceneKit:关于像 Tron 光循环一样再现发光光迹的建议

    目标是在 SceneKit 中重现类似于下图的光迹 路径不需要那么详细 但我们的想法是实现类似的视觉效果 我们尝试使用不透明度约为 0 5 的薄立方体 我们将大约 200 个灯串在一起 并将它们连接到一个节点上 作为光迹 那根本没有表现 另
  • MATLAB 中的网格生成

    有没有子程序 在MATLAB http en wikipedia org wiki MATLAB 它接受一个点列表 然后返回一个好的网格 我可以用它来向我的同事展示 比如这样 实际上 我需要的只是一个简单的 2D 网格生成器 它接收一系列
  • 无论旋转如何,跟踪增强面 (ARCore) 的面网格顶点

    我正在尝试跟踪面部表情 例如扬眉 微笑 眨眼等 在 ARKit 中 我可以使用 blendShapes https developer apple com documentation arkit arfaceanchor 2928251 b
  • 在 Unity3D 中,“设置”网格的边界会做什么或实现什么?

    在 Unity 代码库中 我看到了这个 the game object currently has no mesh attached MeshFilter mFilter gameObject AddComponent
  • 表面网格到体积网格

    我有一个使用 Meshlab 从点云生成的封闭表面网格 我需要为此获得一个体积网格 这样它就不是一个空心物体 我想不通 我需要获取 stl 文件进行打印 谁能帮我获得体积网格 我更喜欢简单的解决方案而不是复杂的算法 给定一个定向的水密表面网
  • LibGDX 网格高度图法线和灯光

    我正在尝试让网格法线和灯光在 LibGDX 项目中工作 我已经有了从高度图纹理像素生成的纹理网格 问题是我无法正确点亮法线 另外 我不能 100 确定我在 TerrainChunk 类中正确设置了法线顶点 这是主类代码 package co
  • 如何从kinect fracetrack获取网格?

    如何获取 kinect 面部追踪网格 这是网格 https i stack imgur com aPtJt jpg https i stack imgur com aPtJt jpg 我尝试了多种方法 但无法使其发挥作用 e g http
  • Unity3D 带孔动态网格

    从两个顶点列表动态创建一个带有孔的网格 我目前正在尝试动态创建一个带有孔的网格 2D 我有一个轮廓和孔轮廓的 Vector3 顶点列表 我的问题 How would I go about merging these two lists of
  • 在 Python 中创建二维非矩形形状的三角形网格

    假设我有一组点定义二维平面中非矩形形状的周长 我需要一个函数来创建三角形网格划分 在其中可以修改三角形单元的数量并返回每个单元的 x y 坐标 谢谢 你可能应该看看 dmsh https github com nschloe dmsh py
  • 如何在 python Open3d 中向网格添加纹理?

    我正在使用 python Open3d 处理三角形网格 我想向我的网格添加纹理映射 我在文档中没有找到它 这是一个带有简单立方体网格的示例代码 import numpy as np import open3d as o3d vert 0 0
  • 在网格挤出过程中计算 UV 坐标

    我目前正在为平面形状实现网格挤出算法 让我们假设为矩形 当我拉伸这个矩形时 我为 3d 形状创建了四个新边 产生 8 个新三角形 和一个新底部 当我复制所有顶点以使最终的立方体有 24 个顶点时 这种方法效果很好 但我现在想避免这些额外的顶

随机推荐

  • VS2008与Matlab混合编程设置

    VS2008 与MATLAB R2009b 混合编程环境配置 一 xff0c VS2008 中的函数调用matlab的写好的函数 1 Matlab 生成 DLL 1 1 编译器的安装 实验环境 xff1a XP 32 位机MATLAB R2
  • System.console().readPassword() java.lang.NullPointerException

    java核心技术 卷I 书籍中有关 java io Console 类的1个示例 System console readLine 与 System console readPassword 在 idea 中运行出现 java lang Nu
  • Linux man中文手册的安装与使用

    概要 xff1a 在 ubuntu 20 04 中下载 安装使用 man 中文手册 文章目录 linux shell命令学习法宝 man 手册man中文手册的下载 安装及环境变量的配置下载安装环境变量配置及 cman 命令使用 man 中文
  • X window selection --- xclip

    原文 英文 url xff1a https encyclopedia thefreedictionary com X 43 Window 43 selection 本文为笔者的翻译 xff0c 红色部分为笔者增加的批注 文章目录 Activ
  • linux安装xclip实现终端与剪贴板之间的通道

    概要 xff1a ubuntu 20 04 通过安装 xclip 来实现终端与剪贴板之间的数据通道 xff1a xclip 类似 dos 中的 clip命令 xff0c xclip 可将命令执行的结果保存到剪贴板 xff0c 还允许将文件的
  • java中GBK与UTF-8编码的转换

    文章目录 java源文件中中文字符的编码的问题UTF 8和GBK格式的文件相互转换java实现文件编码的转换 java不同编码的字节数组的转换Java判断文件编码格式对于UTF 8格式文件的判断 xff1a 利用cpdetector开源库确
  • GBK编码表

    全国信息技术标准化技术委员会 汉字内码扩展规范 GBK Chinese Internal Code Specification 1 0 版 xff08 按编码顺序排列 xff09 其编码范围 xff1a 8140 xff0d FEFE xf
  • dll文件下载网址

    https cn dll files com
  • windows中dos命令汇总及获取管理员权限

    文章目录 windows 获取管理员权限的2种方式runas 用法 windows dos 命令行语法项windows dos命令总述 windows dos命令详细介绍 win7及以前 微软官网 windows dos命令详细介绍 win
  • windows比cmd更强大的 WMIC命令使用详解

    文章目录 什么是wmic WMIC能做什么 WMIC命令使用帮助文档WMIC命令使用实例wmic的运行方式可以有两种法1 显示进程的详细信息2 停止 暂停和运行服务功能3 显示出BIOS信息4 停止进程的操作5 连接远程电脑6 BIOS 基
  • 编程意识——宏定义封装多个函数参数

    作者 釜薪君 公众号 嵌入式杂牌军 文章目录 前言一 这种意识的来源二 实现源码分析1 函数调用2 宏定义部分3 函数实现4 宏替换后的函数调用 总结 前言 今天带小伙伴们分析一段不错的代码 xff0c 学习一下关于宏封装的一种意识 xff
  • DSP28335的SCI的FIFO中断使用心得

    自学了一段时间的DSP28335的串口设置 xff0c 写下来帮助更多的新手 xff0c 遇到了很多问题也记录一些解决办法 以下全都是我个人的理解 xff0c 可能说的不对 xff0c 大家讨论 1 关于为什么必须用FIFO 一般的DSP系
  • 51单片机堆栈深入剖析

    用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势 Keil公司的C51编译器支持经典8051和8051派生产品的版本 xff0c 通称为Cx51 应该说 xff0c Cx51是C语言在MCS51单片机上的扩展 xff0c
  • 基于ros_arduino_bridge的智能小车----上位机篇

    基于ros arduino bridge的智能小车 上位机篇 基于ros arduino bridge的智能小车 硬件篇 基于ros arduino bridge的智能小车 下位机篇 ros arduino bridge文件系统 xff08
  • 基于ros_arduino_bridge的智能小车----下位机篇

    基于ros arduino bridge的智能小车 下位机篇 参考文章 xff1a 基于ros arduino bridge的智能小车 上位机篇 基于ros arduino bridge的智能小车 硬件篇 下位机部分实际上可以视作完全独立的
  • 【命令】Python执行命令超时控制【原创】

    目录 参考 概要 方案 方案一 xff1a os system 方案二 xff1a os popen 方案三 xff1a subprocess check output 方案四 xff1a subprocess Popen 方案五 xff1
  • nRF52 Mesh开发 (2) SDK例程Light_switch server 添加一个element控制开发板其他LED灯

    server文件结构 xff1a 使用SEGGER编译的话直接打开 emProject文件即可 xff1b img文件中包含程序运行过程图 xff1b include文件包含该例程下的头文件 xff1b 2 具体操作 xff1a 在main
  • nRF52 Mesh开发 (3) MESH Sensor Server/Client Models详解与实现

    MESH Sensor Model 实现 MESH Spec规定的 Sensor Model 标准传感器状态传感器描述传感器参数设置传感器cadence传感器数据 传感器可发送和接收的消息Sensor Server Client Model
  • Telink Mesh 开发(1)调试log打印

    Telink Mesh SDK 调试log打印 Telink 官网论坛建议使用GPIO模拟串口打印log xff0c 推荐阅读Telink官网发布的最新SDK使用手册 xff0c 更新了不少东西 一 使用串口打印log1 使能uart lo
  • 蓝牙Mesh基础(3)蓝牙Mesh协议--总览

    蓝牙Mesh协议 总览Bearer Layer xff08 承载层 xff09 Network Layer xff08 网络层 xff09 Low Transport Layer xff08 下层传输层 xff09 Upper Transp