En ruter med et Wi-Fi-merke på 3,000 Mbps kan fortsatt flytte kryptert trafikk med en brøkdel av det tallet, og ingen av de to tallene er uærlige. Radiovurderingen beskriver den beste mulige modulasjonen av den trådløse forbindelsen som brikkesettet støtter; VPN-tallet beskriver hvor raskt én enhet kan presse krypterte pakker gjennom ruterens prosessor og ut av aksesslinjen din. Det er forskjellige lag, forskjellige pakkestørrelser og forskjellige målemetoder. Behandle tallet på esken som et tak ingen når, ikke som en prognose for tunnelhastigheten din.

Trinn 1: Kartlegg de fire lagene som begrenser tallet

Nesten hver klage på en treg ruter jeg har jobbet med, lander i ett av fire nivåer: den trådløse forbindelsen, WAN-aksesshastigheten, videresendingsveien (NAT, brannmur, tilkoblingssporing) eller VPN-kryptoveien. De stabler seg, og det tregeste nivået bestemmer resultatet. En annonsert Wi-Fi-hastighet snakker bare om det første nivået, og den snakker sjenerøst om det.

Tallet kommer fra strømmer ganger kanalbredde ganger den høyeste modulasjonen brikkesettet kan forhandle. En 2x2-radio på 5 GHz ved 80 MHz med 1024-QAM annonseres nær 1,200 Mbps, men Wi-Fi er et delt halvdupleksmedium: klienter bytter på, gjentakelser og administrasjonstrafikk brenner lufttid, og TCP legger på sin egen overhead. En klient som forhandler topphastigheten under ideelle forhold, måler vanligvis godt under halvparten, og mindre når nabonett dukker opp.

SymptomTier to suspect first
Wired clients are slow tooWAN access or forwarding path
Only Wi-Fi clients are slowRadio, airtime, or channel width
One stream is slow, four parallel streams add upPer-connection CPU path, not the link
Every stream is slow and one core sits at 100%Crypto path
Fast to LAN hosts, slow to the internetWAN, not the tunnel

Hvis tabellen peker på radioen, fiks den trådløse siden først: bånd, kanalbredde, avstand. Hvis den peker under radioen, er de neste fire trinnene viktige, og ingen mengde antennekjøp vil endre det.

Trinn 2: Ta en kablet basislinje før du rører radioen

Sett bærbaren på Ethernet og mål først veien uten tunnelen, for det gir deg en nevner. Kjør gjennomstrømningsverktøyet på den andre siden, på VPS-en eller hjemmeserveren som avslutter VPN-en, og pek klienten mot dens offentlige adresse slik at trafikken går gjennom ruteren og aksesslinjen din.

# on the far host (VPN endpoint)
iperf3 -s

# wired client, direct to the endpoint's public address
iperf3 -c 203.0.113.10 -t 30

# same client, four parallel streams
iperf3 -c 203.0.113.10 -t 30 -P 4

To tall fra den blokken svarer på forskjellige spørsmål. Én strøm viser taket per tilkobling, som inkluderer TCP-vinduets oppførsel og eventuell per-flyt-forming på veien. Fire strømmer viser om forbindelsen har kapasitet du ikke bruker, fordi parallelle flyter kan fylle et rør som én flyt ikke fyller.

Hold det ærlig: samme vert, tid på dagen og varighet, uten at noe annet strømmer i huset. En overføring på tretti sekunder er riktig enhet her, og RFC 6349, rammeverket for testing av TCP-gjennomstrømning, er bygget på nettopp den tankegangen, fordi korte utbrudd og små forespørsler smigrer en forbindelse. Skriv ned basislinjen før du endrer noe.

Trinn 3: Kjør den samme testen gjennom tunnelen

Gjenta det nå mot tunneladressen til endepunktet, med samme klient, varighet og antall strømmer, med tunnelen oppe og ingen annen trafikk. Forholdet mellom de to resultatene forteller hva kryptering og innkapsling koster på den maskinvaren; det absolutte tallet forteller om det er nok for jobben.

