For two hosts communicating across a path of multiple networks, a transmitted packet becomes fragmented if its size is greater than the smallest MTU of any network in the path. Because packet fragmentation can result in reduced network performance, it is desirable to avoid fragmentation by transmitting packets with a size is no greater than the smallest MTU in the network path. This size is called the path MTU.
The operating system supports a path MTU discovery algorithm as described in RFC 1191. Path MTU discovery can be enabled for TCP and UDP applications by modifying the tcp_pmtu_discover and udp_pmtu_discover options of the no command. When enabled for TCP, path MTU discovery will automatically force the size of all packets transmitted by TCP applications to not exceed the path MTU. Since UDP applications themselves determine the size of their transmitted packets, UDP applications must be specifically written to utilize path MTU information by using the IP_FINDPMTU socket option, even if the udp_pmtu_discover no option is enabled. By default, the tcp_pmtu_discover and udp_pmtu_discover options are disabled on AIX 4.2.1 through AIX 4.3.1, and enabled on AIX 4.3.2 and later.
When the path MTU has been discovered for a network route, a separate host route is cloned for the path. These cloned host routes, as well as the path MTU value for the route, can be displayed using the netstat -r command. Accumulation of cloned routes can be avoided by allowing unused routes to expire and be deleted. Route expiration is controlled by the route_expire option of the no command. Route expiration is disabled by default on AIX 4.2.1 through AIX 4.3.1, and set to 1 minute on AIX 4.3.2 and later.
Since routes can change dynamically, the path MTU value for a path might also change over time. Decreases in the path MTU value will result in packet fragmentation, so discovered path MTU values are periodically checked for decreases. By default, decreases are checked for every 10 minutes, and this value can be changed by modifying the value of the pmtu_default_age option of the no command.
Increases in the path MTU value can result in a potential increase in network performance, so discovered path MTU values are periodically checked for increases. By default, increases are checked for every 30 minutes, and this value can be changed by modifying the value of the pmtu_rediscover_interval option of the no command.
If not all of the routers in the network path support RFC 1191, then it might not be possible to determine an exact path MTU value. In these cases, the mmtu command can be used to add or delete path MTU values that are attempted.
- Path MTU discovery cannot be used on duplicate routes, including those configured for group routing.
- Enabling path MTU discovery sets the value of the arpqsize option of the no command to a minimum value of 5. This value is not decreased if path MTU discovery is subsequently disabled.