Path MTU Discovery is a mechanism which was developed to avoid the IP packets fragmentation on the network links where the smaller MTUs exist. Whenever a network device needs to forward a packet it will reference the outgoing interface MTU value and if this value happens to be smaller than the packet size that needs to be transmitted then fragmentation occurs on that router and packet will be broken down in to two or more fragments of smaller size and will be delivered to the destination where the reassembly of these fragments takes place.
The fragmentation adds up to the CPU consumption on the router and also increases the bandwidth utilization of the links as new headers are generated and added on top of each fragment.
To get the packet delivered to the destination in most efficient manner one must determine the lowest path MTU from the source to the destination. But the source needs to have some mechanism to determine the lowest possible MTU value in path towards the destination. Path MTU discovery allows to determine the lowest possible MTU value in the path from source to destination.
PathMTU Discovery makes use of the DF(Don’t Fragment) bit in IP header and a subcode of the ICMP Destination Unreachable message, Fragmentation Needed. So when a packet is sent from source towards the destination the DF bit is set in the IP header. Along the path when lower MTU value is encountered on a link the packet won’t be fragmented as DF bit is set, instead an ICMP message (Destination Unreachable message, Fragmentation Needed) is relayed towards the source indicating that lower MTU value is hit along the path.
Earlier the fragmentation needed message doesn’t include the MTU value but RFC 1191 expands the Fragmentation Needed message to include the MTU of the link necessitating fragmentation so that source gets to know the lowest MTU value along the path.
ICMP Message Sample