Cross-layer Path Selection in Multi-path Transport Protocol for Mobile Devices
MPTCP is a new transport protocol that enables mobile devices to use multiple physical paths simultaneously through several network interfaces, such as WiFi and Cellular. However, wireless path capacities change frequently in the mobile environments, causing challenges for path selection. For example, WiFi associated paths often become poor as devices walk away, since WiFi has intermittent connectivity caused by the short signal coverage and stochastic interference. MPTCP's native decision based on hysteretic TCP-layer estimation will miss the real switching point of wireless quality, which may cumulate packets on the broken path and causes serious packets reinjection. Through analyzing a unique dataset in the wild, we quantitatively study the impact of MAC-layer factors on the aggregated performance of MPTCP. We then propose a decision tree approach for cross-layer path selection that decides which path to carry the incoming packets dynamically according to the prior learned schemes. A prototype of the path selection system named SmartPS, which proactively probes the wireless environments, is realized and deployed in Linux and Android. Evaluation results demonstrate that our SmartPS can efficiently utilize the faster path, with goodput improvements of up to 29
READ FULL TEXT