Permalänk
Medlem

Hur man testar Wi-Fi

Har sett många som testar wi-fi genom att köra en online test på tex bredbandskollen. När man förstår wifi på riktigt inser man hur komiskt detta är. Detta är en guide för att du skall förstå varför.

Det finns två enkla sätt att se över och testa ditt wi-fi.

Nummer ett: Signal styrka

RSSI (Received signal strength indication) mäts i dBm och är en mätmetod för din anslutning till din router/accesspunkt från din enhet. -40 dBm indikerar superbra anslutning och -75 dBM inkerar en "dålig" anslutning. Dvs högre tal = bättre.

Nummer två: iPerf

När du kör bredbandkollen eller andra online testare testar du din anslutning mot intetnet. Detta innebär att om du har en internethastighet på 250/250 Mbit är också detta din gräns. Dessutom är du beroende av hela din "traceroute" på vägen till testservern, vilket i praktiken kan innebära att när du testar påverkar "hopp tre av fyra" hela testet. (Traceroute innebär i princip hur många hopp din anslutning gör innan den når sin slutdestination) I praktien kan detta innebära att just vid testtillfället är "hopp 3" överbelastad vilket ger dig en lägre hastighet. Tex om jag kör speed test mot en server i Frankrike får jag inte samma resultat som om jag kör mot Norge. Detta beror på att antal hopp och trafik ner till Frankrike är längre än till Norge. Detta påverkar även letancy.
Så, hur testar jag wi-fi? iPerf.
iPerf är ett verktyg du installerar på en dator eller server för att ansluta din mobil, laptop eller annan wi-fi enhet mot servern. Du gör alltså testet lokalt från din enhet till en annan enhet i ditt nätverk. Observera att din server bör vara ansluten mee kabel. Annars mäter du wifi i två riktningar.

1. Börja installera Homebrew på din server/dator.
2. Installera därefter iPerf: https://formulae.brew.sh/formula/iperf3
3. Installera därefter iPerf på din testenhet. Finns tex en iPhone app.
4. Kör kommandot på din server för att starta server mjukvaran https://fasterdata.es.net/performance-testing/network-trouble...
(iPerf finns även som Docker container, för tex Synology)
5. Testa. Enligt bilden ser ni testresultatet.

Kan även lösa en guide för hur ni ser dBm styrkan på en iPhone, men hoppas denna guide gjorde er lite klokare kring Wi-Fi och förstår ironin att "testa wi-fi" genom en "speed test online"
https://imgur.com/gallery/ZIchROv

Permalänk
Medlem

Trådstarten är bra. Nedanstående är inte menat som kritik mot den.

Flaggorna -R och --bidir är bra att känna till. Den senare finns inte på äldre versioner av iperf3. För att citera manualsidan:

Citat:

Normally, the test data is sent from the client to the server, and measures the upload speed of the client. Measuring the download speed from the server can be done by specifying the -R flag on the client. This causes data to be sent from the server to the client.

Citat:

-R,  --reverse
reverse the direction of a test, so that the server sends data to the client

--bidir
test in both directions (normal and reverse), with both the client and server sending and receiving data simultaneously

Notera att --bidir alltså testar något annat än först en test utan -R och sedan en test med -R!

Riktningen man kör i spelar roll när man testar Wi-Fi! Olika klienter har olika egeneskaper vilket kommer att påverka (framför allt) när klienten sänder data. En mobiltelefon kan ha sämre antenn än en laptop som kan ha sämre antenn än ett PCIe-nätverkskort. AP:n har antagligen de bästa antennerna, så sändning från AP till klient kommer antagligen fungera bättre än sändning från mobiltelefon till AP, vilket är bra eftersom det oftast är nerladdningshastighet man vill ha. Om det är det du vill testa, se till att köra iperf3 i den riktningen! Alla klienter sänder inte heller med max tillåten lagstadgad effekt, för att spara på batteri, men det gör troligen enheter med fast elförsörjning.

