26  Protocol Overhead Analysis

Battery Life Calculations and Hands-On Labs

Key Concepts
  • Protocol Overhead: The bytes consumed by headers, trailers, and control messages relative to application payload; expressed as a percentage of total frame size
  • Header-to-Payload Ratio: The ratio of protocol header bytes to application data bytes; lower is better for constrained networks
  • Air Time: The duration a radio channel is occupied transmitting one packet; determined by packet size and data rate
  • Retransmission Cost: The bandwidth and energy penalty incurred when a lost packet must be resent; increases with higher QoS levels
  • Fragmentation Overhead: Extra bytes added when a large packet is split into multiple frames (e.g., 6LoWPAN fragment headers)
  • Control Traffic Fraction: The share of network capacity consumed by routing beacons, ACKs, and keepalives rather than application data
  • Effective Throughput: The application-layer data rate achievable after subtracting all overhead from the raw channel capacity

26.1 In 60 Seconds

Protocol overhead determines how much of each transmission is useful data vs. headers. For a 4-byte sensor payload, HTTP/TCP/IPv4 adds 158 bytes of overhead (98% waste), while CoAP/UDP/6LoWPAN reduces total overhead to about 26 bytes (13% payload efficiency). This chapter provides hands-on exercises to calculate and compare these overheads and their direct impact on battery life.

Learning Objectives

By the end of this chapter, you will be able to:

  • Calculate protocol overhead for different IoT stacks quantitatively
  • Analyze battery life impact of protocol selection using energy budget models
  • Evaluate efficiency gains from 6LoWPAN compression on constrained links
  • Perform hands-on analysis using ESP32 simulators and interactive tools
  • Compare protocol efficiency through practical frame-size calculations

Every message an IoT device sends includes extra information beyond the actual data – addresses, error checks, sequence numbers. This extra information is called overhead, like the envelope and stamps on a letter. For battery-powered sensors, overhead matters a lot because bigger messages drain the battery faster.

“My temperature reading is only 4 bytes,” said Sammy the Sensor. “But by the time it gets wrapped in all those protocol headers, it becomes over 100 bytes! That means 96% of what I transmit is overhead, not data!”

“That is like sending a postcard in a refrigerator-sized box,” laughed Lila the LED. Max the Microcontroller showed the math. “With HTTP over TCP over IPv4, you get about 158 bytes of headers for a 4-byte payload. Switch to CoAP over UDP with 6LoWPAN compression, and the headers drop to about 26 bytes. That is 13% useful data instead of 2.5%!”

“And every extra byte costs me energy,” said Bella the Battery seriously. “If I transmit 162 bytes instead of 30 bytes, I use over 5 times more power per message. For sensors that transmit frequently, that is the difference between years of battery life and months.”

“So the lesson is clear,” Max concluded. “For constrained IoT devices, protocol overhead is not just an efficiency number – it directly determines battery life, network capacity, and cost. Always calculate the overhead ratio BEFORE choosing your protocol stack!”

26.2 Hands-On Lab: Protocol Overhead Analysis

Understanding protocol overhead is essential for designing efficient IoT systems. This section provides hands-on exercises to calculate and compare overhead across different protocol stacks.

26.2.1 Lab Activity: Compare Protocol Efficiency

Objective: Calculate and compare overhead for different protocol combinations

Scenario: Temperature sensor (2 bytes) and humidity (2 bytes) = 4 bytes payload

26.2.2 Task 1: Calculate Total Frame Size

Calculate frame size for different protocol stacks:

  1. Full stack (uncompressed): 802.15.4 + IPv6 + UDP + CoAP
  2. Compressed stack: 802.15.4 + 6LoWPAN + UDP + CoAP
  3. MQTT stack: Ethernet + IPv6 + TCP + MQTT
  4. HTTP stack (for comparison): Ethernet + IPv4 + TCP + HTTP
Click to see solution

1. Full Stack (Uncompressed):

