Path MTU Discovery

Sunday, April 6, 2014


Path MTU Discovery is a technique used to dynamically discover the path MTU from the source to the destination using the DF (Don’t Fragment) bit from the IP header. It is the smallest effective transmitted MTU along the path defined by IP source, IP destination and maybe TOS of the packets. The basic idea of the mechanism is that the source will assume the path MTU to be equal with the known first hop MTU and to send IP packets with DF bit set with that known MTU along the path. If along the path, a link has a next-hop smaller MTU the router will drop the IP datagram and send back an ICMP Destination Unreachable with the code Fragmentation needed and DF set. After receiving this ICMP message the host will reduce the path MTU for that particular link.

There are more ways to implement path MTU discovery as stated in RFC 1191 , the big differences are between router and host implementation:
 The router must include the MTU of the next-hop in the lower 16 bit of the ICMP Destination Unreachable – Fragmentation needed and DF bit set (datagram too big as RFC says). This is the most used implementation but it has its flows.
 The host implementation on the other hand might elect to reduce the path MTU to the next-hop value received on the ICMP Datagram too big message or clear the DF bit on the IP header.
 When the ICMP datagram too big message does not contain the MTU of the next-hop, the things get complicated and a lot of possible algorithms might be implemented by the hosts.