Visual RFC.
ALL RFCs / RFC 791
Read the RFC ↗
RFC 791 / PROTOCOL MECHANISMS

Fragment for a smaller link

04

IPv4 can split a datagram when a next link cannot carry its full size, unless fragmentation is prohibited.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

DIAGRAM§ 3.1 ↗
RFC 791 · § 3.1EXAMPLE
3 / 3
Fragment for a smaller linkIPv4 can split a datagram when a next link cannot carry its full size, unless fragmentation is prohibited.Oversized datagramsmaller next-link MTUoffset 0 · MF 1offset 50 · MF 1offset 100 · MF 0Same Identification; offsets in 8-byte unitsAlternative: DF set → cannot fragmentExample offsets illustrate non-overlapping 400-byte data ranges
03
With DF set, reject the oversized datagram instead.

With DF set, reject the oversized datagram instead.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
WHAT CHANGED
RFC 791 · IPv4RFC 8200 § 4.5 · IPv6

IPv6 routers do not fragment packets; only the source performs IPv6 fragmentation. These are different IP versions.

Read the updated RFC section ↗
KEY POINT

DF forbids fragmentation; MF identifies a fragment with more fragments after it.

  • DF forbids fragmentation; MF identifies a fragment with more fragments after it.
  • Fragment Offset uses eight-octet units, and Identification helps associate the pieces.
DETAILS

The drawing is a simplified worked example. Follow the linked RFC and its updates for implementation requirements.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. Route a datagram across networks
  2. Read the IPv4 header
  3. Limit a packet’s lifetime
  4. Fragment for a smaller link
  5. Reassemble at the destination

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