Continuing from the previous article on ECMP on a Linux machine, the goal is to enhance overall performance, but it will always be limited by the session-wise characteristics of traffic.
Surprisingly, something interesting happens during a multiple-flow Speedtest. When a single test generates multiple traffic flows using different port numbers (Layer 4), the aggregated result shows a higher combined throughput—regardless of whether the traffic is routed through two different public IPs with NAT.
For example, consider two links:
- 150Mbps Download / 30Mbps Upload (DIA)
- 30Mbps Download / 30Mbps Upload (DIA via public WiFi)
A Linux gateway is configured to use ECMP with two next-hop routes pointing to these links. When the traffic test starts, the portal or app will display only one of the link’s public IP addresses. However, the test results show 170+ Mbps download and 40+ Mbps upload. WOOOO!!!
Of course, this is just a traffic test—similar to running iPerf with multiple flow tests and aggregating the results. So, yes, it’s possible!
I believe some vendors use similar techniques for load sharing. Since it’s Linux-based, that shouldn’t be an issue.
Any other ideas? I’m also thinking about UDP-based video streaming—should we be considering application-layer optimization?
#ECMP #internet #NAT #IP #loadsharing #BGP #DIA #Speedtest #IPERF #measurement #traffictest