Ein ruter med eit Wi-Fi-merke på 3,000 Mbps kan framleis flytte kryptert trafikk med ein brøkdel av det talet, og ingen av dei to tala er uærlege. Radiovurderinga skildrar den beste moglege modulasjonen av den trådlause sambindinga som brikkesettet støttar; VPN-talet skildrar kor snøgt éi eining kan presse krypterte pakkar gjennom prosessoren til rutaren og ut av aksesslina di. Det er ulike lag, ulike pakkestorleikar og ulike målemetodar. Behandle talet på eska som eit tak ingen når, ikkje som ein prognose for tunnelferda di.

Steg 1: Kartlegg dei fire laga som avgrensar talet

Nesten kvar klage på ein treg ruter som eg har arbeidd med, landar i eitt av fire nivå: den trådlause sambindinga, WAN-aksessfarten, videresendingsvegen (NAT, brannmur, tilkoplingssporing) eller VPN-kryptovegen. Dei staplar seg, og det tregaste nivået avgjer resultatet. Ein annonsert Wi-Fi-fart talar berre om det første nivået, og han talar sjenerøst om det.

Talet kjem frå straumar gonger kanalbreidd gonger den høgste modulasjonen brikkesettet kan forhandle. Ein 2x2-radio på 5 GHz ved 80 MHz med 1024-QAM blir annonsert nær 1,200 Mbps, men Wi-Fi er eit delt halvdupleksmedium: klientar byter på, atttakingar og administrasjonstrafikk brenn lufttid, og TCP legg på si eiga overlast. Ein klient som forhandlar toppfarten under ideelle tilhøve, måler vanlegvis godt under helvta, og mindre når nabonett dukkar 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

Viss tabellen peikar på radioen, fiks den trådlause sida først: band, kanalbreidd, avstand. Viss han peikar under radioen, er dei neste fire stega viktige, og inga mengd antennekjøp vil endre det.

Steg 2: Ta ei kabelbasert grunnlinje før du rører radioen

Set den berbare på Ethernet og mål først vegen utan tunnelen, for det gjev deg ein nevnar. Køyr gjennomstrøymingsverktyet på den andre sida, på VPS-en eller heimeserveren som avsluttar VPN-en, og peik klienten mot den offentlege adressa hans slik at trafikken går gjennom rutaren og aksesslina di.

# 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 tal frå den blokka svarar på ulike spørsmål. Éin straum viser taket per tilkopling, som omfattar åtferda til TCP-vindauget og kvar som helst per-flyt-forming på vegen. Fire straumar viser om sambindinga har kapasitet du ikkje brukar, fordi parallelle flytar kan fylla eit røyr som éin flyt ikkje fyller.

Hald det ærleg: same vert, tid på dagen og varigheit, utan at noko anna strøymer i huset. Ei overføring på tretti sekund er rett eining her, og RFC 6349, rammeverket for testing av TCP-gjennomstrøyming, er bygt på nettopp den tankegangen, fordi korte utbrot og små førespurnader smigrar ei sambinding. Skriv ned grunnlinja før du endrar noko.

Steg 3: Køyr den same testen gjennom tunnelen

Gjenta det no mot tunneladressa til endepunktet, med same klient, varigheit og tal på straumar, med tunnelen oppe og ingen annan trafikk. Tilhøvet mellom dei to resultata fortel kva kryptering og innkapsling kostar på den maskinvara; det absolutte talet fortel om det er nok for arbeidet.

Fylg med på teljarane medan overføringa går. På WireGuard rapporterer wg show overførte byte per partnar; på OpenVPN gjev ei statusfil som blir skriven med mellomrom deg same vising.

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

Viss tunneltalet er nær den kabelbaserte grunnlinja, er ikkje VPN-en flaskehalsen din, og du kan slutta å skylde på han. Viss det er ein brøkdel av grunnlinja, skjedde tapet inne i krypterings- og videresendingsvegen til rutaren, og neste steg fortel kva del.

Éi åtvaring: når utgangs-IP-en blir endra, vel nokre farts testtenester stille ein annan måleserver, slik at du endar med å samanlikne to ulike destinasjonar. Fest serveradressa sjølv.

Steg 4: Les prosessoren som ein veg, ikkje som eit gjennomsnitt

Ein ruter som viser 30 prosent total prosessor kan framleis vera metta: arbeidet til éin tunnel landar vanlegvis på éin kjerne, éi avbrotstal eller éin kerneltest, så gjennomsnittet gøymer taket. Sjå på tal per kjerne og softirq i staden for målaren på dashbordet.

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

Tre ting betyr noko i den utskrifta. Éin kjerne fest nær 100 prosent medan dei andre står stille, peikar på ei grense per tilkopling. Tung %soft eller ein travel ksoftirqd på éin prosessor peikar på pakkehandsaming på mottakssida som ikkje spreier seg over køane. Og eit manglande aes-flagg tyder at prosessoren ikkje har AES-instruksjonar, så symmetrisk kryptering går i programvare og kostar mykje meir per pakke.

Implementasjonen betyr òg noko. Ein tradisjonell OpenVPN-instans i brukarrommet handsamar pakkane til éin tunnel stort sett på éin stad, så ein snøgg fleirkjernemaskin kan oppføre seg som einkjerne for den tunnelen. WireGuard i kjernen fordeler arbeidet over prosessorar, og datakanal-avlastinga i OpenVPN flyttar òg pakkehandsaminga inn i kjernen, men berre på bygg og plattformer som støttar det. Ein påstand om maskinvareakselerasjon på marknadsføringssida er ikkje prov på at kodevegen du køyrer, brukar han.

Steg 5: Avgjer kva du vil endre, i den rekkjefølgja

Gå nedover lista og stopp ved den første lina som er sann, fordi å endre noko under henne flyttar ikkje talet.

1. Kabelbasert direkte gjennomstrøyming er under det du betalar for: snakk med leverandøren, fordi tunnelen ikkje kan skape kapasitet som aksesslina ikkje leverer. 2. Kabelbasert direkte er fint, men éin kjerne fest seg under tunneltesten: kryptovegen til rutaren er grensa. 3. Prosessoren er ledig, men tunnelen er treg: sjekk MTU og fragmentering, deretter eigen kapasitet til det fjerne endepunktet. 4. Berre Wi-Fi-klientar er trege: byt band eller kanalbreidd, og godta at den annonserte farten aldri var eit VPN-tal.

Når rutaren verkeleg er grensa, er dei ærlege vala eit apparat med AES-instruksjonar og ein snøggare videresendingsveg, ein tunnel på kjernesida som WireGuard i staden for ein i brukarrommet, eller å flytte klienten inn på sjølve apparatet slik at rutaren sluttar å kryptere. Å slå av autentisert kryptering for å vinne ein referansetest er ikkje eitt av dei; det byter ein tryggleikseigenskap mot eit tal som framleis ikkje vil passe eska.

Før du kjøpar noko, køyr steg 2 og 3 på nytt på den nye eininga med same server og varigheit, og samanlikn deretter tilhøve i staden for toppar.

Relaterte artiklar