networking:mtu
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
networking:mtu [2025/10/03 18:47] β aperez | networking:mtu [2025/10/04 15:48] (current) β aperez | ||
---|---|---|---|
Line 42: | Line 42: | ||
---- | ---- | ||
+ | |||
Line 49: | Line 50: | ||
Quick reference on how to confirm the effective MTU and Path MTU (PMTU) end-to-end. Use these tests when enabling jumbo frames or troubleshooting connectivity. | Quick reference on how to confirm the effective MTU and Path MTU (PMTU) end-to-end. Use these tests when enabling jumbo frames or troubleshooting connectivity. | ||
- | --- | + | ---- |
**1) ICMP Check with ping** | **1) ICMP Check with ping** | ||
Line 69: | Line 70: | ||
π If it fails (e.g., *Frag needed*), the link is forcing MTU < | π If it fails (e.g., *Frag needed*), the link is forcing MTU < | ||
- | --- | + | ---- |
**2) Path MTU Discovery with tracepath** | **2) Path MTU Discovery with tracepath** | ||
Line 99: | Line 100: | ||
π If it drops (e.g., 9000 β 1500 mid-path), a hop does not support jumbo. | π If it drops (e.g., 9000 β 1500 mid-path), a hop does not support jumbo. | ||
- | --- | + | ---- |
**Validation summary** | **Validation summary** | ||
Line 155: | Line 156: | ||
+ | ---- | ||
+ | |||
+ | > **Note: PMTU and PMTUD (Path MTU / Path MTU Discovery)** | ||
+ | |||
+ | The *Path Maximum Transmission Unit (PMTU)* is the **largest IP packet size that can travel end-to-end without fragmentation**. | ||
+ | It is determined by the **smallest MTU along the entire path**. | ||
+ | |||
+ | Example: | ||
+ | * Link 1: MTU = 9000 | ||
+ | * Link 2: MTU = 1500 | ||
+ | * Link 3: MTU = 1400 | ||
+ | β **PMTU = 1400 bytes** | ||
+ | |||
+ | --- | ||
+ | |||
+ | **Path MTU Discovery (PMTUD): | ||
+ | A dynamic mechanism to discover the PMTU using the **DF (Donβt Fragment)** bit. | ||
+ | |||
+ | Steps: | ||
+ | - Source sends a large packet with DF=1. | ||
+ | - If a router cannot forward due to its MTU, it discards the packet and replies with ICMP *Fragmentation Needed* (Type 3, Code 4). | ||
+ | - The source reduces the size until it learns the **real PMTU**. | ||
+ | |||
+ | --- | ||
+ | |||
+ | **Verification on Linux**:: | ||
+ | |||
+ | ping -M do -s 1472 8.8.8.8 | ||
+ | β If it replies: path supports 1500 (1472+28 headers). | ||
+ | β If it fails: PMTU is smaller. | ||
+ | |||
+ | tracepath -n 8.8.8.8 | ||
+ | β Displays estimated PMTU along the route. | ||
+ | |||
+ | --- | ||
+ | |||
+ | **Common pitfalls** | ||
+ | * Blocking ICMP β breaks PMTUD (TCP sessions may hang). | ||
+ | * Tunnel/VPN overhead β reduces MTU (e.g., IPSec 1500 β ~1400). | ||
+ | * Misconfigured Jumbo Frames β one 1500 hop breaks 9000 end-to-end. | ||
+ | |||
+ | --- | ||
+ | |||
+ | **In summary: | ||
+ | * **PMTU** = max packet size without fragmentation. | ||
+ | * **PMTUD** = process to dynamically discover it using ICMP + DF. | ||
Line 265: | Line 312: | ||
+ | {{ : | ||
- | Β | + | {{pdfjs 46em >: |
---- | ---- | ||
---- | ---- |
networking/mtu.1759535253.txt.gz Β· Last modified: 2025/10/03 18:47 by aperez