My 1Gbps fibre line from Vox and Frogfoot – Absolutely glorious

Jan

Drifting in the black
Joined
May 24, 2010
Messages
4,755
My 300mps fibre at work feels slow now :(
I've been hammering this poor connection. Downloaded the whole Bitcoin blockchain (±150GB), downloaded and seeded all the x64 builds of LibreOffice, all the versions of Big Buck Bunny and Sintel (to a reasonable 2.0 ratio)...
 

Xzib1t

Expert Member
Joined
Jan 26, 2010
Messages
3,455
Nice, did they supply the Mikrotik device, or is it yours, I'm assuming it plugs into the fibre termination box in your house?
 

ponder

Honorary Master
Joined
Jan 22, 2005
Messages
83,282
We also discovered that when your line supports such high speeds, the speed of light becomes a slight limiting factor when downloading internationally.

Local downloads from Steam peaked at over 500Mbps. Switching to UK or US-based servers brought the download speeds down to between 200Mbps and 300Mbps.


The only thing the 'c' constant is gonna affect is your latency, c'mon!
 
Last edited:

AndrewAlston

Group Head of IP Strategy – Liquid Telecommunicati
Joined
Dec 21, 2005
Messages
294
It turns out there is a physical limitation on the download speeds you can achieve depending on your distance from a server.

Based on TCP throughput calculations, we discovered that the maximum theoretical throughput you can get to a local server is almost 30Gbps.

When downloading internationally to servers with pings between 150ms and 300ms, the maximum throughput is between 200Mbps and 300Mbps.
That's not actually correct. What you're talking about here is known as bandwidth delay product - and you can tune your way out of it - though on most modern systems the tuning is pretty decent (depends on the remote side though and their tuning, if you're downloading from a server that happens to be running a modern version of Linux for example, its default TCP Window sizes are far better tweaked than a default server running Windows 2008 R2 server.

For those who are interested - there are a bunch of tutorials online about scaling TCP window sizes to fit bandwidth - and they do help if you're on high speed connections (I've peaked at 1.7gigabit/second to the UK at 160ms latency post tweaking running a 10G NIC in the machine).

Alternatively, if you don't wanna read the guides and know exactly how this works and how bandwidth is limited by latency, just grab one of the optimizer utilities. Probably the best of which can be found here:

https://www.speedguide.net/downloads.php
 

cavedog

Honorary Master
Joined
Oct 19, 2007
Messages
17,828
Lenchen Place, The only place in Centurion that has frogfoot coverage. Their coverage is so limited....
 

Daruk

Honorary Master
Joined
Jul 18, 2008
Messages
46,089
I've been hammering this poor connection. Downloaded the whole Bitcoin blockchain (±150GB), downloaded and seeded all the x64 builds of LibreOffice, all the versions of Big Buck Bunny and Sintel (to a reasonable 2.0 ratio)...
The rest of us plebs in fibreless country settle for electrum wallet.
LOL @ Big buck bunny :crylaugh:
 

Jan

Drifting in the black
Joined
May 24, 2010
Messages
4,755
Nice, did they supply the Mikrotik device, or is it yours, I'm assuming it plugs into the fibre termination box in your house?
There was a stock shortage, so I used my own initially. They did a swap-out this week.
 

Jan

Drifting in the black
Joined
May 24, 2010
Messages
4,755
The only thing the 'c' constant is gonna affect is your latency, c'mon!
And latency at really high speeds affects throughput. Working on an article about this :)

What you're talking about here is known as bandwidth delay product - and you can tune your way out of it - though on most modern systems the tuning is pretty decent (depends on the remote side though and their tuning, if you're downloading from a server that happens to be running a modern version of Linux for example, its default TCP Window sizes are far better tweaked than a default server running Windows 2008 R2 server.
Very interesting, thanks Andrew.

Where does the Mathis equation fit in?

As I understood it, there is a maximum theoretical limit on a TCP link given by:

Mathis equation with loss.jpg

There's a pretty decent calculator on Switch.ch for this which I used - http://www.switch.ch/network/tools/...6&bw=1000&rtt2=300&win=64&Calculate=Calculate
 

ponder

Honorary Master
Joined
Jan 22, 2005
Messages
83,282
You are pretty much dependent on the remote host configuration.

You can try 1,000,000,000 bps * 0.2 seconds = 200,000,000 bits / 8 = 25000KB TCP window. (assuming 200ms latency)

You will have better results with the udp protocol as it does not rely on any acknowledgements from the remote end.
 

Jan

Drifting in the black
Joined
May 24, 2010
Messages
4,755
You are pretty much dependent on the remote host configuration.
That's the thing, though. As I understand it, no amount of tuning can get you out of the maximum throughput limits caused by packet loss.

And as soon as you have to deal with loss, the maximum segment size (usually under 1,460 bytes on the home broadband connections I've experienced) also comes into play.

Hence Mathis' equation.

If you don't have to deal with loss, the theoretical maximum throughput simply becomes <= (TCP Receive Window size) / RTT.

Incidentally, the maximum TCP RWIN seems to be 1GB (which is pretty massive).

You will have better results with the udp protocol as it does not rely on any acknowledgements from the remote end.
Yep, so long as you're not sending something where packet loss may be an issue, an un-ACKed protocol like UDP is the way to go. I'd really like to test maximum streaming speeds to overseas servers, but finding something to test against has proved difficult.
 
Top