Website-Suche

Ich habe mein langsames Heim-Internet repariert, indem ich eine Einstellung geändert habe, über die niemand spricht


Wir neigen fast immer dazu, den Router neu zu starten, wenn wir langsame Internetgeschwindigkeiten feststellen. In einigen Fällen kann es funktionieren. Manchmal glauben wir auch automatisch, dass unser Internetanbieter das Internet drosselt; das ist ebenfalls nicht immer der Fall. Wir könnten einfach mit einem einzigartigen Problem konfrontiert sein, das eine schlechte Interneterfahrung liefert, obwohl die Verbindungsgeschwindigkeit in allen Geschwindigkeitstests großartig aussieht.

Genau das ist mir passiert, und letztendlich war die Lösung nicht das, was ich erwartet hatte. Alles, was ich tun musste, war, die Maximum Transmission Unit (MTU) an die tatsächlichen Verbindungslimits anzupassen. Sobald mir das gelungen war, verschwand die Verzögerung.

MTU definiert die maximale IP-Nutzlast, die einen Link intakt passieren kann

Header-Overhead und Segmentierungsregeln bestimmen die tatsächliche Paketgröße

MTU stellt das größte Datenpaket in Bytes dar, das ein netzwerkverbundenes Gerät zulassen kann, ohne dass es fragmentiert wird. Diese Zahl wird für die meisten Ethernet-Netzwerke normalerweise auf 1500 Bytes eingestellt. 1500 ist keine willkürliche Zahl. Ihr Router geht davon aus, dass dies sicher ist, basierend auf den Designbeschränkungen von Ethernet-Frames aus Jahrzehnten, von denen viele noch heute verwendet werden.

Die 1500 Bytes stellen jedoch nicht ausschließlich die Größe Ihrer Daten dar, da Pakete naturgemäß zusätzliche Daten für den Protokolloverhead enthalten. Im normalen TCP-Verkehr umfasst der Overhead typischerweise 20 Bytes für den IPv4-Header und weitere 20 Bytes für den TCP-Header. Damit haben Sie tatsächlich ein maximales Limit von 1460 Bytes für Ihr Paket in einer 1500-MTU-Umgebung. Dies erklärt die 1460 Bytes der TCP-Maximum-Segmentgröße (MSS) in Standardnetzwerken.

Wo wir beginnen, Probleme zu haben, ist, wenn ein Paket größer ist als die MTU-Umgebung, durch die es passieren muss. Der einzige Weg, wie es erfolgreich passieren kann, besteht darin, dass der Router das Paket in kleinere Stücke fragmentiert. Dieser Prozess ist ressourcenintensiv und erfordert mehr CPU-Arbeit und Pufferspeicher, da jedem Fragment ein eigener IP-Header zugewiesen wird und alle am Zielort wieder zusammengesetzt werden müssen. Der Prozess selbst reduziert die Bandbreite nicht; er erhöht jedoch die Komplexität und Empfindlichkeit der Paketübertragung.

Echte Internetpfade reduzieren oft die nutzbare MTU auf unter 1500

Kapselungs- und Zugriffstechnologien verringern den verfügbaren Nutzraum

Sie können annehmen, dass 1500 überall funktioniert, aber das ist falsch. 1500 Bytes sind größer als die MTU, die bei mehreren privaten Internetanschlüssen verwendet wird. Point-to-Point Protocol über Ethernet (PPPoE) ist ein gängiger Standard für einige Glasfaserinstallationen und mehrere Digital Subscriber Line (DSL)-Optionen. Sein zusätzlicher Overhead von 8 Bytes reduziert die effektive MTU auf 1492, was eine Fragmentierung erzwingt, wenn Ihr Router 1500-Byte-Pakete durch einen 1492-Tunnel schicken muss.

Solange Ihre Daten in zusätzliche Verpackung gehüllt werden müssen, wird dies effektiv den Platz für Ihre eigentliche Nutzlast verringern. VLAN fügt beispielsweise einen 4-Byte-Tag hinzu. Auch wenn dieser Tag für die Identifizierung des virtuellen Netzwerks des Datenverkehrs unerlässlich ist, verkleinert er dennoch die Nutzlast. Carrier-grade NAT (CGNAT) und DS-Lite haben denselben Effekt. Im Fall von DS-Lite fügt das Verschieben des Datenverkehrs über das Netzwerk eines Internetdienstanbieters durch Tunnelung von IPv4-Datenverkehr innerhalb von IPv6-Paketen zusätzlichen Header-Overhead hinzu. VPNs machen Ihr ursprüngliches Paket zur Nutzlast eines neuen Pakets, wobei das neue Paket einen neuen Header benötigt.

All diese Fälle sind wie das Hinzufügen zusätzlicher Verpackungen zu einer Schachtel, die bereits ihre eigene Verpackung hat, ohne die Größe des Weges zu vergrößern, den die Schachtel passieren muss. Sie wird nur durchgehen, wenn sie zerlegt ist.

Bei mobilen Netzwerken wird es noch komplizierter, da LTE und 5G historisch gesehen eine niedrigere Basis haben als die 1500 Bytes, die von Ethernet verwendet werden. Abhängig von der Implementierung Ihres Anbieters liegen die MTU-Werte zwischen 1420 und 1480. Im Allgemeinen entspricht das Verbindungs-Limit der kleinsten MTU irgendwo entlang der Strecke, und solange der Router dieses Limit nicht einhalten kann, werden Sie entweder Fragmentierung oder stilles Paketverluste erleben, ein möglicher Grund für langsames Internet.

