U4 IOT Protocols
U4 IOT Protocols
Extensible Messaging and Presence Protocol (XMPP) is a messaging protocol that was designed originally for
chatting and message exchange applications. It was standardized by IETF more than a decade ago. Hence, it is well
known and has proven to be highly efficient over the internet. Recently, it has been reused for IoT applications as
well as a protocol for SDN. This reusing of the same standard is due to its use of XML which makes it easily
extensible.
XMPP supports both publish/ subscribe and request/ response architecture and it is up to the application
developer to choose which architecture to use. It is designed for near real-time applications and, thus, efficiently
supports low-latency small messages. It does not provide any quality of service guarantees and, hence, is not
practical for M2M communications. Moreover, XML messages create additional overhead due to lots of headers and
tag formats which increase the power consumption that is critical for IoT application. Hence, XMPP is rarely used in
IoT but has gained some interest for enhancing its architecture in order to support IoT applications.
The Advanced Message Queuing Protocol (AMQP)
The Advanced Message Queuing Protocol (AMQP) is another session layer protocol that was designed for financial
industry. It runs over TCP and provides a publish/ subscribe architecture which is similar to that of MQTT. The
difference is that the broker is divided into two main components: exchange and queues, as shown in Figure 6. The
exchange is responsible for receiving publisher messages and distributing them to queues based on pre-defined
roles and conditions. Queues basically represent the topics and subscribed by subscribers which will get the sensory
data whenever they are available in the queue.
Message Queue Telemetry Transport (MQTT)
Message Queue Telemetry Transport (MQTT) was introduced by IBM in 1999 and standardized by OASIS in 2013. It
is designed to provide embedded connectivity between applications and middleware’s on one side and networks
and communications on the other side. It follows a publish/subscribe architecture, as shown in Figure 5 , where the
system consists of three main components: publishers, subscribers, and a broker. From IoT point of view, publishers
are basically the lightweight sensors that connect to the broker to send their data and go back to sleep whenever
possible. Subscribers are applications that are interested in a certain topic, or sensory data, so they connect to
brokers to be informed whenever new data are received. The brokers classify sensory data in topics and send them
to subscribers interested in
the topics.
MODBUS PROTOCOL
The Modbus protocol was developed in 1979 by Modicon, incorporated, for industrial automation systems and Modicon
programmable controllers. It has since become an industry standard method for the transfer of discrete/ analog I/O
information and register data between industrial control and monitoring devices. Modbus is now a widely-accepted, open,
public-domain protocol that requires a license, but does not require royalty payment to its owner.
Modbus devices communicate using a master-slave (client-server) technique in which only one device (the master/client) can
initiate transactions (called queries). The other devices (slaves/servers) respond by supplying the requested data to the
master, or by taking the action requested in the query. A slave is any peripheral device (I/O transducer, valve, network drive,
or other measuring device) which processes information and sends its output to the master using Modbus. The I/O Modules
form slave/server devices, while a typical master device is a host computer running appropriate application software. Other
devices may function as both clients (masters) and servers (slaves).
Types of Modbus Communication Protocol
● Modbus serial protocol (the original version) is a master/slave protocol, e.g. one master that controls
the Modbus data transactions with multiple slaves that respond to the master’s requests to read from or
write data to the slaves. Network architectures are shown Figures 1.
● Modbus TCP, also known as Modbus TCP/IP, uses a client/server architecture. Network architectures
are shown Figures 2. (below) In a standard Modbus serial network, there is only one master and as
many as 247 slaves, each with a unique slave address. And there are two types of serial Modbus,
Modbus RTU and ASCII.