18  Protocol Overhead and Packet Budgets

Packet Budgets, Header Ledgers, Fragmentation Gates, Control Traffic, and Evidence Records

transport-protocols
iot
overhead
analysis

18.1 Start With One Packet Budget

Overhead analysis starts with one payload and the headers it must carry through the real stack. Separate payload bytes, transport headers, security records, fragmentation, acknowledgements, and control traffic before comparing protocols. The packet budget then shows which cost is measured, which is assumed, and which deployment limit could change the answer.

18.2 Overview: Overhead Analysis Starts With A Message Budget

Protocol overhead analysis asks how much traffic a useful application message creates after every required wrapper, acknowledgement, retry, security field, gateway handoff, and maintenance message is included. It is not a contest to find the smallest header in isolation.

The useful unit is a bounded flow: one message shape, one path, one receiver behavior, and one link or gateway constraint. A packet budget is accepted only when it separates payload bytes from wrapper bytes and names the evidence behind each count.

For example, a greenhouse alarm may carry only a compact sensor value, a timestamp, and an alarm code, but the deployed path still needs application typing, transport endpoints, network addressing, link framing, and usually security or integrity fields. If the review says "12 bytes of data" while the radio sends several times that amount after wrappers and acknowledgements, the energy, airtime, and reliability decision is being made from the wrong denominator.

The overview question is therefore practical: what traffic must the path carry for one useful receiver action? A status sample, an acknowledged alarm, and a periodic keepalive can each have a different answer. The record should name the message, the expected cadence, the required reply behavior, and the boundary where a small payload change would force another review.

If you only need the intuition, this layer is enough: overhead is the difference between the application data you wanted to move and all of the traffic required to move it safely, repeatedly, and observably through the chosen path.

Protocol header overhead comparison: the same 10-byte sensor payload carries 48 bytes of headers over UDP and IPv6, 60 or more over TCP with TLS and MQTT, but only 2 to 8 bytes when 6LoWPAN compresses the IPv6 fields, showing how wrappers dominate small messages inside a 127-byte 802.15.4 frame.
Small sensor messages are dominated by protocol wrappers: a 10-byte payload can carry 48 to 60-plus bytes of headers, which is why 6LoWPAN header compression matters when the whole 802.15.4 frame is only 127 bytes.

Message Shape

Name payload fields, encoding, maximum expected size, timing pattern, and the receiver action that matters.

Protocol Wrappers

Account for application, transport, network, adaptation, link, and security bytes instead of treating them as a single number.

Control Traffic

Include acknowledgements, discovery, keepalives, route maintenance, retries, and gateway translation traffic when they affect the path.

Decision Impact

State whether the path is acceptable, acceptable with limits, needs a retest, or should be redesigned.

Overview Knowledge Check

18.3 Practitioner Pattern: Build The Packet Budget Before Comparing Protocols

A practical overhead review uses the same payload and the same evidence categories for every candidate. That prevents a common mistake: measuring one path with a real trace while judging another path from a rough memory of its header size.

Start with a packet budget, then check whether the complete message still fits the link and adaptation boundary. Fragmentation changes more than byte count; it can add state, retries, queue pressure, and a harder failure mode for constrained devices.

Use a small ledger before selecting a protocol. In the example below, the useful value is 12 bytes, but the transmitted packet budget also includes application typing, transport endpoints, network routing, and link framing. The exact numbers are illustrative for that budget, not universal protocol constants. The decision point is the ratio and the boundary: if a schema change doubles the payload or a security profile adds another tag, the earlier frame-fit result may no longer apply.

