Adaptive Cheapest Path First Scheduling in a Transport-Layer Multi-Path Tunnel Context

Marcus Pieska,Alexander Rabitsch,Anna Brunstrom,Andreas Kassler,Markus Amend
DOI: https://doi.org/10.1145/3472305.3472316
2021-06-30
Abstract:Bundling multiple access technologies increases capacity, resiliency and robustness of network connections. Multi-access is currently being standardized in the ATSSS framework in 3GPP, supporting different access bundling strategies. Within ATSSS, a multipath scheduler needs to decide which path to use for each user packet based on path characteristics. The Cheapest Path First (CPF) scheduler aims to utilize the cheapest path (e.g. WiFi) before sending packets over other paths (e.g. cellular). In this paper, we demonstrate that using CPF with an MP-DCCP tunnel may lead to sub-optimal performance. This is due to adverse interactions between the scheduler and end-to-end and tunnel congestion control. Hence, we design the Adaptive Cheapest Path First (ACPF) scheduler that limits queue buildup in the primary bottleneck and moves traffic to the secondary path earlier. We implement ACPF over both TCP and DCCP congestion controlled tunnels. Our evaluation shows that ACPF improves the average throughput over CPF between 24% to 86%.
Networking and Internet Architecture
What problem does this paper attempt to address?
This paper attempts to solve the performance problems encountered when using the Cheapest Path First (CPF) scheduler in the multi - path transport layer tunneling environment. Specifically, the author points out that using the CPF scheduler in the multi - path congestion - control tunneling framework may lead to sub - optimal performance. This is mainly caused by the poor interaction between the scheduler and the congestion - control algorithm of each path as well as the end - to - end congestion controller. ### Problem Background 1. **Multi - access Technology Bundling**: By bundling multiple access technologies (such as Wi - Fi and cellular networks), the capacity, resilience, and robustness of network connections can be increased. 2. **ATSSS Framework**: 3GPP is standardizing multi - access technologies to support different access - bundling strategies within the ATSSS framework. Among them, the multi - path scheduler needs to decide which path should be used to transmit each user data packet according to the path characteristics. 3. **CPF Scheduler**: The Cheapest Path First (CPF) scheduler aims to give priority to using the cheapest path (for example, Wi - Fi) and then send data packets through other paths (for example, cellular networks). ### Existing Problems - **Sub - optimal Performance**: When using the CPF scheduler in combination with multi - path congestion - control tunneling (such as MP - DCCP), it may lead to sub - optimal performance. This is because there is a poor interaction between the scheduler and end - to - end and tunneling congestion control, resulting in bottleneck queue backlogs and affecting the overall performance. - **Poor Interaction**: The CPF scheduler tends to over - occupy bandwidth on the primary path, resulting in insufficient utilization of secondary paths, thus affecting the overall throughput and latency. ### Solutions To solve these problems, the author designed and implemented the Adaptive Cheapest Path First (ACPF) scheduler. The main improvements of ACPF include: 1. **Limit the Primary Path Queue Backlog**: ACPF transfers traffic to secondary paths earlier by limiting the queue backlog on the primary path. 2. **Dynamically Adjust Path Utilization**: ACPF dynamically adjusts the utilization of each path according to the current network situation to avoid overloading the primary path. 3. **Improve Throughput**: Experimental results show that ACPF improves the average throughput by 24% to 86% compared to CPF. ### Formula Representation ACPF achieves better path utilization by adjusting the congestion window (\(CWND_p\)) of each path. The specific formula is as follows: \[ CWND_p = RTT_{min}^p\times BW_p\times G \] where: - \(RTT_{min}^p\) is the minimum round - trip time of path \(p\). - \(BW_p\) is the bandwidth of path \(p\). - \(G\) is the gain factor, usually set to 2. ACPF adjusts the live fraction of \(CWND_p\) to better control the occupancy of the bottleneck buffer. The adjustment formula is as follows: \[ INC = \frac{RAW\_INC}{CWND_p} \] where: - \(RAW\_INC\) is the original increment. - \(CWND_p\) is the congestion window size of path \(p\). In this way, ACPF can more effectively deal with nested congestion - control loops and maintain more in - flight data packets, thereby improving the overall performance.