Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Ethernet ist überall und Zehntausende Hersteller stellen Geräte her, die es unterstützen. Eines haben jedoch fast alle dieser Geräte gemeinsam: MTU:

$ ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP 
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff

MTU (Maximum Transmission Unit) definiert die maximale Größe eines einzelnen Datenpakets. Wenn Sie Nachrichten mit Geräten in Ihrem LAN austauschen, liegt die MTU im Allgemeinen in der Größenordnung von 1500 Byte, und fast das gesamte Internet arbeitet mit 1500 Byte. Dies bedeutet jedoch nicht, dass diese Kommunikationstechnologien keine größeren Paketgrößen übertragen können.

Beispielsweise hat 802.11 (allgemein bekannt als WiFi) eine MTU von 2304 Bytes, und wenn Ihr Netzwerk FDDI verwendet, beträgt Ihre MTU 4352 Bytes. Ethernet selbst verfügt über das Konzept der „Giant Frames“, bei denen der MTU eine Größe von bis zu 9000 Bytes zugewiesen werden kann (mit Unterstützung dieses Modus durch NICs, Switches und Router).

Im Internet ist dies jedoch nicht unbedingt erforderlich. Da die wichtigsten Backbones des Internets hauptsächlich aus Ethernet-Verbindungen bestehen, ist die de facto inoffizielle maximale Paketgröße auf 1500 B festgelegt, um eine Paketfragmentierung auf anderen Geräten zu vermeiden.

Die Zahl 1500 an sich ist seltsam – man würde beispielsweise erwarten, dass Konstanten in der Computerwelt auf Zweierpotenzen basieren. Woher kommt 1500B und warum verwenden wir es immer noch?

magische Zahl

Der erste große Durchbruch von Ethernet in der Welt erfolgte in Form von Standards. 10BASE-2 (dünn) und 10BASE-5 (dick), die Zahlen geben an, wie viele Hundert Meter ein bestimmtes Netzwerksegment abdecken kann.

Da es zu dieser Zeit viele konkurrierende Protokolle gab und die Hardware ihre Grenzen hatte, gibt der Ersteller des Formats zu, dass der Speicherbedarf des Paketpuffers eine Rolle bei der Entstehung der magischen Zahl 1500 gespielt hat:

Im Nachhinein ist es klar, dass ein größerer Maximalwert die bessere Lösung gewesen wäre, aber wenn wir die Kosten für NICs frühzeitig erhöht hätten, hätte dies verhindert, dass sich Ethernet so weit verbreitet hätte.

Dies ist jedoch nicht die ganze Geschichte. IN der arbeit „Ethernet: Distributed Packet Switching in Local Computer Networks“ aus dem Jahr 1980 bietet eine der frühesten Analysen zur Wirksamkeit der Verwendung großer Pakete in Netzwerken. Dies war damals besonders wichtig für Ethernet-Netzwerke, da diese entweder alle Systeme mit einem einzigen Koaxialkabel verbinden konnten oder aus Hubs bestanden, die ein Paket gleichzeitig an alle Knoten im selben Segment senden konnten.

Es musste eine Zahl gewählt werden, die nicht zu großen Verzögerungen bei der Übertragung von Nachrichten in Segmenten (manchmal recht ausgelastet) zur Folge hat und gleichzeitig die Anzahl der Pakete nicht zu sehr erhöht.

Anscheinend wählten die damaligen Ingenieure die Zahl 1500 B (ca. 12000 Bit) als die „sicherste“ Option.

Seitdem sind verschiedene andere Messaging-Systeme gekommen und gegangen, aber unter ihnen hatte Ethernet mit 1500 Bytes den niedrigsten MTU-Wert. Das Überschreiten des minimalen MTU-Werts in einem Netzwerk bedeutet entweder eine Paketfragmentierung oder die Teilnahme an PMTUD [Ermittlung der maximalen Paketgröße]. für ausgewählten Pfad]. Beide Optionen hatten ihre eigenen besonderen Probleme. Auch wenn manchmal große Betriebssystemhersteller den MTU-Wert noch weiter gesenkt haben.

Effizienzfaktor

Wir wissen jetzt, dass die Internet-MTU auf 1500 B begrenzt ist, was größtenteils auf veraltete Latenzmetriken und Hardwareeinschränkungen zurückzuführen ist. Wie stark beeinträchtigt dies die Effizienz des Internets?

Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Wenn wir uns die Daten eines großen Internet-Austauschpunkts AMS-IX ansehen, sehen wir, dass mindestens 20 % der übertragenen Pakete eine maximale Größe haben. Sie können sich auch den gesamten LAN-Verkehr ansehen:

Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Wenn Sie beide Diagramme kombinieren, erhalten Sie etwa Folgendes (Verkehrsschätzungen für jeden Paketgrößenbereich):

Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Oder wenn wir uns den Verkehr all dieser Header und anderer Serviceinformationen ansehen, erhalten wir dasselbe Diagramm mit einem anderen Maßstab:

Wie 1500 Bytes zur maximalen Einheit der Informationsübertragung im Internet wurden

Ein ziemlich großer Teil der Bandbreite wird für Header für Pakete der größten Größenklasse aufgewendet. Da der höchste Overhead bei Spitzenverkehr 246 GB/s beträgt, kann man davon ausgehen, dass dieser Overhead nur etwa 41 GB/s betragen würde, wenn wir alle auf „Jumbo Frames“ umgestiegen wären, als es eine solche Option noch gab.

Aber ich denke, dass der größte Teil des Internets diesen Zug heute bereits verlassen hat. Und obwohl einige Anbieter mit einer MTU von 9000 arbeiten, unterstützen die meisten diese nicht und der Versuch, im Internet global etwas zu ändern, erweist sich immer wieder als äußerst schwierig.

Source: habr.com

Kommentar hinzufügen