802.15.4 MAC: 25 bytes
IPv6: 40 bytes
UDP: 8 bytes
CoAP: 4 bytes
Payload: 4 bytes

Total: 81 bytes
Overhead: 77 bytes (95% overhead!)
Efficiency: 4.9%

2. Compressed Stack (6LoWPAN):

802.15.4 MAC: 25 bytes
6LoWPAN (compressed IPv6 + UDP): 6 bytes
CoAP: 4 bytes
Payload: 4 bytes

Total: 39 bytes
Overhead: 35 bytes (90% overhead)
Efficiency: 10.3%

Improvement: 81 to 39 bytes (52% reduction)

3. MQTT Stack (assuming kept-alive TCP):

Ethernet MAC: 18 bytes (header + FCS)
IPv6: 40 bytes
TCP: 20 bytes
MQTT Fixed Header: 2 bytes
MQTT Variable Header: ~10 bytes (topic "home/temp")
Payload: 4 bytes

Total: 94 bytes
Overhead: 90 bytes (96% overhead)
Efficiency: 4.3%

4. HTTP Stack (minimum request):

Ethernet MAC: 18 bytes
IPv4: 20 bytes
TCP: 20 bytes
HTTP: ~100 bytes (GET /sensor/temp HTTP/1.1...)
Payload: 4 bytes

Total: 162 bytes
Overhead: 158 bytes (98% overhead)
Efficiency: 2.5%

Comparison:

  • 6LoWPAN + CoAP: 39 bytes (best)
  • MQTT: 94 bytes (2.4x CoAP)
  • HTTP: 162 bytes (4.2x CoAP)
Conclusion: For very small payloads, 6LoWPAN + CoAP is most efficient.
Try It: Protocol Overhead Calculator

Adjust the payload size and protocol stack to see how overhead changes.

The overhead analysis above shows dramatic differences, but how does this translate to real radio airtime and battery consumption? The energy cost of a single transmission at data rate \(R\) is:

\[ E_{\text{tx}} = I_{\text{tx}} \times t_{\text{on-air}} = I_{\text{tx}} \times \frac{\text{total bytes} \times 8}{R_{\text{bps}}} \]

Worked example: CoAP (39 bytes) vs HTTP (162 bytes) for 4-byte payload at 250 kbps, 20 mA TX current:

  • CoAP: \(t = \frac{39 \times 8}{250{,}000} = 1.25\text{ ms}\), \(E = 20\text{ mA} \times 0.00125\text{ s} = 0.025\text{ mAs} = 6.94\text{ nAh}\)
  • HTTP: \(t = \frac{162 \times 8}{250{,}000} = 5.18\text{ ms}\), \(E = 20\text{ mA} \times 0.00518\text{ s} = 0.104\text{ mAs} = 28.8\text{ nAh}\)

Over 288 messages/day (every 5 min): CoAP TX energy = 2.0 uAh/day, HTTP TX energy = 8.3 uAh/day. Adding 5 uA sleep current (120 uAh/day), the totals become CoAP = 122 uAh/day vs HTTP = 128 uAh/day. At low TX current (20 mA) and infrequent messaging, sleep current dominates and protocol choice has only modest impact. The 4.2x overhead ratio translates to a 4.2x difference in TX energy alone, but with sleep included, battery life differs by only ~5%. Protocol overhead becomes critical at higher TX frequencies or TX currents – see Task 2 below.

26.2.3 Task 2: Calculate Transmissions for Battery Life

Sensor transmits every 5 minutes. Battery: 2000 mAh.

Given:

  • Radio TX: 5 mA
  • Data rate: 250 kbps (802.15.4)
  • Sleep: 5 uA

Calculate daily power consumption for: 1. CoAP (39 bytes, UDP) 2. MQTT (94 bytes, TCP with keep-alive)

Estimate battery life.

Click to see solution

Transmissions per day: 24 x 60 / 5 = 288

CoAP (UDP, 39 bytes):

