🐇The State of Ookla Speedtest Servers in South Africa | Room for Improvement 🇿🇦

🐇The State of Ookla Speedtest Servers in South Africa | Room for Improvement 🇿🇦

Analyzing South Africa's Ookla Speedtest Servers | Outdated Hardware Hindering ISP Performance

Ookla Speedtest servers are a cornerstone for ISPs worldwide, serving as a primary tool for customers to assess their internet speeds. In South Africa, however, many of these servers hosted by ISPs are running on outdated hardware in virtualized environments, creating challenges that undermine their effectiveness. This article examines the current state of Speedtest servers in South Africa, why they’re so popular among customers, and how ISPs can improve their performance.


Speedtest servers are a favourite among customers for one simple reason: instant validation of their internet speed. Customers frequently use these tests to ensure they’re getting the service they’ve paid for, whether for residential or business connectivity. However, data from advanced traffic analysis across hundreds of business sites reveals that speed tests are one of the top applications consuming bandwidth.

While this might seem trivial, this widespread use of Speedtest servers indicates their importance in shaping customer perception. A poor result—whether due to actual network issues or limitations of the Speedtest server—can lead to unnecessary complaints and dissatisfaction.


Challenges with Current Speedtest Servers

In South Africa, most Speedtest servers hosted by ISPs are underpowered, running on outdated hardware and virtualized environments. This setup is inherently problematic for several reasons:

  1. Hardware Limitations
    Many servers are still running on 1 Gbps NICs, which become bottlenecks during high-bandwidth tests. When multiple customers test simultaneously, the server struggles to handle the load, distorting results for lower-bandwidth users.

  2. Virtualized Environments
    Virtual machines (VMs) add latency and reduce throughput compared to bare-metal setups. Inconsistent performance metrics in virtualized environments lead to unreliable speed test results.

  3. Outdated Kernel and Networking Stack
    Older Linux kernels lack support for modern congestion control algorithms like BBR (Bottleneck Bandwidth and Round-trip propagation time), which optimizes bandwidth utilization and improves latency.


Recommendations for ISPs

To ensure accurate and reliable speed tests, ISPs need to modernize their Speedtest server infrastructure. Here’s how:

1. Upgrade Hardware

  • Deploy High-Speed NICs: Upgrade to 10 Gbps Intel NICs to handle high-bandwidth traffic. Intel NICs are known for their superior driver support and performance under heavy loads.

  • Bare-Metal Servers: Avoid virtualized environments and run Speedtest servers on dedicated bare-metal hardware to reduce latency and maximize throughput.

2. Use the Latest Linux Kernel

  • Update to a modern Linux kernel that supports advanced networking features and algorithms like BBR and fq_codel.

3. Implement BBR for Congestion Control

BBR is a TCP congestion control algorithm designed to maximize throughput while minimizing latency. Here’s how to enable it:

  1. Ensure the Linux kernel is version 4.9 or higher (BBR is supported from 4.9 onwards).

  2. Add the following lines to /etc/sysctl.conf to enable BBR:

     net.core.default_qdisc = fq_codel
     net.ipv4.tcp_congestion_control = bbr
    
  3. Apply the changes:

     sysctl -p
    
  4. Verify that BBR is active:

     sysctl net.ipv4.tcp_congestion_control
    

    The output should display bbr.

4. Implement fq_codel for Latency Management

fq_codel (Fair Queueing Controlled Delay) is a modern queue management algorithm that reduces latency by prioritizing short-lived and low-bandwidth flows over large transfers.

To enable fq_codel:

  1. Add the following line to /etc/sysctl.conf:

     net.core.default_qdisc = fq_codel
    
  2. Apply the changes:

     sysctl -p
    

With fq_codel, latency becomes more consistent, particularly in congested networks, leading to better Speedtest performance.


Bandwidth Allocation & Test Isolation

When hosting Speedtest servers, ISPs should consider:

  • Bandwidth Isolation: Allocate separate bandwidth pools for Speedtest servers to prevent them from interfering with regular network traffic.

  • Concurrency Handling: Ensure servers can handle multiple simultaneous tests without degrading individual results. This can be achieved by scaling resources appropriately.


The Case for 10 Gbps Infrastructure

Most South African ISPs host their Speedtest servers on 1 Gbps connections. While adequate for lower-bandwidth tests, a single high-speed test (e.g., from a 1 Gbps fibre user) can saturate the server’s capacity, distorting results for other users. Upgrading to 10 Gbps infrastructure ensures consistent performance and eliminates this bottleneck.


Wrap

Speedtest servers are more than just diagnostic tools—they shape customer perceptions of ISP quality. By investing in modern hardware, upgrading to the latest Linux kernel, and implementing advanced algorithms like BBR and fq_codel, South African ISPs can ensure their Speedtest servers deliver accurate and consistent results. This not only improves customer satisfaction but also reduces unnecessary complaints, freeing up ISP resources to focus on actual network improvements.


Watch this video to understand more about BBR: