MQTT协议学习笔记

本文详细介绍了MQTT协议,包括其概念、基于TCP/IP的应用层协议特性、C-S架构的消息发布/订阅模式,以及QoS级别。此外,还深入解析了MQTT的通信流程,涉及报文类型、控制报文结构和Wireshark抓包分析。
摘要由CSDN通过智能技术生成

MQTT协议

MQTT协议的概念

MQTT协议,全称Message Queue Telemetry Transport,即消息队列遥测传输协议,是一种基于发布/订阅的轻量级通讯协议,适用于条件较差的网络环境,如:网络延迟高、带宽低、通信讯号不稳定等情况。

MQTT协议的特点

  • 构建于TCP/IP协议之上
    TCP/IP参考模型可分为四层:应用层、传输层、网络层、链路层。TCP、UDP协议均属于传输层,MQTT运行与TCP之上,属于应用层协议,只要支持TCP/IP协议栈的地方都可应用MQTT。

  • 基于C-S架构的消息发布/订阅
    提供一对多的消息发布,作为客户端之间的中间介质,解除应用程序的耦合。

  • 对负载内容屏蔽的消息传输

  • 使用TCP连接进行数据推送

  • 三种消息发布QoS

    • QoS 0:至多一次。服务器只推送1次,至于客户端是否收到,收到的消息是否正确,数据是否有所丢失,都不管。
    • QoS 1:至少一次。客户端收到服务器的推送后要回复一个PUBACK告诉服务器已收到,否则服务器会认为Client未收到推送,隔一段时间后重新发送,直到对方回复PUBACK。
    • QoS 2:只发一次。保证数据包到达目的地,且不会出现重复。服务器发送数据包,客户端接收后回复PUBREC(收到发布消息)报文,服务器存储PUBREC中的报文标识符ÿ
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值