当前位置: 首页 > news >正文

【KWDB 创作者计划】_上位机知识篇---MQTT协议


文章目录

  • 前言
  • 一、基本概念
    • 1. 协议特点
      • 轻量级
      • 基于发布/订阅模型
      • 支持QoS等级
      • 低功耗
      • 支持持久会话
    • 2. 主要组件
      • Broker
      • Publisher(发布者)
      • Subscriber(订阅者)
      • Topic(主题)
  • 二、协议细节
    • 1. 连接建立
    • 2. 主题(Topic)
      • 分层结构
      • 支持两种通配符
        • +(单级通配符)
        • #(多级统配符)
    • 3. QoS级别
  • 三、协议报文
    • 客户端请求连接
    • 连接确认
    • 发布信息
    • QoS 1消息确认
    • QoS 2消息接收确认
    • QoS 2消息释放
    • QoS 2消息完成
    • 订阅请求
    • 订阅确认
    • 取消订阅
    • 取消订阅确认
    • 心跳请求
    • 心跳响应
    • 断开连接
  • 三、应用场景
    • 1. 物联网(IoT)设备通信
    • 2. 传感器数据采集
    • 3. 智能家居控制
    • 4. 移动应用
    • 5. 推送通知
    • 6. 实时消息
    • 7. M2M通信
    • 8. 设备间直接通信
    • 9. 远程监控
    • 10. 工业设备监控
    • 11. 环境监测
  • 四、安全机制
    • 基础认证
    • TLS/SSL加密
    • 客户端证书
    • 主题权限控制
  • 五、常见实现
    • Broker实现:
    • 客户端库:
  • 六、版本演进
    • MQTT 3.1
    • MQTT 3.1.1
    • MQTT 5.0
  • 七、原因码


前言

MQTT (Message Queuing Telemetry Transport) 是一种轻量级的发布/订阅消息传输协议,专为低带宽、高延迟或不稳定的网络环境设计


一、基本概念

1. 协议特点

轻量级

轻量级:协议头最小只有2字节

基于发布/订阅模型

基于发布/订阅模型:解耦消息生产者和消费者

支持QoS等级

支持QoS等级:提供三种消息传递质量保证级别

低功耗

低功耗:适合物联网设备

支持持久会话

支持持久会话:可恢复通信状态

2. 主要组件

Broker

Broker(代理服务器):消息中转站,负责接收、过滤和转发消息

Publisher(发布者)

Publisher(发布者):发送消息的客户端

Subscriber(订阅者)

Subscriber(订阅者):接收消息的客户端

Topic(主题)

Topic(主题):消息的分类标识,采用分层结构(如home/livingroom/temperature)

二、协议细节

1. 连接建立

MQTT连接通过CONNECT/CONNACK报文对建立:
客户端发送CONNECT报文,包含:
1.Client ID(客户端标识
2.Clean Session标志(是否清除之前会话
3.可选的用户名/密码
4.Keep Alive时间(心跳间隔
5.服务端响应CONNACK报文,包含连接状态

2. 主题(Topic)

分层结构

分层结构,用"/"分隔(如home/

相关文章:

  • Java单例模式详解:实现线程安全的全局访问点
  • Spring Security:企业级安全架构的设计哲学与工程实践
  • 块压缩[比如etc] vs 传统图片压缩 优缺点对比
  • 【KWDB 创作者计划】_深度学习篇---向量指令集
  • 使用rclone迁移minio文件
  • Kubelet 可观测性最佳实践
  • 【C/C++】插件机制:基于工厂函数的动态插件加载
  • 2025年渗透测试面试题总结-拷打题库13(题目+回答)
  • 【redis】主从复制
  • 程序员学英文之Shipment Claim 运输和索赔
  • Node.js学习
  • Vite/Rollup 模块热更新
  • Python内置函数---bytes()
  • MySQL基础增删改
  • CDN加速http请求
  • 百万点数组下memset、memcpy与for循环效率对比及原理分析
  • 【大模型与AIGC深度解析】从核心概念到行业应用
  • Python实现孔填充与坐标转换
  • 网络编程——通信三要素
  • GitLab_密钥生成(SSH-key)
  • 牛市早报|特朗普称或将“大幅降低”对华关税,外交部回应
  • 聚焦“共赢蓝色未来”,首届 “海洋命运共同体”上海论坛举行
  • 证券时报:金价再创历史新高,“避险”黄金不应异化为投机工具
  • 世界读书日丨上图东馆开启残疾人无障碍文化服务
  • 经济日报刊文谈外卖平台仍试图凭补贴制造超低价:苦练内功摆脱“内卷式”竞争
  • 关税战推高成本,美澳“奥库斯”核潜艇协议或将生变