#throughput

carstenraddatz@pluspora.com

When I upgraded my cable ISP tier to 1000/50 I quickly noticed the old 2011 OpenWrt router wasn't up to it, downstream consistently maxed out at around 260mbps. That said, its nearly always TCP offloading, and needs beefier hardware if you can't use that. I went to a downstream north of 420mbps and often go into the 600mbps region even with ac wifi. Upload otoh hasn't improved, meh.

Over at the OpenWrt forum there's a posting to answer all postings on how el cheapo CPUs fail:

Let's take a look at the math: At 1Gbps using 1500 byte packets, you need to send/receive 83333 packets per second. The packets need to be received by an interrupt, go through the firewall, be inspected, maybe have NAT applied, sent into a queue, the queue calculates rates to avoid over-sending on the link and causing buffers, and then hardware interrupts are serviced to actually send the packet along...
At 1 GHz processing rate, each packet gets 12000 clock cycles of calculation if the CPU is maxed out doing nothing but processing packets.
Evidently in an ideal world, we should have maybe 1.2GHz processors or better, and maybe have two cores at least one can handle interrupts on the receive interface, and one can handle interrupts on the send interface, and they can share the firewall and queueing duties.

(https://forum.openwrt.org/t/so-you-have-500mbps-1gbps-fiber-and-need-a-router-read-this-first/90305/45)

Still, because DOCSIS cable is a shared medium and oversubscribed ISP-wise, the throughput is wonky and inconsistent. But at least I know not my own CPU is to blame so I can point fingers at my provider vodafone. And I'd totally want to go 500/100 if only I could mix and match features. Sigh.

TL;DR Going cheap, stick with proprietary firmware to keep the TCP offloading feature, or gear up. A Turris Omnia should be fine, or any of the suggestions in the thread. I went with OPNsense on a small x86 box.

#openwrt #gigabit #throughput #docsis #docsis3.1 #docsis4 #wan #networking

carstenraddatz@pluspora.com

So now my mobile provider has granted my unlimited mobile data use, for almost two days. (I dunno why, a promotion of some kind. My haphazard guess is, they couldn't risk it on the day the German national team played, which was yesterday, and maybe had initially reserved it for the quarter final or whatever. Who cares.)

For testing I might peruse any or all of these, which works great for testing throughput as long as you have a shell:

Beginner level

while true; do wget -4 -O /dev/null "http://www.download-test.net/index.php?download=1&file_name=05-gb";done

while true; do wget -O /dev/null "http://speedtest.de.telekom-vpn.net/download/1GB.bin";done

while true; do wget -4 -O /dev/null "http://dl.dashnet.ovh/1GB";done

while true; do wget -4 -O /dev/null "http://fra36-speedtest-1.tele2.net/1GB.zip";done

while true; do wget -4 -O /dev/null "http://speedtest.meerfarbig.net/testfiles/1G";done

while true; do wget -4 -O /dev/null "http://212.183.159.230/1GB.zip";done

while true; do wget -4 -O /dev/null "http://speedtest.wobcom.de/sparsefiles/1G";done

while true; do wget -O /dev/null "http://speedtest.de.telekom-vpn.net/download/1GB.bin";done

Next level

while true; do wget -O /dev/null "http://speed.hetzner.de/10GB.bin";done

while true; do wget -O /dev/null " http://speedtest.tele2.net/1000GB.zip";done

However with an android phone, how do I even output to /dev/null? For now I'd think I'd be tethering to my linux laptop...

#unlimiteddata #mobilephones #data #usemorebandwidth #performance #speedtest #devnull #bandwidth #o2 #throughput