【译】MQTT 5 基础

95 阅读3分钟

说明 从本篇文章开始,我将翻译HIVEMQ网站对MQTT 5版本基础教程。
本篇内容中课程目录链接暂时为原文链接,在之后的翻译完成后,会逐一替换为翻译好的掘金文章链接。

原文:www.hivemq.com/mqtt-5/

你需要了解的所有关于MQTT最新版本(MQTT 5.0)的内容

MQTT 5 是MQTT有史以来,功能最多,最丰富的一次迭代版本。

我们写MQTT 5基础系列将让你快速了解MQTT v5的所有激动人心的新功能(即使你还没有阅读过整个MQTT规范文档)。这个系列文章会详细的帮助您理解MQTT v5的概念、新特性和其他重要信息——一次一篇文章。

MQTT 5 基础 - 第一部分
介绍MQTT 5协议
MQTT 5 基础 - 第二部分
对比MQTT 5 与 MQTT 3
MQTT 5 基础 - 第三部分
从MQTT 3.1.1升级到它的七个理由
MQTT 5 基础 - 第四部分
MQTT会话过期时间和消息过期时间
MQTT 5 基础 - 第五部分
MQTT 5提升了反馈机制和负向ACK机制
MQTT 5 基础 - 第六部分
什么是MQTT用户属性?
MQTT 5 基础 - 第七部分
MQTT分享订阅
MQTT 5 基础 - 第八部分
MQTT 消息负载体格式描述和内容类型
MQTT 5 基础 - 第九部分
MQTT 请求-响应 模式
MQTT 5 基础 - 第十部分
MQTT 主题别名
MQTT 5 基础 - 第十一部分
增强认证
MQTT 5 基础 - 第十二部分
MQTT数据流控制

非本篇文章翻译内容

本篇文章中出现了一个重要的术语 :负向ACK Negative ACKs,如果你之前已有所了解,接下来的内容可直接略过。

为什觉得这个词重要,第一:MQTT 5规范中没有出现过; 第二:他确实是一个技术用语。
为什么在这个系列中会出Negative ACK这个题目的文章呢?其实Negative ACK可以被认为是一种机制,比如MQTT 5提升了反馈机制和负向ACK机制这篇文章提到的UNSUBACK消息格式,之前的MQTT中是没有payload的,在MQTT 5里边增加了payload,它的内容就是结果码(Reason Code), 表示服务端通知客户端执行UNSUBACK的结果。

参考资料一

techgenix.com/nack-nak-ne…

NACK或者NAK是negative acknowledgment的缩写,它是一种短消息 或 信息。接收者通过网络发送它给发送者,以标识接收到的数据包是否正确。这条消息或者传输信息也可以标识传输的数据包是损坏的/不可读的还是带有错误的。使用到NACK的任何网络协议,在应对数据丢失,不可读或者有错误数据包场景时,大多数网络协议都具备增加日志或者结果码的功能,基于此种原因,实现了NACK的网络协议可以获得高效ACK的优势。

参考资料二

www.sciencedirect.com/topics/comp…

ACK(Acknowledgement) 或者 NACK(Negative Acknowledgement)是一种短消息,用于消息接收者发送给发送者,以表示接收者是否正确或者错误的收到了一个数据包。 来自: Mobile WiMAX, 2011