NetLab jak pomalé to může být

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Rozpočet zpoždění: čtyři části, které rostou jinak

„Síť má latenci 200 µs“ je věta, se kterou se nedá nic dělat. Užitečné je vědět, z čeho těch 200 µs je, protože každá část se zmenšuje jiným zásahem — a jedna z nich se nezmenšuje vůbec.

16.3123.0celkem 147.6 µs, 100 Mb/svyslání rámce8.16 µs6 %let po kabelu0.10 µs0 %přepínače16.32 µs11 %čekání ve frontě123.04 µs83 %Největší podíl má:čekání ve frontěFronta je jediná část, kterouneurčuje váš vlastní provoz.
Táhni jednotlivými parametry a sleduj, která část baru roste. Zkus krátký rámec na dlouhém kabelu a pak dlouhý rámec přes tři přepínače — pokaždé vyhraje něco jiného.
částroste szmenší se
vyslání (serializace)velikostí rámce / rychlostí linkyrychlejší linka, kratší zpráva
let (propagace)délkou kabelukratší kabel — a nijak jinak, je to rychlost světla
přepínačepočtem skokůmíň skoků, průchozí režim
frontacizím provozemviz kapitoly 10–12

Jen ta poslední není vaše

První tři jsou vlastnosti vašeho návrhu: víte, jak dlouhé máte kabely, kolik máte přepínačů a jak velké posíláte zprávy. Fronta je vlastnost toho, co dělají ostatní — a proto se nedá spočítat, jen omezit.

Proto se v průmyslu odděluje řídicí síť od kancelářské. Není to paranoia. Jeden člověk, který si na tomtéž přepínači stáhne aktualizaci, přidá do fronty stovky plných rámců, a ty se do rozpočtu regulační smyčky nevejdou.

Číslo, které překvapí: na deseti metrech kabelu je let 50 ns. Na tomtéž spoji je vyslání plného rámce při 100 Mb/s 123 µs — dva a půl tisíce krát víc. V budově tedy na délce kabelu prakticky nezáleží a záleží na velikosti rámců a počtu přepínačů. Mezi městy je to naopak.

t = rámec/rychlost + délka/(0,66c) + skoky × rámec/rychlost + frontaa jen ten poslední člen není váš

Vzorce v této kapitole

t — rozpočet zpoždění
t = t_ser + t_prop + t_sw + t_q [s] kap. 4