In-depth analysis of the seven major communication protocols of IOT

In-depth analysis of the seven major communication protocols of IOT

In the Internet of Things protocol, it is generally divided into two categories, one is the transmission protocol and the other is the communication protocol. The transmission protocol is generally responsible for the networking and communication between devices in the subnet; the communication protocol is mainly a device communication protocol running on the traditional Internet TCP/IP protocol, responsible for the data exchange and communication of devices through the Internet. So what are the communication protocols of the Internet of Things?

[[277920]]

1. REST/HTTP (loosely coupled service calls)

REST, or representational state transfer, is a communication style developed based on the HTTP protocol.

Scope of application: REST/HTTP is mainly used to simplify the system architecture in the Internet, quickly realize the loose coupling of the interaction between the client and the server, and reduce the interaction delay between the client and the server. Therefore, it is suitable for the application level of the Internet of Things. Through REST, resources in the Internet of Things can be opened to realize the service call by other applications.

Features:

  • REST refers to a set of architectural constraints and principles. An application or design that meets these constraints and principles is RESTful.
  • The interaction between the client and server is stateless between requests.
  • On the server side, application state and functionality can be divided into various resources, which are exposed to the client, and each resource is given a unique address using a URI. All resources share a unified interface to transfer state between the client and the server.
  • Standard HTTP methods are used, such as: GET, PUT, POST, and DELETE.

2. CoAP Protocol

CoAP (Constrained Application Protocol) is a constrained application protocol used in wireless sensor networks.

Scope of application: CoAP is a RESTful API that simplifies the HTTP protocol. CoAP is an application layer protocol in the 6LowPAN protocol stack. It is suitable for IP networks with limited resource communications.

3. MQTT protocol (low bandwidth)

MQTT (Message Queuing Telemetry Transport), an instant messaging protocol developed by IBM, is a communication protocol that is more suitable for IoT scenarios. The MQTT protocol adopts a publish/subscribe model. All IoT terminals are connected to the cloud through TCP. The cloud manages the communication content of each device through topics and is responsible for forwarding messages between devices.

Scope of application: Provide data transmission and monitoring of remote devices based on cloud platforms under low-bandwidth and unreliable networks.

4. DDS protocol (high reliability, real-time)

DDS (Data Distribution Service for Real-Time Systems) is a data distribution service for real-time systems.

Scope of application: Distributed high reliability, real-time transmission equipment data communication. Currently, DDS has been widely used in defense, civil aviation, industrial control and other fields.

5. AMQP Protocol (Interoperability)

AMQP (Advanced Message Queuing Protocol) is an advanced message queue protocol used for data exchange in business systems such as PLM, ERP, MES, etc.

Scope of application: It was first used in transaction messaging between financial systems. In IoT applications, it is mainly used for communication and analysis between mobile handheld devices and back-end data centers.

6. XMPP protocol (instant messaging)

XMPP (Extensible Messaging and Presence Protocol) is an extensible messaging and presentation protocol, an open source network instant messaging protocol produced by an organization.

Scope of application: Instant messaging applications can also be used in network management, games, remote system monitoring, etc.

7. JMS

JMS (Java Message Service) is a well-known message queue protocol in the JAVA platform.

The Java Message Service (JMS) API is a message-oriented middleware (MOM) API in the Java platform. It is used to send messages between two applications or in a distributed system for asynchronous communication. The Java Message Service (JMS) is an API that has nothing to do with a specific platform. Most MOM providers support JMS.

Focus of protocol application

Taking smart home as an example, the smart lighting control in the smart home can use the XMPP protocol to control the switching of lights; the power supply of the smart home and the monitoring of the engine group of the power plant can use the DDS protocol; when electricity is transmitted to thousands of households, the inspection and maintenance of power lines can use the MQTT protocol; the power consumption of all electrical appliances in the home can be transmitted to the cloud or home gateway for analysis using the AMQP protocol; finally, if users want to publish their own energy consumption query services on the Internet, they can use REST/HTTP to open API services.

<<:  One article explains what is VLAN, Layer 3 switch, gateway, DNS, subnet mask, MAC address

>>:  What is the difference between FTP and SFTP?

Blog    

Recommend

Huawei invites you to use your imagination to guess

[51CTO.com original article] Are you tired of wor...

5G is coming soon. What preparations have the major equipment operators made?

With major telecom operators around the world exp...

5GRedCap: The role of RedCap in 5G evolution

3GPP Release (Rel) 17, due in mid-2022, introduce...

New infrastructure defines the new connotation of data center

At this year's National People's Congress...

Verizon and Honda collaborate on 5G and edge computing to make driving safer

According to foreign media reports, Honda and tel...

...

China 5G: I have 1G more than 4G, why do so many people still dislike me?

Introduction After the rapid development of 1G, 2...

Education takes off with 5G smart technology

Education is the foundation of a country, and 5G ...

Five-minute K8S practice - Istio gateway

In the previous issue of k8s-Service Mesh Practic...