TX time per message:
= 39 bytes x 8 bits / 250,000 bps
= 1.25 ms

Total TX time per day:
= 288 x 1.25 ms = 360 ms

Energy (TX):
= 5 mA x 0.36 s = 1.8 mA*s = 0.5 uAh

Energy (Sleep):
= 5 uA x (86,400 - 0.36) s / 3600 = 120 uAh

Total per day: 120.5 uAh = 0.12 mAh
Battery life: 2000 / 0.12 = 16,667 days = 45.7 years

MQTT (TCP keep-alive, 94 bytes + ACKs):

Assuming TCP connection kept open:
- Data: 94 bytes
- ACK: 40 bytes (IPv6 + TCP)
- Total per transmission: 134 bytes

TX+RX time per message:
= 134 bytes x 8 bits / 250,000 bps
= 4.3 ms

Total active time per day:
= 288 x 4.3 ms = 1.24 s

Energy (TX/RX):
= 5 mA x 1.24 s = 6.2 mA*s = 1.7 uAh

Energy (Sleep):
= 5 uA x (86,400 - 1.24) s / 3600 = 120 uAh

Total per day: 121.7 uAh = 0.122 mAh
Battery life: 2000 / 0.122 = 16,393 days = 44.9 years

Analysis: For infrequent transmission (every 5 min), sleep current dominates. Protocol overhead has minimal impact on battery life (both ~45 years, limited by battery self-discharge).

If transmitting every 10 seconds (8,640 times/day): - CoAP: 10.8 s active → TX energy 15 µAh + sleep 120 µAh = 135 µAh/day → 14,815 days / 40.6 years - MQTT: 37.2 s active → TX energy 52 µAh + sleep 120 µAh = 172 µAh/day → 11,628 days / 31.9 years

Conclusion: With this low-power 802.15.4 model (5 mA TX), sleep current dominates even with frequent transmission. Protocol overhead provides only ~27% battery improvement.

Note: Real-world devices with higher TX current (20-50 mA), radio startup overhead, and processing time see much larger differences—see the MCQ below for a more realistic model.
Try It: Battery Life Estimator

Adjust the radio parameters and transmission interval to estimate battery life for different protocol stacks.

26.3 Python Implementations

26.3.1 Implementation 1: Protocol Stack Analyzer

This Python implementation calculates protocol overhead for different IoT stacks:

######################################################################################
# IoT Protocol Stack Analysis (4-byte payload)
######################################################################################

==========================================================================================
PROTOCOL STACK COMPARISON (Payload: 4 bytes)
==========================================================================================
Stack                     Overhead     Total        Efficiency
                          (bytes)      (bytes)      (%)
------------------------------------------------------------------------------------------
HTTP over IPv4/Ethernet   104          108          3.70%
MQTT over IPv6/Ethernet   84           88           4.55%
CoAP over IPv6/802.15.4   77           81           4.94%

######################################################################################
# With 6LoWPAN Compression (802.15.4 + IPv6)
######################################################################################

==========================================================================================
PROTOCOL STACK COMPARISON (Payload: 4 bytes)
Using 6LoWPAN compression
==========================================================================================
Stack                     Overhead     Total        Efficiency
                          (bytes)      (bytes)      (%)
------------------------------------------------------------------------------------------
HTTP over IPv4/Ethernet   104          108          3.70%
MQTT over IPv6/Ethernet   84           88           4.55%
CoAP over IPv6/802.15.4   26           30           13.33%

======================================================================
DETAILED ANALYSIS: CoAP over IPv6/802.15.4
======================================================================

Protocol Overhead Breakdown:
----------------------------------------------------------------------
Layer                Protocol             Size (bytes)
----------------------------------------------------------------------
Data Link            802.15.4             25
Network              IPv6                 40
Transport            UDP                  8
Application          CoAP                 4
----------------------------------------------------------------------
TOTAL OVERHEAD                            77
Payload                                   4
TOTAL PACKET                              81
----------------------------------------------------------------------

