LibreSpeed: Speedtest No Flash, No Java, No Websocket, No Bullshit.

sag@lemm.ee to Open Source@lemmy.ml – 460 points –
GitHub - librespeed/speedtest: Self-hosted Speed Test for HTML5 and more. Easy setup, examples, configurable, mobile friendly. Supports PHP, Node, Multiple servers, and more
github.com
45

317kB. I love tiny apps <3

How is that tiny though?

Considering this is about sending some random data to a server and measuring the speed, that's quite large. I've seen whole computer games that fit in 1/10 of that space.

It could fit in a standard 3.5 inch floppy disk, sure it's not the smallest, but for a full app written in javascript and not asm it is, in fact, small

Aaaaand your ISP has already begun forcibly speeding up your service to make it look better in 3... 2... 1...

No doubt the second they figure this out a large amount of the scummy ISPs around the world are gonna start temporary reverse speed throttling when this is used, per usual, to make themselves look better.

No Java?

There were something called "Java applets" on the web before flash. It was real Java, probably a sunset of that. There was an addon just like flash.

I doubt they would care enough for Java applets that died a long time ago to put "No Java" in the description

36% Javascript so this statement feels a little strong

Seen as the readme says this in the very next sentence, and they reference Flash, I think they're actually talking about the full fat Oracle Java runtime, not just Javascript.

Side note: I found a support page on speedtest.net that still says you need Flash installed, but only Flash, no Java required here: https://sandboxsupport.speedtest.net/hc/en-us/articles/202610754-What-are-the-requirements-to-use-Speedtest-net

JavaScript has nothing to do with Java. They are completely different languages and environments.

Does anyone know of a speed test where you can set it up to run by itself regularly and push a notification to a channel (like pushbullet or similar) when the speed is below a certain threshold?

Edit: I went with self hosted speedtest-tracker as a docker container and notifications through Discord webhook.

Thanks for all the tips!! ❤️

If I had this requirement I would just generate a file of specific size, place it on one server and on the other I would have a shell script running via cron and measure the time it took to download the file.

It seems like a relatively simple problem.

BTW are you sure you want to test download speed and not latency? I think some routers might have the later built in.

Definitely speed. My ISP runs on another service providers hardware and it bugs out from time to time and I get 1/10th of the speeds I usually have. My ISP has no way of knowing this so I have to know when it happens and place a ticket so they can place a ticket on the hardware guys.

Fair warning that this would chew through a ton of bandwidth if you run it often, so only do it if you don't have bandwidth caps.

It really depends. Once every 1-5 minutes, sure, maybe. Once every 1-5 hours tho? You're likely fine.

True, although once per hour would still be a lot of data.

For example me running a fast.com test uses about 1.5GB of data to run a single test, so around 1TB per month if ran hourly.

Once every 6hrs would only be 180GB. A script that does it every six hours, but then increases the frequency if it goes below a certain threshold, could work well. I guess it all depends on how accurate you need the data to be.

Funnily enough, I had something exactly like this set up with home assistant. You can add Ookla and fast.com speed tests as devices, which will run the tests periodically, and then I had an automation set up to send me a message via telegram whenever speed was less than half of what it was supposed to be

If you’re on MacOS, you can run networkquality via crontab and append the results to a text file. I did this for a few months on a congested network to identify ideal times to try and do schoolwork.

E: A word.

There is a Speedtest Integration for HomeAssistant and you could automate a notification.

Does anyone know about a speedtest that's like iperf but multicore and suited for >100GbE? I've seen Patrick from STH use something that could do like 400GbE but I haven't found out what it's called

Cool project! I used OpenSpeedTest last week to test local intranet speeds.

If you already have docker/podman installed, the command below should get you going quickly:

 docker run --restart=unless-stopped --name openspeedtest -d -p 3000:3000 -p 3001:3001 openspeedtest/latest

Why "no websockets" is good? What's wrong with it?

At my last job, we used iperf a lot for internal speed tests and we used to wonder if there were public iperf servers to test against.

I'm not sure how secure that'd be or if that would even be worth it, but it was an interesting thought.

I prefer to use the ookla sppedtest CLI version. No bs but also better server coverage

Isn't it proprietary?

Also the ISP probably knows most of the servers speedtest owns and accelerate speeds for them along with other popular speed test websites, while throttling other regular connections.

Didn't think of that, but that sounds illegal

Too bad our supreme court has recently stripped all US agencies of their......agency...

As somebody who once worked at an ISP: they absolutely do that, and it isn't illegal. In fact, ISP's host many of Ookla's speedtest servers. The less infrastructure your test needs to go through, the better the results will be—there's nothing faster than a network that's communicating with itself.

wouldn't this also apply to libre speed test once it gets on their radar?