蓝牙网关和蓝牙MESH总结

news2024/11/15 20:59:17

可参考:

https://zhuanlan.zhihu.com/p/695144946

蓝牙网关

参考:

https://www.bilibili.com/read/cv28872282/

蓝牙网关是一种特殊的网络设备,它能够实现蓝牙设备与互联网或其他类型网络之间的数据传输和通信。通过蓝牙网关,用户可以远程监控和控制连接到网关的蓝牙设备,实现智能化管理和操作。蓝牙网关通常应用于智能家居、工业自动化和商业场所等领域,为物联网应用提供了便捷的连接和控制方式。

蓝牙网关的工作原理基于蓝牙技术和网络技术的结合。它通过内置的蓝牙模块与蓝牙设备建立连接,收集设备数据,并通过网络模块将这些数据转发到云服务器或指定的网络设备上。同时,它也能接收来自互联网的指令,通过蓝牙传递给本地的智能设备,实现远程控制功能。蓝牙网关具有可变性,可以根据不同的应用场景进行定制和扩展。

蓝牙网关可支持多个子设备接入网络,管理子设备的数据采集、互联,并通过WiFi/以太网/蜂窝LTE 4G将信息同步到云端。用户可以通过手机App远程监控和操作蓝牙物品,大大扩展了原有蓝牙设备的功能和价值。

蓝牙网关的构成及工作原理

智能蓝牙网关是集成蓝牙模块和其他网络通信模块(以太网、WiFi、蜂窝LTE 4G、Zigbee、Z-Wave等)的物联网网关硬件。蓝牙网关中蓝牙模块的作用是扫描并连接附近的BLE设备,并从扫描到的BLE设备中获取数据。 

高带宽网络通信模块(以太网和WiFi、蜂窝LTE 4G)则用于将收集到的数据以TCP/UDP的形式发送到后端云服务器。如果有控制命令,服务器将通过蓝牙网关将命令转发到相关的BLE终端设备。通过这种方式,蓝牙网关执行其双向通信和设备控制功能。

蓝牙MESH

多个蓝牙设备如果想要互相通信,比如家里的智能音箱、手表、扫地机器人等等,可以通过一个蓝牙网关来进行数据交互,除此之外,还有另一种方式,那就是无需通过网络,而是设备之间直接通过蓝牙来进行通信,即使有时候两个蓝牙设备离得比较远,只要中间还有一些蓝牙设备,就可以通过中继的方式来让两个离得远的蓝牙设备进行数据交互。这就是蓝牙MESH的思想。此时,我们可以将MESH理解成蓝牙的局域网络,并看做一个整体,而且,如果这个整体想要联网,那么只需要MESH局域网内有一个蓝牙网关即可,这一点和路由器的作用很类似。

可参考:

https://blog.csdn.net/qq_40537092/article/details/118896759

BLE MESH简介

Bluetooth mesh profile规范是由Bluetooth SIG开发和发布的,它允许一对一、一对多和多对多通信。它使用BLE协议在网络节点之间交换消息。这些节点可以相互通信,只要它们在彼此的直接无线电范围内,或者有足够的设备能够侦听和转发这些消息。

BLE MESH网络利用管理泛洪方法进行消息传输,这是一种简单可靠的消息中继形式,特别适用于低功耗无线网状网络,尤其是那些处理大量多播流量的网络。这使得基于泛洪的消息中继成为满足商业和工业市场严格的可靠性、可扩展性和性能要求的理想方法。

BLE MESH来源

蓝牙基本速率/增强数据速率 (BR/EDR) 是第一个发布的蓝牙版本。它旨在作为一种电缆替代技术,很快就主导了无线音频产品,并成为新计算机外围设备(如无线鼠标和键盘)的推动者。

低功耗蓝牙 (LE) 是下一个真正与众不同的蓝牙技术。它经过优化,可与包含它的设备一起使用尽可能少的能源,并且能够无线操作和通信,仅由硬币大小的电池供电,通常可以使用多年。它已被广泛采用。很难找到不支持蓝牙 LE 的智能手机或平板电脑。健康、运动和健身设备(如活动追踪器)依赖蓝牙 LE 技术。智能手表等可穿戴设备也是如此。这种蓝牙风格的影响令人印象深刻且广泛。

