Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Ethernet je všude a desítky tisíc výrobců vyrábějí zařízení, která jej podporují. Téměř všechna tato zařízení však mají jedno společné - 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) definuje maximální velikost jednoho datového paketu. Obecně platí, že když si vyměňujete zprávy se zařízeními ve vaší LAN, MTU bude řádově 1500 1500 bajtů a téměř celý internet funguje na XNUMX XNUMX b. To však neznamená, že tyto komunikační technologie nemohou přenášet větší velikosti paketů.

Například 802.11 (běžně známé jako WiFi) má MTU 2304 bajtů, a pokud vaše síť používá FDDI, pak je vaše MTU 4352 bajtů. Samotný Ethernet má koncept „obřích rámců“, kde lze MTU přiřadit velikost až 9000 bajtů (s podporou tohoto režimu ze strany NIC, přepínačů a směrovačů).

Na internetu to však není nijak zvlášť nutné. Protože hlavní páteř internetu jsou primárně tvořeny ethernetovými připojeními, je de facto neoficiální maximální velikost paketu nastavena na 1500B, aby se zabránilo fragmentaci paketů na jiných zařízeních.

Samotné číslo 1500 je zvláštní – člověk by čekal, že konstanty v počítačovém světě budou založeny například na mocninách dvojky. Odkud se tedy 1500B vzalo a proč je stále používáme?

magické číslo

První velký průlom Ethernetu do světa přišel v podobě standardů. 10BASE-2 (tenké) a 10BASE-5 (tlusté), čísla, která udávají, kolik stovek metrů může konkrétní segment sítě pokrýt.

Protože v té době existovalo mnoho konkurenčních protokolů a hardware měl svá omezení, tvůrce formátu přiznává, že při vzniku magického čísla 1500 hrály roli paměťové nároky paketového bufferu:

Při zpětném pohledu je jasné, že lepším řešením by mohlo být větší maximum, ale pokud bychom zvýšili náklady na síťové karty hned na začátku, zabránili by tomu, aby se Ethernet tak rozšířil.

To však není celý příběh. V práce „Ethernet: Distributed Packet Switching in Local Computer Networks“, 1980, poskytuje jednu z prvních analýz efektivity používání velkých paketů v sítích. V té době to bylo zvláště důležité pro sítě Ethernet, protože mohly buď propojit všechny systémy jediným koaxiálním kabelem, nebo se skládat z rozbočovačů schopných poslat jeden paket všem uzlům na stejném segmentu najednou.

Bylo potřeba zvolit takové číslo, které nebude mít za následek příliš velká zpoždění při přenosu zpráv po segmentech (někdy dost vytížených), a zároveň nebude příliš navyšovat počet paketů.

Inženýři v té době zjevně zvolili číslo 1500 B (asi 12000 XNUMX bitů) jako nejbezpečnější možnost.

Od té doby se objevily a odešly různé jiné systémy zasílání zpráv, ale mezi nimi měl Ethernet nejnižší hodnotu MTU se svými 1500 bajty. Překročení minimální hodnoty MTU v síti znamená buď způsobení fragmentace paketů, nebo zapojení do PMTUD [zjištění maximální velikosti paketu pro vybranou cestu]. Obě možnosti měly své zvláštní problémy. I když někdy velcí výrobci OS snížili hodnotu MTU ještě níže.

Faktor účinnosti

Nyní víme, že internetová MTU je omezena na 1500B, z velké části kvůli starším metrikám latence a hardwarovým omezením. Jak moc to ovlivňuje efektivitu internetu?

Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Pokud se podíváme na data z velkého výměnného bodu internetového provozu AMS-IX, vidíme, že minimálně 20 % přenášených paketů má maximální velikost. Můžete se také podívat na celkový provoz LAN:

Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Pokud zkombinujete oba grafy, dostanete něco jako následující (odhady provozu pro každý rozsah velikosti paketů):

Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Nebo když se podíváme na provoz všech těchto hlaviček a dalších servisních informací, dostaneme stejný graf s jiným měřítkem:

Jak se 1500 bajtů stalo maximální jednotkou přenosu informací na internetu

Poměrně velká část šířky pásma je vynaložena na hlavičky pro pakety v největší třídě velikosti. Vzhledem k tomu, že nejvyšší režie ve špičce provozu je 246 GB/s, lze předpokládat, že pokud bychom všichni přešli na „jumbo snímky“, když taková možnost ještě existovala, byla by tato režie jen asi 41 GB/s.

Ale myslím, že dnes pro největší část internetu ten vlak už odjel. A přestože někteří poskytovatelé pracují s MTU 9000, většina to nepodporuje a snažit se něco globálně změnit na internetu se znovu a znovu ukázalo jako extrémně obtížné.

Zdroj: www.habr.com

Přidat komentář