När man kommer långt bort från en AP kan det hända att trafik går fram åt ena håller men inte åt det andra - iperf3 kör TCP som default, vilket kräver att TCP-ACK:ar skickar i motsatt riktning relativt det huvudsakliga dataflödet (dessutom finns det L2 ACK:ar i Wi-Fi).

Ett Wi-Fi-test med iperf3 är inte generaliserbart speciellt långt. Det gäller för den klienten, vid den platsen, vid den tidpunkten (radioförutsättningar) och för just den konfigurationen: Har du auto på kanal-val på AP:n? (Olika kanaler har olika hög tillåten sändningseffekt). Vilken drivrutin/firmware kör du (har den automatuppdaterats sedan du testade sist)?

Det kan vara frestande att köra iperf3 på sin router, speciellt om man inte har någon trådad enhet som kan agera server. I så fall ska man hålla koll på CPU-användningen. Routrar har ofta klen CPU som kan riskera att bli flaskhals i mätningen. Man kan notera att iperf3 kör singeltrådat om man inte ger en flagga som säger något annat.

iperf version 2 och iperf3 är rätt olika. På Linux ska man alltså se till att installera rätt paket, glöm inte 3:an om det är iperf3 du vill ha!

Resultatet då? Varför får man inte den hastigheten som står i marknadsföringen för sin trådlösa router? Massor av anledningar, bland annat:

1) Bandbredden är (bland annat) en funktion av kodningen som är en funktion av RSSI och SNR vilket bland annat bestäms av avstånd, väggar, antenner och störningar från andra radiokällor. Den marknadsförda bandbredden är uträknad från den bästa kodningen, vilken bara kommer vara möjlig att uppnå precis invid routern och bara med kompatibla enheter.
2) Den marknadsförda bandbredden adderas mellan 2,4 GHz- och 5 GHz-banden och ingen normal enhet kan använda bägge samtidigt.
3) Den marknadsförda bandbredden använder antagligen 40 MHz breda kanaler på 2,4 GHz-bandet och 2x80 MHz på 5 GHz-bandet, men det är varken säkert att klienten klarar det eller att det är standardinställningen på routern. En halvering av kanalbredden halverar den teoretiska maxhastigheten (men inte den praktiska).
4) Bättre routers har minst 4x4 MU-MIMO och en "normal" klientenhet har 2x2, vilket minst halverar hastigheten från den teoretiska.
5) Du mätte med en massa andra enheter aktiva som låg och stal radiotid. Enheter på längre avstånd kräver mer radiotid efetrsom sämre kodning används. Enheter som stöder sämre kodning/äldre standarder kräver mer radiotid.
6) Räkna dessutom med att overhead från protokollen minskar bandbredden till 70% av teoretiskt max.

Citat:

Observera att din server bör vara ansluten med kabel. Annars mäter du wifi i två riktningar.

Det här förtjänar en upprepning. Se till att du förstår vad du mäter. Speciellt om det är mesh inblandat - hur många hopp över radio görs, och används samma radiokanal/tillgänglig radiotid för flera hopp?

Permalänk
Medlem

Bra komplettering. Har du överföringshastigheterna på olika kanalerna?

Gällande 40 mhz på 2.4Ghz bandet så har i princip inga enheter stöd för detta.

Gällande MIMO är det väl så att 4x4 på en AP kan ge 2x2 till 2st enheter med 2x2 stöd, därav halveringen?

Permalänk
Medlem

Men oftast är bredbandskollen fullt tillräckligt enligt mig. Ofta nöjer man sig med bra fart mot internet, så länge man inte har en NAS eller server. Vill inte påstå att jag upplevt att själva bredbandskollen är någon flaskhals på grund av att de är överbelastade. Mäter man från en dator med kabel skapar man sig också en baseline för vad ens internet och router klarar av när det trådlösa försvinner från ekvationen.

Men det är bra att börja med iperf om man vill gräva djupare i sitt trådlösa och kräma ut mer prestanda. Jag upplever dock att CPUn begränsar iperf i många fall när jag kört det.