Stahování je rychlé, tak proč každé kliknutí působí pomalé?
Velký přenos může jet plnou rychlostí, zatímco hovory a kliknutí zpožďují. Měřte dobu obratu, udrženou rychlost a zpoždění pod zátěží jako tři oddělené otázky.
Rychle stáhnout velký soubor a pak zjistit, že každé kliknutí je pomalé, není rozpor. Kapacita říká, kolik se toho za sekundu přenese; doba obratu říká, jak dlouho trvá výměna, než se stane něco užitečného. Zlepšení prvního nic neudělá pro druhé a druhé je to, co člověk pozoruje při psaní, klikání nebo mluvení. Měřte stížnost, ne spojení.
Rychlý soubor, pomalé kliknutí: dvě různá čísla
Hromadný přenos udržuje data nepřetržitě v pohybu, takže může hlásit zdravou rychlost, i když každý jednotlivý požadavek čeká. Mnohé benchmarky také otevírají několik spojení najednou, což zvyšuje souhrnný údaj, zatímco jediný požadavek zůstává pomalý. Oba výsledky jsou slučitelné a citování vyššího uživateli, který si stěžuje na zpoždění, je cesta ke ztrátě důvěry.
Načtení stránky je řetěz malých výměn: překlad jmen, navázání spojení, požadavek, odpověď a pak závislé požadavky. Každý krok znovu platí dobu obratu, takže cesta s vysokým zpožděním působí pomalu, i když má kapacity dost.
Tunel přidává vlastní cestu a zpracování a trasa je důležitější než značka na mapě. Dva výstupy ve stejné zemi mohou mít k jednomu cíli velmi odlišné cesty. Rozdíl dvaceti milisekund stačí ke změně pocitu ze stránky, i když číslem propustnosti sotva pohne. Proto by výběr výstupu měl vycházet ze vzorku latence, ne z ikony vlajky.
Měřte stížnost, ne spojení
Vyberte měření, které odpovídá větě, kterou uživatel řekl. Pomalé stahování potřebuje udrženou rychlost správným směrem; hovor se zpožděním potřebuje statistiky dané aplikace; stránka, která pomalu startuje, potřebuje časy překladu jmen a navázání.
ping -c 20 10.60.0.5
curl -sS -o /dev/null -w 'ttfb=%{time_starttransfer} rate=%{speed_download}\n' https://files.plant.example/1gb.bin
iperf3 -c 10.60.0.5 -t 10 -P 4První příkaz dává vzorek doby obratu k hostiteli, který odpovídá předvídatelně, druhý hlásí čas do prvního bajtu a udrženou rychlost jednoho spojení a třetí měří souhrnnou propustnost se čtyřmi paralelními toky. Spusťte je proti stejnému cíli ve stejnou denní dobu, protože srovnání ranního vzorku s večerním vytváří příběh, ne měření.
Při srovnávání výstupů držte cíl pevně. Změna serveru i tunelu mění jednu proměnnou na dvě a výsledek vám neřekne, která byla důležitá. Spusťte každý výstup alespoň třikrát, protože jediný vzorek často padne do změny směrování nebo do hlučné minuty. Medián je užitečnější než nejlepší případ.
Berte ICMP jako stopu, ne jako odpověď. Odpovídající hostitel může echo požadavky zpracovávat jinou cestou, než kterou používá vaše aplikace, a jedna ztracená odpověď není důkaz, že každá aplikace ztrácí pakety.
Latence pod zátěží je problém fronty
Nejvíc lidi mate vzorec spojení, které se v klidu zdá dobré a během zálohy nepoužitelné. To je fronta, ne kapacita. Nasycený odchozí kanál staví buffer před každý další paket, takže stisk klávesy čeká za kusem nahrávání.
ping -c 20 10.60.0.5 & iperf3 -c 10.60.0.5 -t 20 -R -b 20M
První příkaz vzorkuje latenci na pozadí, zatímco druhý sytí opačný směr. Pokud pingy během přenosu vyskočí a potom se vrátí, reprodukovali jste bufferbloat, místo abyste objevili chybu směrování. Oprava je obvykle nastavení správy fronty, nižší rychlost na pozadí nebo přesun hromadného přenosu mimo interaktivní cestu.
Snížení volitelného provozu na pozadí často pomůže víc než změna země výstupu. Je také levnější, vratné a ověřitelné za minutu. Velké nahrávání naplánujte mimo pracovní dobu, pokud frontu nelze řídit, a omezte jeho rychlost, pokud musí běžet přes den. Nastavení správy fronty je lepší oprava, když ho router podporuje.
Změňte jednu věc a srovnávejte stejné se stejným
U vysokého zpoždění v klidu srovnávejte výstupy s pevným cílem, potom srovnejte trasy pro nejlepšího kandidáta. U nízké stabilní propustnosti se místo toho dívejte na kapacitu, zatížení serveru a zpracování klienta, protože to jsou jiné limity.
Zapište, co jste měřili, proti kterému cíli, v jakou dobu a s jakým nastavením. Srovnání bez těchto čtyř faktů nelze opakovat a další člověk začne od nuly.
Pak přiřaďte nástroj k tvrzení v tiketu. "Pomalý internet" není měření; "první bajt trval 900 ms k tomuto hostiteli, zatímco propustnost byla dobrá" měření je a ukazuje přímo na zpoždění, ne na kapacitu.