MQTT协议-发布消息和发布确认
创始人
2024-05-31 06:57:27
0

MQTT协议-发布消息和发布确认

PUBLISH一发布消息

PUBLISH控制报文是指从客户端向服务端或者服务端向客户端传输一个应用消息。

发布消息报文由以下5个部分组成

在这里插入图片描述

固定报头由两个字节组成,第一个字节的高4位固定为0011,第2位和第1位表示Qos等级,可设置为等级0,所以是00,第3位和第0位也可以设置为0,第二个字节是剩余长度,用??暂时代替,因此,固定报头为30 ??

在这里插入图片描述

可变报头由两部分组成,一个是主题名,一个是报文标识符,主题名就是阿里云里具有发布权限的Topic类

在这里插入图片描述

报文标识符只有在Qos等级是1或者2时才出现在报文中,因为本次实验设置的等级是0,所以这个报文标识符就没有

在这里插入图片描述

所以可变报头的数据就只有发布权限的主题名,在阿里云里可以选择物模型的Topic类,方便后续传输真实数据

在这里插入图片描述

有效载荷包含将被发布的应用信息,数据的内容和格式使用的是JSON格式

在这里插入图片描述

在这里插入图片描述

JSON格式的表现形式如下

在这里插入图片描述

在这里插入图片描述

多个键值的JSON格式,在上传本地设备数据到阿里云物模型时也是使用这种格式,每一个键值之间用逗号来隔开

在这里插入图片描述

如果Qos等级为0,则没有响应,因此本次实验发布消息报文也没有响应这部分

在这里插入图片描述

动作没有具体的数据,不参与报文数据组装

在这里插入图片描述

因为响应和动作都没有,所以发布消息的PUBLISH报文可简化为由固定报头+可变报头+有效载荷三部分组成

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...