Door Jelle Stuip en Olaf Weijers

Zo testen we wifiapparatuur

Ruis en demping in een kooi van Faraday

25-03-2022 • 06:01

75

Singlepage-opmaak

Reactietijd

Reactietijd of latency is een belangrijk onderdeel van de netwerkervaring voor de meer veeleisende gebruiker. Van een hoge reactietijd merk je niet zoveel tijdens het streamen van een filmpje, maar des te meer bij gaming. Alle gamingwifirouters ten spijt: echte gamers waarvoor reactietijd van levensbelang is, weten al jaren dat het beter is om bedraad aan de router verbonden te zijn dan te gamen over wifi. Dit heeft te maken met het feit dat je wifirouter over het algemeen meerdere clients verbonden heeft en de radiofrequentie (op wat mu-mimo-trucjes na) afwisselend gebruikt moet worden om die clients te bedienen.

Een kabel is niet altijd een optie; hoe zit het met de responstijd, als je op wifi bent aangewezen voor het gamen, ook als het netwerk door andere apparatuur wordt gebruikt? Om in drukke netwerkomstandigheden de responstijd toch acceptabel te houden, is bij Wi-Fi 6 ofdma toegevoegd. Ofdma staat voor orthogonal frequency division multiple access. Alle details van die techniek hebben we eerder behandeld in dit achtergrondartikel over de werking van wifi.

Work in progress

We willen dus graag de vertraging, oftewel de latency, meten als we met wifi verbonden zijn. Daarbij gaat het ons voornamelijk om het gedrag van de wifirouter als het netwerk drukker belast is. Daarnaast zijn we ook benieuwd naar de invloed van ofdma. Om die reden hebben wij dit testonderdeel ontwikkelt, maar het levert nog niet de consistente resultaten waar we naar op zoek zijn. Hierdoor kunnen we moeilijk iets over de resultaten zeggen en is vergelijken lastig.

De testmethode (tot nu toe)

Om het effect van ofdma te testen, willen we de latency tussen de server en client weten. Omdat ofdma in een of twee richtingen kan werken, willen we dit meten in beide richtingen, maar het is vooral de downlinkrichting, waarbij de wifirouter de ofdma-transmissies regelt richting de clients, die voor onze testresultaten van belang is.

Het aloude pingcommando dat je normaal gesproken zou gebruiken om de latency te bepalen, is in dit geval niet zo nuttig, omdat die de roundtriptijd meet, ofwel de totale tijd die verstreken is tussen het verzenden van de ping en het ontvangen van de reply.

Om beter te kunnen bepalen welk effect ofdma heeft, en in welke richtingen het actief is, gebruiken we het programma sping. Sping is een afkorting van de term 'splitping'. Een splitping is een variant op de traditionele pingtechniek, waarbij de software aan beide kanten een timestamp toevoegt als de ping wordt ontvangen en de reply wordt verzonden. Zo kun je zien hoeveel latency er in de upstream en in de downstream plaatsvindt.

Om het splitpingen goed te laten functioneren en omdat het om kleine latencywaarden gaat die op twee losse platformen worden gemeten (trafficgenerator en sta), moet de timestamp die wordt toegevoegd nauwkeurig zijn en moet de klok van beide computers zo exact mogelijk gelijk lopen.

De klokken dienen dus nauwkeurig gesynchroniseerd te zijn in onze testopstelling. Daarom is de trafficgenerator gebombardeerd tot NTP-server en synchroniseren de sta’s hun klok met de trafficgenerator, waarna de test begint.

We laten in de test drie clients via iPerf3 verkeer met een hoge prioriteitsklasse versturen, per client is dit begrensd op 50Mbit om de bandbreedte niet volledig te verbruiken, maar wel zoveel mogelijk radiotijd te eisen. Hiernaast starten we sping, om te kijken of en hoeveel vertraging er optreedt in beide verkeersrichtingen. Het ideaalbeeld dat de wifirouter hier zou moeten tonen, is dat met ofdma ingeschakeld de pingvertraging lager is dan met ofdma uitgeschakeld. Hoe lager het resultaat, hoe beter de wifirouter dit voor elkaar krijgt. Dit geldt voor de downlinkrichting.

De grafieken

De visualisatie van de resultaten van deze test doen we anders dan bij de vorige hoofdstukken. Omdat de pingtijden per meting nogal kunnen fluctueren, krijg je zonder te filteren een lijn die kriskras heen en weer loopt en waar moeilijk een patroon in te zien valt.

Om de resultaten toch duidelijk te visualiseren en te vergelijken, voeren we daarom wat statistiek uit. We nemen de 120 metingen per testrun, berekenen hiervan het gemiddelde en de standaardafwijking. Hiermee kunnen we op basis van de meetresultaten bepalen hoe hoog de kans is op een lage of hoge meetwaarde bij een nieuwe meetwaarde. Vervolgens plotten we twee lijnen per grafiek: de run met ofdma ingeschakeld en ofdma uitgeschakeld.

De voorlopige meetresultaten

De onderstaande grafiek laat de resultaten zien van als we de drie wifirouters de testmethode laten ondergaan op 2,4GHz in de downlinkrichting.

  • ASUS AX11000
  • TP-Link AX50
  • Netgear AX12

In die resultaten lijkt de test bij de Netgear Nighthawk AX12 de gewenste resultaten op te leveren. De resultaten van de ASUS GT-AX11000 geven een vreemd beeld als ofdma aanstaat: dan lopen de responstijden die we meten enorm op, maar hier kunnen we geen conclusie aan verbinden. De test zoals die op dit moment staat, heeft namelijk twee mankementen. Ten eerste is er een grote variatie te zien in de testresultaten. Als we acht keer dezelfde test uitvoeren, blijken de meetresultaten flink uiteen te liggen. Een oplossing voor dit probleem zou kunnen zijn om die resultaten te middelen of wellicht de test langer te laten draaien.

Ten tweede zouden we graag de eventuele invloed van ofdma op het testresultaat zien, maar dit is op dit moment niet uit de resultaten te destilleren. Er is weliswaar een verschil in het testresultaat met en zonder ofdma zichtbaar, maar dat zou ook te maken kunnen hebben met de zojuist benoemde meetfout. Een mogelijke oplossing voor dit probleem is het vergroten van het aantal clients of het aantal iPerf3-streams.

Om die reden schaven wij op dit moment aan de testvariabelen tot we meer consistentie in de resultaten terugzien. De testresultaten die we hier presenteren, zijn daarom nog het voorlopige tussenresultaat van de huidige set-up om ofdma te testen. Uiteindelijk is het doel om een testscenario te creëren waarin wifirouters die ofdma goed hebben geïntegreerd zich kunnen onderscheiden van producten die dat minder goed voor elkaar hebben. Pas dan zullen we de testresultaten van deze test meenemen in de beoordeling van een wifirouter en kunnen we beter en, nog belangrijker, op een eerlijke manier verschillende wifirouters op dit gebied met elkaar vergelijken.

Voor nu gaan we kijken of we de test betrouwbaarder kunnen maken door hem te verlengen en te experimenteren met het aantal en type streams, om te zien of we de werking en het effect van ofdma, bij de wifirouters die dat goed toepassen, duidelijker kunnen tonen. Suggesties die ons hierbij verder helpen zijn uiteraard welkom in de reacties.