Maximum Transmission Unit
Maximum Transmission Unit (MTU) ist die maximale Größe eines Datagramms auf OSI-Schicht 3, das ohne Zerlegung in einen Frame auf OSI-Schicht 2 passt
Beschreibung
MTU (Maximum Transmission Unit) beschreibt die maximale Paketgröße eines Protokolls der Vermittlungsschicht (Schicht 3) des OSI-Modells in Byte, die ohne Zerlegung in den Rahmen (engl. „Frame“) eines Netzes der Sicherungsschicht (Schicht 2) passt.
- Das Paket passt in die Nutzlast (Payload) des Protokolls der Sicherungsschicht
- Die maximale Größe der Nutzlast der Sicherungsschicht wird auch oft als MTU der Sicherungsschicht (engl. 'link MTU') bezeichnet
Typische MTU-Größen
Medium | MTU in Bytes |
---|---|
Hyperchannel | 65535 |
Token Ring (4)(802.5) | 4464 |
Token Ring (16) | 17914 |
FDDI | 4352 |
Ethernet | 1500 |
Gigabit Ethernet mit Jumboframes | 9000 |
PPPoE (z. B. DSL) | ≤ 1492 |
SLIP / Point-to-Point Protocol|PPP (low delay) | 296 |
X.25 | 576 |
FibreChannel | theoretisch unbegrenzt |
ISDN | 576 |
DQDB | |
HIPPI | |
ATM | 4500, s. u. |
ARCNET | |
802.11 | 2312 (WiFi) |
Anwendungen
Berechnung der maximalen Größe eines Rahmens der Sicherungsschicht
Maximale Rahmengröße = Größte MTU aller benutzten Protokolle der Vermittlungsschicht + Größe der Sicherungsschichtheader
Ermittlung der MTU-Größe
- Zu diesem Zweck können Sie 'ping' verwenden, um ein Paket der erforderlichen Größe mit gesetztem Bit "Nicht fragmentieren" zu senden
- Es ist auch eine gute Idee, eine Paketanzahl von eins zu verwenden, da es nicht sinnvoll ist, mehr Netzwerkverkehr zu senden als Sie brauchen
- Hinweis
- Die beim Befehl ping angegebene Größe entspricht der Anzahl der zu sendenden Datenbytes.
- Diese muss also 28 Byte kleiner sein als die tatsächliche Paketgröße, um die Größe des Paket-Headers zu berücksichtigen.
Beispiel Ethernet
- Ein Ethernet Frame besteht aus zwei Teilen: dem „Header“, in dem Quell- und Zieladressen und andere wichtige Parameter für den Versand kodiert sind, und der Nutzlast, deren Größe durch die MTU bestimmt ist.
- In diesem Versuch ist die Größe der MTU mit 1500 Byte vorgegeben. Mithilfe des ping-Programmes wird ein „Frame“ erzeugt, der dann im Netzwerk über das Ethernet-Protokoll versendet wird.
- Die Verwendung des Begriffes Nutzlast ist hier mehrdeutig, da im OSI-Modell die verschiedenen Protokolle ineinander eingepackt (gekapselt) werden.
- Der im Versuch verwendete Linux-Befehl ping -s 1472 10.0.0.1 (Windows-Befehl ping -l 1472 10.0.0.1) sendet dann ein Internet Control Message Protocol|ICM-Paket mit der Nutzlast von 1472 Bytes an die IP-Adresse 10.0.0.1.
ping -f -l 1472 10.0.0.1 1472 bytes Nutzlast des ICMP-Protokolles (Transportschicht) + 8 bytes ICMP-Header (Transportschicht) + 20 bytes IPv4-Header (der Vermittlungsschicht) ------------- = 1500 bytes (Nutzlast von Ethernet) + 14 bytes (Header der Sicherungsschicht) + 4 bytes (Frame Check Sequence) ------------- = 1518 bytes (kompletter Ethernet Frame)
- Mit einem Sniffer wie z. B. Wireshark wird als Ethernet Header nur die Größe von 14 Byte angezeigt.
- Hierzu kommt noch die 4 Byte große Frame Check Sequence am Ende des Frames.
- Falls Virtual VLANs verwendet werden, besteht der Header der Sicherungsschicht aus 18 Byte und der gesamte Ethernet Frame kann eine Größe von bis zu 1522 Byte annehmen.
- Würde IPv6 verwendet, änderte sich obige Berechnung dahingehend, dass der IPv6-Header der Vermittlungsschicht 40 statt 20 Byte beträgt und damit statt 1472 Byte ICMP-Nutzlast nur 1452 Byte möglich wären.
Oft ist es hilfreich dem ping-Programm vorzugeben das „don’t fragment (DF) bit“ für die Testpakete im IPv4-Header zu setzen denn dann erhält man eine Nachricht, falls die MTU überschritten wird.
Linux
ping -M do -s 1472 10.0.0.1
Windows
ping -l 1472 -f 10.0.0.1
Leicht sichtbar machen lässt sich die Path MTU mit dem Programm tracepath für IPv4 bzw. tracepath6 für IPv6.
Fehlerbehebung
- Probleme durch falsche MTU-Größe können sehr subtil sein
- Es ist möglich einem Webserver zu erreichen, die Dateiübertragung schlägt jedoch fehl
- Verbindung zu einem Chat-Server funktioniert, aber die Informationen darüber, wer online ist, sind unvollständig
Konfiguration
Dateien
Sicherheit
Dokumentation
RFC
- RFC 791 – INTERNET PROTOCOL
- RFC 879 – The TCP Maximum Segment Size and Related Topics
- RFC 1191 – Path MTU Discovery
- RFC 1981 – Path MTU Discovery for IP version 6
- RFC 2923 – TCP Problems with Path MTU Discovery
Man-Pages
Info-Pages
Siehe auch
Links
Projekt-Homepage
Weblinks
- https://de.wikipedia.org/wiki/Maximum_Transmission_Unit
- Dr. TCP, eine Software zum Einstellen der MTU unter Windows, ursprünglich für DSL-Nutzer geschrieben.
- MTU, eine weitere Software (Freeware) zum Einstellen der MTU unter Windows.
- Analysing TCP Header Options – Section 6 – Ausführliche Erklärung der MTU und MSS
Einzelnachweise
Testfragen
Testfrage 1
Testfrage 2
Testfrage 3
Testfrage 4
Testfrage 5