蓝牙 BR/EDR 和蓝牙 LE 在智能手机等设备中都很常见,但它们并不依赖于彼此的服务和功能。出于所有意图和目的,这两种蓝牙风格彼此独立工作。事实上,虽然他们很乐意在同一设备中共存,但不可能使用蓝牙 BR/EDR 与蓝牙 LE 设备进行通信。

相比之下,BLE MESH网络使用并依赖于蓝牙 LE。蓝牙 LE 是BLE MESH网络使用的无线通信协议栈。

BLE MESH网络不是无线通信技术。这是一种网络技术。

BLE MESH用处

Bluetooth ®网状网络的创建是因为网状拓扑提供了满足各种日益常见的通信需求的最佳方式,这些需求以楼宇自动化和传感器网络等应用为代表。这些要求包括:

  • 覆盖非常大的区域

  • “只是工作互操作性”

  • 监视和控制大量设备的能力

  • 优化、低能耗

  • 有效利用无线电资源,实现可扩展性

  • 与当前可用的智能手机、平板电脑和个人电脑产品的兼容性

  • 行业标准、政府级安全

其他网状技术,一般来说,标准的智能手机、平板电脑和PC设备不支持;一个主要的制约因素。

BLE MESH的通讯方式

BLE MESH网络使用发布/订阅消息系统。

设备可能会向其名称和含义对应于用户可以理解的高级概念的地址发送消息,例如Garden Lights。这称为发布

设备可以配置为接收由其他设备发送到特定地址的消息。这称为订阅

当设备向特定地址发布消息时,订阅该地址的所有其他设备都将收到它的副本,对其进行处理并以某种方式做出反应。

想象一下安装在花园中的一组户外灯。每个灯都已配置为订阅“花园灯”消息。现在,想象一个BLE MESH灯开关向“花园灯”地址发送“ON”消息。花园中的所有灯都会收到“ON”消息,并通过……做出反应。你猜对了……打开。

就这么简单。

管理洪水

中继设备重新传输它们从其他设备接收的消息。在这样做时,他们能够与不在最初发布消息的设备的无线电范围内的设备进行通信。一条消息可以通过所谓的“跳跃”多次中继。最多可能有127跳,足以在巨大的物理区域中中继消息。

BLE MESH使用一种称为“泛洪”的方法来发布和中继消息。这意味着消息不是由导致它们沿着仅包含特定设备序列的特定路径传输的过程路由的。相反,范围内的所有设备都会接收消息,而那些充当中继的设备会将消息重新传输到范围内的所有其他设备。

一般来说,泛洪是一种技术,有优点也有缺点。

泛洪的优点是不需要特定设备承担特殊责任来充当集中式路由器,其故障可能导致整个网络无法运行。特定路由不可用也可能对网络产生灾难性影响,而这也可以通过网状网络的泛洪方法来避免。

泛洪方法还意味着消息通常可以通过多条路径到达其目的地。这使得网络非常可靠。

所有数据包都包含一个称为TTL的字段。这可用于限制消息在中继时采用的跳数。由设备每隔一段时间传输的心跳消息包括允许网络了解其拓扑结构和跳数的信息,其他每个设备都是如此。这允许设备将 TTL 设置为最佳值,从而避免消息被中继不必要的次数。

市场内蓝牙设备支持

Bluetooth® mesh网络指定了一个称为代理节点的设备角色。代理节点包括标准的低功耗蓝牙 GATT 服务,该服务具有两个 GATT 特性。这些特征称为Mesh Proxy Data In 和Mesh Proxy Data Out。智能手机等低功耗蓝牙设备可以使用这些特性向网状网络发送数据和从网状网络接收数据

网格规范定义了一个称为代理协议的协议,通过代理节点提供的两个 GATT 特性交换的数据由代理协议 PDU 组成。

安全性

安全性是BLE MESH网络设计的核心,它的使用是强制性的。

每个数据包都经过加密和验证。通过明智地使用序列号来防止重放攻击。通过在重要过程中使用非对称加密来防止中间人攻击。提供针对利用废弃设备的垃圾桶攻击的保护。必要时会刷新安全密钥。

