En sikkerhedskopiering begynder at uploade, overførselsstælleren ser sund ud, og videosamtalen bliver til grød. Forbindelsen mangler ikke båndbredde i den forstand, tallet antyder; pakker venter i en kø et sted, og de interaktive ligger bag store datamængder. Det er køforsinkelse, almindeligvis kaldet bufferbloat. En VPN kan tilføje sin egen kø, men skaber sjældent problemet alene.

Båndbredde og forsinkelse er forskellige målinger

Gennemstrømning svarer på, hvor mange data der flyttes i sekundet, mens forsinkelse svarer på, hvor lang tid en pakke er om at krydse ruten. En mættet forbindelse kan holde et stort efterslæb og stadig rapportere god gennemstrømning, fordi køen tømmes med linjehastighed, når udbruddet slutter. Interaktiv trafik lider først, fordi et opkald har brug for en pakke hver par millisekunder i stedet for en stor fil til sidst. At måle kun et hastighedstestresultat skjuler derfor det symptom, der fik dig til at se efter.

Læg også mærke til retningen under belastning. En fuld uploadbuffer kan forsinke alt andet, mens downloadkapaciteten står ledig.

Mål rundturen under belastning

Tag en baseline på en rolig forbindelse, og gentag derefter samme måling, mens en kontrolleret overførsel kører. Sammenlign de to kørsler i stedet for de absolutte tal.

ping -c 20 -i 0.2 203.0.113.5
dd if=/dev/zero bs=1M count=50 | ssh [email protected] "cat > /dev/null"

Den første kommando tager stikprøver af rundturen, og den anden skaber en vedvarende upload uden behov for en hastighedstesttjeneste. En baseline, der forbliver flad, efterfulgt af en belastet kørsel, der stiger med hundredvis af millisekunder, er det mønster, du skal lede efter. Nogle netværk nedprioriterer ICMP, så behandl ping som et fingerpeg og bekræft med applikationens egen latensvisning. Hold testen kort på forbindelser med datagrænse, fordi en reproducerbar kontrast betyder mere end en lang mætning.

Flyt køen derhen, hvor flaskehalsen er

Køstyring hjælper kun på den enhed, der faktisk holder efterslæbet. Undersøg, hvad interfacet gør, før du tilføjer regler.

tc -s qdisc show dev eth0
tc qdisc replace dev eth0 root fq_codel

Kommandoen show rapporterer den aktuelle disciplin plus efterslæbs- og drop-tællere, hvilket fortæller dig, om dette interface er flaskehalsen eller blot sender trafik igennem. At erstatte roddisciplinen med en retfærdig køalgoritme giver korte strømme deres egen tur i stedet for én FIFO delt med store data. Anvend den på routerens WAN-interface, når routeren er flaskehalsen, ikke på tunneleenheden af vane. Behold den tidligere konfiguration, og test både lydhørhed under belastning og overførselshastighed igen, fordi en lidt lavere bulkhastighed er en god handel for brugbare opkald.

Hvad tunnelen ændrer, og hvad den skjuler

En VPN tilføjer kryptering og et ekstra hop, og den skjuler også individuelle strømme for udstyr uden for tunnelen. Det betyder noget, når en enhed længere fremme tilbyder prioritering for hver applikation, fordi den ser krypterede pakker i stedet for de oprindelige samtaler. En router, der selv afslutter tunnelen, har et andet syn og en anden arbejdsbyrde og kan klassificere indeni. Ingen af de to opsætninger fjerner køen på adgangsforbindelsen, som normalt er der, hvor forsinkelsen hober sig op.

Hvis forsinkelsen ikke følger belastningen, skal du stoppe med at finjustere køer og se andre steder: Wi-Fi-forhold, problemer med pakkestørrelse eller én dårlig udgangsvej. Køindstillinger anvendt uden en måling flytter blot mysteriet.

Relaterede artikler