Site Loader

LOCATION

510 5th Ave, New York, NY 10036, USA

MQTT (Message Queuing Telemetry Transport) is Client/Server messaging transport protocol. “It is lightweight, open and simple.” These characteristics are ideal for Machine to Machine (M2M) communication and Internet of Things (IoT) technology where the network bandwidth reduced to be minimal as possible. It uses the publish/subscribe message pattern. In which the client sends a message in a particular topic (the publisher) to other clients, the other clients receive the messages (the subscribers) by subscribing to the same topic. The link between them is managed by the broker (a third component). The broker filter all incoming messages, then distribute them rightly to subscribers.
MQTT aspects:
MQTT separate the publisher and subscriber from each other. So to publish or receive messages the client only need the hostname/IP and port of the broker.
MQTT decouples by time. Means publisher and subscriber do not need to be connected at the same time. The broker can store messages for clients that are not online.
MQTT works asynchronously. Tasks are not blocked while waiting receives a message or publishing a message.
MQTT uses topic-based filtering of messages. Any message has a topic where the broker can take advantage of to decide if the message received a subscribing client or not. In order to meet the challenges of a pub/sub system, MQTT uses different levels of quality of service (QoS). It is an arrangement between publisher and subscriber that describes a particular message delivery guarantee.
MQTT have three levels of QoS:
At most once (0)
At least once (1)
Exactly once (2).
When the client is offline, the messages of QoS 1 and 2 will be stored in persistent session until the client is comeback available again.

Post Author: admin