How does an IoT protocol suite differ from the ordinary TCP/IP stack, layer by layer?
Constrained stacks reduce overhead with choices such as CoAP over UDP/DTLS and IPv6 over 6LoWPAN/802.15.4; MQTT usually uses TCP/TLS. The layers adapt to the message and energy budget.
* Protocol choices follow the endpoint budget. MQTT normally uses TCP; 6LoWPAN adapts IPv6 to a constrained link. *
There are really three stacks in play, and the useful insight is that they form a gradient rather than a binary:
| Layer | IT systems (the Internet) | IoT backhaul | IoT constrained network |
|---|---|---|---|
| Application | HTTP, FTP, SMTP | CoAP, MQTT, AMQP, XMPP | CoAP, MQTT, AMQP, XMPP |
| Transport / security | TCP or UDP; TLS with TCP | TCP/TLS for MQTT; UDP/DTLS for CoAP | UDP/DTLS for CoAP; TCP/TLS where feasible |
| Network / adaptation | IPv4, IPv6 | IPv4, IPv6 | IPv6 over 6LoWPAN |
| Link | 802.3 Ethernet, 802.11 WLAN | 802.3 Ethernet, 802.11 WLAN | IEEE 802.15.4 |
| Typical message size | 1000s of bytes | 100s of bytes | 10s of bytes |
Reading it left to right, the backhaul — the stretch from gateway to cloud — can keep ordinary IP and Ethernet/WiFi while choosing application and transport protocols to fit the workload. The constrained endpoint may additionally use 802.15.4 with 6LoWPAN header compression and fragmentation. 6LoWPAN adapts IPv6; it does not replace it. The byte counts are illustrative payload scales, not protocol limits.
The bottom row explains all the rest. When a message is a few dozen bytes, an HTTP header alone would dwarf the payload, and a TCP handshake would cost more than the data. So:
- CoAP is essentially "REST in a handful of bytes" — the same request/response and resource ideas as HTTP, in a compact binary encoding over UDP; MQTT takes the other route, a publish/subscribe broker model with a tiny fixed header.
- DTLS is TLS adapted to run over an unreliable, connectionless transport.
- 6LoWPAN ("IPv6 over Low-power Wireless Personal Area Networks") is an adaptation layer that compresses IPv6 headers and fragments packets so IPv6 fits inside 802.15.4's very small frames.
- IEEE 802.15.4 is the low-rate, low-power radio standard underneath — the link layer that ZigBee and Thread are built on.
Tip: remember the stack by its budget, not its names. Thousands of bytes → hundreds → tens, and at each step something gets thrown overboard.
Go deeper:
Wikipedia — Constrained Application Protocol — CoAP in detail: how it maps onto HTTP for web integration, and its default binding to UDP with optional DTLS.
Wikipedia — MQTT — the other application-layer route: publish/subscribe through a broker, with control messages as small as two bytes.
Wikipedia — 6LoWPAN — the adaptation layer in mechanism: compressing a 40-byte IPv6 header down to 2, and fragmenting to fit 127-octet frames.