Speed Testing

Started by BrandyWine, July 27, 2025, 06:34:14 AM

Previous topic - Next topic
July 27, 2025, 06:34:14 AM Last Edit: July 27, 2025, 06:39:28 AM by BrandyWine Reason: more info/edit
Several ways to test bandwidth. Through the device, and from the device.
Since I just upgraded a cable modem and have a 1.3Gb service, to test cable service I do it from the device.

Here's an initeresting tidbit. Running the single tests using almost any tool does not accurately describe the WAN bandwidth ability. Results almost always seem dismal. However, if you ask for more data then the bandwidth use should go up, my tests show it so.
The best way is to use a fast site like an AWS S3 and the go grab that file using method below. But if you can stage a file there then just use the speedtest-cli. Try and download large files.

install the speedtest-cli (pkg install py311-speedtest-cli-2.1.3)
create script  file xyz.sh in /tmp
#!/bin/sh
speedtest-cli &
speedtest-cli &
speedtest-cli &
speedtest-cli &
speedtest-cli &
#
# curl example
# paths can be the same or different
# curl --output file1 [https://path-to-file] &
# curl --output file2 [https://path-to-file] &
# curl --output file3 [https://path-to-file] &
# curl --output file4 [https://path-to-file] &
# curl --output file5 [https://path-to-file] &
#
# example test files
# http://ipv4.download.thinkbroadband.com/2GB.zip
# https://proof.ovh.net/files/1Gb.dat

Then chmod 700 xyz.sh
Have your OPNsense web gui open on the Lobby Dashboard

Run the test ./xyz.sh

Now watch the iface widget, look at WAN bit rate.

I am achieving between 1.33-1.4Gb on my 1.3Gb service.

If you want through device testing, run same script from a WSL ubuntu or the like, but be wired directly to OPNsense device.


Is the speedtest-cli not able to max out the connection, is it single-stream only?
Personally I use speedtest-go (https://github.com/showwin/speedtest-go) and I get about 9.1Gbit out of 10Gbit.

Quote from: BrandyWine on July 27, 2025, 06:34:14 AMHave your OPNsense web gui open on the Lobby Dashboard
That shows that your OPNsense has resources to spare. The Dashboard does use quite a bit of resources, on a weaker system I wouldn't keep it open while running the test. Or run a test with and without the Dashboard open to see how it compares. Of course it also depends what widgets you have on the Dashboard.
Deciso DEC740

I have the std widgets + Telemetry Status.
I had just posted the hardware setup in the Hardware and Performance forum. A mini pc N150 16GB ram 256GB NMVe, using just copper for now.
N150 idles around 1GHz (860MHz using default settings) but can hit 3.6GHz quickly. I have sleep states set to C1(cpu0),C2,C2,C2 and set hwpstate to 25 for all, allows it to get moving rather nicely.
I only tested WAN speed from fw device, no through-device connections testing, or IPsec just yet.

The odd thing I found, no single speed test (cli, browser tests, etc) would ever show me the ability of the WAN service. Not sure if ISP throttles single streams or not, so I create a few streams to get downloads at the same time. 5 simultaneous downloads seems to get me around max of my ISP service. Also makes sense for the download path to be high speed, etc.