6LoWPAN Fragmentation Animation
6LoWPAN Fragmentation Animation
See how IPv6 datagrams are split into 6LoWPAN fragments for 127-byte IEEE 802.15.4 frames
6LoWPAN Fragmentation Animation
Out-of-order 6LoWPAN Reassembly
Dispatch the sender's canonical FRAG1/FRAGN plan in any order. The receiver places each payload by its byte offset, rejects invalid ranges, ignores duplicate coverage, and delivers only when one bounded datagram buffer is complete.
Try
Set Datagram size to 420 B and press Step to dispatch the first fragment. Then switch to Out of order and send a later pending fragment.
Observe
Watch Fragment count, the selected fragment's offset, and the receiver buffer. Out-of-order arrivals fill their own byte ranges without completing gaps left by missing fragments.
Explain
A 127-byte IEEE 802.15.4 frame leaves different payload capacities for FRAG1 and FRAGN headers. Each FRAGN datagram_offset locates data in 8-byte units, so arrival order does not determine placement.
Technical boundaries
The calculation covers one datagram and its reassembly timer; it does not model concurrent datagram keys, mesh-under forwarding, MAC retries, overlapping-fragment attacks, or receiver memory contention.
Offset-based Reassembly Workbench
Five fragments arrive 1, 3, 2, 5, 4; their byte-offset buffer still becomes one ordered datagram.
Arrival strip
Learning Support
Fragmentation is per hop
6LoWPAN fragmentation happens on the low-power link. A router may reassemble before forwarding, depending on the routing approach.
Tag keeps fragments together
The datagram tag lets the receiver match fragments from the same original datagram.
Offset is not bytes
The FRAGN offset is the byte offset divided by 8. This is why non-final fragments are sized on 8-byte boundaries.
Loss is expensive
The 6LoWPAN fragmentation layer does not repair a missing fragment by itself. The buffer is discarded on timeout.
Quick Reference
802.15.4 limit
max_frame = 127 BThe workbench subtracts MAC, FCS, and security overhead before adding 6LoWPAN fragment headers.
FRAG1
dispatch 11000header 4 B
The first fragment carries datagram_size and datagram_tag, but no offset field.
FRAGN
dispatch 11100header 5 B
Every later fragment repeats size and tag, then adds datagram_offset.
Offset rule
datagram_offset = byte_offset / 8The last fragment may be shorter; earlier fragments must keep the next offset aligned.
Size field
11 bits: up to 2047 BThis animation keeps the slider within IPv6 minimum MTU examples, but the field can encode more.
Tag field
16-bit datagram_tagThe tag must not be reused too quickly while old reassembly buffers might still exist.
Timeout
60 s reassembly windowIf all fragments do not arrive in time, the receiver discards the incomplete datagram.
Practical warning
more fragments = more loss riskCompression, smaller payloads, and application block transfer can reduce fragmentation pressure.
Guided Practice
Find the first FRAGN
Step once or twice. The first fragment is FRAG1; later fragments become FRAGN and show an offset.
Raise overhead
Move MAC + security overhead upward. The payload capacity falls and the fragment count rises.
Drop one fragment
Select Drop fragment 3, play to the end, then step the timer until the reassembly buffer is discarded.
Compare small telemetry
Use Small telemetry. Notice when a datagram fits in one frame, no FRAG1/FRAGN header is needed.