Payload Efficiency: 4.94%
Overhead Ratio: 19.25x payload

======================================================================
DETAILED ANALYSIS: CoAP over IPv6/802.15.4
Using 6LoWPAN compression
======================================================================

Protocol Overhead Breakdown:
----------------------------------------------------------------------
Layer                Protocol             Size (bytes)
----------------------------------------------------------------------
Data Link            802.15.4             8
Network              IPv6                 6
Transport            UDP                  8
Application          CoAP                 4
----------------------------------------------------------------------
TOTAL OVERHEAD                            26
Payload                                   4
TOTAL PACKET                              30
----------------------------------------------------------------------

Payload Efficiency: 13.33%
Overhead Ratio: 6.50x payload

######################################################################################
# Impact of Payload Size (CoAP over IPv6/802.15.4 with compression)
######################################################################################

Payload (bytes)      Overhead (bytes)     Efficiency (%)
------------------------------------------------------------
4                    26                   13.33%
16                   26                   38.10%
64                   26                   71.11%
127                  26                   83.01%

Conclusion: Larger payloads improve efficiency!

Key Insights:

  • 6LoWPAN compression reduces CoAP stack from 81 to 30 bytes (62% reduction)
  • Payload efficiency increases with larger payloads (4 bytes = 13%, 127 bytes = 83%)
  • HTTP has worst efficiency (3.7%), CoAP best (13.3% with compression)

26.3.2 Implementation 2: Battery Life Impact Calculator

Expected Output:

##########################################################################################
# SCENARIO 1: Environmental Sensor (Every 5 minutes)
##########################################################################################

==========================================================================================
BATTERY LIFE COMPARISON (288 messages/day)
==========================================================================================
Battery: 2000 mAh
TX/RX current: 5 mA
Sleep current: 5 uA
Data rate: 250 kbps
==========================================================================================

Protocol                       Packet       Daily Energy    Battery Life
                               (bytes)      (uAh)           (days / years)
------------------------------------------------------------------------------------------
CoAP/UDP/IPv6/802.15.4 (compressed) 30           121.0            16528 days / 45.3 years
CoAP/UDP/IPv6/802.15.4 (uncompressed) 81           121.2            16500 days / 45.2 years
MQTT/TCP/IPv6/802.15.4         94           121.2            16493 days / 45.2 years
HTTP/TCP/IPv4/Ethernet         162          121.6            16454 days / 45.1 years

==========================================================================================
DETAILED BREAKDOWN: CoAP/UDP/IPv6/802.15.4 (compressed)
==========================================================================================
Packet size: 30 bytes
TX/RX time per message: 0.96 ms
Daily active time: 0.28 seconds
Daily TX/RX energy: 1.90 uAh
Daily sleep energy: 119.04 uAh
Daily total energy: 120.94 uAh
Battery life: 16528 days = 45.27 years

##########################################################################################
# SCENARIO 2: Real-Time Monitoring (Every 10 seconds)
##########################################################################################

==========================================================================================
BATTERY LIFE COMPARISON (8640 messages/day)
==========================================================================================
Battery: 2000 mAh
TX/RX current: 5 mA
Sleep current: 5 uA
Data rate: 250 kbps
==========================================================================================

Protocol                       Packet       Daily Energy    Battery Life
                               (bytes)      (uAh)           (days / years)
------------------------------------------------------------------------------------------
CoAP/UDP/IPv6/802.15.4 (compressed) 30           135.2            14792 days /  40.5 years
CoAP/UDP/IPv6/802.15.4 (uncompressed) 81           164.6            12145 days /  33.3 years
MQTT/TCP/IPv6/802.15.4         94           171.8            11640 days /  31.9 years
HTTP/TCP/IPv4/Ethernet         162          208.6             9584 days /  26.3 years

