Accelerating the
Industrial Internet of Things

IoT ONE Index: Top 5 IoT Security Vendors to Watch

Published on 04/26/2016 | IoT Index

183 1

Tin Phan

Accelerating the Adoption of Industrial Internet of Things.



The term Internet of Things (IoT) is used to describe the practice of connecting devices through the use of the Internet. It's made of events and signals of many different kinds and therefore require a standardized mode of communication.

In a report published by IBM on the future of Internet of Things, the number of connected devices is forecasted to surpass 30 billion in 2020, up from 2.5 billion in 2009 and 10 billion today.

The connected devices need a protocol using which they could communicate only when it is required. Devices with constrained resources should be able to communicate with various other heterogeneous devices.

A perfect protocol for this use case is MQTT (Message Queue Telemetry Transport).

1. MQTT has a publish-subscribe architecture

The MQTT messages are delivered asynchronously through a publish-subscribe architecture.

The MQTT protocol works by exchanging a series of MQTT control packets in a defined way. Each control packet has a specific purpose and every bit in the packet is carefully crafted to reduce the data transmitted over the network.

A MQTT topology has a MQTT server and a MQTT client. MQTT client and server communicate through different control packets.

2. Ideal for constrained networks

MQTT has a low bandwidth, a high latency and fragile connections.

MQTT control packet headers are kept as small as possible. Each MQTT control packet consists of three parts, a fixed header, variable header and payload.

Not all the control packet have the variable headers and payload. A variable header contains the packet identifier if used by the control packet. A payload up to 256 MB could be attached in the packets.

Having a small header overhead makes this protocol appropriate for IoT by lowering the amount of data transmitted over constrained networks.

3. Quality of Service (QoS) for MQTT

Quality of service (QoS) levels determine how each MQTT message is delivered and must be specified for every message sent through MQTT.

It is important to choose the proper QoS value for every message, because this value determines how the client and the server communicate to deliver the message.

4. MQTT client abnormal disconnect notification

When a MQTT client connects to the MQTT server it can define a topic and a message that needs to be published automatically on that topic when it unexpectedly disconnects. This is also called the “Last will and testament” (LWT). When the client unexpectedly disconnects, the keep alive timer at the server side detects that the client has not sent any message.

The LWT feature can be useful in some scenarios. For example for a remote MQTT client, this feature can be used to detect when the IoT devices goes out of the network. The LWT feature can be used to create notifications for an application that is monitoring the client activity.

5. MQTT clients are very simple to implement

MQTT is the protocol build for M2M and IoT which can help provide revolutionary new performance and opens up new areas for messaging use cases for billions of things connected through the Internet

Feature New Record