A 17-byte temperature message is sent over four protocol stacks. Each row shows how many bytes are payload versus headers and highlights the resulting efficiency.
Packet budget for a small sensor reading
Field
Evidence To Capture
Decision Question
Retest Trigger
Payload
Fields, encoding, maximum expected size, update rate, and acknowledgement expectation.
Is the same payload being compared across candidates?
Payload schema, units, rate, or receiver action changes.
Wrappers
Application, transport, network, adaptation, link, and security bytes with trace or implementation evidence.
Which layer adds each byte, and why is that wrapper required?
Protocol stack, address scope, security mode, or gateway boundary changes.
Control Behavior
Acknowledgements, keepalives, discovery, routing, retries, and translation traffic.
Is the comparison counting traffic outside the single data packet?
Retry policy, sleep schedule, routing behavior, or maintenance interval changes.
Frame Gate
Available frame payload, fragmentation threshold, reassembly state, and loss behavior.
Does the complete message fit without fragile fragmentation?
Link layer, MTU, security field, compression context, or message size changes.
Fragmentation gate showing message path before frame limit, single-frame pass, fragment split, retry exposure, and redesign trigger.
The fragmentation gate checks whether wrapper bytes force a split and whether that split creates a redesign or retest requirement.

Practitioner Knowledge Check

18.4 Under The Hood: The Evidence Record Separates Measurements From Assumptions

The hardest part of overhead analysis is not arithmetic. It is preserving the source and confidence of each claim. A measured packet trace, an implementation log, a standards-derived estimate, and a design assumption should not be treated as the same kind of evidence.

The record also needs an owner and a retest trigger. If the payload shape, gateway boundary, security profile, link frame, retry policy, or receiver behavior changes, the earlier overhead conclusion may no longer apply.

A useful evidence record keeps a byte ledger beside the observation source. Payload size might come from the application schema, transport bytes from a packet capture, security bytes from the enabled library mode, and retry behavior from a gateway log under a lossy test. Labelling those sources matters because the next reviewer can see what is measured, what is derived, and what still needs confirmation on the deployed path.

Fragmentation is the classic place where assumptions hide. Once a protected message is split, the receiver needs enough state to reassemble it, the sender may need retry or timeout behavior, and losing any required fragment can lose the useful message. The overhead record should therefore capture both the single-message byte budget and the failure behavior at the gate, not just the nominal header sum.

Control traffic deserves the same treatment. An acknowledged alarm, a sleepy-node poll, a route-maintenance exchange, and a gateway translation can each add packets that are invisible in a one-packet comparison. If those packets occur only during join, reboot, or link loss, the record should say so. That prevents a steady-state trace from being reused as proof for recovery behavior.

Overhead evidence record separating measured, derived, and assumed bytes, with a worked byte ledger: a 10-byte payload plus 48 bytes of UDP and IPv6 headers is 58 bytes inside a 127-byte 802.15.4 frame, and 6LoWPAN compresses wrappers to 2 to 8 bytes.
The record separates measured, derived, and assumed bytes, then applies them to a worked byte ledger: a 10-byte payload and 48 header bytes total 58 bytes inside the 127-byte 802.15.4 frame, with 6LoWPAN compressing wrappers to 2 to 8 bytes.

Measured Trace

Packet capture, gateway log, implementation output, or test fixture output observed on the bounded path.

Derived Estimate

A byte count inferred from a specification or stack setting that still needs implementation confirmation.

Open Assumption

A placeholder that is allowed in design review only when it has an owner, follow-up check, and acceptance limit.

Decision Limit

The exact condition that would make the overhead record stale enough to rerun.

A strong overhead conclusion is narrow: it says this payload, on this path, under this wrapper and control behavior, is acceptable or unacceptable for this reason. It does not become a universal rule for every IoT protocol decision.

Under-The-Hood Knowledge Check

18.5 Summary

Protocol overhead analysis turns byte counts into a reviewable transport decision. Start with one message path, build a packet budget, add control traffic and retry behavior, check fragmentation risk, compare candidates with the same evidence categories, and record the decision with a clear retest trigger.

18.6 Key Takeaway

Overhead is not just header size. A defensible IoT overhead record counts payload, wrappers, control traffic, retry exposure, fragmentation risk, evidence confidence, and the condition that would make the decision stale.

18.7 See Also