当使用Qos为1的MQTT时,不需要从订阅者向代理发送PUBACK数据包?

当使用Qos为1的MQTT时,不需要从订阅者向代理发送PUBACK数据包?,mqtt,broker,Mqtt,Broker,我一直在试图找出QoS 1的流程,但这很难 据我所知,当发布者发送一些带有QoS1的数据包时,它必须等待PUB ACK数据包 我想当一个代理收到一个PUB包时,它需要将它发送给所有订户。 然后,经纪人也成了出版商 所以代理将这个PUB包发送给所有订阅者 代理还等待来自所有订阅者的发布确认数据包。 当代理收到所有PUB ACK数据包时,将PUB ACK数据包发送给原始publisherclient 我说得对吗? 发布者和代理之间有一个流描述,但代理和订阅者之间没有流描述QoS一次仅在一个客户端和代

我一直在试图找出QoS 1的流程,但这很难

据我所知,当发布者发送一些带有QoS1的数据包时,它必须等待PUB ACK数据包

我想当一个代理收到一个PUB包时,它需要将它发送给所有订户。 然后,经纪人也成了出版商

所以代理将这个PUB包发送给所有订阅者 代理还等待来自所有订阅者的发布确认数据包。 当代理收到所有PUB ACK数据包时,将PUB ACK数据包发送给原始publisherclient

我说得对吗?
发布者和代理之间有一个流描述,但代理和订阅者之间没有流描述

QoS一次仅在一个客户端和代理之间,没有端到端的发布者到订阅者传递通知

完全可以在QoS为1的情况下发布消息,但只有QoS为0的订阅者。您还可以有多个订阅者,每个订阅者都有不同的QoS订阅,一些在QoS 0,一些在QoS 1,最后一些在QoS 2


发布者和代理之间的QoS交换应在开始将该消息转发给订阅者之前完成。

QoS一次仅在一个客户端和代理之间,没有端到端的发布者到订阅者传递通知

完全可以在QoS为1的情况下发布消息,但只有QoS为0的订阅者。您还可以有多个订阅者,每个订阅者都有不同的QoS订阅,一些在QoS 0,一些在QoS 1,最后一些在QoS 2


发布者和代理之间的QoS交换应该在开始向订阅者传递消息之前完成。

为了加强hardillb的解释,代理在向原始发布者发送PUBACK之前不会等待其他订阅者发送PUBACK。
它可能取决于代理的实现,但它只是用PUBACK回复发布者,然后开始发布是的,它是一个发布者本身,它可以向订阅者订阅不同的QoS级别0、1或2。

只是为了加强hardillb的解释,代理在将PUBACK发送给原始发布服务器之前,不会等待其他订阅服务器发送PUBACK。
它可能取决于代理实现,但它只是用PUBACK回复发布者,然后开始发布是。它是一个发布者本身,它可以向订阅者订阅不同的QoS级别0、1或2。

协议消息ACKNOLEDGENT和进程确认之间存在误解。消息确认确认消息的传递,过程确认应作为设备的单独消息发送


即使是在单个客户和代理之间,我们始终建议客户在边缘设备完成其流程时实现自己的流程确认

协议消息确认和进程确认之间存在误解。消息确认确认消息的传递,过程确认应作为设备的单独消息发送


即使是在单个客户和代理之间,我们始终建议客户在边缘设备完成其流程时实现自己的流程确认

然后,当publisherclient接收到一个publish ack数据包时,这只意味着代理很好地接收到了一个publish数据包。此外,publisherclient并不关心代理是否做好了工作,因为pub ack数据包不是端到端的。然后,当publisherclient收到一个publish ack数据包时,这只意味着代理很好地收到了一个publish数据包。此外,publisherclient并不关心代理是否做好了工作,因为pub ack数据包不是端到端的。我做对了吗?