SMAPP: towards smart multipath TCP-enabled applications

Multipath TCP was designed and implemented as a backward compatible replacement for TCP. For this reason, it exposes the standard socket API to the applications that cannot control the utilisation of the different paths. This is a key feature for applications that are unaware of the multipath nature of the network. On the contrary, this is a limitation for applications that could benefit from specific knowledge to use multiple paths in a way that fits their needs. As the specific knowledge of an application can not be known in advance, we propose a Multipath TCP path manager that delegates the management of the paths to the applications. This path manager enables applications to control how the different paths are used to transfer data. We implement this path manager above the Linux Multipath TCP kernel. It is composed of a kernel part that exposes events and commands to an userspace application that controls the key functions of Multipath TCP such as the creation/suppression of subflows or reactions to retransmissions. We demonstrate the benefits of this path manager on different use cases.

[1]  Ari Huttunen,et al.  UDP Encapsulation of IPsec ESP Packets , 2005, RFC.

[2]  Mahesh K. Marina,et al.  Binder: a system to aggregate multiple internet gateways in community networks , 2013, LCDNet '13.

[3]  Özgü Alay,et al.  Experimental evaluation of multipath TCP schedulers , 2014, CSWS@SIGCOMM.

[4]  Jamal Hadi Salim,et al.  Linux Netlink as an IP Services Protocol , 2003, RFC.

[5]  Mark Handley,et al.  How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP , 2012, NSDI.

[6]  Alan Ford,et al.  Multipath TCP (MPTCP) Application Interface Considerations , 2013, RFC.

[7]  Anja Feldmann,et al.  Socket intents: leveraging application awareness for multi-access connectivity , 2013, CoNEXT.

[8]  Mark Handley,et al.  Improving datacenter performance and robustness with multipath TCP , 2011, SIGCOMM.

[9]  Mark Handley,et al.  TCP Extensions for Multipath Operation with Multiple Addresses , 2020, RFC.

[10]  Minghua Chen,et al.  Energy efficient multipath TCP for mobile devices , 2014, MobiHoc '14.

[11]  Markku Kojo,et al.  An experimental study of home gateway characteristics , 2010, IMC '10.

[12]  Erich M. Nahum,et al.  How green is multipath TCP for mobile devices? , 2014, AllThingsCellular '14.

[13]  Mark Handley,et al.  Architectural Guidelines for Multipath TCP Development , 2011, RFC.

[14]  Erich M. Nahum,et al.  Cross-layer path management in multi-path transport protocol for mobile devices , 2014, IEEE INFOCOM 2014 - IEEE Conference on Computer Communications.

[15]  Gokhan Ay,et al.  Exploring Mobile/WiFi Handover with Multipath TCP , 2015 .

[16]  Costin Raiciu,et al.  Rekindling network protocol innovation with user-level stacks , 2014, CCRV.

[17]  Florian Wohlfart,et al.  Analysis and topology-based traversal of cascaded large scale NATs , 2013, HotMiddlebox '13.

[18]  Philip Eardley Survey of MPTCP Implementations , 2013 .

[19]  Nick McKeown,et al.  Reproducible network experiments using container-based emulation , 2012, CoNEXT '12.