MQTT (Message Queue Telemetry Transport) is a Client Server publish/subscribe messaging transport protocol. It is simple, and very easy to implement. Whenever a message is published it gets broadcast to everyone that is subscribed to the topic.
We have this protocol implemented in our IoT sensing devices, making easier the data collecting and publishing of many different values and metrics.
The protocol runs over TCP/IP, or over other network protocols that provide ordered, lossless, bi-directional connections. Its main features include:
- Use of the publish/subscribe message pattern which provides one-to-many message distribution in an independent way of the application.
- A seamless messaging transport with small overhead to optimize and reduce network traffic.
- This protocol defines three qualities of service for message delivery:
- “At most once”, it’s just as reliable as TCP but message loss can happen. This level could be used, for example, with environment sensors where it does not matter if an individual reading is lost as the next one will be published soon after.
- “At least once”, where messages are assured to arrive but duplicates can occur.
- “Exactly once”, where message are assured to arrive exactly once. This level could be used, for example, with billing systems where duplicate or lost messages could lead to incorrect charges being applied.
- A mechanism to notify abnormal disconnections.
MQTT protocol is especially well suited for IoT communications where small bandwidth is mostly required. TST implements natively in the IoT devices the MQTT protocol, publishing the data on a MQTT broker which is basically a data translator and data server.
- More about MQTT: www.mqtt.org