Markdown
IoT Protocols - Markdown
IoT protocols are communication conventions for enabling data exchange between devices in Internet of Things environments. Centered around lightweight messaging protocols such as MQTT, CoAP, and AMQP, various protocols exist to meet different use cases and requirements, including XMPP, DDS, HTTP, and LwM2M. These protocols are designed to accommodate the characteristics of IoT devices, including bandwidth constraints, power consumption, latency, and reliability. They are widely utilized across diverse fields such as smart homes, industrial automation, smart cities, and healthcare.
IoT
protocol
MQTT
CoAP
AMQP
communication
M2M
smart devices
| code | slug | name | description | architecture | bestFor | fullName | headerSize | powerConsumption | qosLevels | transportProtocol |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 01 | mqtt | MQTT | Lightweight publish-subscribe messaging protocol | Broker-based (Pub/Sub) | ["unreliable networks","remote monitoring","smart homes","industrial automation"] | Message Queuing Telemetry Transport | 2 bytes | moderate | 3 | TCP |
| 02 | coap | CoAP | Lightweight web transfer protocol for constrained devices | Client-Server (RESTful) | ["battery-powered devices","constrained networks","smart agriculture","LPWAN"] | Constrained Application Protocol | 4 bytes | low | 2 | UDP |
| 03 | amqp | AMQP | Advanced message queuing protocol for enterprise | Broker-based (Multiple patterns) | ["enterprise integration","financial systems","healthcare","mission-critical applications"] | Advanced Message Queuing Protocol | variable (larger) | high | 3 | TCP |
| 04 | xmpp | XMPP | XML-based real-time communication protocol | Distributed (Client-Server) | ["instant messaging","presence detection","chat applications","device management"] | Extensible Messaging and Presence Protocol | variable (XML overhead) | moderate | 1 | TCP |
| 05 | dds | DDS | Middleware protocol for real-time data distribution | Brokerless (Pub/Sub) | ["industrial automation","robotics","defense systems","automotive","real-time systems"] | Data Distribution Service | variable | high | 22 | UDP/TCP |
| 06 | http-https | HTTP/HTTPS | Standard protocol for web communication | Client-Server (Request/Response) | ["web applications","device management portals","data visualization","RESTful APIs"] | HyperText Transfer Protocol / HTTP Secure | 800+ bytes | high | 1 | TCP |
| 07 | lwm2m | LwM2M | Lightweight M2M device management protocol | Client-Server | ["device management","firmware updates","smart metering","asset tracking"] | Lightweight M2M | 4+ bytes | low | 2 | UDP (over CoAP) |
| 08 | mqtt-sn | MQTT-SN | MQTT protocol for sensor networks | Broker-based (Pub/Sub) | ["sensor networks","non-IP networks","Zigbee","LoRaWAN","Bluetooth"] | MQTT for Sensor Networks | 2-5 bytes | low | 3 | UDP |
| 09 | opc-ua | OPC UA | M2M communication protocol for industrial automation | Client-Server | ["industrial automation","process control","manufacturing","Industry 4.0"] | OPC Unified Architecture | variable | moderate | 2 | TCP |
| 10 | websocket | WebSocket | Web protocol enabling full-duplex communication | Client-Server (Full-duplex) | ["real-time streaming","chat applications","live dashboards","bidirectional communication"] | WebSocket Protocol | 2-14 bytes | moderate | 1 | TCP |