The point I was trying to make is that its not just things on our side which controls the final throughput that you'd get. When it comes to
gigabit speeds, there are multiple factors which can affect the speed.
1. Even though the ISP claims its 1 Gbps, at least for normal consumer broadband connections, its not dedicated to you, its shared with multiple users. ACT and most other ISPs use
GPON for last mile connectivity. The max throughput of a GPON link is 2.5 Gbps downstream and 1.25 Gbps upstream, this is shared with all the users sharing the same link. GPON can easily have split ratios of 1:32 or even higher, that means 32 other users share the same 2.5 Gbps.
2. The remote server should be capable of delivery the file/content at 1 Gbps, and again here too its not just one user accessing that same file from the server at one point.
3. The remote servers location, peering arrangements, local/international traffic and things like that would matter. Say content from
Google or
Netflix might have better throughput. Say you try to download a file from an international server, you might not get anywhere close to full gigabit speeds.
4. At gigabit speeds even your
router's performance would matter, it should be capable of doing gigabit NAT. Although many routers would come with a gigabit port, it need not necessarily support gigabit throughput WAN --> LAN.
5. For consumer 1 Gbps connections, ISPs most definitely limit you indirectly. A speedtest might be whitelisted and could show higher speeds, but when you actually try to use, you might end up being capped by the ISP.
I have a Spectra 1 Gbps connection, and having used it, unless you have many users, in realistic use cases you would never really achieve the full 1 Gbps.
Sure, if you want to just see a graph showing close to 1 Gbps you can achieve that. I put a 5 GB test file from
DigitalOcean Bangalore for download, with 12 threads and I got this.
Code:
[root@varkey-minipc ~]# vnstat -l
Monitoring enp2s0... (press CTRL-C to stop)
rx: 734.36 Mbit/s 62097 p/s tx: 7.56 Mbit/s 14534 p/s^C
enp2s0 / traffic statistics
rx | tx
--------------------------------------+------------------
bytes 7.54 GiB | 82.31 MiB
--------------------------------------+------------------
max 807.07 Mbit/s | 8.18 Mbit/s
average 687.16 Mbit/s | 7.33 Mbit/s
min 561.35 Mbit/s | 6.39 Mbit/s
--------------------------------------+------------------
packets 5345544 | 1287592
--------------------------------------+------------------
max 68239 p/s | 15621 p/s
average 58103 p/s | 13995 p/s
min 47467 p/s | 12150 p/s
--------------------------------------+------------------
time 1.53 minutes
[root@varkey-minipc ~]#
This is with a 5 GB test file from Digital Ocean New York, 10 threads
Code:
[root@varkey-minipc ~]# vnstat -l
Monitoring enp2s0... (press CTRL-C to stop)
rx: 161.55 Mbit/s 13665 p/s tx: 1.73 Mbit/s 3310 p/s^C
enp2s0 / traffic statistics
rx | tx
--------------------------------------+------------------
bytes 7.77 GiB | 85.74 MiB
--------------------------------------+------------------
max 326.03 Mbit/s | 3.65 Mbit/s
average 197.59 Mbit/s | 2.13 Mbit/s
min 120.69 Mbit/s | 1.20 Mbit/s
--------------------------------------+------------------
packets 5515079 | 1335168
--------------------------------------+------------------
max 27571 p/s | 6372 p/s
average 16712 p/s | 4045 p/s
min 10213 p/s | 2312 p/s
--------------------------------------+------------------
time 5.50 minutes
[root@varkey-minipc ~]#
These downloads were all sent to /dev/null so it never had to go to disk either. Anyway YMMV!
😉