Følg med på tellerne mens overføringen går. På WireGuard rapporterer wg show overførte byte per peer; på OpenVPN gir en statusfil som skrives med intervaller deg samme visning.

watch -n 1 'wg show wg0 transfer'
# OpenVPN: add --status /run/openvpn/server.status 10 to the server config
tail -f /run/openvpn/server.status

Hvis tunneltallet er nær den kablede basislinjen, er ikke VPN-en din flaskehals, og du kan slutte å skylde på den. Hvis det er en brøkdel av basislinjen, skjedde tapet inne i ruterens krypterings- og videresendingsvei, og neste trinn forteller hvilken del.

Én advarsel: når utgangs-IP-en endres, velger noen hastighetstesttjenester stille en annen måleserver, slik at du ender med å sammenligne to forskjellige destinasjoner. Fest serveradressen selv.

Trinn 4: Les CPU-en som en vei, ikke som et gjennomsnitt

En ruter som viser 30 prosent total CPU kan fortsatt være mettet: arbeidet til én tunnel lander vanligvis på én kjerne, én avbruddsrekke eller én kerneltråd, så gjennomsnittet skjuler taket. Se på tall per kjerne og softirq i stedet for måleren på dashbordet.

mpstat -P ALL 1
top -H -p $(pgrep -f 'openvpn')
grep -o -m1 aes /proc/cpuinfo

Tre ting betyr noe i den utskriften. Én kjerne festet nær 100 prosent mens de andre står stille, peker på en grense per tilkobling. Tung %soft eller en travel ksoftirqd på én CPU peker på pakkebehandling på mottakersiden som ikke spres over køene. Og et manglende aes-flagg betyr at CPU-en ikke har AES-instruksjoner, så symmetrisk kryptering går i programvare og koster mye mer per pakke.

Implementasjonen betyr også noe. En tradisjonell OpenVPN-instans i brukerrommet behandler pakkene til én tunnel stort sett på ett sted, så en rask flerkjernemaskin kan oppføre seg som enkeltkjerne for den tunnelen. WireGuard i kjernen fordeler arbeidet over CPU-er, og OpenVPNs datakanal-avlasting flytter også pakkehåndteringen inn i kjernen, men bare på bygg og plattformer som støtter det. En påstand om maskinvareakselerasjon på markedsføringssiden er ikke bevis for at kodeveien du kjører bruker den.

Trinn 5: Bestem hva du vil endre, i den rekkefølgen

Gå nedover listen og stopp ved den første linjen som er sann, fordi å endre noe under den ikke flytter tallet.

1. Kablet direkte gjennomstrømning er under det du betaler for: snakk med leverandøren, fordi tunnelen ikke kan skape kapasitet som aksesslinjen ikke leverer. 2. Kablet direkte er fint, men én kjerne fester seg under tunneltesten: ruterens kryptovei er grensen. 3. CPU-en er ledig, men tunnelen er treg: sjekk MTU og fragmentering, deretter det fjerne endepunktets egen kapasitet. 4. Bare Wi-Fi-klienter er trege: bytt bånd eller kanalbredde, og godta at den annonserte hastigheten aldri var et VPN-tall.

Når ruteren virkelig er grensen, er de ærlige alternativene en enhet med AES-instruksjoner og en raskere videresendingsvei, en tunnel på kjernesiden som WireGuard i stedet for en i brukerrommet, eller å flytte klienten inn på enheten selv slik at ruteren slutter å kryptere. Å slå av autentisert kryptering for å vinne en referansetest er ikke ett av dem; det bytter en sikkerhetsegenskap mot et tall som fortsatt ikke vil matche esken.

Før du kjøper noe, kjør trinn 2 og 3 på nytt på den nye enheten med samme server og varighet, og sammenlign deretter forhold i stedet for topper.

Relaterte artikler