Note!
When possible, use a wired Ethernet connection to eliminate variables ( if you’re only trying to find out whether your house or apartment is actually getting the speeds you’re paying for ). Adding wireless networking into the mix makes the troubleshooting considerably more difficult, since you’ll have to run more tests to isolate the issue to your I/RSP, your router, or your device. Wireless is a shared medium and negatively affected by many factors.
More: https://www.duckware.com/tech/wifi-in-the-us.html
MTU - Maximum Transmission Unit
MSS Maximum Segment Size
More from Cloudflare: https://www.cloudflare.com/en-au/learni ... at-is-mss/
TCP Optimizer tool ( Windows only, run with Administrator rights, check backup config to restore! ): https://www.speedguide.net/downloads.php
Multi-Threading:
Multi-Threading is a type of download format that accesses data from different 'mirror servers' ( closer to your location ) & downloads different parts of the file at one time.
Cloudflare Speed Testing - https://speed.cloudflare.com/
OOKLA SpeedTest.net - https://www.speedtest.net/
Why ?
https://help.speedtest.net/hc/en-us
http://www.speedtest6.com/
https://testmy.net/mirror?testServer=au
or Multithread = ON @ https://testmy.net/mirror
Netflix's fast.com - https://fast.com/
Why ??
M-Lab - https://speed.measurementlab.net/#/
More sites:
https://speedof.me/
https://www.ozspeedtest.com/
OSI Layers explanation attempt:
Layer 2 uses MAC addresses and is responsible for frame delivery from hop to hop.
Layer 3 uses IP addresses and is responsible for packet delivery from end to end.
Layer 4 accomplishes this by using an addressing scheme known as Port Numbers.
Specifically, two methods of distinguishing network streams exist. They are known as the Transmission Control Protocol (TCP), or the User Datagram Protocol (UDP).
Popular Speed Testing sites
-
- JuniorGeek
- Posts: 236
- Registered for: 4 years 1 month
- 4
- Location: Caboolture 4CAB POI FttN / Zürich GigETH DOCSIS 3.1
- x 2
- x 6
- Mood:
- Has thanked: 26 times
- Been thanked: 32 times
- Gender:
- Zodiac:
- Contact:
Popular Speed Testing sites
Last edited by Wamuran4512CH on Sat Oct 24, 2020 3:00 am, edited 4 times in total. word count: 312
Tags:
-
- JuniorGeek
- Posts: 236
- Registered for: 4 years 1 month
- 4
- Location: Caboolture 4CAB POI FttN / Zürich GigETH DOCSIS 3.1
- x 2
- x 6
- Mood:
- Has thanked: 26 times
- Been thanked: 32 times
- Gender:
- Zodiac:
- Contact:
Re: Popular Speed Testing sites
When you buy an Internet link, you want to see if you get what you’re paying for. If you want to do that at home, you can use many speed test services as the penultimate post shows.
However, those methods are not reliable enough for an enterprise. Furthermore, you can only test Internet speed, and not speed on internal/private circuits. That’s why, at the enterprise level, we use iperf (actually iperf3), a powerful and free tool. In this tutorial, we will see how to use iperf to verify the speed of any link, reliably.
What is iperf?
Iperf is a command-line tool that allows you to test the bandwidth, any way you like. Unlike online speed tests, you have to provide both server and client. In other words, when doing an online speed test, you connect to a server on the Internet, owned by the provider of the test (like Ookla). Then, the application measures the network performance between you and such a server. Instead, with iperf, you have to set up your own iperf server. Don’t worry, you don’t need special hardware, you only need to run a command from your prompt. In fact, you can have both the server and the client on the same computer.
The advantage of running your own server is predictability. You know where the server is, and you may repeat the test in the future. That’s not the case with online services, where they allocate you a server dynamically. This means you won’t be able to reproduce the same test in the future if you do an online speed test. Since you place the server whenever you want, you can also have it on your internal network and thus test internal links.
The sable version of iperf is iperf3. It is free software (BSD license) you can download from iperf.fr. Here is a quick link to the download page - https://iperf.fr/iperf-download.php
You will find an iperf for any operating system and architecture you need. In this guide, we are using iperf3 on Windows (64 bit), but the tutorial on how to use iperf is the same for any OS.
How to use iperf
Once we have iperf, we need to learn how to use it. As we mentioned above, we need to run both server and client. The server will keep listening, accepting client connections. Thus, this is the first thing we need to do. Running the server is as simple as writing iperf3 -s in the prompt (-s stands for server). The first time you do that, on Windows, it will ask you network permission. Of course, flag the permissions and click Allow access.
Once you enable the access, a simple message will appear on the prompt, telling you that the server is ready to accept connections. By default, iperf3 listens on port 5201.
The iperf server ready to accept connections.
Now, we will leave the server be. This server will accept all our connections. However, we will be able to tweak the tests and even pilot the server from the iperf client. That’s where the real deal is.
A simple speed test with iperf
Now, how to use iperf3 to run a simple speed test? You can simply use the iperf3 -c command, of course replacing “<server IP>” with the IP of your server. However, we want to have a better test. Thus, we want to give TCP all the time it needs to expand the window size: better to run a test for some more seconds. We can do that with the -t option, followed by the number of seconds. This will tell iperf3 how long to run the test. Generally, one to two minutes are enough (just to show, we will use 5 seconds). Since our server is running on the same PC, the target IP will be localhost at 127.0.0.1, but that’s just the case of this demonstration.
I opened another cmd window and ran the command:
If we want to know how to use iperf, we need to know how analyse the output. The standard output is a table with four columns. Furthermore, the last two rows of the table (after the dash line) represent the totals.
ID is the ID of the iperf operation
Interval is the time span the row refers to
Transfer is the amount of data exchanged between client and server. In the end, speed test is about transferring files and measuring how long it took.
Bandwidth is the measured bandwidth
Why don’t we have a single total/summary row? Because we want to see the different performances between sending and receiving. In fact, on the far right of the summary rows, you will see sender and receiver bandwidth. In our case, the sender is the client so it means the upload speed. The receiver means download speed. The two might not be always the same, in case of asymmetric bandwidth e.g. 100/40 for HFC or FttN.
Other cool options
So far so good. In fact, you know how to use iperf by simply using the commands above. However, you may want to use some options to tweak the measurement at your liking. If you want to know all options, use --help. Here, we will see the most useful ones.
-P creates N parallel connections, useful to push links to their limit
-R runs in reverse mode: the server will send and the client will receive
-b indicate a limit bandwidth (for example 10k, 5mb, 1gb). The test won’t go much beyond this value, even if the link has higher capacity.
-J generates the output in JSON once the operation finishes, useful if you want to use iperf in scripts.
Try to experiment combining all the options you’d like together. You will achieve enterprise-grade professional bandwidth testing.
Conclusion (and TL;DR)
Iperf3 is a powerful tool to run custom and reliable bandwidth tests. In fact, it is perfect for enterprise-grade requirements. If you want to know how to use iperf, you need only two basic commands.
Lithuanian public server:
https://lg.hostens.com/
Useful help page: https://www.hostens.com/knowledgebase/t ... th-iperf3/
example:
My test from Zürich on a HP Z400 W10 workstation:
Command used:
** You might need to allow port forwarding at your router for port 5201 both TCP & UDP if intending a foreign host to act as a client / sender to a machine on your private network acting as the server.
However, those methods are not reliable enough for an enterprise. Furthermore, you can only test Internet speed, and not speed on internal/private circuits. That’s why, at the enterprise level, we use iperf (actually iperf3), a powerful and free tool. In this tutorial, we will see how to use iperf to verify the speed of any link, reliably.
What is iperf?
Iperf is a command-line tool that allows you to test the bandwidth, any way you like. Unlike online speed tests, you have to provide both server and client. In other words, when doing an online speed test, you connect to a server on the Internet, owned by the provider of the test (like Ookla). Then, the application measures the network performance between you and such a server. Instead, with iperf, you have to set up your own iperf server. Don’t worry, you don’t need special hardware, you only need to run a command from your prompt. In fact, you can have both the server and the client on the same computer.
The advantage of running your own server is predictability. You know where the server is, and you may repeat the test in the future. That’s not the case with online services, where they allocate you a server dynamically. This means you won’t be able to reproduce the same test in the future if you do an online speed test. Since you place the server whenever you want, you can also have it on your internal network and thus test internal links.
The sable version of iperf is iperf3. It is free software (BSD license) you can download from iperf.fr. Here is a quick link to the download page - https://iperf.fr/iperf-download.php
You will find an iperf for any operating system and architecture you need. In this guide, we are using iperf3 on Windows (64 bit), but the tutorial on how to use iperf is the same for any OS.
How to use iperf
Once we have iperf, we need to learn how to use it. As we mentioned above, we need to run both server and client. The server will keep listening, accepting client connections. Thus, this is the first thing we need to do. Running the server is as simple as writing iperf3 -s in the prompt (-s stands for server). The first time you do that, on Windows, it will ask you network permission. Of course, flag the permissions and click Allow access.
Code: Select all
iperf3 -s
Once you enable the access, a simple message will appear on the prompt, telling you that the server is ready to accept connections. By default, iperf3 listens on port 5201.
The iperf server ready to accept connections.
Now, we will leave the server be. This server will accept all our connections. However, we will be able to tweak the tests and even pilot the server from the iperf client. That’s where the real deal is.
A simple speed test with iperf
Now, how to use iperf3 to run a simple speed test? You can simply use the iperf3 -c command, of course replacing “<server IP>” with the IP of your server. However, we want to have a better test. Thus, we want to give TCP all the time it needs to expand the window size: better to run a test for some more seconds. We can do that with the -t option, followed by the number of seconds. This will tell iperf3 how long to run the test. Generally, one to two minutes are enough (just to show, we will use 5 seconds). Since our server is running on the same PC, the target IP will be localhost at 127.0.0.1, but that’s just the case of this demonstration.
I opened another cmd window and ran the command:
Code: Select all
iperf3 -c 127.0.0.1 -t 5
If we want to know how to use iperf, we need to know how analyse the output. The standard output is a table with four columns. Furthermore, the last two rows of the table (after the dash line) represent the totals.
ID is the ID of the iperf operation
Interval is the time span the row refers to
Transfer is the amount of data exchanged between client and server. In the end, speed test is about transferring files and measuring how long it took.
Bandwidth is the measured bandwidth
Why don’t we have a single total/summary row? Because we want to see the different performances between sending and receiving. In fact, on the far right of the summary rows, you will see sender and receiver bandwidth. In our case, the sender is the client so it means the upload speed. The receiver means download speed. The two might not be always the same, in case of asymmetric bandwidth e.g. 100/40 for HFC or FttN.
Other cool options
So far so good. In fact, you know how to use iperf by simply using the commands above. However, you may want to use some options to tweak the measurement at your liking. If you want to know all options, use --help. Here, we will see the most useful ones.
-P creates N parallel connections, useful to push links to their limit
-R runs in reverse mode: the server will send and the client will receive
-b indicate a limit bandwidth (for example 10k, 5mb, 1gb). The test won’t go much beyond this value, even if the link has higher capacity.
-J generates the output in JSON once the operation finishes, useful if you want to use iperf in scripts.
Try to experiment combining all the options you’d like together. You will achieve enterprise-grade professional bandwidth testing.
Conclusion (and TL;DR)
Iperf3 is a powerful tool to run custom and reliable bandwidth tests. In fact, it is perfect for enterprise-grade requirements. If you want to know how to use iperf, you need only two basic commands.
- First, run a server on a device with iperf3 -s.
- Then, on another device run iperf3 -t 60 -c .
Lithuanian public server:
https://lg.hostens.com/
Useful help page: https://www.hostens.com/knowledgebase/t ... th-iperf3/
example:
My test from Zürich on a HP Z400 W10 workstation:
Command used:
Code: Select all
iperf3 -c iperf.scottlinux.com -p 5201 -i 1 -t 10
word count: 1167
-
- JuniorGeek
- Posts: 236
- Registered for: 4 years 1 month
- 4
- Location: Caboolture 4CAB POI FttN / Zürich GigETH DOCSIS 3.1
- x 2
- x 6
- Mood:
- Has thanked: 26 times
- Been thanked: 32 times
- Gender:
- Zodiac:
- Contact:
Re: Popular Speed Testing sites
Having installed iperf3 for Linux, I ran:
Code: Select all
iperf3 -c iperf.scottlinux.com -p 5201 -i 1 -t 10
Public servers: https://iperf.fr/iperf-servers.php#public-servers
Some servers require a retry after about 45 seconds to avoid a DDOS-like situation - just retry or:
Frankfurt, DE
Good links for tests:
https://as62240.net/speedtest
and https://mtr.sh/
word count: 79