MTU Troubleshooting on Cisco IOS

Rene,
Hi. Great explanations. Couple quick clarifications.

  1. You mention ‘The MSS value isn’t synchronized between hosts, it can be different for each direction’ - I thought this gets negotiated as a part of the 3 way handshake? Are you saying in your example above if say set “ip tcp adjust-mss 1360” on the f0/1 of R2 and then set “ip tcp adjust-mss 1460” on the f0/1 of R1 then it wouldnt negotatiate down to the lowest common MSS and hence break?

  2. Assuming I am using GRE over IPSEC with transport mode I looked at a recent customer network in which the tunnel interface was set to “IP MTU 1400” and it also had the corresponding command “ip tcp adjust-mss 1360” under the tunnel interface as well. The tunnel interface MTU was kept at default which was 17912. Seems redundant based upon some of the explanations above to set the MTU when setting the “ip tcp adjust-mss” command? Assume it is really one or the other like you mentioned above, but the adjust-mss would avoid fragmentation where the IP MTU would cause fragmentation so better to use the adjust-mss? What is the best practice ideal setting for the tunnel interface in this case as it relates to this and the appropriate size (ie is adjust-mss the best approach, but maybe we should make the byte size higher than 1360)?

  3. How does “MPLS MTU” compare to “IP MTU” on the interface level? Does it behave in the same fashion?

Many thanks.

Thomas