Automatische MTU-Anpassungsmechanismen verhindern nicht immer einen Ausfall

Pfad-MTU-Erkennung, ICMP-Filterung und Black-Hole-Verhalten

Es gibt eine Selbstanpassungslösung zur Vermeidung von Fragmentierung, die großartig funktioniert, zumindest auf dem Papier. Sie heißt Path MTU Discovery (PMTUD). So funktioniert sie: Geräte können beim Senden von Paketen ein „Nicht fragmentieren“-Bit setzen. Dieses Bit veranlasst den empfangenden Router, mit einer ICMP-Typ-3-Code-4-Nachricht „Fragmentierung erforderlich“ zu antworten, wenn die Paketgröße die nachgeschaltete MTU überschreitet.

Das Problem ist, dass in der Praxis mehrere Firewalls ICMP standardmäßig blockieren. Daher werden die großen Pakete verworfen, und das Firewall-Filtering bewirkt, dass der Sender nicht weiß, dass die Pakete zu groß waren. Das Verwerfen der Pakete führt dazu, dass TCP erneut sendet und exponentielle Rückoff-Timer erstellt werden. Diese Situation wird als MTU-Blackhole bezeichnet, bei dem große Pakete konsequent fehlschlagen, obwohl der Datenverkehr scheinbar fließt.

Moderne Betriebssysteme versuchen, einige Ausfälle zu mindern, indem sie RFC 4821 Packetization Layer Path MTU Discovery (PLPMTUD) implementieren, als eine Methode, die Paketgröße zu ermitteln, ohne auf ICMP angewiesen zu sein. In einigen Fällen wird Fragmentierung von Routern, ISP-Geräten und VPN-Endpunkten nicht gut gehandhabt. Diese treten nicht in Geschwindigkeitstestergebnissen auf, aber die tatsächliche Auswirkung ist, dass die Latenzabweichung weiterhin zunimmt.

Wenn Ihr Router MSS-Clamping anwendet, kann dies eine MTU-Abweichung eher verbergen als beheben, weshalb die Symptome inkonsistent statt konstant sein können.

Das Messen und Korrigieren der MTU stellt einen sauberen End-to-End-Paketfluss wieder her

Solange du die Mathematik verstehst, ist es einfach, die richtige MTU zu finden. Wenn du mit ping testen musst, beachte, dass der IPv4-Header 20 Bytes groß ist und ICMP 8 Bytes hinzufügt, was eine kombinierte Header-Overhead von 28 Bytes ergibt. Beginne also mit einer Nutzlast von 1472 Bytes; wenn du die 28 Bytes von IPv4 und ICMP hinzufügst, ergibt das insgesamt 1500. Verringere die Nutzlastgröße von diesem Punkt an, bis du einen Wert erreichst, der keine Fragmentierung verursacht. Deine verwendbare MTU wird 28 plus die größte erfolgreiche Nutzlast sein.

Hier ist der Windows-Befehl:

ping 8.8.8.8 -f -l 1472

Ich verwende -f, um das Don't Fragment-Bit zu setzen, und -l, um die Nutzlastgröße anzugeben. Das Ziel ist es, die Nutzlastgröße weiter zu verringern, bis Sie eine konsistente Erfolgsantwort erhalten. Unten ist der entsprechende Linux-Befehl:

ping -M do -s 1472 8.8.8.8

Auf macOS ist es etwas anders, da Fragmentierungsflags nicht in allen Versionen auf die gleiche Weise behandelt werden. Sie erhalten zuverlässigere Pfad-MTU-Prüfungen, wenn Sie sich auf Tools wie mtr über Homebrew verlassen.

Testen Sie die MTU immer gegen mehrere Ziel-IP-Adressen, nicht nur gegen 8.8.8.8, da Black-Hole-Bedingungen auf bestimmten Routen und nicht auf anderen existieren können.

Nachdem man herausgefunden hat, welchen konstanten Wert dieser haben sollte, ist es am besten, die MTU in der WAN-Schnittstelle Ihres Routers einzustellen, damit Sie nicht alle Ihre Geräte einzeln konfigurieren müssen. Unten ist eine Tabelle, die grobe Schätzungen zeigt, die Sie bei verschiedenen Verbindungstypen erwarten können:

Verbindungstyp

Typische MTU, die Sie erwarten sollten

Standard-Ethernet (Kabel/direkte Glasfaser, kein PPPoE)

1500

PPPoE (DSL oder einige Glasfaser-ISPs)

1492

VLAN-getaggte ISP-Verbindung

1496-1500 (abhängig von der Implementierung des ISP)

LTE/4G/5G Mobilfunknetze

~1420-1480 (variiert je nach Anbieter)

IPSec VPN (Tunnelmodus)

1380-1460 (abhängig von Chiffre und Kapselung)

WireGuard (übergeordnete MTU 1500)

~1420

WireGuard über PPPoE (1492 Eltern)

~1412

OpenVPN (UDP-Modus)

1300-1450 (stark konfigurationsabhängig)

Verwandte Artikel