IoT Session Layer Protocols
IoT session layer protocol offers communication between two distinct points. These protocols allow the passing of data between devices that form a part of the IoT system. These protocols are also known as the messaging protocols or the data transmission protocols. These messaging protocols can work with the TCP or UDP and hence they are an ideal match for IoT since most IoT applications use TCP or UDP.
Given below are the most prominent session layer protocols in IoT:
IoT Session Layer Protocols
1. MQTT
MQTT stands for MQ telemetry transport. It is an easy and lightweight publish and subscribe system where one can publish and receive messages as a client. It is easy to establish communication between multiple devices.
This is a simple messaging protocol designed for constrained devices having a low bandwidth. This protocol is ideal for the applications of the internet of things. With the help of MQTT one can send a command to control an output. You can read data from sensors and publish it as a message.
MQTT has a few basic components that one needs to understand:
1. Publish/Subscribe: User devices can publish messages to other devices or user devices can subscribe to a particular topic to receive messages from other devices.
2. Messages – The pieces of information that you exchange between your devices. It could be a command or data.
3. Topics – Topics are the way one registers the interests for their incoming messages. Not all data coming from sensors is necessary. Topics specify where you want to publish the messages. Topics are represented with strings and are separated by ”/”. Slashes indicate the topic level.
Example: home/office/lamp.
4. Broker – MQTT brokers are responsible for receiving all the messages and then filtering them. It then sends the messages to the subscribed clients.
2. SMQTT
SMQTT stands for Secure Message Queue Telemetry Transport. It enhances the security of MQTT. It is an extension to the simple MQTT protocol. This uses encryption based on lightweight attributed encryption. The main advantage of this attribute-based encryption is that it makes use of the broadcast encryption function. In this function, we first encrypt the message and then transfer it to several other nodes. This is quite common in IoT applications.
The process of message transferring undergoes four main stages:
1. Setup – In this stage, the publishers and subscribers register themselves to the broker and then receive a security master key.
2. Encryption – The broker encrypts the data being published to it
Publish- The broker publishes the encrypted message to the subscriber.
3. Decryption – Finally the received message is decoded or decrypted by the subscribers with the help of the same master key.
Developers are free to select the generation of the key and encryption algorithms
3. CoAP
CoAP stands for constrained Application Protocol and it is a proposed standard for IoT devices since 2014. It was specifically made for constrained hardware.
The designs of this took inspiration from HTTP using UDP and IP. This is a one to one user communication protocol. It uses HTTP methods such as GET, POST, PUT and DELETE. It is lightweight and suits devices that consume low energy. CoAP is an open ITEF standard.
4. DDS
The DDS is a middleware protocol and API standard for data-centric connectivity from the Object Management Group(OMG). It integrates the components of a system together, providing low latency data connectivity, extreme reliability and scalable architecture that business and mission-critical Internet of Things applications use.
DDS is an IoT protocol for M2M or machine-to-machine communication. It allows data changes with the help of publish and subscribe methodology. DDS makes use of brokerless architecture unlike the MQTT and CoAP protocols. It uses multicasting to bring high quality in QoS applications.We can also deploy the DDS protocol from low footprint devices to cloud.
5. AMQP
AMQP stands for advanced message queuing protocol. It is an internet protocol for business management so end users feel a connection to the technology. AMQP is an open standard for publishing messages. The basic unit of data of this protocol is known as a “frame”, it is a secure, compact, symmetric, multiplexed, reliable binary transfer protocol to move messages between applications.
AMQP does not tie itself to any particular message source or target model or topology. It supports classic message brokers, modern hyper-scale messaging infrastructure and peer-to-peer exchange.
Summary
In this article we review the various IoT session layer protocols and we describe each of them in detail. We hope our information was easy to understand.