关注点分离”是一个重要的原则,体现在蓝牙mesh网络的安全性上。网络安全与照明、供暖或物理建筑安全等个别应用的安全是相互独立的。不同的安全密钥用于保护网络层操作,例如中继与保护特定于应用程序的消息内容。这样做的结果是,例如,灯泡可以完全访问由电灯开关传输的消息中的数据,因为它们具有相同的应用程序密钥。但是,虽然同一个灯泡能够将消息从蓝牙物理访问令牌转发到前门的锁,但它无法看到这些消息的应用层内容。

BLE MESH基本概念

ble mesh网络为与环境交互创造了新的机会,无论您是使用智能照明、加热/冷却和安全系统使您的家庭或办公室更加智能,还是提高工业无线传感器网络 (IWSN) 的效率。BLE MESH网络提供了创建真正大规模设备网络所需的基础,使您能够使数十、数百甚至数千个无线设备相互可靠、安全地通信。本文深入探讨了这种创新网络拓扑背后的基本概念。

节点

想象一个由数千个设备组成的网络,每个设备都通过蓝牙®低功耗 (LE) 短脉冲无线连接进行通信。BLE MESH网络上的这些设备称为节点。每个节点发送和接收消息。信息可以从一个节点到另一个节点中继,使消息能够传播比无线电波通常允许的更远的距离。这个节点网络下图可能遍布制造设施、办公楼、购物中心、商业园区等。

元素

某些节点(例如传感器)会消耗电池电量,而其他节点(例如灯具、制造机械和安全摄像头)则从主电网获取电力。一些节点比其他节点具有更多的处理能力。这些节点可以在网状网络中承担更复杂的任务,承担不同的角色并拥有以下四个节点特征中的任何一个。

低功率特性: 功率受限的节点可以使用低功率特性来减少无线电开启时间并节省功率。低功耗节点 (LPN) 与朋友节点协同工作。

朋友特征:没有功率限制的节点是成为朋友节点的绝佳候选者。朋友节点存储发往 LPN 的传入消息和安全更新;当 LPN 请求这些消息时,朋友节点将存储的信息传递给 LPN。

中继功能: 中继节点接收和重新传输消息,当消息从一个节点中继到另一个节点时,可以实现更大的网络。根据电源和计算能力,节点可能具有此功能。

代理功能:代理节点能够在 GATT 和蓝牙网格节点之间传输和接收网格消息。具有此角色的节点需要可靠的电源和计算资源。

一些节点比其他节点更复杂,由多个称为元素的独立部分组成。每个节点至少有一个元素,称为主要元素,并且可能有其他元素。元素由定义节点功能和元素条件的实体组成。例如,一个灯泡有一个元素有两个功能:

  • 节点 = 灯泡

  • 一个元素 = 主要元素

  • 节点功能

一、开关 二、亮度 1 2

  • 元素的条件/状态

一、开或关 二、0 – 10(亮度等级) 1 2

节点内的每个元素都有一个唯一的地址,称为单播地址,使每个元素都可以寻址。

节点必须至少有一个元素,也可以有多个元素。

补充:

参考:https://blog.csdn.net/calculusstill/article/details/136171232

洪泛法 - 概述

洪泛法(Flooding)是计算机网络中一种简单直接的数据传输技术。它不依赖于网络中的路由表或者路径选择算法。在洪泛法中,每个接收到消息的节点将消息复制并发送给除了消息来源外的所有其他节点。这个过程一直重复,直到消息到达网络中的所有节点或者达到了预设的跳数限制。洪泛法由于其简单性,在特定场景下非常有效,如在没有固定网络结构或者网络结构快速变化的环境中。

工作原理

洪泛法的工作原理基于“广播”机制,每个节点接收到消息后,会将该消息发送给所有可达的邻居节点,除了它从中接收到消息的节点。这种方法确保了网络中的每个节点都将接收到消息,但也可能导致大量的重复消息,特别是在大型或密集网络中。

为了减少网络流量和防止无限循环,通常在洪泛法中引入了两种机制:

跳数限制(TTL,Time-To-Live) :每条消息都有一个跳数限制,每当消息在节点间传输一次,其TTL值就减少1。当TTL值降到0时,消息就不再被转发。

