About Packet Header Visualization
Understanding how protocol headers consume your MTU is critical for optimizing network performance. Each layer of encapsulation adds overhead that reduces the available space for actual application data (payload).
Why does this matter?
- Fragmentation: If your packet exceeds the path MTU, it will be fragmented (IPv4) or dropped (IPv6), causing retransmissions and latency
- Throughput: More overhead means less payload per packet, reducing effective throughput
- MSS Tuning: TCP's Maximum Segment Size should account for all encapsulation to avoid fragmentation
- Nested Tunnels: Technologies like VXLAN, GRE, and IPsec can be stacked, compounding overhead significantly
Header Size Reference:
- Ethernet II: 14 bytes (Dst MAC 6 + Src MAC 6 + EtherType 2)
- 802.1Q VLAN: 4 bytes per tag
- MPLS: 4 bytes per label
- IPv4: 20 bytes (minimum, up to 60 with options)
- IPv6: 40 bytes (fixed base header)
- TCP: 20 bytes (minimum, up to 60 with options)
- UDP: 8 bytes
- VXLAN/GENEVE: 8 bytes (tunnel header only)
- GRE: 4 bytes basic, 8 bytes with key
- IPsec ESP: ~50 bytes typical (varies by cipher)