Review of Popular IoT Communication Protocols

How do IoT devices communicate with each other?
A communication protocol is a set of rules that enables secure data exchange between devices and/or data centers and other storage and processing units. 

Every IoT communication protocol has distinct characteristics that make it suitable for one project and useless for another. Protocols vary widely in scope, memory usage, power consumption, installation cost, etc. Some can only connect devices within one building, while others can communicate across physical barriers. For example, Bluetooth, a commonly used communication technology for smart home, fitness tech, and healthcare IoT, does not require much memory and power to operate, but its connection range is limited. 

As Bill Ray, senior research director at Gartner, puts it, "Not all protocols are suitable or suitable for all situations."

The IoT communication protocol supports the following connections:

device to device

device to gateway

Device to cloud or data center 

As IoT solutions are built as technology stacks and consist of multiple layers, as shown in the diagram below, communication protocols also operate at different layers. For example, the aforementioned Bluetooth works at the lowest layer, while the Data Distribution Service (DDS) protocol works at the highest level—the application layer. 

Wireless vs. Wired IoT Systems
Wired IoT devices are connected via low voltage or standard power cables. Each node has a unique ID and embedded software running on it. These devices are self-sufficient and do not depend on a central hub. They communicate via special protocols such as X10 and Insteon. 

Wired deployments are solid, but, according to Sandra Wendelken, senior research analyst at IDC, "So, wireless connectivity has been the driver of the surge in IoT deployments." 

Unlike wireless cyber-physical systems, wired IoT solutions do not allow adding more devices to the network on the fly, and their configuration can be a complex task. On the other hand, wireless solutions do not always provide real-time access to data, so one needs to consider whether a near-real-time mode is suitable for their project goals.

Benefits of wireless IoT communication protocols:

Scalability: Standard protocols support adding new devices with minimal configuration adjustments

Interoperability: IoT communication protocols can be programmed to work with different hardware such as chips and gateways, and they support devices from different vendors 

Reliability: Standard communication technology ensures secure data transmission and immunity to interference

IoT wireless connectivity technologies can be further subdivided into short-range and long-range solutions.  

Short-Range vs. Long-Range Wireless Communication Protocols
Short-range technologies operate over a limited range while reducing connection costs and power consumption. Such protocols offer an excellent option for smart home and commercial building automation. Some popular examples of this technology are the Bluetooth and Zigbee protocols.

Long-range IoT communication protocols cover greater distances. Most of them try to reduce the throughput to save power for long distance transmission. Popular applications for this technology are industrial site monitoring, agricultural systems, and smart cities. An example of a long-range protocol is LoRaWAN, which can span more than 10 kilometers if there are no physical obstacles.

Classification of IoT Communication Protocols
One of the most common approaches is to divide IoT communication protocols into two groups—data and network protocols. 

Data protocols operate at higher layers such as application and presentation 

Network protocols work from data link, transport, network and physical layers

IoT Communication Technology: Data Protocol
IoT Data Protocol connects low-power IoT devices and provides peer-to-peer communication with hardware directly in offline mode. Connection is via wired or cellular network.

Advanced Message Queuing Protocol (AMQP)
This is an open standard application layer protocol that enables message passing between systems independent of the platform used. It guarantees interoperability between clients from different vendors. AMQP ensures safe and reliable communication even when the network is poor or one of the systems is temporarily unavailable. It specifies a "forwarding address" to which messages can be routed in the event of a connection failure. 

The protocol is popular in server-based analytical environment settings, such as banking technology solutions. Otherwise, its applications are rather limited due to its high weight.

AMQP is integrated with Transport Layer Security (TLS), which ensures data is encrypted while in transit. Additionally, this IoT communication technology implements the Simple Authentication Security Layer (SASL) framework for a secure authentication handshake between client and server. 

advantage:

reliability 

Safety 

Supports different messaging models (publish-subscribe, store-and-forward, and classic messaging queues)

Scalability with minimal effort

shortcoming:

high memory requirements

Slow data transfer due to large message size 

Message Queue Telemetry Transport (MQTT)
This is a lightweight IoT communication protocol. It provides reliable connections and runs over TCP/IP networking. MQTT is suitable for bandwidth-constrained and high-latency wireless systems, such as mobile devices operating on unreliable networks. That's why Facebook uses it for online chat. Another application is remote monitoring, since MQTT is good at collecting small messages from devices with limited capacity in remote locations.

