MTU & MSS - jibingl/CCNA-CCNP GitHub Wiki
Relationship
<--------------------------- IP MTU ------------------->
<--------------------- Ethernet MTU ------------------->
<--------- TCP MSS --------->
+------------+------------+-------------+---------------------------+------------+
FRAME | Eth-Header | IP-Header | TCP-Header | Data payload | Eth-trailer|
+------------+------------+-------------+---------------------------+------------+
BYTES 14 20 20 1460 4
| Bytes |
Size Range |
Default (IP/IPv6) |
Description |
| IP MTU |
68 - 9600 |
1500 |
The maximum size of an entire IP packet without fragmentation, or drop if DF bit is set in the IP header. |
| Ethernet MTU |
64 - 9600 |
1500 |
The maximum Ethernet payload size, excluding Ethernet header, without dropped. |
| TCP MSS |
28 - 9560 |
536/1220 |
Maximum TCP payload size, excluding TCP header, without fragmentation. |
- IP MTU can smaller than Ethernet MTU, otherwise frame will be dropped in layer 2.
- Cisco router defines MSS in a local link as 536 bytes while 1460 bytes for remote connection.
Frame Size with Default MTU
Following table shows size of different VLAN frames with a default IP MTU (1500 bytes).
| - |
Size (Bytes) |
Description |
| Untagged Frame Size |
1518 |
Standard Ethernet frame including headers and trailer. |
| VLAN-Tagged Frame Size |
1522 |
Standard frame (1518) plus the 4-byte VLAN tag. |
| QinQ (Double Tagging) |
1526 |
Standard frame plus two VLAN tags (4 + 4 bytes). |
Packet Unit Size
| Packet Unit |
Minimum Size |
Maximum Size |
Reasons |
| Ethernet frame |
64 Bytes |
1518 Bytes |
When encapsulated in Ethernet, the IP packet has a minimum 46-byte payload (if an 802.1Q tag is absent). Ethernet MTU is 1500 bytes (or 1522 with VLAN tagging). |
| IPv4 packet |
20 Bytes |
65535 Bytes |
Theoretically, 16-bit Total Length field in an IPv4 header can store values from 0 to 65535. As IP header is 20 bytes which defines the minimal. |