Ethernet est partout et des dizaines de milliers de fabricants produisent des équipements qui le prennent en charge. Cependant, presque tous ces appareils ont une chose en commun :
$ 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) définit la taille maximale d'un seul paquet de données. En général, lorsque vous échangez des messages avec des appareils sur votre réseau local, la MTU sera de l'ordre de 1500 1500 octets et la quasi-totalité d'Internet fonctionne à XNUMX XNUMX octets. Cependant, cela ne signifie pas que ces technologies de communication ne peuvent pas transmettre des paquets de plus grande taille.
Par exemple, 802.11 (communément appelé WiFi) a une MTU de 2304 4352 octets, et si votre réseau utilise FDDI, votre MTU est de 9000 XNUMX octets. Ethernet lui-même a le concept de « trames géantes », dans lesquelles la MTU peut se voir attribuer une taille allant jusqu'à XNUMX XNUMX octets (avec prise en charge de ce mode par les cartes réseau, les commutateurs et les routeurs).
Toutefois, sur Internet, cela n’est pas particulièrement nécessaire. Étant donné que les principaux réseaux fédérateurs d'Internet sont principalement constitués de connexions Ethernet, la taille maximale non officielle des paquets est fixée à 1500 XNUMX Mo pour éviter la fragmentation des paquets sur d'autres appareils.
Le nombre 1500 1500 lui-même est étrange : on pourrait s'attendre à ce que les constantes du monde informatique soient basées sur des puissances de deux, par exemple. Alors d’où vient le XNUMXB et pourquoi l’utilisons-nous encore ?
nombre magique
La première grande percée d'Ethernet dans le monde s'est produite sous la forme de normes.
Comme il existait à l'époque de nombreux protocoles concurrents et que le matériel avait ses limites, le créateur du format admet que les besoins en mémoire du tampon de paquets ont joué un rôle dans l'émergence du nombre magique 1500 :
Avec le recul, il est clair qu'un maximum plus élevé aurait pu être une meilleure solution, mais si nous avions augmenté le coût des cartes réseau dès le début, cela aurait empêché Ethernet de se généraliser autant.
Cependant, ce n’est pas toute l’histoire. DANS
Il fallait choisir un nombre qui n'entraînerait pas de délais trop importants lors de la transmission de messages par segments (parfois assez chargés), et en même temps n'augmenterait pas trop le nombre de paquets.
Apparemment, les ingénieurs de l'époque ont choisi le nombre 1500 12000 B (environ XNUMX XNUMX bits) comme option la plus « sûre ».
Depuis lors, divers autres systèmes de messagerie ont vu le jour, mais parmi eux, Ethernet avait la valeur MTU la plus basse avec ses octets 1500 XNUMX. Dépasser la valeur MTU minimale dans un réseau signifie soit provoquer une fragmentation des paquets, soit s'engager dans une PMTUD [trouver la taille maximale des paquets pour le chemin sélectionné]. Les deux options présentaient leurs propres problèmes particuliers. Même si parfois les grands fabricants de systèmes d’exploitation abaissent encore plus la valeur MTU.
Facteur d'efficacité
Nous savons désormais que la MTU Internet est limitée à 1500 XNUMX B, en grande partie à cause des anciennes mesures de latence et des limitations matérielles. Dans quelle mesure cela affecte-t-il l’efficacité d’Internet ?
Si nous examinons les données d'un grand point d'échange de trafic Internet AMS-IX, nous constatons qu'au moins 20 % des paquets transmis ont une taille maximale. Vous pouvez également consulter le trafic LAN total :
Si vous combinez les deux graphiques, vous obtenez quelque chose comme ce qui suit (estimations du trafic pour chaque plage de taille de paquet) :
Ou, si nous regardons le trafic de tous ces en-têtes et autres informations de service, nous obtenons le même graphique avec une échelle différente :
Une grande partie de la bande passante est consacrée aux en-têtes des paquets de la classe de taille la plus grande. Étant donné que la surcharge la plus élevée au trafic de pointe est de 246 Go/s, on peut supposer que si nous étions tous passés aux « trames jumbo » alors qu'une telle option existait encore, cette surcharge ne serait que d'environ 41 Go/s.
Mais je pense qu’aujourd’hui, pour la plus grande partie d’Internet, ce train est déjà parti. Et bien que certains fournisseurs travaillent avec un MTU de 9000 XNUMX, la plupart ne le prennent pas en charge, et essayer de changer quelque chose de manière globale sur Internet s'est avéré extrêmement difficile à maintes reprises.
Source: habr.com