==========================================================================================
KEY INSIGHTS:
==========================================================================================
1. For infrequent transmission (every 5 min):
   Sleep current dominates - Protocol choice has minimal impact
   All protocols achieve >40 years (limited by battery self-discharge)

2. For frequent transmission (every 10 sec) with 5 mA TX:
   CoAP (compressed): 40.5 years
   MQTT: 31.9 years
   HTTP: 26.3 years
   Even frequent TX shows modest difference when sleep dominates!

3. With higher-power radios (20-50 mA TX + processing):
   Protocol overhead becomes critical - CoAP provides 3.5x better life
   Real-world battery limited by self-discharge (~10 years max)
==========================================================================================

26.4 ESP32 Hands-On Labs

26.4.1 Lab 1: ESP32 Protocol Packet Analyzer

Objective: Analyze IoT protocol packets to understand overhead.

Hardware Required:

  • ESP32 development board
  • USB cable
  • Computer with Arduino IDE
Try It: Protocol Overhead Analyzer

See protocol efficiency in action! This simulator calculates overhead for different IoT protocol stacks, demonstrating why 6LoWPAN compression is critical for constrained devices.

Key Insights to Observe:

  • CoAP/UDP/IPv6: Only 5.7% payload efficiency with 4-byte payload
  • 6LoWPAN Compression: 85% header reduction (40 bytes to 6 bytes)
  • Payload Aggregation: Larger payloads = dramatically better efficiency
  • Compare Stacks: HTTP has highest overhead, CoAP with 6LoWPAN is most efficient

Expected Serial Output:

====================================================
IoT Protocol Packet Analyzer
ESP32 Protocol Overhead Inspector
====================================================

===================================================
PROTOCOL STACK OVERHEAD ANALYSIS (4-byte payload)
===================================================

-------------------------------------------------
Stack: CoAP/UDP/IPv6/Ethernet
-------------------------------------------------
Data Link:     14 bytes
Network:       40 bytes
Transport:      8 bytes
Application:    4 bytes
                ---------
Total Overhead:  66 bytes
Payload:         4 bytes
                =========
TOTAL PACKET:   70 bytes

Payload Efficiency: 5.71%
Overhead Ratio: 16.50x payload

[... similar for other stacks ...]

===================================================
6LoWPAN COMPRESSION BENEFIT
===================================================

IPv6 Header Compression:
  Uncompressed IPv6: 40 bytes
    - Version (4 bits)
    - Traffic Class (8 bits)
    - Flow Label (20 bits)
    - Payload Length (16 bits)
    - Next Header (8 bits)
    - Hop Limit (8 bits)
    - Source Address (128 bits = 16 bytes)
    - Destination Address (128 bits = 16 bytes)

  6LoWPAN Compressed: 6 bytes (85% reduction!)
    - Context-based compression
    - Link-local addresses derived from MAC
    - Omit hop limit (use default)
    - Omit flow label (not needed)

Total Savings:
  Before: 40 + 25 = 65 bytes (IPv6 + 802.15.4)
  After:   6 +  8 = 14 bytes (compressed)
  Savings: 51 bytes = 78% reduction

===================================================
PAYLOAD SIZE IMPACT ON EFFICIENCY
===================================================

CoAP/UDP/IPv6/802.15.4 (6LoWPAN compressed):
Fixed overhead: 22 bytes

Payload   Total Packet   Efficiency
(bytes)   (bytes)        (%)
----------------------------------
   4        26           15.4%
   8        30           26.7%
  16        38           42.1%
  32        54           59.3%
  64        86           74.4%
 105       127           82.7%

Key Insight: Larger payloads dramatically improve efficiency!
  Aggregate multiple sensor readings when possible.

Scenario: A city deploys 10,000 LED streetlights with motion sensors that report activity every 5 minutes. Each light transmits sensor status (2 bytes), battery voltage (2 bytes), and timestamp (4 bytes) = 8 bytes payload. Battery requirement: 10+ years on 2x D-cell lithium (19,000 mAh @ 3.6V). Network uses IEEE 802.15.4 mesh (250 kbps). Initial design uses MQTT/TCP. Engineering audit questions whether this meets battery targets.

