How to Test the Bandwidth and Speed of Your Cloud Server?

22-02-2024 03:19:32

Testing Bandwidth Accessing the Cloud Server from a Local Environment

The bandwidth experienced when accessing a cloud server from a local environment is determined by the minimum value among three factors: the client's bandwidth, the intermediary network's bandwidth, and the server's bandwidth. When both the local computer (client) and the server have sufficient bandwidth, the bandwidth of the intermediary network often becomes the primary bottleneck. This is especially true in cross-country or cross-provider scenarios, where the intermediary network routes through congested nodes, and bandwidth throttling is applied to each request. Given the unpredictability and variability of client and intermediary network bandwidth, the best approach to understand the bandwidth when accessing a cloud server locally is to conduct actual tests post-application deployment.

Furthermore, the speed of home broadband (e.g., gigabit) refers to its download bandwidth, while the bandwidth for uploading data to the cloud server is considered upload bandwidth. Typically, the upload bandwidth of a home broadband connection is around 20Mbps, and the bandwidth of an international intermediary network may be less than 5Mbps. Therefore, even if the cloud server's bandwidth is unlimited, practical tests often yield bandwidths of less than 5Mbps.

Testing the Network Bandwidth of a Cloud Server

To test scenarios where the cloud server's bandwidth is fully utilized and to verify the authenticity of the provider's advertised cloud server bandwidth, the following methods can be employed:

1.Prepare another cloud server in the same data center, or within the same country/city. On one cloud server, prepare a large file (e.g., over 100MB), then test downloading and uploading this file to and from the other cloud server, recording the speeds of both operations.

2.Use the speedtest script for testing. This script automatically selects the fastest testing node accessible to the current cloud server, measuring both download and upload speeds.

For CentOS/Fedora operating systems, the relevant commands are as follows.

yum install speedtest-cli
speedtest-cli

For Ubuntu/Debian operating systems, the relevant commands are as follows.

apt install speedtest-cli
speedtest-cli

Example test results are as follows:

root@zhaomu.com:~# speedtest-cli
Retrieving speedtest.net configuration...
Testing from Multacom Corporation (1.1.1.1)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by BAI Connect (Los Angeles, CA) [1881.35 km]: 3.084 ms
Testing download speed................................................................................
Download: 877.11 Mbit/s
Testing upload speed......................................................................................................
Upload: 850.94 Mbit/s

For Windows operating systems, visit the https://www.speedtest.net/ website. You can use the fastest node detected by the speedtest for testing, or choose other nodes for testing manually.