User Tools

Site Tools


networking:mtu

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
networking:mtu [2025/09/11 01:12] – apereznetworking:mtu [2025/10/04 15:48] (current) – aperez
Line 41: Line 41:
 </code> </code>
  
 +----
 +
 +
 +
 +<note tip>
 +**MTU & PMTU Validation (side note)**  
 +
 +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**  
 +Command:  
 +<code bash>
 +ping -M do -s 1472 8.8.8.8
 +</code>  
 +
 +Expected output (OK, MTU 1500):  
 +<code>
 +PING 8.8.8.8 (8.8.8.8) 1472(1500) bytes of data.
 +1480 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=8.0 ms
 +1480 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=7.9 ms
 +--- 8.8.8.8 ping statistics ---
 +2 packets transmitted, 2 received, 0% packet loss
 +</code>  
 +
 +πŸ‘‰ If **1472 passes**, effective MTU β‰ˆ **1500**.  
 +πŸ‘‰ If it fails (e.g., *Frag needed*), the link is forcing MTU <1500.  
 +
 +----
 +
 +**2) Path MTU Discovery with tracepath**  
 +Command:  
 +<code bash>
 +tracepath -n 8.8.8.8
 +</code>  
 +
 +**Case A β€” Standard network (PMTU 1500):**  
 +<code>
 + 1: 192.168.1.1          0.45ms
 + 1: 192.168.1.1          0.39ms pmtu 1500
 + 2: 10.10.10.1           3.21ms
 + 3: 8.8.8.8              7.84ms reached
 +     Resume: pmtu 1500 hops 3 back 3
 +</code>  
 +
 +**Case B β€” Jumbo end-to-end (PMTU ~9000):**  
 +<code>
 + 1: 10.0.0.1             0.22ms
 + 1: 10.0.0.1             0.21ms pmtu 9000
 + 2: 172.20.0.1           0.95ms
 + 3: 8.8.8.8              6.74ms reached
 +     Resume: pmtu 9000 hops 3 back 3
 +</code>  
 +
 +πŸ‘‰ If you see **`pmtu 1500`**, the path is limited to standard frames.  
 +πŸ‘‰ If you see **`pmtu 9000`** (or similar), jumbo frames are preserved across the path.  
 +πŸ‘‰ If it drops (e.g., 9000 β†’ 1500 mid-path), a hop does not support jumbo.  
 +
 +----
 +
 +**Validation summary**  
 +
 +^ Test                  ^ Expected outcome                           ^
 +| `ping -M do -s 1472`  | Successful reply β‡’ effective MTU β‰ˆ 1500    |
 +| `tracepath -n`        | Reports PMTU 1500 (standard) or 9000 (jumbo)|
 +
 +</note>
  
 ---- ----
Line 88: 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 198: Line 312:
  
  
 +{{ :aruba_networks:switch:6400:mtu_pmtu.pdf |}}
  
-Β +{{pdfjs 46em >:aruba_networks:switch:6400:mtu_pmtu.pdf}}
 ---- ----
 ---- ----
networking/mtu.1757571125.txt.gz Β· Last modified: 2025/09/11 01:12 by aperez

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki