Welcome to the new FlexRadio Community! Please review the new Community Rules and other important new Community information on the Message Board.
If you are having a problem, please check the Help Center for known solutions.
Need technical support from FlexRadio? It's as simple as Creating a HelpDesk ticket.

Understanding your Wifi performance

Mike va3mw
Mike va3mw Member ✭✭
edited June 2020 in New Ideas
I am hoping that this may help others understand their Wifi performance, especially when it comes to getting your Maestro.   While there are many ways to do what I describe here, I thought I would share my thoughts.  

Also, if you get your Maestro on Wifi just humming along, your XYL will also be very happy watching Netflix's at the same time while you are doing HF.  Happy Wife, Happy Life.

Sharing some personal experiences (and professional), we likely are all aware that 2.4Ghz Wifi is grossly congested.  Very much like 20M in the middle of CQWW SSB.

Your Maestro running at full frame rates is much like streaming video to any device.  Multiple frames/second are being sent just to keep the waterfall and panadapter running.  All wonderful stuff.

5Ghz has the joy of a quieter band, wider bandwidth and unfortunately less **** through building surfaces, however we can work around that.  

For my bandwidth tests, I have a PI hardwired on my network that I  used as the test server.  On the PI (are anything similar), I installed 'iperf'.    https://iperf.fr/

For the PI is is very simple.  

sudo apt-get install iperf

Then, start iperf with 

sudo iperf -s (this will start iperf in server mode)

You can install the same on your laptop if you wish and do some simple bandwidth tests.  

Using jperf (which is a gui java application) gives you some nice graphs.   I have found that having javaw installed in the same sub directory as the jperf.jar file makes your life a little easier.  
 http://wirelesslanprofessionals.com/wp-content/uploads/2011/02/How-to-Guide-on-JPerf-and-IPerf.pdf

My jperf directory looks like--you may or may not need the javaw file based on your system path statements.  Also there is a risk that your javaw will not be updated by system updates -- just so you are aware.:

image

From here, we run the jperf.bat file.  

You will need to enter the ip address of your target server and play with how many streams  you want to test.  As you play along, you can also try different types of streams.  TCP or UDP.

image

iperf for windows runs fine as a command line tool, but with text output and very easy to test.  jperf adds a GUI on top of iperf.

iperf moves a defined amount of data between your 2 devices and then measures the overall the bandwidth.  It can do this both for TCP and UDP packets.

Both are important, however, the Maestro uses UDP packets for its waterfall, audio and panadapter.  UDP makes use of available bandwidth but consider it a fire and forget missile.  :)  

I did several tests and the first is 2.4Ghz TCP connection with 5 streams of data.  This is on a very quiet 2.4Ghz network, but not in a 2.4Ghz quiet world (my apartment in Montreal).  There are some great peaks, but those are very bursty.  

You can see that the streams fall apart sadly.  While I am only person 2.4Ghz network on this test, I have seen it so bad that you could not even ping Google.

image

Next, I did the same test on 5Ghz.  This is darn good stuff and will make your Maestro very happy.  

image

Next, let's try UDP.  These results are from the laptop sending packets only to the server.  For our tests, this is a bit backwards at this time, but I will add more shots later that show the server (PI) sending a ton of packets back to the laptop which is more  Maestro realistic.

Why this looks great, it doesn't tell us the entire story and we don't  know if the far end got the data.  

image

Since we only have 54mps of bandwidth, I thought I would try 5 x 1Mbs streams on 2.4Ghz.  Again, this looks great.  And, again, not the entire story.

image


More importantly, I will send UDP streams from the far end to the laptop much like the Maestro will be expecting.

Mike va3mw

Comments

  • Mike W8MM
    Mike W8MM Member ✭✭
    edited July 2019
    Mike, Thanks so much for going to the considerable trouble to write this up. I appreciate it very much.
  • Mike va3mw
    Mike va3mw Member ✭✭
    edited February 2018
    Thanks Mike

    The story now comes together.  

    In this case, I have the PI sending UDP packets and the laptop receiving those packets.  It is the laptop that really needs to receive these packets in order to build our Maestro screens (or your wife's Netflix for that matter :) ).

    On the laptop, I turned off the firewall for this test.

    jperf now looks like this as we have it in server mode ready to receive  UDP packets.

    image

    On the PI, we want to enter this command after we hit Run iPerf on the GUI on the  laptop.

    iperf -c 192.168.114.132 -u -P 5 -i 1 -p 5001 -C -f k -b 10.0M -t 10 -T 1 

    Of course 192.168.114.132 is the IP address of my test laptop.  You need to change it to match your test box.

    You will start to see:

    [email protected]i:~# iperf -c 192.168.114.142 -u -P 5 -i 1 -p 5001 -C -f k -b 10.0M -t 10 -T 1------------------------------------------------------------
    Client connecting to 192.168.114.142, UDP port 5001
    Sending 1470 byte datagrams
    UDP buffer size:  160 KByte (default)
    ------------------------------------------------------------
    [  7] local 192.168.114.110 port 36878 connected with 192.168.114.142 port 5001
    [  4] local 192.168.114.110 port 53192 connected with 192.168.114.142 port 5001
    [  6] local 192.168.114.110 port 53873 connected with 192.168.114.142 port 5001
    [  5] local 192.168.114.110 port 33678 connected with 192.168.114.142 port 5001
    [  3] local 192.168.114.110 port 40914 connected with 192.168.114.142 port 5001
    [ ID] Interval       Transfer     Bandwidth
    [  7]  0.0- 1.0 sec  1222 KBytes  10008 Kbits/sec
    [  4]  0.0- 1.0 sec  1220 KBytes  9996 Kbits/sec
    [  6]  0.0- 1.0 sec  1220 KBytes  9996 Kbits/sec
    [  5]  0.0- 1.0 sec  1220 KBytes  9996 Kbits/sec
    [  3]  0.0- 1.0 sec  1220 KBytes  9996 Kbits/sec


    This test is 5 UDP streams on 2.4Ghz Wifi with nothing else going on on my personal network.  

    image 

    The best speed we can get is just better than 2Mb/s.  

    Wow, this is supposed to be a G connection with speeds up to 54MB/s or more.   That is NOT very good and just enough to keep your Maestro running, however, odds are you will start to see black lines in  your waterfall for the dropped packets.  The jitter is 7ms.  Jitter is the very key as lower jitter numbers are so much better.

    This next test is on 5Ghz G with 5 Streams.  You can see a huge improvement.  We are 5 times faster and the jitter is 1/10 of what it was on 2.4Ghz.

    This will make your Maestro very very happy.  :)

    image

    Of course, you mileage may very.  

    Your 2.4Ghz might be better if you live out in the woods or a farm.  For the rest of us, we are also competing with our neighbours 2.4Ghz streaming Wifi.  

    The moral of the story?  Get off 2.4Ghz Wifi.    Just about every current device (phones, tablets, ipads) are dualbanded.  Now is the time to make the best of it.  Time to upgrade your Wifi Access Point.

    I hope that helps ... good DX all.  

    Mike VA3MW

  • Wim
    Wim Member ✭✭
    edited February 2017
    Great instructions to run the performance tests and throughput measurements indeed.
    The 5GHz channels have less range than 2.4GHz ones but are indeed much less congested.
    Another great test utility is 'WiFi Analyzer' Android App, it shows a spectrum display
    and shows the AP's with signal strength of the whole band so you can then choose
    the less congested WiFi channel to use for your location and set you access point
    accordingly.

    You can play teh video and see it in action here

    https://play.google.com/store/apps/details?id=com.farproc.wifi.analyzer&hl=en

    de K6TE Wim
  • Peter K1PGV
    Peter K1PGV Member ✭✭
    edited June 2020
    Outstanding post.

    I'd like to add a couple of points:

    VA3MW is right about band congestion -- But you should also be aware that those bands comprise discrete channels.  While every consumer wireless access point claims that it "auto-selects the best channel", it rarely does a good job of this in the real world.

    This is where a WiFi Scanner app can help.  You can get a very good idea of how many sessions are around you, which sessions are using which channels, and the best channel(s) for your Wireless Router to use.  Just about every consumer wireless access point I've seen will let you override the "auto-select channel" setting and select a good channel manually.

    For Windows, I suggest the free version of Acrylic WiFi -- It's a very solid product.  You can see the various sessions,their channels, and the throughput of each session.

    In my experience, there's nothing more useful in terms of tailoring a WiFi signal anyplace you have congestion.

    Peter
    K1PGV

  • Mike va3mw
    Mike va3mw Member ✭✭
    edited June 2020
    Peter 

    Thanks for this.  I was looking for a good tool that I could share.  This is exactly what we all can use.

    I don't work in the Wifi business any more, so I don't have the same commercial tools I used to have.  However, I ran it in the office building I am in and I always wondered by the Wifi was do bad (I don't have the IT access to it).  

    Now, I know.  In the screen shot below (I removed the SSIDs) I circled 2 broadcasting nodes.  These are HP Printers.  Notice that they are in B mode only?  Sadly, I don't think those printers are even owned by us.

    A broadcasting B node will drag down the entire network regardless of the speed of the rest of the network.  This is by design so that other nodes are good neighbours.  

    So, B drags down G and C modes.   G will drag down C nodes.

    Ouch... 

    Amazing what happens when you look under the covers.

    image
  • Peter K1PGV
    Peter K1PGV Member ✭✭
    edited December 2016
    Again, what Mike says is very true.  Have an ancient "b" device?  It'll slow down your other 2.5GHz connections.

    The solution here is "simple":  Upgrade to the 5GHz band as Mike previously suggested.  If WiFi performance/throughput/latency are important to you, get an "ac" mode WiFi Router.

    It's been a long time since I've worked in networking, Mike. I used to be an architect focusing on LAN protocols. But that was in the stone age.  In recent years, I have had "pleasure" of setting up and debugging a couple of access points and learned about the cool new, free, tools.

    You're doing a great service to the community by helping popularize and explain this information.  Getting WiFi to "just work" enough to surf the web is one thing.  Getting it to work to allow you to constantly support high-speed isochronous data (like for the Flex) is another thing entirely.

    In general, I advise people in the strongest possible terms to avoid WiFi for high-speed isochronous streaming if the results matter. Even the best wireless connection is no substitute for a hard-wired one. If you want a solid data stream you can count on (like, for a contest or chasing a new one) I would strongly recommend you stick with a wired connection.  If you're casually operating "backyard mobile" and don't mind if you miss an occasional frame or two or ten... WiFi is terrific.  This isn't any reflection at all on Flex, of course. It is the undeniable nature of the technology.

    Peter
    K1PGV

  • Tim - W4TME
    Tim - W4TME Administrator, FlexRadio Employee admin
    edited December 2016
  • Walt - KZ1F
    Walt - KZ1F Member ✭✭
    edited November 2016
    For not Windows, WiFi Analyzer is a very nice app. It'll show every hearable source and what channel they are on, modulation, and signal strength.
  • Mike va3mw
    Mike va3mw Member ✭✭
    edited February 2018
    The big question.  What is really wrong with my 2.4Ghz performance.  The best answer is QRM.  With so much QRM, the modems are stepping down trying to find a reliable baud rate to run at.   Using the Acrylic Analyzer, we find that there is about 57 AP's that I can hear on 2.4Ghz.  I can also confirm that the 'network' grinds to a halt after 8pm.  So bad that if I am on the 2.4Ghz network i can't even ping Google.
     

    The strongest one is on channel 9 and that makes him effectively wipe out channels 6 and 11.   This is likely the biggest problem, but coupled with the rest just turns this into a 20M pileup for Heard Island.  :)

    How to fix this? 
    • Go wired - it always works
    • Move to 5Ghz
    • Turning your router from BGN mode to GN helps
    • Make sure your drivers on your devices are fully patched
    • Look for a quiet channel
    • Move to an island or some other RF quiet area
    image

    I hope that helps!

    Mike va3mw



  • Walt - KZ1F
    Walt - KZ1F Member ✭✭
    edited November 2016
    Mike, you raise an interesting and provocative question. Cool, as they are the best kind! What jumped out at me in your very elaborate framing, is the issue may well not be too many APs, rather too great a sensitivity. I have WiFi Analyzer on my tablet. As I tend to live on the first floor rather than basement, it sees the neighborhood APs. My 1750AC router is in the basement so it doesn't see the QRM. We have two Android tablets, an iPhone, a SmartTV, and a Roamio (Tivo) on wireless. All but the old iPhone are on 5G. The AP is virtually right below them. Right now there is not much contention on 5G, I am confident that will change over time. On 5G my signal strength dwarfs any adjacent signal largely because everything is interior and the AP is shielded from external sources.

    I would expect people with Maestro, competing with their neighborhood (running from their back yard) will be reporting in their findings.
  • Mike va3mw
    Mike va3mw Member ✭✭
    edited February 2018
    Next week, I will actually use the SignalHound to grap some pure spectrum shots.  I just don't have it with me this week.

  • Walt - KZ1F
    Walt - KZ1F Member ✭✭
    edited November 2016
    I do, however, agree with your first suggestion, go cat-6. I am awed the electrician didn't put an RJ-45 behind where the TV and tivo are, as I instructed him to do. The walls were foamed in before I noticed it.
  • Mike va3mw
    Mike va3mw Member ✭✭
    edited February 2018
    The testing continues.

    Tonight, I went and bought a new Linksys WRT1900AC.   It is a dual band router and looks mean.

    http://www.linksys.com/us/p/P-WRT1900AC/

    I then put it in bridged mode (aka - simple) and put in service at my cottage where my remote base is.  

    There is no other Wifi signals around for about a mile.  Totally noise free (hence the reason the remote base is here).

    This is not an inexpensive router and comes in at about $200 CDN.  It looks like a nice hunk of iron.

    With the Maestro on 2.4Ghz, it is unusable and dropping over 1% of its packets.  On 5Ghz, it is a lot better, but not perfect.  I'm still dropping the odd packet.

    Now, this should work on both bands-flawless.  I'll play with it for a few more days, but there is something not right here.  I'm 3 feet from it.

    More to come.

    Mike va3mw

  • Mike va3mw
    Mike va3mw Member ✭✭
    edited February 2018
    Loading OpenWRT made no difference.  So, I wonder if it is an RF issue and not a firmware issues.


  • Mike va3mw
    Mike va3mw Member ✭✭
    edited May 2020
    All

    I spent all day testing 3 different routers.  The Linksys AC1900, an older Linksys WRT400 and a TP-Link AC1750 Archer C7.

    The AC1900 failed poorly (but others have had success)--I returned it.  I discussed this on my previous post.

    The WRT400 I have had for years (4 or 5).  I had it loaded with DD-WRT, but it was flawless.  Not bad if you can find one cheap.

    I also pulled a TP-Link AC1750 off the shell from a local store in Toronto as it was only $90 and at some point I could load either DD-WRT or OpenWRT.

    The price was right.  About $90 (actually, that was the Canadian price too).    Out of the box, I had some issues getting it to work right.  But, once I updated it to the latest firmware from the TP-Link web site, it came alive.   I spent all day testing both 2.4 and 5Ghz bands.  Both ran very very well.   I dropped a few packets on 5Ghz, but I as also feeding an Apple TV on that modem at the same time.

    I think the only thing I changed was 40Mhz channels on 5Ghz (not 80).  I'll go back and test 80 at some point.

    Later tonight, I changed the firmware to OpenWRT as I wanted some of the unique features on it.  It still performs well on both bands.

    So, if you are having issues, you might want to order this one of Amazon.  If it works, great.  If you have issues, you can always return it.

    Mike va3mw


    On Amazon:  http://www.amazon.com/TP-LINK-Archer-C7-Wireless-1300Mbps/dp/B00BUSDVBQ/ref=sr_1_1?ie=UTF8&qid=1...


  • k3Tim
    k3Tim Member ✭✭
    edited December 2016
    Hi Mike,

    Thanks for taking the initiative and testing these devices. I assume you are always running two slices in your testing. I've notice with only 1 slice the drops are reduced.

    Oddly the Linksys WRT-1900AC here bit the dust this week after several years of service. A Netgear Nighthawk R7800 seems to be better in talking to the Maestro. With only 1 SDU open the drop rate is 0.03% and I can't detect any problems. With 2 slices, the rate rises to 0.08% but the drop outs are detectable.

    Regards,
    k3Tim
  • Mike va3mw
    Mike va3mw Member ✭✭
    edited June 2016
    Hi

    All my testing is 1 slice as that is my operating preference.  

    However, I have done 2 slices remotely when I only have limited bandwidth almost zero dropout.  I will do some more 2.4ghz testing next weekend.

    Mike va3mw

Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.