本文按照 Message Type 介绍:连接(CONNECT)、心跳(PINGREQ/PINGRESP)、确认(CONNACK)、断开连接(DISCONNECT)
一、CONNECT(连接)
当客户端向服务器建议一个TCP/IP端口连接,协议基本会话必须使用一个CONNECT flow建立。
下面是一个较为完整的CONNECT消息结构:
说明:
1、Fixed header/固定头部:
DUP,QoS和RETAIN标志不能被使用在CONNECT消息中(无效)。
Remaining Length是可变头(12字节)的长度和payload的长度。这可以是一个多字节的字段。
2、Variable header/可变头部(12字节)
byte1~byte9:
协议名称(MQIsdp)和协议版本(v3)都是固定的。
byte10:Connect Flags
一个字节表示,除了第1位是保留未使用,其它7位都具有不同含义。
业务上很重要,对消息总体流程影响很大,需要牢记。
bit[1]:
Cl