TCP-path: Improving load balance by network exploration

Bridging is widely used in Ethernet networks, but the spanning tree protocol blocks all redundant links to prevent loops, and therefore it cannot take advantage of multipath topologies to balance traffic load. Several multipath routing proposals use link-state protocols and Equal Cost Multi-Path routing (ECMP) to distribute the load over multiple paths. However, these proposals are complex and prone to flow collisions that may degrade performance. This paper proposes the new TCP-Path protocol, which selects the fastest available path to a destination host on the fly when a new flow is established. TCP-Path is a new multilayer switching paradigm based on exploring all network paths triggered by TCP-SYN packets, instead of link-state based route computation. Here, we evaluate TCP-Path on ns-3 and Mininet and compare its performance. TCP-Path improves on ECMP by up to 25% in terms of throughput and up to 60% in terms of flow completion time. Thus, TCP-Path offers a better, yet simple alternative to ECMP-based solutions for multipath topologies.