No Arabic abstract
Quite a few algorithms have been proposed to optimize the transmission performance of Multipath TCP (MPTCP). However, existing MPTCP protocols are still far from satisfactory in lossy and ever-changing networks because of their loss-based congestion control and the difficulty of managing multiple subflows. Recently, a congestion-based congestion control, BBR, is proposed to promote TCP transmission performance through better use of bandwidth. Due to the superior performance of BBR, we try to boost MPTCP with it. For this propose, coupled congestion control should be redesigned for MPTCP, and a functional scheduler able to effectively make use of the characteristics of BBR must also be developed for better performance. In this paper, we first propose Coupled BBR as a coupled congestion control algorithm for MPTCP to achieve high throughput and stable sending rate in lossy network scenarios with guaranteed fairness with TCP BBR flows and balanced congestion. Then, to further improve the performance, we propose an Adaptively Redundant and Packet-by-Packet (AR&P) scheduler, which includes two scheduling methods to improve adaptability in highly dynamic network scenarios and keep in-order packet delivery in asymmetric networks. Based on Linux kernel implementation and experiments in both testbed and real network scenarios, we show that the proposed scheme not only provides higher throughput, but also improves robustness and reduces out-of-order packets in some harsh circumstances.
Packet scheduling determines the ordering of packets in a queuing data structure with respect to some ranking function that is mandated by a scheduling policy. It is the core component in many recent innovations to optimize network performance and utilization. Our focus in this paper is on the design and deployment of packet scheduling in software. Software schedulers have several advantages over hardware including shorter development cycle and flexibility in functionality and deployment location. We substantially improve current software packet scheduling performance, while maintaining flexibility, by exploiting underlying features of packet ranking; namely, packet ranks are integers and, at any point in time, fall within a limited range of values. We introduce Eiffel, a novel programmable packet scheduling system. At the core of Eiffel is an integer priority queue based on the Find First Set (FFS) instruction and designed to support a wide range of policies and ranking functions efficiently. As an even more efficient alternative, we also propose a new approximate priority queue that can outperform FFS-based queues for some scenarios. To support flexibility, Eiffel introduces novel programming abstractions to express scheduling policies that cannot be captured by current, state-of-the-art scheduler programming models. We evaluate Eiffel in a variety of settings and in both kernel and userspace deployments. We show that it outperforms state of the art systems by 3-40x in terms of either number of cores utilized for network processing or number of flows given fixed processing capacity.
A common situation occurring when dealing with multimedia traffic is having large data frames fragmented into smaller IP packets, and having these packets sent independently through the network. For real-time multimedia traffic, dropping even few packets of a frame may render the entire frame useless. Such traffic is usually modeled as having {em inter-packet dependencies}. We study the problem of scheduling traffic with such dependencies, where each packet has a deadline by which it should arrive at its destination. Such deadlines are common for real-time multimedia applications, and are derived from stringent delay constraints posed by the application. The figure of merit in such environments is maximizing the systems {em goodput}, namely, the number of frames successfully delivered. We study online algorithms for the problem of maximizing goodput of delay-bounded traffic with inter-packet dependencies, and use competitive analysis to evaluate their performance. We present competitive algorithms for the problem, as well as matching lower bounds that are tight up to a constant factor. We further present the results of a simulation study which further validates our algorithmic approach and shows that insights arising from our analysis are indeed manifested in practice.
Multipath TCP (MPTCP) is a transport layer protocol that allows network devices to transfer data over multiple concurrent paths, and hence, utilizes the network resources more effectively than does the traditional single-path TCP. However, as a reliable protocol, MPTCP still needs to deliver data packets (to the upper application) at the receiver in the same order they are transmitted at the sender. The out-of-order packet problem becomes more severe for MPTCP due to the heterogeneous nature of delay and bandwidth of each path. In this paper, we propose the forward-delay-based packet scheduling (FDPS) algorithm for MPTCP to address that problem. The main idea is that the sender dispatches packets via concurrent paths according to their estimated forward delay and throughput differences. Via simulations with various network conditions, the results show that our algorithm significantly maintains in-order arrival packets at the receiver compared with several previous algorithms.
There is a trend towards using wireless technologies in networked control systems. However, the adverse properties of the radio channels make it difficult to design and implement control systems in wireless environments. To attack the uncertainty in available communication resources in wireless control systems closed over WLAN, a cross-layer adaptive feedback scheduling (CLAFS) scheme is developed, which takes advantage of the co-design of control and wireless communications. By exploiting cross-layer design, CLAFS adjusts the sampling periods of control systems at the application layer based on information about deadline miss ratio and transmission rate from the physical layer. Within the framework of feedback scheduling, the control performance is maximized through controlling the deadline miss ratio. Key design parameters of the feedback scheduler are adapted to dynamic changes in the channel condition. An event-driven invocation mechanism for the feedback scheduler is also developed. Simulation results show that the proposed approach is efficient in dealing with channel capacity variations and noise interference, thus providing an enabling technology for control over WLAN.
Recently, Multipath TCP (MPTCP) has been proposed as an alternative transport approach for datacenter networks. MPTCP provides the ability to split a flow into multiple paths thus providing better performance and resilience to failures. Usually, MPTCP is combined with flow-based Equal-Cost Multi-Path Routing (ECMP), which uses random hashing to split the MPTCP subflows over different paths. However, random hashing can be suboptimal as distinct subflows may end up using the same paths, while other available paths remain unutilized. In this paper, we explore an MPTCP-aware SDN controller that facilitates an alternative routing mechanism for the MPTCP subflows. The controller uses packet inspection to provide deterministic subflow assignment to paths. Using the controller, we show that MPTCP can deliver significantly improved performance when connections are not limited by the access links of hosts. To lessen the effect of throughput limitation due to access links, we also investigate the usage of multiple interfaces at the hosts. We demonstrate, using our modification of the MPTCP Linux Kernel, that using multiple subflows per pair of IP addresses can yield improved performance in multi-interface settings.