MQTT Protocol for M2M & IoT applications-Introduction

MQTT protocol

Introduction of MQTT Protocol:

MQTT protocol is designed as a machine-to-machine (M2M) & IoT connectivity protocol.

MQTT stands for Message Queuing Telemetry Transport.

This protocol is thus light-weight that it is often supported by some of the littlest measure and monitoring devices, and it can transmit information over way reaching sometimes intermittent networks.

It is a publish/subscribe messaging transport protocol that’s optimized to connect physical world devices and events with enterprise servers and different customers.
This protocol is designed to overcome the challenges of connecting the rapidly increasing physical world of sensors, actuators, phones, and tablets with established code process technologies.

These principles additionally prove to make this protocol ideal for the rising M2M or IoT world of connected devices where information measure and battery power are at a premium.
• Fast transaction rates
• Consistent lower latency
• Extensive scaling within the range of co-occurring devices that may be connected
• Suitable for deployment in a DMZ (demilitarized zone)

The IBM Redbooks publication Building Real-time Mobile Solutions with MQ Telemetry Transport protocol and IBM Message Sight covers the theory and real-world scenarios for using this light weighted protocol along with IBM Message Sight for Internet Of Things and Mobile applications.

Key features:

  • Light-weight message queueing and transport protocol
  • Asynchronous communication model with messages (events)
  • Low overhead for low network bandwidth applications (2 bytes header)
  • Publish / Subscribe (PubSub) model
  • Decoupling {of data|of knowledge|of information} producer (publisher) and data client (subscriber) through topics (message queues)
  • Simple protocol, aimed at low quality, low power and low footprint implementations (e.g. WSN – Wireless Sensor Networks)
  • Runs on connection-oriented transport (TCP). To be used in conjunction TCP header compression (with 6LoWPAN )
  •  MQTT caters for (wireless) network disruptions

A little bit of history :

  • It was at first developed by IBM and Eurotech.
  • The previous protocol version 3.1 was made available under
  • In 2014, This protocol was adopted and published as an official standard by OASIS (published V3.1.1). Now such OASIS has become a new place for the development of MQTT.

Read also: MQTT and HTTP- Comparison between two IoT Protocols

MQTT Protocol Applications:

  1. MQTT used by Facebook Messenger

This has come slightly out of the blue.

MQTT is best for mobile messaging; the low bandwidth nature of the protocol and the small footprint help to minimize both battery use and network traffic. Just what you want to stay connected.

This protocol is specifically designed for applications like sending telemetry data to and from space probes, so it is designed to use bandwidth and batteries sparingly.

In Facebook Messanger, an MQTT connection and routing messages are maintained through chat pipeline. Messanger was able to often achieve phone-to-phone delivery in the hundreds of milliseconds, rather than multiple seconds.

You can read the full post- Building Facebook messenger

2. MQTT based android application.

This application is used to initiate/receive alerts on certain scenarios.

With the help of MQTT clients, the alerts are received in the mobile application, which then influences the received MQTT message and presents it to the user in desired formats.

The same message is delivered to other hardware devices which have subscribed to the same topic i.e. the same message can be received in the mobile application as well as in the hardware device.

Either of Mobile application or hardware device can influence the received data and present them to the client in the desired format.

3. Home Automation

Using MQTT protocol we can control home lighting.
MQTT has much more application, you can get more about this protocol  at

Read moreSmart Home | Home Automation Technology for your Home


Reference :, rapidvalue .