Coupled Multipath-Aware Congestion Control
Mark James Handley, Costin Raiciu, Damon Wischik · 2010
Often endpoints are connected by multiple paths, but communications are usually restricted to a single path per socket. Resource usage within the network would be more efficient were it possible for these multiple paths to be used concurrently. The use of multiple paths simultaneously, specifically within a Multipath TCP protocol, necessitates the development of new congestion control algorithms. If existing algorithms such as TCP New Reno were run independently on each path, the multipath flow would take more than its fair share if there was a common bottleneck. Further, it is desirable that a source with multiple paths available will transfer more traffic using the least congested of the paths, hence achieving resource pooling. This would increase the overall utilization of the network and also its robustness to failure. This document presents a congestion control algorithm which couples the congestion control algorithms running on different subflows by linking their increase functions, and dynamically controls the overall aggresiveness of the multipath flow. The result is a practical algorithm that is fair to TCP at bottlenecks while moving traffic away from congested links.