Step 1 — Calculate Current Battery Life (MQTT/TCP)

Protocol overhead calculation:

802.15.4 header: 25 bytes
IPv6 header: 40 bytes (uncompressed)
TCP header: 20 bytes
MQTT header: 2 bytes (minimum)
Payload: 8 bytes
Total: 95 bytes per message

Transmission analysis:

Messages per day: 1440 min ÷ 5 min = 288 messages
Bits per day: 95 bytes × 8 bits × 288 = 218,880 bits/day
TX time at 250 kbps: 218,880 ÷ 250,000 = 0.876 seconds/day

Power consumption:

TX current: 20 mA (802.15.4 radio)
Sleep current: 5 µA (ultra-low-power mode)
TCP keep-alive: 40 bytes every 60 seconds = 57,600 bytes/day extra
Keep-alive TX time: 57,600 × 8 ÷ 250,000 = 1.843s/day
Total active time: 0.876s (data) + 1.843s (keep-alive) = 2.719s/day

Daily energy:
TX/RX: 20 mA × 2.719s ÷ 3600 = 0.0151 mAh
Sleep: 0.005 mA × 86,397.3s ÷ 3600 = 0.120 mAh
Total: 0.135 mAh/day

Battery life: 19,000 mAh ÷ 0.135 mAh/day = 140,741 days = 385 years?

Wait — this seems too good! What’s missing?

The calculation above assumes perfect conditions. Real-world factors: 1. Processing overhead: MCU wakes to process keep-alives (add 50% overhead) 2. Retransmissions: Lossy mesh network (15% packet loss, 1.18× multiplier) 3. Temperature effects: -20°C to 40°C reduces usable capacity by 30%

Adjusted calculation:

Effective capacity: 19,000 × 0.70 = 13,300 mAh
Adjusted daily usage: 0.135 × 1.50 × 1.18 = 0.239 mAh/day
Actual battery life: 13,300 ÷ 0.239 = 55,648 days = 152 years

Still exceeds 10-year target! So why optimize?

Step 2 — The Hidden Cost: Network Congestion

With 10,000 lights:

  • MQTT data: 10,000 x 95 bytes x 288 msgs/day = 273.6 MB/day network traffic
  • TCP keep-alives: 10,000 x 57,600 bytes/day = 576 MB/day additional

Total: 849.6 MB/day on a constrained mesh network with shared 250 kbps bandwidth.

Step 3 — Optimized Solution with CoAP/UDP + 6LoWPAN

New protocol overhead:

802.15.4 header: 8 bytes (compressed)
6LoWPAN header: 6 bytes (context compression)
UDP header: 4 bytes (NHC compression)
CoAP header: 4 bytes
Payload: 8 bytes
Total: 30 bytes per message (68% reduction!)

New network traffic: - CoAP: 10,000 x 30 bytes x 288 msgs/day = 86.4 MB/day - No keep-alives: 0 MB/day - Total: 86.4 MB/day (90% reduction in network load)

Step 4 — Cost-Benefit Analysis

Battery life improvement:

CoAP base daily energy:
  TX time: 30 bytes × 8 bits × 288 msgs ÷ 250,000 bps = 0.2765 s/day
  TX energy: 20 mA × 0.2765 s ÷ 3600 = 0.00154 mAh
  Sleep energy: 0.005 mA × 86,399.7 s ÷ 3600 = 0.120 mAh
  Base total: 0.121 mAh/day

Adjusted: 0.121 × 1.50 × 1.18 = 0.214 mAh/day
New battery life: 13,300 ÷ 0.214 = 62,150 days = 170 years
Improvement: 1.12× longer (both far exceed 10-year target)

Real benefit – Network capacity:

  • 90% traffic reduction = support 10x more devices on same infrastructure
  • City saves $2M by avoiding network upgrade for 5 years
  • Reduced collisions improve reliability from 85% to 96%

