mqtt协议常见报文

MQTT总共有十几种控制报文,常见报文包括CONNECT、SUBSCRIBE、UNSUBSCRIBE、PUBLISH、PUBACK、PUBREC、PUBREL、SUBACK以及UNSUBACK等。这些控制报文用于在MQTT协议中实现客户端与服务器之间的通信,包括连接、订阅、取消订阅以及发布消息等操作。

  • CONNECT控制报文。客户端与服务器建立连接后的一个控制报文就是connect报文。在一个网络连接上以后,客户端只能发送一次connect报文。CONNECT控制报文由固定报头、可变报头以及有效载荷组成。
  • SUBSCRIBE控制报文。SUBSCRIBE控制报文用于客户端向服务器发送一个或多个主题的订阅请求,包括需要订阅的主题列表以及请求的QoS等级。
  • UNSUBSCRIBE控制报文。UNSUBSCRIBE控制报文用于客户端向服务器发送取消订阅请求,包括需要取消订阅的主题列表。
  • PUBLISH控制报文。PUBLISH控制报文用于客户端向服务器或客户端发送MQTT消息,可以在发布消息后立即释放控制报文,也可以等待收到PUBACK或PUBREC控制报文后再释放。
  • PUBACK控制报文。PUBACK控制报文用于向发送PUBLISH控制报文的客户端发送确认消息,表示该消息已经被接收。
  • PUBREC控制报文。PUBREC控制报文用于向发送PUBLISH控制报文的客户端发送确认消息,表示该消息已经被接收,并且已经被存储在消息队列中等待处理。
  • PUBREL控制报文。PUBREL控制报文用于向发送PUBLISH控制报文的客户端发送确认消息,表示该消息已经被处理,并且可以被发布给其他客户端。
  • SUBACK控制报文。SUBACK控制报文用于向发送SUBSCRIBE控制报文的客户端发送确认消息,表示该客户端的订阅请求已经被服务器处理,并且该客户端已经成功订阅了请求的主题列表中的所有主题。
  • UNSUBACK控制报文。UNSUBACK控制报文用于向发送UNSUBSCRIBE控制报文的客户端发送确认消息,表示该客户端的取消订阅请求已经被服务器处理,并且该客户端已经成功取消订阅了请求的主题列表中的所有主题。

畅联AIoT开放云平台(www.24hlink.cn)由杭州美畅物联技术有限公司精心打造,不仅能够接入视频,也可以接入、管理各种IoT设备、工业现场设备,在AIoT开发领域能给合作伙伴带来难以置信的降本增效价值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MQTT协议控制报文格式如下: | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |--------|--------|--------|--------|--------|--------|--------|--------| | 控制报文类型 | 标志位 | 剩余长度(可变) | 控制报文类型占用 4 个 bits,标志位占用 4 个 bits,剩余长度占用可变长度,最多可占用 4 个字节。 MQTT协议定义了多种控制报文类型,每种类型的报文格式不同,具体如下: - CONNECT:MQTT客户端连接到MQTT服务器时发送的报文,包含客户端ID、用户名、密码等信息。 - CONNACK:MQTT服务器响应CONNECT报文报文,包含连接成功或失败的信息。 - PUBLISH:MQTT客户端发布消息时发送的报文,包含消息主题、消息内容等信息。 - PUBACK:MQTT服务器响应PUBLISH报文报文,确认收到了PUBLISH报文。 - PUBREC:MQTT服务器在收到QoS为1的PUBLISH报文后,向MQTT客户端发送的报文,表示已经收到PUBLISH报文。 - PUBREL:MQTT客户端收到PUBREC报文后发送的报文,表示确认收到了PUBLISH报文。 - PUBCOMP:MQTT服务器收到PUBREL报文后发送的报文,表示确认收到了PUBREC报文。 - SUBSCRIBE:MQTT客户端订阅主题时发送的报文,包含主题名称和QoS等级。 - SUBACK:MQTT服务器响应SUBSCRIBE报文报文,包含订阅成功或失败的信息。 - UNSUBSCRIBE:MQTT客户端取消订阅主题时发送的报文,包含主题名称。 - UNSUBACK:MQTT服务器响应UNSUBSCRIBE报文报文,确认取消了订阅。 - PINGREQ:MQTT客户端发送给MQTT服务器的心跳包。 - PINGRESP:MQTT服务器响应PINGREQ报文报文。 - DISCONNECT:MQTT客户端断开与MQTT服务器的连接时发送的报文

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值