7 Protocol Pioneers: Ethernet and MQTT
More
Depth: Practitioner
Progress saves as you read. Mark sections complete as you go; your progress appears in the sidebar.
7.1 Start With the Decision
This section: Start With the Decision — Ethernet let many local machines share a link.
Ethernet let many local machines share a link. MQTT later gave small devices a lean way to send events.
7.2 Route Overview
This section: Route Overview — This is part 1 of 2.
This is part 1 of 2. Continue with Protocol Pioneers: IoT and 6LoWPAN.
7.3 Part Objectives
This section: Part Objectives
- Compare Ethernet sharing with MQTT publish and subscribe.
- Trace how Postel’s open rules let unlike networks work together.
7.4 Start With the Situation
This section: Start With the Situation — The Internet can move packets and survive loops, but a local network still needs a practical way to connect many machines.
The Internet can move packets and survive loops, but a local network still needs a practical way to connect many machines. The next pioneers turn shared wires, open standards, lightweight messaging, and small-device addressing into the foundations of modern IoT.
7.5 Overview
This section: Overview — This route follows Ethernet and standards work into MQTT, the Internet of Things, and 6LoWPAN, then connects the contributions as one interoperable system.
This route follows Ethernet and standards work into MQTT, the Internet of Things, and 6LoWPAN, then connects the contributions as one interoperable system.
This is part 2 of 2. Review Protocol Pioneers: Packets, TCP/IP, and the Web when you need the first route.
7.6 Learning Objectives
This section: Learning Objectives
By the end of this chapter, you will be able to:
- explain how Ethernet made local packet networks practical
- connect standards stewardship and MQTT to interoperable systems
- relate the IoT name and 6LoWPAN to constrained-device networking
7.7 Chapter Roadmap
This section: Chapter Roadmap
- Start With the Situation
- Overview
- Bob Metcalfe (1946-): Ethernet Inventor
- Putting Numbers to It
- What Metcalfe Made Possible
- Checkpoint: Local Networks and Scale
- Jon Postel (1943-1998): “God of the Internet”
- What Postel Made Possible
- Andy Stanford-Clark: MQTT Co-creator
- What Stanford-Clark Made Possible
- Checkpoint: IoT Constraints
7.8 Bob Metcalfe (1946-): Ethernet Inventor
This section: Bob Metcalfe (1946-): Ethernet Inventor — Inspect Figure 7.1 and ask how a shared Ethernet medium changes the cabling problem for twenty devices.
Inspect Figure 7.1 and ask how a shared Ethernet medium changes the cabling problem for twenty devices.
Read Figure 7.1 from many direct links to one shared cable. A full set of twenty peers needs cables. The shared medium needs one link per device, or twenty links. Sharing adds contention, so each station must listen before it sends. On a clash, it stops, waits for a random time, and tries again. The last panel gives a rule of thumb for network value, not a count of physical links. Ethernet cut wire needs by controlling access to one medium, while value could grow as more peers became reachable.
7.8.1 The Problem He Solved
In the early 1970s, Xerox PARC (Palo Alto Research Center) had dozens of computers and the world’s first laser printer. Researchers wanted to share the printer, but there was no good way to network the machines. Point-to-point cables didn’t scale — connecting devices requires cables. For 20 devices, that’s 190 cables!
7.8.2 His Breakthrough: Ethernet
In 1973, Bob Metcalfe invented Ethernet — a way for multiple computers to share a single coaxial cable using a cleverly designed media access control protocol:
Key Innovations:
1. Shared Medium All devices connect to the same cable (like houses on a street sharing a postal system). This requires only connections instead of .
2. CSMA/CD (Carrier Sense Multiple Access with Collision Detection)
- Carrier Sense: Before transmitting, listen to the cable. If someone else is talking, wait.
- Collision Detection: If two devices start transmitting simultaneously (collision), both detect it and stop.
- Exponential Backoff: After a collision, wait a random time before retrying. Each collision doubles the wait range.
3. 48-Bit MAC Addresses
Ethernet interfaces commonly use 48-bit MAC addresses (like 00:1A:2B:3C:4D:5E). Universally administered addresses are intended to be unique, but locally administered addresses can be assigned or randomized.
7.8.3 Metcalfe’s Law: The Network Effect
Perlman made redundant Ethernet survivable by blocking loops. Metcalfe’s story explains why Ethernet then became valuable at scale: each compatible node made the shared ecosystem more useful.
Metcalfe formulated a key principle of network value:
Translation: In Metcalfe’s simple model, potential pairwise connections grow roughly with the square of the number of users. Actual value depends on whether those connections are useful.
Example: A phone network with 10 people supports 45 possible calls (). Add one person (now 11), and you support 55 calls — a 22% increase in value from adding just one user (10% increase in users).
This explains why social networks grow explosively once they reach critical mass. It also explains why IoT platforms that achieve interoperability (allowing devices from many vendors to connect) are more valuable than proprietary ecosystems.
Let’s quantify Metcalfe’s Law () with concrete IoT ecosystem examples.
Hypothetical smart-home ecosystem pair counts:
Smaller hypothetical ecosystem:
- 50 compatible devices from 20 vendors
- Possible interactions: device pairs
Larger hypothetical ecosystem:
- 200 compatible devices from 80 vendors
- Possible interactions: device pairs
- Pair-count multiplier: as many possible pairs
Network effect acceleration:
Illustrative network-effect story - Ethernet vs. Token Ring:
- Competing LAN technologies gave buyers different choices in speed, cost, and vendor support
- As Ethernet adoption grew, vendors invested in compatible equipment
- A larger supplier ecosystem made Ethernet easier to buy and deploy
- Token Ring declined but legacy networks did not disappear overnight
The protocol with more nodes attracted more vendors, which attracted more users, which attracted more vendors - exponential feedback loop driven by Metcalfe’s Law.
Key IoT insight: Open, interoperable protocols tend to grow ecosystems faster by enlarging the set of useful connections. The model counts potential pairs, not measured economic value or a guaranteed adoption rate.
7.8.4 How to Use: The Impact
Metcalfe founded 3Com Corporation in 1979 to commercialize Ethernet. By the 1990s, Ethernet had become the dominant LAN technology, beating out Token Ring, ARCNET, and others. Today, Ethernet variants include:
- 10BASE-T (10 Mbps over twisted pair)
- 100BASE-TX (Fast Ethernet, 100 Mbps)
- 1000BASE-T (Gigabit Ethernet, 1 Gbps)
- 10GBASE-T (10 Gigabit Ethernet, 10 Gbps)
Metcalfe won the Turing Award (computing’s Nobel Prize) in 2022 for inventing Ethernet.
Ethernet connects nearly every wired IoT gateway and server:
- Industrial IoT: Factory machines use Industrial Ethernet variants (EtherCAT, PROFINET, Ethernet/IP) — all descendants of Metcalfe’s invention
- Building Automation: BACnet/IP and Modbus TCP run over Ethernet, connecting HVAC systems, lighting, and access control
- IoT Gateways: Raspberry Pi, ESP32 Ethernet modules, and industrial gateways use Ethernet to connect to the cloud
Metcalfe’s Law in IoT: When Matter becomes widely adopted, enabling devices from Apple, Google, Amazon, Samsung, and 200+ vendors to interoperate, the ecosystem value grows as . A user with 5 Matter devices from 1 vendor has 10 possible interactions (). With 10 devices from 5 vendors, they have 45 interactions — and the ability to mix devices from different vendors creates combinatorial value that proprietary systems can’t match.
Checkpoint: Local Networks and Scale
You now know:
- Perlman’s Spanning Tree Protocol lets Ethernet keep redundancy without broadcast loops.
- Metcalfe’s Ethernet made local sharing practical, then Metcalfe’s Law explained why larger interoperable networks become more valuable.
- This is the same economic reason Matter and other open IoT ecosystems can outgrow isolated proprietary islands.
7.9 Jon Postel (1943-1998): “God of the Internet”
This section: Jon Postel (1943-1998): “God of the Internet” — Inspect Figure 7.2 and look for how document review, shared identifiers, and implementable specifications reinforce one another.
Inspect Figure 7.2 and look for how document review, shared identifiers, and implementable specifications reinforce one another.
Read Figure 7.2 across Postel’s three roles. As RFC Editor, he helped turn ideas into reviewed rules that any builder could read. IANA gave out shared protocol numbers, ports, and address blocks. That work kept local choices from clashing across the Internet. The third column links those roles to the IP, TCP, SMTP, and FTP texts used by real systems. Dates and known ports add context. The lasting method is the set: rules define acts, a registry defines shared names, and systems expose both on the wire. Common protocols need sound records and care as well as good packet design.
7.9.1 The Problem He Solved
The Internet needed someone to:
- Document standards — write down how protocols work so everyone implements them the same way
- Manage addresses — assign IP addresses and domain names so no two organizations use the same numbers
- Resolve disputes — mediate when engineers disagreed on protocol design
No company or government controlled the Internet in the 1970s-80s. It was a research project funded by ARPA, built by academics and engineers who volunteered their time. Someone had to coordinate all this chaos.
7.9.2 His Role: Editor of RFCs and IANA Manager
RFC Editor (1969-1998) Jon Postel edited most of the early RFCs (Requests for Comments) — the documents that define Internet standards. He decided which proposals became official specifications and which were rejected. Over 30 years, he edited or authored hundreds of RFCs, including foundational specs like:
- RFC 791: Internet Protocol (IP)
- RFC 793: Transmission Control Protocol (TCP)
- RFC 821: Simple Mail Transfer Protocol (SMTP)
- RFC 959: File Transfer Protocol (FTP)
IANA Manager (1972-1998) Postel managed the Internet Assigned Numbers Authority (IANA) — the organization that assigns:
- IP address blocks to ISPs and organizations
- Protocol numbers (TCP = 6, UDP = 17, ICMP = 1)
- Port numbers (HTTP = 80, HTTPS = 443, MQTT = 1883)
He did this from his desk at USC (University of Southern California) with minimal staff. The Internet community trusted him to make fair decisions, and he did.
7.9.3 Postel’s Law: The Robustness Principle
Postel formulated the most important principle in protocol design:
“Be conservative in what you send, liberal in what you accept.”
Translation:
- Conservative sending: When you implement a protocol, strictly follow the spec. Don’t send malformed packets or ambiguous messages.
- Liberal receiving: When you receive data, tolerate small deviations from the spec. If the message is understandable despite minor errors, process it anyway.
Why this matters: Networks are messy. Different vendors implement protocols slightly differently. If every device rejected messages with minor formatting errors, the Internet would fragment into incompatible islands. Postel’s Law keeps the Internet unified despite vendor diversity.
7.9.5 How to Use: The Impact
Postel died suddenly in 1998 at age 55. The Internet Engineering Task Force (IETF) published RFC 2468 in his honor, titled “I Remember IANA”:
“Jon Postel was the Internet.”
Every protocol you use — IP, TCP, UDP, ICMP, DNS — was documented in RFCs that Postel edited. Every port number (:443, :1883, :8883) was assigned by Postel’s IANA. His influence is invisible but everywhere.
Postel’s robustness principle is still the guiding philosophy of protocol design — and explains why IoT devices can interoperate despite vendor differences:
- MQTT Implementations: Different MQTT brokers (Mosquitto, HiveMQ, AWS IoT Core) tolerate minor client implementation differences. A client that sends a slightly malformed
CONNECTpacket might still connect if the broker can infer the intent. - HTTP Parsers: Web servers accept requests with minor formatting errors (extra spaces, missing headers) because Postel’s Law encourages tolerance.
- JSON Parsers: IoT platforms accept JSON with trailing commas or unquoted keys, even though strict JSON forbids this, because being “liberal in what you accept” improves interoperability.
For IoT specifically: When you connect an ESP32 running Arduino MQTT client to AWS IoT Core, it works despite the client being a hobbyist implementation and AWS being an enterprise platform. That interoperability comes from both sides following Postel’s Law — AWS tolerates minor client deviations, and the Arduino library tries to be standards-compliant.
7.10 Andy Stanford-Clark: MQTT Co-creator
This section: Andy Stanford-Clark: MQTT Co-creator — Postel’s standards work explains how the Internet stays coordinated.
Postel’s standards work explains how the Internet stays coordinated. Stanford-Clark’s MQTT work shows what happens when those open-network foundations meet a severe IoT constraint: tiny messages over expensive links.
Inspect Figure 7.3 and ask how much transmission time the 1999 satellite link spent on an HTTP-sized header alone.
Follow Figure 7.3 from the oil-pipe link limit to MQTT’s design. A 200-byte HTTP header is 1600 bits. At 9600 bit/s, , or about 167 ms, before payload or reply delay. MQTT can start with a two-byte fixed header. Publish and subscribe split senders from receivers. QoS and saved sessions deal with loss and weak links. The final cases show how that small-link design spread into IoT. Small frames help, but delivery rules, session state, topic control, and measured full-path cost still decide fit.
7.10.1 The Problem He Solved
In 1999, Andy Stanford-Clark (IBM) and Arlen Nipper (Arcom) were building a system to monitor oil pipelines across remote deserts. They needed to transmit sensor data via expensive satellite links with:
- Very low bandwidth (9600 bps or less)
- High latency (500 ms to 2 seconds)
- Unreliable connections (frequent disconnections)
HTTP was too heavy — each HTTP request had 200+ bytes of headers. On a 9600 bps link, just the headers consumed about 167 ms. For thousands of sensors sending frequent updates, HTTP was unusable.
7.10.2 His Breakthrough: MQTT (Message Queuing Telemetry Transport)
Stanford-Clark and Nipper designed MQTT specifically for constrained networks:
Key Design Choices:
1. Minimal Protocol Overhead MQTT headers are just 2 bytes (vs. 200+ for HTTP). The fixed header contains:
- Message type (4 bits)
- QoS level (2 bits)
- Remaining length (variable-length encoding)
2. Publish/Subscribe Pattern Instead of request/response (like HTTP), MQTT uses pub/sub:
- Sensors publish to topics:
sensors/building-a/temperature - Applications subscribe to topics they care about
- A broker routes messages from publishers to subscribers
This decouples senders from receivers — sensors don’t need to know who’s listening.
3. Quality of Service (QoS) Levels MQTT offers three QoS levels:
- QoS 0 (At most once): Fire and forget, no acknowledgment
- QoS 1 (At least once): Acknowledged, may duplicate
- QoS 2 (Exactly once): The MQTT delivery protocol avoids loss and duplication on a negotiated QoS 2 hop, with higher overhead; broker subscription overlap and application retries still need separate duplicate handling. MQTT 5.0
Sensors can choose the right tradeoff between reliability and overhead.
4. Last Will and Testament If a client disconnects unexpectedly (e.g., network failure), the broker automatically publishes a “last will” message the client specified during connection. This enables other devices to detect failures.
7.10.3 The Tweeting House
Stanford-Clark famously connected his home to the Internet in the early 2000s (before “smart home” was a thing):
- His house tweeted when the washing machine finished
- His doorbell sent him SMS messages
- Temperature sensors posted to a web dashboard
This DIY smart home demonstrated MQTT’s versatility — it wasn’t just for industrial oil pipelines. Any system with sensors and actuators could use MQTT.
7.10.4 How to Use: The Impact
MQTT became the de facto standard for IoT messaging:
- AWS IoT Core: Uses MQTT as the primary protocol
- Azure IoT Hub: Supports MQTT alongside AMQP
- Google Cloud IoT: Supported MQTT (service deprecated 2023)
- Home Assistant: MQTT is the standard integration protocol
- Industrial IoT: MQTT is used in manufacturing, automotive, and logistics
In 2013, MQTT became an OASIS standard (not just an IBM project). In 2019, it became an ISO standard (ISO/IEC 20922).
MQTT is a widely used IoT messaging protocol supported by AWS IoT Core and Azure IoT Hub:
- Smart Homes: Zigbee2MQTT, Tasmota, ESPHome all use MQTT to integrate devices with Home Assistant
- Industrial IoT: Factory sensors publish data to MQTT brokers for real-time monitoring dashboards
- Connected Vehicles: Tesla uses MQTT for vehicle-to-cloud communication
- Agriculture: Soil moisture sensors in vineyards publish to MQTT topics for irrigation control
Stanford-Clark’s design choices directly address IoT constraints:
- 2-byte headers work on low-bandwidth LoRaWAN networks (50-250 kbps)
- QoS levels let battery-powered sensors use QoS 0 to save power, while critical alerts use QoS 1
- Last Will enables automatic detection of sensor failures (if a temperature sensor stops publishing, its Last Will alerts operators)
For ESP32 developers: When you use PubSubClient library to publish sensor data to sensors/room/temperature, you’re using the protocol Stanford-Clark designed for oil pipelines 25 years ago. It works just as well for your $5 hobby project as it did for million-dollar industrial deployments.
Checkpoint: IoT Constraints
You now know:
- MQTT came from a 1999 oil-pipeline problem with about 9600 bps bandwidth and high latency.
- Its 2-byte header directly answered HTTP’s 200+ byte overhead on constrained links.
- 6LoWPAN later solved a similar fit problem by compressing IPv6’s 40-byte header for 127-byte 802.15.4 frames.
7.11 Continue to the Next Part
This section: Continue to the Next Part — Carry this evidence into Protocol Pioneers: IoT and 6LoWPAN, which begins with Kevin Ashton (1968-): Coined “Internet of Things”.
Carry this evidence into Protocol Pioneers: IoT and 6LoWPAN, which begins with Kevin Ashton (1968-): Coined “Internet of Things”.
Find help
3 reviewed answers.
Where should I start in a module?
Open the module page from the sidebar to see its chapters in order. Use the module map to return to a topic you need.
Modules and pathsReviewed
What can I try when a project does not work?
Check the symptom, then work through the diagnostic steps. Keep the error message and the smallest example that reproduces it.
When you are stuckReviewed
How do interactive examples work?
Use the interactive guide to check how examples and simulations work before changing your project.
Interactive examples guideReviewed
