Multipath TCP and middleboxes

The design of Multipath TCP RFC 6824 has been heavily influenced by the presence of middleboxes in the global Internet. In [Honda2011] Micchio Honda and his colleagues showed that middleboxes could change almost any field of the IP and TCP headers. Based on these measurements, the MPTCP working group developed various heuristics to enable Multipath TCP to cope with the interference caused by middleboxes. The implementation of these heuristics inside the Multipath TCP implementation in the Linux kernel was more difficult than initially taught given all the corner cases that had to be supported. To verify the correct operation of these heuristics, Benjamin Hesmans wrote a set of Click elements that implement models of the various interferences that can be caused by middleboxes on TCP segments [Hesmans2013b] . MBClick [Hesmans2013a] could enable other implementors of Multipath TCP or other extensions to validate the interactions between their implementation and middleboxes.

While testing the impact of middleboxes, we also evaluated whether already deployed TCP extensions were vulnerable to middlebox interference. We knew from practical experience with our local firewalls that sequence number randomisation was still a default in many firewalls. We measured the impact of sequence number randomisation on existing implementations of the TCP Selective Acknowledgement options.

The figure above shows that when an old firewall randomises the TCP sequence numbers without randomising the SACK blocks, the TCP throughput is lower when SACKs are enabled than when they are disabled. This unexpected results is due to an implementation choice in the Linux and MacOS versions that we tested. Both stacks completely ignore a packet that contains an invalid SACK block. With a dump sequence number randomiser, almost all received SACK blocks are invalid. This implies that as soon as there are packet losses, TCP acknowledgements are considered to be invalid and ignored. This blocks the fast retransmit mechanism and TCP can only rely on its retransmission timer to recover from packet losses.

References

[Hesmans2013a]Benjamin Hesmans, Click elements to model middleboxes, https://bitbucket.org/bhesmans/click}
[Hesmans2013b](1, 2) Benjamin Hesmans, Fabien Duchene, Christoph Paasch, Gregory Detal and Olivier Bonaventure, Are TCP Extensions Middlebox-proof?, Proceedings of the 2013 Workshop on Hot Topics in Middleboxes and Network Function Virtualization (HotMiddlebox), 2013, http://dx.doi.org/10.1145/2535828.2535830
[Honda2011]Michio Honda, Yoshifumi Nishida, Costin Raiciu, Adam Greenhalgh, Mark Handley, Hideyuki Tokuda, Is it still possible to extend TCP?, Proceedings of the 2011 ACM SIGCOMM conference on Internet measurement conference, November 02-04, 2011, Berlin, Germany , http://dx.doi.org/10.1145/2068816.2068834

Multipath Algorithms and Strategies to Improve TCP Performance over Wireless Mesh Networks

Multipath TCP can be applied in a wide range of network environments. Wireless mesh networks, with their ability to provide multiple paths between a pair of nodes are particularly appealing. David Gomez and his colleagues discuss in [1] some possible usages of Multipath TCP in wireless mesh networks. The article relies on ns-3 simulations to evaluate the performance of Multipath TCP in a wireless mesh network. Three simple scenarios are considered. The first one uses regular TCP as the baseline. The second uses Multipath TCP with only one radio interface while the third considers two non-overlapping radio interfaces per node. Unsurprisingly, the simulations show that Multipath TCP outperforms regular TCP when hosts have two radio interfaces.

../../../_images/mptcp-mesh.png

Simulations with MPTCP over wireless mesh (source [1] )

Unfortunately, the authors do not provide the simulator and the simulation scripts used for their research. Given the availability of Multipath TCP in the Linux kernel , it would be interesting to deploy Multipath TCP in real test mesh networks and analyze its performance.

[1](1, 2) David Gomez, Carlos Rabadan, Pablo Garrido, Ramon Aguero, Multipath Algorithms and Strategies to Improve TCP Performance over Wireless Mesh Networks, Mobile Networks and Management, Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering Volume 125, 2013, pp 15-28, Springer, http://dx.doi.org/10.1007/978-3-319-04277-0_2

On the Benefits of Applying Experimental Design to Improve Multipath TCP

Multipath TCP, despite being an extension to TCP is still a relatively young protocol. Achieving high performance in a wide range of network conditions is still an issue. The paper On the Benefits of Applying Experimental Design to Improve Multipath TCP is an interesting paper that attempts to improve the performance of Multipath TCP. While many researchers focus on simulations and usually evaluate some network scenarios, often due to space limitations, this paper takes a different approach.

First, it applies the Experimental Design methodology develops by statisticians. This methodology allows to efficiently and accurately (from a statistical viewpoint) evaluate the performance of a system by taking into account the impact of various parameters and intelligently selecting their values.

Second, the improvements proposed to Multipath TCP are not simply applied and evaluated to a simplified model of Multipath TCP implemented inside a simulator. They are evaluated directly on Linux kernel implementation of Multipath TCP available from http://www.multipath-tcp.org . The measurements are performed on the mininet platform. The source code of the Linux implementation and all the measurement scripts are available from http://multipath-tcp.org/conext2013 . This ensures that any researcher or protocol developer can validate, reproduce and improve the algorithms described in the paper. In an ideal world, all research papers would provide the information that allow to quickly reproduce the research described in the paper…

Reference

[PKB2013] C. Paasch, R. Khalili, O. Bonaventure, On the Benefits of Applying Experimental Design to Improve Multipath TCP, Conext 2013, Dec. 2013, Santa Barbara, USA, http://dx.doi.org/10.1145/2535372.2535403