Top Data Protocols for Internet of Things (IoT)
There are several different data protocols to choose from when it comes to connecting various devices to the Internet of Things. Few are new while few are old & legacy protocols. Depends of the various implementations and sensors, use of protocols differs.
While there is no single “winner” amongst them, each one has their own strength and weakness. It is important to adhere to open standards for maximum interoperability between devices and applications.
Below are the top Top Internet of Things (IoT) Data Protocols
Message Queuing Telemetry Transport (MQTT)
MQTT is a protocol that was specifically created for SCADA systems and their related networks. It uses a publish/subscribe mechanism to minimize the payload and overhead with application-specific, custom JSON or binary formats. MQTT is widely accepted in IT departments worldwide, with many open source examples available in just about any programming language. We recommends using MQTT when network bandwidth is at a premium, and always with a secure communication method such as TLS.
Modbus is an open serial communication protocol that has become a standard communications protocol in industry, and is now the most commonly available means of connecting industrial electronic devices. It is used widely by many manufacturers throughout many industries. Versions of the Modbus protocol exist for serial lines (Modbus RTU and Modbus ASCII) and for Ethernet (Modbus TCP).
OPC Unified Architecture (UA)
OPC UA is the result of a multi-year collaboration of industry leaders who aimed to create an open standard for exchanging information in a rich, object-oriented and secure way. This standard represents the answer to the fundamental need for mapping and exchanging real-life information in a platform-independent way, while maintaining compatibility with the OPC Classic specifications.
OPC UA is a robust, secure and scalable expansion of the highly successful basic COM/DCOM-based OPC standard communication protocol. It enables the interoperability of best-of-breed, real-time alarm management and historian systems. This allows for a standard model of plant floor integration with the enterprise. Any plant system that is currently using OPC communications can easily add OPC UA applications to their existing system, giving them the added value of Web services that allow for more enterprise connectivity.
SNMP stands for Simple Network Management Protocol, and is a simple protocol that allows devices to expose useful information to other devices. This information can be the CPU fan speed of a computer or the routing table of a router. Almost every network device answers to SNMP requests. SNMP gives Network Managers access to information from nearly every device connected to the network.
AMQP is a binary application layer protocol that was created to substantiate a vast number of messaging applications and communication designs. It provides flow-controlled, message-oriented communication with built-in options for message delivery guarantees, as well as authentication and/or encryption based on widely accepted Internet authentication and data security protocols such as Simple Authentication and Security Layer (SASL) and/or Transport Layer Security (TLS). AMQP is the primary transport layer protocol used by the Azure IoT Hub.
I have originally written this post @ IoT Sense Blog