如何查看Eclipse Mosquitto Broker当前使用的MQTT协议版本?
如何查询Mosquitto Broker支持及实际使用的MQTT版本
方法1:查询Mosquitto本身的协议支持能力
直接在Mosquitto部署的服务器上执行以下命令,即可查询当前broker支持的所有MQTT协议版本:mosquitto -v
输出内容中如果包含mqtt version 5字样,说明当前Mosquitto本身已经支持MQTT 5.0。
方法2:通过客户端调试信息查看实际协商的版本
使用Mosquitto官方自带的订阅、发布工具测试时,添加-d(调试模式)参数即可看到连接协商的协议版本,示例命令如下:mosquitto_sub -t test/topic -d
调试输出的CONNECT请求相关日志中,会明确标注使用的协议版本,若显示Protocol mqtt5则当前连接使用的是MQTT 5.0。
如果需要强制使用MQTT 5.0,可在客户端连接时添加-V 5参数指定协议版本。
方法3:查看Mosquitto运行日志
如果Mosquitto开启了连接日志记录,所有客户端连接成功的日志中会标注使用的协议版本:
- 日志中出现
p5标识 = 连接使用MQTT 5.0 - 日志中出现
p4标识 = 连接使用MQTT 3.1.1 - 日志中出现
p3标识 = 连接使用MQTT 3.1
注意:Mosquitto默认同时兼容多个MQTT版本,实际连接使用的版本由客户端和broker协商决定,要稳定使用MQTT 5.0需在客户端代码/工具中明确指定使用5.0版本协议。
内容的提问来源于stack exchange,提问作者Baran Gürsoy
相关产品推荐
相关产品推荐