Unlike AMQP, the protocol is limited to a publish-subscribe architecture and has three main components - subscribers, publishers and brokers. Subscriber mechanisms generate data, publishers provide routing options, and brokers ensure security.

It does not provide device management structures or defined data representations. Therefore, these parameters are vendor-specific. 

advantage:

low power consumption 

low bandwidth usage 

Able to function properly on unreliable connections 

shortcoming:

Limited interoperability between devices from different vendors

Inherent security constraints (rely on short usernames and passwords for authentication)

poor scalability  

Limited choice of messaging patterns (publish-subscribe only)

The Constrained Application Protocol (CoAP)
Internet Engineering Task Force designed this IoT communication protocol to meet the needs of HTTP-based systems. Although the internet is free for everyone, it is too burdensome for many IoT applications. Therefore, the IoT community tends to abandon HTTP as unfeasible for IoT applications. CoAP can work with HTTP without causing eavesdropping because it allows short wakeup and long sleep states. It allows HTTP clients to exchange information under resource constraints. It is popular in building automation and smart energy applications.   

CoAP relies on User Datagram Protocol (UDP) packets for communication and messaging. This technology is used in machine-to-machine applications and allows devices with limited capacity (such as low availability) to join the IoT environment. It even works with microcontrollers with only 10 KiB of RAM. 

advantage:

Highly secure as it uses DTSL parameters as its default parameters

easy to deploy 

For devices with limited functionality 

shortcoming: 

Messages may arrive at their destination in the wrong order, which is a common problem with UDP

Difficulty communicating with devices behind Network Address Translation (NAT) because they can generate dynamic IP addresses

The Data Distribution Service (DDS)
Object Management Group (OMG) developed this IoT communication protocol for real-time systems. DDS provides reliable and scalable data exchange using a publish-subscribe model. Its scalability is due to the fact that DDS supports dynamic discovery of publishers and subscribers. It works well with the cloud and low-footprint devices, and provides interoperable data sharing that is software and hardware agnostic.  

The protocol is considered to be the first open international middleware IoT standard.

advantage:

Scalable 

High security and powerful QoS mechanism

Guaranteed low-latency communication 

Connect devices from different vendors 

shortcoming: 

Uses a lot of bandwidth (consumes twice as much traffic as MQTT)

Only interact with web services through the gateway

IoT Communication Technology: Network Protocol
The IoT network communication protocol connects medium and high power IoT devices over the network. This technology usually works over the Internet. 

There are various ways to connect IoT devices to a network and/or to each other. These include point-to-point, star, and mesh networks.

In a peer-to-peer deployment, two nodes are directly connected to form a tight network. No data on this network is transmitted over the public internet, so this connection is very secure.

In a star network, all nodes are connected to a gateway, which collects and transmits data for further processing and storage. This method doesn't consume much energy, since the device is allowed to rest between transmissions. However, if a node cannot reach the gateway, it cannot continue passing data. Another disadvantage is that gateways present a single point of failure. If you disconnect, the whole system will crash.      

Mesh networks are more reliable because other nodes can also receive data from their neighbors and pass it on further to the gateway. Thus, the functionality of a node is not limited by its ability to directly access the gateway. This type of network can cover greater distances than a star network and is self-healing, as it automatically recalculates data transfer routes when a node fails.  

You can use a variety of IoT communication protocols to create these types of networks.

Bluetooth and Bluetooth Low Energy (BLE)
Bluetooth is a wireless technology for exchanging data over short distances. It's common in personal devices like cell phones, media players, and tablets. This protocol is widely used in smart home configurations. IoT users appreciate the convenience of being able to control their connected devices from their smartphones. Although a gateway is required to transfer data to the internet, an ordinary smartphone can act as a gateway.

The protocol transfers small chunks of data in bursts and has problems with larger files.

Introduced in 2010, BLE is a version of Bluetooth optimized for short-range IoT connections. It consumes less power than the standard Bluetooth protocol. It's important to note that BLE devices cannot communicate with classic Bluetooth devices unless they have both protocols installed. 

This IoT communication protocol is quite secure as it encrypts the transmitted data at the application and network level. 

