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/10/03 18:42] apereznetworking:mtu [2025/10/04 15:48] (current) aperez
Line 44: Line 44:
  
  
-====== Pruebas de MTU y PMTU (ICMP + tracepath) ====== 
  
-Esta sección documenta cómo validar MTU efectiva y Path MTU (PMTUhacia Internet usando **ping** con *DF* y **tracepath**.+<note tip> 
 +**MTU & PMTU Validation (side note)**  
  
-===== 1) Verificación rápida con ICMP (Linux=====+Quick reference on how to confirm the effective MTU and Path MTU (PMTUend-to-end. Use these tests when enabling jumbo frames or troubleshooting connectivity.
  
-**Objetivo:** confirmar que el payload máximo sin fragmentación es 1472 bytes (→ MTU 1500).+----
  
-**Comando (debe responder):**+**1ICMP Check with ping**   
 +Command:  
 <code bash> <code bash>
 ping -M do -s 1472 8.8.8.8 ping -M do -s 1472 8.8.8.8
-</code>+</code>  
  
-**Interpretación:** +Expected output (OKMTU 1500):  
-  * **OK:** respuestas ICMP sin “Frag needed” ⇒ MTU efectiva ≈ **1500**. +
-  * **FAIL:** mensaje *“Frag needed”* o *“Message too long”* ⇒ hay un salto con MTU < 1500. +
- +
-**Ejemplo de salida (OK):**+
 <code> <code>
 PING 8.8.8.8 (8.8.8.8) 1472(1500) bytes of data. 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.06 ms +1480 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=8.ms 
-1480 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=7.82 ms+1480 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=7.ms
 --- 8.8.8.8 ping statistics --- --- 8.8.8.8 ping statistics ---
-2 packets transmitted, 2 received, 0% packet loss, time 1001ms +2 packets transmitted, 2 received, 0% packet loss 
-</code>+</code>  
  
-**Notas:** +👉 If **1472 passes**, effective MTU ≈ **1500**  
-  * Para encontrar el máximo exactoprueba binario alrededor de 1472 (p. ej., 1473 falla, 1472 pasa). +👉 If it fails (e.g., *Frag needed*), the link is forcing MTU <1500 
-  En **Windows** el equivalente es:   +
-    <code> +
-    ping -f -l 1472 8.8.8.+
-    </code>+
  
-===== 2) Descubrimiento de Path MTU con tracepath =====+----
  
-**Objetivo:** ver el PMTU anunciado a lo largo de la ruta. +**2) Path MTU Discovery with tracepath**   
- +Command 
-**Comando:**+
 <code bash> <code bash>
 tracepath -n 8.8.8.8 tracepath -n 8.8.8.8
-</code>+</code>  
  
-**Interpretación típica:** +**Case A — Standard network (PMTU 1500):**  
-  * En redes estándar, verás **pmtu 1500** en los primeros saltos. +
-  * Si tienes **jumbo end-to-end**, podrías ver **pmtu ~ 9000** (o el valor configurado, p. ej. 9120/9216). +
-  * Si algún enlace reduce MTU, verás una caída (p. ej., de 9000 → 1500). +
- +
-**Ejemplo de salida (PMTU 1500):**+
 <code> <code>
- 1: 192.168.1.1          0.456ms + 1: 192.168.1.1          0.45ms 
- 1: 192.168.1.1          0.398ms pmtu 1500 + 1: 192.168.1.1          0.39ms pmtu 1500 
- 2: 10.10.10.1           3.214ms + 2: 10.10.10.1           3.21ms 
- 3: 8.8.8.8              7.842ms reached+ 3: 8.8.8.8              7.84ms reached
      Resume: pmtu 1500 hops 3 back 3      Resume: pmtu 1500 hops 3 back 3
-</code>+</code>  
  
-**Ejemplo de salida (PMTU jumbo ~9000):**+**Case B — Jumbo end-to-end (PMTU ~9000):**  
 <code> <code>
- 1: 10.0.0.1             0.220ms + 1: 10.0.0.1             0.22ms 
- 1: 10.0.0.1             0.210ms pmtu 9000 + 1: 10.0.0.1             0.21ms pmtu 9000 
- 2: 172.20.0.1           0.950ms + 2: 172.20.0.1           0.95ms 
- 3: 8.8.8.8              6.740ms reached+ 3: 8.8.8.8              6.74ms reached
      Resume: pmtu 9000 hops 3 back 3      Resume: pmtu 9000 hops 3 back 3
-</code> +</code>  
- +
-===== 3) Criterios de validación ===== +
- +
-^ Prueba                ^ Esperado                                ^ Conclusión                    ^ +
-| `ping -M do -s 1472`  | Responde sin fragmentación              | MTU efectiva ≈ **1500**       | +
-| `tracepath -n`        | Muestra `pmtu 1500` (o tu jumbo real)   | PMTU coherente en la ruta     | +
- +
-===== 4) Troubleshooting rápido ===== +
- +
-  * **Falla a 1472** pero responde a 1464–1460 ⇒ algún enlace está forzando MTU < 1500 (p. ej., **1492** PPPoE). +
-  * **Jumbo configurado localmente** pero `tracepath` marca `pmtu 1500` ⇒ un salto intermedio **no soporta** jumbo. +
-  * **Firewalls** que bloquean *ICMP Fragmentation Needed* rompen PMTU: habilitar/permitir ICMP tipo 3 código 4.+
  
 +👉 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 172: 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 282: Line 312:
  
  
 +{{ :aruba_networks:switch:6400:mtu_pmtu.pdf |}}
  
- +{{pdfjs 46em >:aruba_networks:switch:6400:mtu_pmtu.pdf}}
 ---- ----
 ---- ----
networking/mtu.1759534972.txt.gz · Last modified: 2025/10/03 18:42 by aperez

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki