0
点赞
收藏
分享

微信扫一扫

CONNECT报文详情(报文内容都是HEX形式)

SDKB英文 2022-04-16 阅读 103

 例程为匿名登录的报文,只向服务器发送客户端ID,不发送username和password

第1位固定报头        10

第2-5位 剩余字节长度 ??

(剩余字节长度=可变报头+负载)最多4字节,每个字节最高位为标志位。

 例如:剩余字节长度为1000

        1000/128=7余104;

        104的二进制为0110 1000

        第一位置1为1110 1000变为16进制为E8

        所以报文为E8 07

 例如:剩余字节长度为20000

        20000/128=156余32;

        32的二进制为0010 0000

        第一位,置1为1010 0000变为16进制为A0

        156/128=1余28;

        28的二进制为0001 1100

        第二位,置1为1001 1100变为16进制为9C

        第三位为1变为16进制为01

        所以报文为A0 9C 01

第6-12位可变报头

        00 04 4D 51 54 54 04(默认即可)

第13位连接标志

 0000 0010变为16进制为02

因为是匿名登录所以前两位为0

第14-15位保活时间

按30s设置为:00 1E

第16-N位客户端ID

设客户端ID: ed1c1a90afb744f18a4f711825a9061e

共33位准换为两位16进制数为00 21

客户端ID转换为16进制为20 65 64 31 63 31 61 39 30 61 66 62 37 34 34 66 31 38 61 34 66 37 31 31 38 32 35 61 39 30 36 31 65

CONNECT报文为:

10 ?? 00 04 4D 51 54 54 04 02 00 1E 00 21 20 65 64 31 63 31 61 39 30 61 66 62 37 34 34 66 31 38 61 34 66 37 31 31 38 32 35 61 39 30 36 31 65

??之后共有45位,计算后为2D

CONNECT报文终版

10 2D 00 04 4D 51 54 54 04 02 00 1E 00 21 20 65 64 31 63 31 61 39 30 61 66 62 37 34 34 66 31 38 61 34 66 37 31 31 38 32 35 61 39 30 36 31 65

举报

相关推荐

0 条评论