zhd1021 发表于 2019-10-9 15:10:49

请教关于MQTT协议中“报文标识符”的问题

最近想学习一下MQTT协议,顺便写一个MQTT的服务端
在阅读协议的时候,里面可变报头中有一个“报文标识符”的概念,翻译的协议中描述如下:

客户端每次发送一个新的 SUBSCRIBE,UNSUBSCRIBE 或者 PUBLISH(当 QoS>0 时)MQTT 控制报文时都必须分配一个当前未使用的非零报文标识符 。
服务端每次发送一个新的 PUBLISH(当 QoS>0)MQTT 控制报文时都必须分配一个当前未使用的非零报文标识符


这段的理解是不是这样,在服务端向客户端发送的报文中需要使用一个从未使用过的报文,如果报文被服务器确认,则释放这个标识符。报文标识符在协议中是2个字节标识,也就是服务端能同时发送的报文的并发量只能是65535个。

不知道我对服务端的并发上理解的对不对(不考虑实际应用会不会到这么大的并发,只是对协议的理解)。
页: [1]
查看完整版本: 请教关于MQTT协议中“报文标识符”的问题