Control of multipath TCP and optimization of multipath routing in the Internet

Damon Wischik, Mark Handley and Costin Raiciu. NetCOOP 2009 [preprint pdf]
Slides [pptx] and interactive demo of resource pooling [nb]

Abstract.

There are moves in the Internet architecture community to add multipath capabilities to TCP, so that end-systems will be able to shift their traffic away from congested parts of the network. We study two problems relating to the design of multipath TCP. (i) We investigate stochastic packet-level behaviour of some proposed multipath congestion control algorithms, and find that they do not behave how we might expect from fluid modeling: they tend to flap randomly between their available paths. We explain why, and propose a congestion control algorithm that does not flap. (ii) We consider how the path choice offered by the network affects the ability of end-systems to shift their traffic between a pool of resources. We define a resource poolability index, which measures for each resource how easy it is for traffic to be shifted away from that resource e.g. in the event of a traffic surge or link failure.

Key words.

multipath TCP, congestion control, resource pooling, fluid model, load balancing
A network with four shared resources and four traffic sources, three of which have a choice of path. The resources have capacities C1=1, C2=2, C3=3, C4=5. Each resource is colour-coded according to its resource poolability Ψ: