Avoiding Biased-Feeding in the Scheduling of Collaborative Multipath TCP

PLOS ONE, Aug 2016

Smartphones have become the major communication and portable computing devices that access the Internet through Wi-Fi or mobile networks. Unfortunately, users without a mobile data subscription can only access the Internet at limited locations, such as hotspots. In this paper, we propose a collaborative bandwidth sharing protocol (CBSP) built on top of MultiPath TCP (MPTCP). CBSP enables users to buy bandwidth on demand from neighbors (called Helpers) and uses virtual interfaces to bind the subflows of MPTCP to avoid modifying the implementation of MPTCP. However, although MPTCP provides the required multi-homing functionality for bandwidth sharing, the current packet scheduling in collaborative MPTCP (e.g., Co-MPTCP) leads to the so-called biased-feeding problem. In this problem, the fastest link might always be selected to send packets whenever it has available cwnd, which results in other links not being fully utilized. In this work, we set out to design an algorithm, called Scheduled Window-based Transmission Control (SWTC), to improve the performance of packet scheduling in MPTCP, and we perform extensive simulations to evaluate its performance.

Avoiding Biased-Feeding in the Scheduling of Collaborative Multipath TCP

RESEARCH ARTICLE Avoiding Biased-Feeding in the Scheduling of Collaborative Multipath TCP Meng-Hsun Tsai☯, Chien-Ming Chou☯, Kun-chan Lan*☯ Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan, Taiwan ☯ These authors contributed equally to this work. * a11111 Abstract OPEN ACCESS Citation: Tsai M-H, Chou C-M, Lan K-c (2016) Avoiding Biased-Feeding in the Scheduling of Collaborative Multipath TCP. PLoS ONE 11(8): e0161213. doi:10.1371/journal.pone.0161213 Editor: Kim-Kwang Raymond Choo, University of Texas at San Antonio, UNITED STATES Received: February 5, 2016 Accepted: June 30, 2016 Published: August 16, 2016 Copyright: © 2016 Tsai et al. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. Data Availability Statement: In this paper, the traffic model of Youtube was adopted from a prior work [36] and used to generate synthetic YouTube traffic data in our simulations. All data used in our simulations can be found in the URL: https://github.com/ jensen0915/PLoSOne-CBSP-Data. In addition, according to the data of Fig 19, it is collected Youtube data by Wireshark on the smartphone to indicate the information of packet level such as packet size, packet arrival time, and so on. Youtube's policy is concerned about video content. We should have not violated any Youtube policy. Funding: This research was partially supported by the Ministry of Science and Technology, Taiwan, R.O. Smartphones have become the major communication and portable computing devices that access the Internet through Wi-Fi or mobile networks. Unfortunately, users without a mobile data subscription can only access the Internet at limited locations, such as hotspots. In this paper, we propose a collaborative bandwidth sharing protocol (CBSP) built on top of MultiPath TCP (MPTCP). CBSP enables users to buy bandwidth on demand from neighbors (called Helpers) and uses virtual interfaces to bind the subflows of MPTCP to avoid modifying the implementation of MPTCP. However, although MPTCP provides the required multi-homing functionality for bandwidth sharing, the current packet scheduling in collaborative MPTCP (e.g., Co-MPTCP) leads to the so-called biased-feeding problem. In this problem, the fastest link might always be selected to send packets whenever it has available cwnd, which results in other links not being fully utilized. In this work, we set out to design an algorithm, called Scheduled Window-based Transmission Control (SWTC), to improve the performance of packet scheduling in MPTCP, and we perform extensive simulations to evaluate its performance. Introduction There are now more than 1.7 billion smartphones in the world, and the penetration rate is close to 25% [1]. Smartphones have thus become major communication and portable computing devices in recent years. However, in most cities, Wi-Fi hotspots are intermittent, with limited radio transmission range [2]. Although 3G and Long Term Evolution (LTE) provide excellent coverage, not everyone is willing to pay for a 3G/4G subscription (the penetration rate of global mobile broadband connections was still under 40% by the end of 2014 [3]). In other words, many smartphone users often have no mobile Internet connection. To allow these users to access the Internet, one possible solution is to ‘buy’ unused bandwidth from neighboring smartphones that have Internet connections [4]. Among all mobile Internet applications, video applications are the most popular (exceeding 55% of the total data consumption [5]). Video streaming is known to be bandwidth-hungry (e.g., 1080P High Definition (HD) video, 4K video, and panoramic video for interactive virtual cameras [6]), such that 3G bandwidth might be insufficient under certain circumstances PLOS ONE | DOI:10.1371/journal.pone.0161213 August 16, 2016 1 / 26 Avoiding Biased-Feeding in MPTCP C., under the grant numbers: MOST 104-2221-E006-041- and MOST 104-2221-E-006-024-, https:// www.most.gov.tw. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript. There was no specific funding for the rest of this project. There was no additional external funding received for this study. Competing Interests: The authors have declared that no competing interests exist. (e.g., when radio signal quality is poor). Although 4G technologies, such as LTE, can provide more bandwidth, their penetration rate is currently rather low [3]. To obtain more bandwidth, various prior studies [4, 7, 8] have proposed the idea of bandwidth aggregation through multihoming. For example, PRISM [7] employs an inverse multiplexer at the proxy server and implements a sender-side congestion control mechanism to aggregate bandwidth from neighboring nodes over TCP. In CStream [4], the video server distributes data frames via TCP connections over multiple Helpers. However, PRISM and CStream are both server-based solutions, which in practice are difficult to implement on every Internet server. Alternately, CoMPTCP [8] extends the MultiPath TCP (MPTCP) at the receiver side to create a collaborative network. Nevertheless, Co-MPTCP does not address the issue of maintaining the multi-homed collaborative network. Furthermore, current implementations of packet scheduling in CoMPTCP are based on round trip time (RTT), and they might result in the so-called biasedfeeding [9, 10] problem and introduce many out-of-order packets, which significantly reduces the aggregated bandwidth. In this paper, we propose a collaborative bandwidth sharing protocol (CBSP) to group neighboring smartphones and aggregate their unused bandwidth based on MPTCP. Our current implementation of CBSP focuses on TCP traffic because this is the dominant form (and HTTP streaming over TCP is the major bearer of mobile video traffic; specifically, 98% of multimedia streaming traffic in mobile traffic is delivered over HTTP [11]). CBSP is built on top of MPTCP standardized by IETF [12], and hundreds of millions of iPhones and iPads already support MPTCP. CBSP can also work together with various existing systems, such Webus [13] and on-bus Wi-Fi [14]. In CBSP, a virtual interface is created on the user’s smartphone for each neighboring smartphone (called a Helper) and bound to a subflow of MPTCP. CBSP uses a proxy server (called a CBSP server) as a middlebox to coordinate MPTCP connections. The user can access all Internet servers through the CBSP server, and so the Internet servers do not need to support MPTCP. In other words, CBSP protocol module only needs to be installed on the user’s smartphone. The CBSP server monitors all traffic forwarded by Helpers and maintains the accounting information (including pricing of the data, if necessary) of the users and Helpers. We propose a Scheduled (...truncated)


This is a preview of a remote PDF: https://journals.plos.org/plosone/article/file?id=10.1371/journal.pone.0161213&type=printable
Article home page: https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0161213

Meng-Hsun Tsai, Chien-Ming Chou, Kun-chan Lan. Avoiding Biased-Feeding in the Scheduling of Collaborative Multipath TCP, PLOS ONE, 2016, Volume 11, Issue 8, DOI: 10.1371/journal.pone.0161213