Key Insight: When sleep current dominates battery consumption (as in this scenario), protocol optimization provides only marginal battery improvement. The real value in dense deployments is network capacity and scalability – the 90% traffic reduction (largely due to eliminating TCP keep-alives) provides far greater economic value than marginal battery gains. The CoAP switch paid for itself through avoided infrastructure costs, not battery replacement savings.

Implementation note: CoAP’s Observe extension allows streetlights to subscribe to configuration changes, maintaining bidirectional capability without TCP connection overhead.

Common Pitfalls

A 250 kbps Zigbee link delivers roughly 100–150 kbps of application data after overhead. Using 250 kbps in capacity planning leads to undersized networks. Fix: always derate raw data rate by 30–50% for mesh IoT protocols.

At 10% packet loss with QoS 1 MQTT, up to 10% of traffic is retransmissions. At 20% loss, retransmissions can cascade and consume the majority of capacity. Fix: measure packet loss in the environment before sizing the network.

MQTT has lower relative overhead for 1000-byte payloads but higher overhead for 5-byte payloads because its fixed header is 2 bytes. Fix: normalise comparisons to the actual payload size used in the deployment.

Lab conditions (low traffic, no interference) produce optimistic overhead figures. Production environments with dozens of concurrent senders and interference show higher overhead. Fix: add a 20–30% overhead buffer to lab measurements for production planning.

26.5 Summary

Key Takeaways

Protocol Overhead Analysis:

  • 6LoWPAN + CoAP: 39 bytes (10% efficiency for 4-byte payload)
  • MQTT: 94 bytes (4% efficiency)
  • HTTP: 162 bytes (2.5% efficiency)
  • Larger payloads improve efficiency (aggregate sensor readings!)

Battery Life Impact:

  • Infrequent (every 5 min): Minimal difference (~45 years both)
  • Frequent (every 10 sec, 5 mA TX): CoAP ~1.3x better than MQTT (sleep still dominates)
  • High-power radios (20-50 mA TX + processing): CoAP 3-4x better than MQTT
  • Sleep current dominates at low TX current; protocol overhead becomes critical with higher TX power or very frequent transmission

6LoWPAN Compression:

  • Reduces IPv6 header from 40 to 6 bytes (85% savings)
  • Enables IPv6 on constrained 802.15.4 networks
  • Critical for achieving 10+ year battery life
  • Context-based compression derives addresses from MAC

Practical Guidelines:

  • Use CoAP for battery-powered sensors
  • Aggregate multiple readings to improve efficiency
  • Consider 6LoWPAN compression for any 802.15.4 deployment
  • TCP keep-alives drain battery - use UDP when possible

26.6 Concept Relationships

Protocol overhead analysis connects efficiency calculations to real-world deployment outcomes:

Related Concepts:

  • Payload efficiency ratio (payload bytes / total bytes) determines bandwidth utilization and battery impact
  • Transmission time scales linearly with packet size: 2× overhead = 2× radio-on time = 2× energy
  • Sleep current dominance for infrequent transmissions means protocol overhead has minimal battery impact
  • Active current dominance for frequent transmissions with high-power radios makes protocol choice critical (up to 3-4x battery life difference)
  • Frame fragmentation occurs when compressed headers + payload exceed 127-byte 802.15.4 limit, adding overhead

Prerequisite Knowledge:

Builds Foundation For:

26.7 See Also

Calculation Tools:

Deep Dives:

Interactive Labs:

26.8 What’s Next?

Direction Chapter Description
Next Real-World Protocol Examples See how overhead analysis applies in practical IoT deployments
Related IPv6 and 6LoWPAN Lab Hands-on with compression mechanisms used in overhead reduction
Related Python Implementations Automate overhead and battery life calculations programmatically
Deep Dive 6LoWPAN Compression Detailed review of IPHC and NHC compression techniques