paho - can mqtt msg delivery order be guaranteed in simplified case? -


if there single broker, single publisher, single topic , clean session, in simplified case,

can msg delivery order on subscriber side guaranteed same send order on publisher side? affected qos?

section 4.6 mqtt 3.1.1 spec covers message ordering:

4.6 message ordering

a client must follow these rules when implementing protocol flows defined elsewhere in chapter:

  • when re-sends publish packets, must re-send them in order in original publish packets sent (this applies qos 1 , qos 2 messages) [mqtt-4.6.0-1]
  • it must send puback packets in order in corresponding publish packets received (qos 1 messages) [mqtt-4.6.0-2]
  • it must send pubrec packets in order in corresponding publish packets received (qos 2 messages) [mqtt-4.6.0-3] must send pubrel packets in order in corresponding pubrec packets received (qos 2 messages) [mqtt-4.6.0-4]

a server must default treat each topic "ordered topic". may provide administrative or other mechanism allow 1 or more topics treated "unordered topic" [mqtt-4.6.0-5].

when server processes message has been published ordered topic, must follow rules listed above when delivering messages each of subscribers. in addition must send publish packets consumers (for same topic , qos) in order received given client [mqtt-4.6.0-6].

having read conclude messages (unless broker set use unordered topics) sent in order, if high qos message not acknowledged may resent result in being redelivered out of sequence.


Comments

Popular posts from this blog

Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test (default-test) on project.Error occurred in starting fork -

windows - Debug iNetMgr.exe unhandle exception System.Management.Automation.CmdletInvocationException -

configurationsection - activeMq-5.13.3 setup configurations for wildfly 10.0.0 -