MTU Troubleshooting on Cisco IOS

Hello Sathish

The Layer 2 MTU doesn’t include the Ethernet header. The MTU that is configured on an L2 interface of a switch, refers only to the payload of the Ethernet frame.

At Layer 3, the IP MTU includes the IP header and the TCP header as well.

So it makes sense that, as defined above, the L2 MTU is equal to the L3 MTU. If we imagine the Ethernet frame, the IP packet, and the TCP segment as boxes that fit into one another, we can think about MTU measurements as follows:

  • The L2 MTU is measured as the capacity of the box that will encapsulate the upper layer packet. It’s a measurement of the INSIDE of the box, in other words, the size of the payload it can carry, without measuring the actual dimensions of the box itself. So we leave out the box itself which is the additional 14 bytes.
  • The L3 MTU is measured as the size of the OUTSIDE of the box at the IP layer, that is, the IP payload AND the header. It includes the dimensions of the box, so it has a value of 1500 which comes from the 1480 for the payload and 20 for the IP header.
  • The TCP MSS is measured as the INSIDE of the TCP box, so it doesn’t include the TCP header. That means it must be the IP MTU - IP header - TCP header which is 1500-20-20=1460.

So in the lesson, you can see the following measurements in the packet capture:

  • The size of the Ethernet frame including the “box” is 1514, but the MTU at this layer is defined without the box, so it is 1500.
  • The size of the IP packet including the “box” is 1500, and the MTU at this layer is defined with the box, so that is also 1500. But the inside size of the box when we remove the 20 bytes of the IP header is 1500-20 = 1480. That’s the maximum size of the TCP segment with its header that it can accommodate.
  • The size of the TCP MSS doesn’t include its “box”, so that’s 1480 - 20 =1460.

So that’s how you get the numbers in the packet capture. And the statements in Rene’s post remain true. Does that make sense?

I hope this has been helpful!

Laz