advantage:

low latency 

Simple hardware and low cost

Easily surf the web from your smartphone 

safe 

shortcoming:

Use of the crowded 2.4 GHz frequency 

The number of connected devices is limited

Zigbee
Zigbee is a powerful and scalable IoT communication protocol for collecting sensor data in home automation and industrial applications. It transmits small amounts of data over medium distances. Zigbee runs on a self-healing mesh topology, which makes it very reliable. New devices join the network after performing a "handshake" process, which takes only 30 milliseconds. 

The protocol requires a custom gateway to control IoT devices, which is expensive, especially compared to Bluetooth, which can run on smartphones. 

advantage:

Theoretically up to 65,000 devices 

Low power consumption (small devices can run for years on a single battery)

The communication distance is relatively far 

shortcoming:

Uses the common 2.4GHz frequency and is susceptible to interference 

Requires a custom gateway, which is expensive 

Z-Wave
This is a low-power wireless protocol commonly used in smart home solutions and business applications. Z-Wave offers the lowest latency among the networked IoT communication protocols presented in this article. It's worth noting that the technology works differently in each country, meaning users will have to buy a different device when changing locations. In theory, the protocol supports up to 232 IoT products. 

Z-Wave is a proprietary technology managed by the Z-Wave Alliance, which oversees certification. Therefore, every Z-Wave device is compatible with every Z-Wave controller, regardless of manufacturer. Additionally, all specifications were released to the public in 2016, making the standard available to developers. 

advantage:

Avoid the crowded 2.4 GHz frequency used by Wi-Fi, Bluetooth and Zigbee

low latency 

low power consumption 

reasonable coverage 

shortcoming: 

low data transfer rate

premium  

Wi
-Fi uses Internet Protocol (IP) to connect devices on a Local Area Network (LAN). It ensures reliable and secure communication between devices that are in close proximity. The protocol is relatively cheap and easy to deploy, making it suitable for indoor applications such as smart home systems. It works well with large files and can handle large amounts of data.

However, this IoT communication protocol is too power-hungry and has range limitations. 

advantage:

convenient and easy to install 

high data transfer rate

shortcoming:

high power consumption 

Difficult to expand

short distance communication 

Long Range Radio Wide Area Network (LoRaWAN)
This is a non-cellular wireless wide area network technology that connects devices over long distances for smart city and industrial applications that transmit telemetry data over long distances. An example is a smart street light connected to a LoRa gateway running on the LoRaWAN protocol. The technology can connect millions of IoT devices and is optimized for low power consumption. New devices can be hardcoded or arranged to connect wirelessly. 

LoRa gateway collects data from different sensors and transmits it to server or cloud via standard IP protocol. LoRaWAN provides two layers of security - one for the network layer and one for the application.   

This IoT communication protocol is not suitable for applications that require low latency or transfer large amounts of data.  

advantage:

scalability

cover great distances 

low power consumption

operating on an unlicensed frequency 

shortcoming:

low data transfer rate 

Customize LoRa Gateway

not suitable for real-time applications 

How to choose the right IoT communication technology for your project?
There is no single IoT communication protocol that will always save time and do every task well. Choosing the right technology is a big decision that needs to be taken with care. Each protocol has its advantages and a set of conditions. When looking for the best options for your next IoT project, consider the following criteria:

Equipment capacity. Some devices support specific communication protocols. Therefore, your hardware choice will limit the protocol options.

Respond synchronously to requests. If the system does not expect an immediate response to operations, you can use an asynchronous communication pattern and choose from a wide range of MQ protocols, such as MQTT.

connectivity. Depending on the connection type and device requirements, you need to consider factors such as data transfer rate, communication range, and latency. 

energy consumption. This isn't a problem if you can afford to plug your device into an electrical outlet (such as a stationary home automation product). However, if your device is running on battery and cannot be recharged, then a low power protocol would be a better choice. 

allocated budget. IoT communication protocols come with different price tags. For some of them, installation costs are so low that an ordinary smartphone can act as a gateway. For others, joining the respective alliance will cost you a substantial fee, after which you'll pay for each connected device - not to mention the cost of incorporating a custom gateway into your IoT deployment up. 

Guess you like

Origin blog.csdn.net/wouderw/article/details/128349310