重复消息检测 :节点通过维护已接收消息的记录,来避免转发已经转发过的消息。

优点

简单性 :洪泛法不需要复杂的路由算法或者网络拓扑知识,易于实现。

鲁棒性 :由于消息被广播到所有节点,即使网络中有节点或连接失败,消息仍然可以通过其他路径到达目的地。

实时性 :在紧急情况下,可以快速传播消息到网络中的所有节点。

缺点

网络负载 :洪泛可能导致大量的重复数据在网络中传输,增加了网络负载。

缺乏效率 :洪泛法在大型或密集的网络中效率较低,因为它不考虑最优路径或网络拥堵情况。

安全性问题 :洪泛可能被恶意利用来执行拒绝服务(DoS)攻击,通过发送大量消息来淹没网络。

应用场景

尽管洪泛法在一般的网络通信中可能不是最高效的选择,但在某些特定应用场景下,它仍然非常有用。例如:

初始网络构建 :在网络刚刚建立,路由信息还未完全确定时,可以使用洪泛法来发现网络中的节点和路径。

紧急消息传播 :在需要快速向网络中的所有节点传递紧急消息时,洪泛法可以确保消息的及时传递。

分布式系统 :在某些分布式算法和协议中,洪泛法可以用来实现快速的信息同步或状态更新。

更多待补充。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1972373.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Leetcode238. 除自身以外数组的乘积(java实现)

今天分享的题目是letcode238. 除自身以外数组的乘积 先来看题目描述: 本道题我最先想到的是先乘积所有的元素,然后除以所有元素,但是本题无法使用除法。 本题的解题思路是使用前缀积。 拿nums[]{1,2,3,4}; 先遍历前缀积,num[0]的…

Spring AOP总结

1、AOP(Aspect-Oriented Programming):面向切面编程让开发更高效。 工作中经常需要处理日志记录、事物管理、安全控制等跨越多个业务模块的公共逻辑。 它是一种编程的范式。它通过将跨多个业务模块的公共逻辑抽取并封装成独立的模块&#xf…

人工智能大模型综述学习笔记

目录 一、深度学习的局限性和大模型发展背景 二、大模型架构 1、多头自注意力机制 2、Transformer架构 三、常见大模型发展概况 1、语言大模型发展概况 掩码语言模型解释 因果语言模型解释 何时使用什么? 2、视觉-语言大模型 四、大模型的特点 1、大模型…

uni-app项目打包成H5部署到服务器

1. uni-app项目打包成H5部署到服务器 前端使用 uniapp开发项目完成后,需要将页面打包,生成H5的静态文件,部署在服务器上。这样通过服务器链接地址,直接可以在手机上点开来访问。   将项目打包成H5部署到服务器,然后链…

Java中类的构造

