Multipath TCP (MPTCP) is one of the leading protocols that support multipath operation in a transport layer. However, depending on the network and the receiver buffer, the original MPTCP can experience throughput degradation, underutilizing the network capacity compared to the regular TCP. Furthermore, MPTCP can result in a large packet interval. In this paper, we propose a new scheduling scheme for MPTCP that performs packet scheduling according to the receiver buffer and network delay. Our scheme estimates out-of-order packets according to performance differences between subflows and assigns data packets to subflows by comparing the estimated out-of-order packets and the buffer size. Moreover, our scheme can adjust the trade-off between throughput and delay performance using a delay constraint. We implement the proposed scheduling in the Linux kernel and evaluate its performance over a virtual network framework using NS-3 and real networks. The results show that the proposed scheduling scheme performs efficient packet transmission regardless of the performance differences of multiple paths and buffer size. Moreover, the proposed scheduling can complement and cooperate with an existing non-scheduling-based solution.
All Science Journal Classification (ASJC) codes
- Computer Networks and Communications