User-Controlled Subflow Selection in MPTCP: A Case Study

Main Article Content

Kshithija Liyanage
Tharindu Wijethilake
Kasun Gunawardana
Kenneth Thilakarathne
Primal Wijesekera
Chamath Keppitiyagama


It is common to find multiple network interfaces connected to different Internet Service Providers (ISPs) in devices such as smartphones. Multipath TCP (MPTCP) enables TCP connections to use all these network interfaces in a single TCP connection in an application transparent manner. MPTCP schedules traffic of one TCP connection over subflows created over these network interfaces. It is evident that this requires some scheduling policy. There have been some attempts to allow applications to decide on the scheduling policy. However, this violates the application transparency of MPTCP, and applications do not have all the information required to decide on such a policy. In addition, this allows the applications to monopolize the network connection thus posing a security threat as well.
We argue that only the owner of the device (the user) has the right to make that policy decision and only the user can make an informed decision on the scheduling policy. For example, the user has the information on the monetary cost of the connections through different interfaces.
In this paper we present a mechanism that allows the user to provide hints to the TCP scheduler to alter its scheduling policy. While this is not a mechanism to implement generic scheduling policies, it demonstrates how a user can guide the scheduling policies. As a proof of the concept, we demonstrate how MPTCP scheduler can be influenced to select a less stable and lossy path over a stable path based on a user preference.

Article Details

Select the Journal Issue