1.私有化成员变量。 2.空参构造方法。 3.带全部参数的构造方法。 4.get / set方法。 package demo;public class student{//1.私有化成员变量。//2.空参构造方法。//3.带全部参数的构造方法。//4.get / set方法。private String name;private int age;public student() {}pu…

基于SpringBoot+Vue的多媒体信息共享平台(带1w+文档)

基于SpringBootVue的多媒体信息共享平台(带1w文档) 基于SpringBootVue的多媒体信息共享平台(带1w文档) 随着武理多媒体信息共享平台的不断出现,用户需求不断增多,武理多媒体信息共享平台也不断的得到壮大。该系统主要是满足多方面的需求的实际需要&#…

MySQL案例:MHA实现主备切换(主从架构)万字详解

目录 MHA 概念 MHA的组成 特点 案例介绍 (1)案例需求 (2)案例实现思路 (3)案例拓扑图 (4)案例环境 案例步骤 基本环境配置 关闭防火墙和内核安全机制 安装数据库 授权…

数据结构——链式结构二叉树

目录 一、二叉树的链式结构 二、手动创建一棵链式二叉树 三、 二叉树的遍历 (1)前序遍历(先序遍历) (2)中序遍历 (3)后序遍历 四、二叉树的有关函数 (1)头文件 (…

【机器学习】逻辑回归的梯度下降以及在一变量数据集、两变量数据集下探索优化的梯度下降算法

引言 在机器学习中,逻辑回归是一种用于二分类问题的方法。它使用逻辑函数(也称为sigmoid函数)来预测属于某个类别的概率。逻辑回归的损失函数通常是交叉熵损失,用于衡量预测值与真实值之间的差异 文章目录 引言一、逻辑回归的梯度…

电机的伺服调试和pid调节有什么异同?

电机的伺服调试和PID调节在调节控制系统的精度和性能方面都是重要的,但它们有不同的侧重点和方法: 伺服调试 定义:伺服调试是指对伺服系统进行优化和调整,以确保其在控制对象(如电机)上的表现达到预期。伺…

《LeetCode热题100》---<5.②普通数组篇五道>

本篇博客讲解LeetCode热题100道普通数组篇中的六道题 第三道:轮转数组(中等) 第四道:除自身以外数组的乘积(中等) 第三道:轮转数组(中等) 方法一:使用额外的数…

KubeSphere 部署的 Kubernetes 集群使用 GlusterFS 存储实战入门

转载:KubeSphere 部署的 Kubernetes 集群使用 GlusterFS 存储实战入门 知识点 定级:入门级 GlusterFS 和 Heketi 简介 GlusterFS 安装部署 Heketi 安装部署 Kubernetes 命令行对接 GlusterFS 实战服务器配置(架构1:1复刻小规模生产环境,…

AI助力,轻松组建你的汽车梦之队!

咱汽车销售想增加目标客户,可不简单!市场竞争那叫一个激烈,吸引客户注意力太难了!不过别怕,咱有办法。我在 ai123.cn 这个平台上,找到了好多适合咱的 AI 工具和资源,这就跟大家分享分享。 比如说…

upload-labs漏洞靶场~文件上传漏洞

寻找测试网站的文件上传的模块,常见:头像上传,修改上传,文件编辑器中文件上传,图片上传、媒体上传等,通过抓包上传恶意的文件进行测试,上传后缀名 asp php aspx 等的动态语言脚本,查…

基于C语言从0开始手撸MQTT协议代码连接标准的MQTT服务器,完成数据上传和命令下发响应(华为云IOT服务器)

文章目录 一、前言二、搭建开发环境三、网络编程基础概念科普3.1 什么是网络编程3.2 TCP 和 UDP协议介绍3.3 TCP通信的实现过程 四、Windows下的网络编程相关API介绍4.1 常用的函数介绍4.2 函数参数介绍4.3 编写代码体验网络编程 五、访问华为云IOT服务器创建一个产品和设备5.2…

STM32ADC

ADC简介:有打moba游戏的别搞混了,这不是射手adc。在32中,ADC的全称为:Analog-to-Digital Converter,指模拟/数字转换器 也就是模拟-数字电路的转换器。其实通俗的来讲,它就是一个电压表。 目录 一.ADC原理…

六、5 TIM输入捕获介绍

1、基本知识介绍 (1) 注意: ①4个输入捕获和输出比较通道,共用4个CCR寄存器 ②CH1到CH4,四个通道的引脚也是共用的 ③同一个定时器输入捕获和输出比较,不能同时使用 (2)输入捕获…

4G/5G无线视频采集设备如何通过国标28181接入到视频监控接入平台(视频统一接入平台)

目录 一、国标GB/T 28181介绍 1、国标GB/T28181 2、内容和特点 二、4G/5G无线视频采集设备 1、定义 2、主要功能: 3、技术特点 4、应用场景 二、接入准备工作 1、确定网络环境 (1)公网接入 (2)专网传输 2、…

使用 Rough.js 创建动态水平条形图

本文由ScriptEcho平台提供技术支持 项目地址:传送门 使用 Rough.js 创建动态可视化网络图 应用场景 Rough.js 是一个 JavaScript 库,它允许开发人员使用毛边风格创建可视化效果。该库适用于各种应用程序,例如: 数据可视化地图…

【C++11】解锁C++11新纪元:深入探索Lambda表达式的奥秘

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C “ 登神长阶 ” 🤡往期回顾🤡:C11右值引用 🌹🌹期待您的关注 🌹🌹 ❀C11 📒1. 可变参数模板…