MQTT: A Conceptual Deep-Dive
ably.io
MQTT: A Conceptual Deep-Dive
1–10 of 61 posts
Re: MQTT: A Conceptual Deep-Dive
#2Anyone care to expound on this part:
>>> and without any way to distinguish a deliberate disconnection from a transient network issue
Re: MQTT: A Conceptual Deep-Dive
#3Hi, interesting article. Anyone care to expound on this part: >>> and without any way to distinguish a deliberate disconnection from a transient network issue
Re: MQTT: A Conceptual Deep-Dive
#4Hi, interesting article. Anyone care to expound on this part: >>> and without any way to distinguish a deliberate disconnection from a transient network issue
Because MQTT is optimized for low-bandwidth environments, it only has a limited number of error responses. Therefore, when a connection has been established, there is no way to distinguish a network issue from a forced disconnect.
Re: MQTT: A Conceptual Deep-Dive
#5Exactly once message delivery cannot be guaranteed from a theoretical point of view (if it does exist then the Two Generals Problem can be solved, which has been proven to not have a solution). I don't know how MQTT can get around that, especially in an environment where transient network issues are expected.
Re: MQTT: A Conceptual Deep-Dive
#6"Designed for at most once, at least once and exactly once message delivery" Exactly once message delivery cannot be guaranteed from a theoretical point of view (if it does exist then the Two Generals Problem can be solved, which has been proven to not have a solution). I don't know how MQTT can get around that, especially in an environment where transient network issues are expected.
Re: MQTT: A Conceptual Deep-Dive
#7Re: MQTT: A Conceptual Deep-Dive
#8"Designed for at most once, at least once and exactly once message delivery" Exactly once message delivery cannot be guaranteed from a theoretical point of view (if it does exist then the Two Generals Problem can be solved, which has been proven to not have a solution). I don't know how MQTT can get around that, especially in an environment where transient network issues are expected.
What it doesn't really guarantee is the order, which requires even more clever programming and more network exchanges.
Re: MQTT: A Conceptual Deep-Dive
#9Earlier quoted context omitted.
Because MQTT is optimized for low-bandwidth environments, it only has a limited number of error responses. Therefore, when a connection has been established, there is no way to distinguish a network issue from a forced disconnect.
that is not strictly true for the statement in the article. Deliberate disconnects can be identified by implementing tombstoning, in which a connected node sends an epitaph message to the channel prior to disconnecting.
Re: MQTT: A Conceptual Deep-Dive
#10"Designed for at most once, at least once and exactly once message delivery" Exactly once message delivery cannot be guaranteed from a theoretical point of view (if it does exist then the Two Generals Problem can be solved, which has been proven to not have a solution). I don't know how MQTT can get around that, especially in an environment where transient network issues are expected.