-
The eBPF Runtime in the Linux Kernel
Authors:
Bolaji Gbadamosi,
Luigi Leonardi,
Tobias Pulls,
Toke Høiland-Jørgensen,
Simone Ferlin-Reiter,
Simo Sorce,
Anna Brunström
Abstract:
Extended Berkeley Packet Filter (eBPF) is a runtime that enables users to load programs into the operating system (OS) kernel, like Linux or Windows, and execute them safely and efficiently at designated kernel hooks. Each program passes through a verifier that reasons about the safety guarantees for execution. Hosting a safe virtual machine runtime within the kernel makes it dynamically programma…
▽ More
Extended Berkeley Packet Filter (eBPF) is a runtime that enables users to load programs into the operating system (OS) kernel, like Linux or Windows, and execute them safely and efficiently at designated kernel hooks. Each program passes through a verifier that reasons about the safety guarantees for execution. Hosting a safe virtual machine runtime within the kernel makes it dynamically programmable. Unlike the popular approach of bypassing or completely replacing the kernel, eBPF gives users the flexibility to modify the kernel on the fly, rapidly experiment and iterate, and deploy solutions to achieve their workload-specific needs, while working in concert with the kernel.
In this paper, we present the first comprehensive description of the design and implementation of the eBPF runtime in the Linux kernel. We argue that eBPF today provides a mature and safe programming environment for the kernel. It has seen wide adoption since its inception and is increasingly being used not just to extend, but program entire components of the kernel, while preserving its runtime integrity. We outline the compelling advantages it offers for real-world production usage, and illustrate current use cases. Finally, we identify its key challenges, and discuss possible future directions.
△ Less
Submitted 3 October, 2024; v1 submitted 16 September, 2024;
originally announced October 2024.
-
FALCON: Fast and Accurate Multipath Scheduling using Offline and Online Learning
Authors:
Hongjia Wu,
Ozgu Alay,
Anna Brunstrom,
Giuseppe Caso,
Simone Ferlin
Abstract:
Multipath transport protocols enable the concurrent use of different network paths, benefiting a fast and reliable data transmission. The scheduler of a multipath transport protocol determines how to distribute data packets over different paths. Existing multipath schedulers either conform to predefined policies or to online trained policies. The adoption of millimeter wave (mmWave) paths in 5th G…
▽ More
Multipath transport protocols enable the concurrent use of different network paths, benefiting a fast and reliable data transmission. The scheduler of a multipath transport protocol determines how to distribute data packets over different paths. Existing multipath schedulers either conform to predefined policies or to online trained policies. The adoption of millimeter wave (mmWave) paths in 5th Generation (5G) networks and Wireless Local Area Networks (WLANs) introduces time-varying network conditions, under which the existing schedulers struggle to achieve fast and accurate adaptation. In this paper, we propose FALCON, a learning-based multipath scheduler that can adapt fast and accurately to time-varying network conditions. FALCON builds on the idea of meta-learning where offline learning is used to create a set of meta-models that represent coarse-grained network conditions, and online learning is used to bootstrap a specific model for the current fine-grained network conditions towards deriving the scheduling policy to deal with such conditions. Using trace-driven emulation experiments, we demonstrate FALCON outperforms the best state-of-the-art scheduler by up to 19.3% and 23.6% in static and mobile networks, respectively. Furthermore, we show FALCON is quite flexible to work with different types of applications such as bulk transfer and web services. Moreover, we observe FALCON has a much faster adaptation time compared to all the other learning-based schedulers, reaching almost an 8-fold speedup compared to the best of them. Finally, we have validated the emulation results in real-world settings illustrating that FALCON adapts well to the dynamicity of real networks, consistently outperforming all other schedulers.
△ Less
Submitted 22 January, 2022;
originally announced January 2022.
-
Adaptive Cheapest Path First Scheduling in a Transport-Layer Multi-Path Tunnel Context
Authors:
Marcus Pieska,
Alexander Rabitsch,
Anna Brunstrom,
Andreas Kassler,
Markus Amend
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…
▽ More
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%.
△ Less
Submitted 30 June, 2021;
originally announced June 2021.
-
CCID5: An implementation of the BBR Congestion Control algorithm for DCCP and its impact over multi-path scenarios
Authors:
Nathalie Romo Moreno,
Markus Amend,
Anna Brunstrom,
Andreas Kassler,
Veselin Rakocevic
Abstract:
Providing multi-connectivity services is an important goal for next generation wireless networks, where multiple access networks are available and need to be integrated into a coherent solution that efficiently supports both reliable and non reliable traffic. Based on virtual network interfaces and per path congestion controlled tunnels, the MP-DCCP based multiaccess aggregation framework presents…
▽ More
Providing multi-connectivity services is an important goal for next generation wireless networks, where multiple access networks are available and need to be integrated into a coherent solution that efficiently supports both reliable and non reliable traffic. Based on virtual network interfaces and per path congestion controlled tunnels, the MP-DCCP based multiaccess aggregation framework presents as a novel solution that flexibly supports different path schedulers and congestion control algorithms as well as reordering modules. The framework has been implemented within the Linux kernel space and has been tested over different prototypes. Experimental results have shown that the overall performance strongly depends upon the congestion control algorithm used on the individual DCCP tunnels, denoted as CCID. In this paper, we present an implementation of the BBR (Bottleneck Bandwidth Round Trip propagation time) congestion control algorithm for DCCP in the Linux kernel. We show how BBR is integrated into the MP-DCCP multi-access framework and evaluate its performance over both single and multi-path environments. Our evaluation results show that BBR improves the performance compared to CCID2 for multi-path scenarios due to the faster response to changes in the available bandwidth, which reduces latency and increases performance, especially for unreliable traffic. the MP-DCCP framework code, including the new CCID5 is available as OpenSource.
△ Less
Submitted 30 June, 2021;
originally announced June 2021.
-
Coverage and Deployment Analysis of Narrowband Internet of Things in the Wild
Authors:
Konstantinos Kousias,
Giuseppe Caso,
Özgü Alay,
Anna Brunstrom,
Luca De Nardis,
Maria-Gabriella Di Benedetto,
Marco Neri
Abstract:
Narrowband Internet of Things (NB-IoT) is gaining momentum as a promising technology for massive Machine Type Communication (mMTC). Given that its deployment is rapidly progressing worldwide, measurement campaigns and performance analyses are needed to better understand the system and move toward its enhancement. With this aim, this paper presents a large scale measurement campaign and empirical a…
▽ More
Narrowband Internet of Things (NB-IoT) is gaining momentum as a promising technology for massive Machine Type Communication (mMTC). Given that its deployment is rapidly progressing worldwide, measurement campaigns and performance analyses are needed to better understand the system and move toward its enhancement. With this aim, this paper presents a large scale measurement campaign and empirical analysis of NB-IoT on operational networks, and discloses valuable insights in terms of deployment strategies and radio coverage performance. The reported results also serve as examples showing the potential usage of the collected dataset, which we make open-source along with a lightweight data visualization platform.
△ Less
Submitted 7 July, 2020; v1 submitted 5 May, 2020;
originally announced May 2020.
-
A Framework for Multiaccess Support for Unreliable Internet Traffic using Multipath DCCP
Authors:
Markus Amend,
Eckard Bogenfeld,
MIlan Cvjetkovic,
Veselin Rakocevic,
Marcus Pieska,
Andreas Kassler,
Anna Brunstrom
Abstract:
Mobile nodes are typically equipped with multiple radios and can connect to multiple radio access networks (e.g. WiFi, LTE and 5G). Consequently, it is important to design mechanisms that efficiently manage multiple network interfaces for aggregating the capacity, steering of traffic flows or switching flows among multiple interfaces. While such multi-access solutions have the potential to increas…
▽ More
Mobile nodes are typically equipped with multiple radios and can connect to multiple radio access networks (e.g. WiFi, LTE and 5G). Consequently, it is important to design mechanisms that efficiently manage multiple network interfaces for aggregating the capacity, steering of traffic flows or switching flows among multiple interfaces. While such multi-access solutions have the potential to increase the overall traffic throughput and communication reliability, the variable latencies on different access links introduce packet delay variation which has negative effect on the application quality of service and user quality of experience. In this paper, we present a new IP-compatible multipath framework for heterogeneous access networks. The framework uses Multipath Datagram Congestion Control Protocol (MP-DCCP) - a set of extensions to regular DCCP - to enable a transport connection to operate across multiple access networks, simultaneously. We present the design of the new protocol framework and show simulation and experimental testbed results that (1) demonstrate the operation of the new framework, and (2) demonstrate the ability of our solution to manage significant packet delay variation caused by the asymmetry of network paths, by applying pluggable packet scheduling or reordering algorithms.
△ Less
Submitted 10 July, 2019;
originally announced July 2019.
-
PoliFi: Airtime Policy Enforcement for WiFi
Authors:
Toke Høiland-Jørgensen,
Per Hurtig,
Anna Brunstrom
Abstract:
As WiFi grows ever more popular, airtime contention becomes an increasing problem. One way to alleviate this is through network policy enforcement. Unfortunately, WiFi lacks protocol support for configuring policies for its usage, and since network-wide coordination cannot generally be ensured, enforcing policy is challenging. However, as we have shown in previous work, an access point can influen…
▽ More
As WiFi grows ever more popular, airtime contention becomes an increasing problem. One way to alleviate this is through network policy enforcement. Unfortunately, WiFi lacks protocol support for configuring policies for its usage, and since network-wide coordination cannot generally be ensured, enforcing policy is challenging. However, as we have shown in previous work, an access point can influence the behaviour of connected devices by changing its scheduling of transmission opportunities, which can be used to achieve airtime fairness. In this work, we show that this mechanism can be extended to successfully enforce airtime usage policies in WiFi networks. We implement this as an extension our previous airtime fairness work, and present PoliFi, the resulting policy enforcement system. Our evaluation shows that PoliFi makes it possible to express a range of useful policies. These include prioritisation of specific devices; balancing groups of devices for sharing between different logical networks or network slices; and limiting groups of devices to implement guest networks or other low-priority services. We also show how these can be used to improve the performance of a real-world DASH video streaming application.
△ Less
Submitted 9 February, 2019;
originally announced February 2019.
-
The Dagstuhl Beginners Guide to Reproducibility for Experimental Networking Research
Authors:
Vaibhav Bajpai,
Anna Brunstrom,
Anja Feldmann,
Wolfgang Kellerer,
Aiko Pras,
Henning Schulzrinne,
Georgios Smaragdakis,
Matthias Wählisch,
Klaus Wehrle
Abstract:
Reproducibility is one of the key characteristics of good science, but hard to achieve for experimental disciplines like Internet measurements and networked systems. This guide provides advice to researchers, particularly those new to the field, on designing experiments so that their work is more likely to be reproducible and to serve as a foundation for follow-on work by others.
Reproducibility is one of the key characteristics of good science, but hard to achieve for experimental disciplines like Internet measurements and networked systems. This guide provides advice to researchers, particularly those new to the field, on designing experiments so that their work is more likely to be reproducible and to serve as a foundation for follow-on work by others.
△ Less
Submitted 12 January, 2019;
originally announced February 2019.
-
Ending the Anomaly: Achieving Low Latency and Airtime Fairness in WiFi
Authors:
Toke Høiland-Jørgensen,
Michał Kazior,
Dave Täht,
Per Hurtig,
Anna Brunstrom
Abstract:
With more devices connected, delays and jitter at the WiFi hop become more prevalent, and correct functioning during network congestion becomes more important. However, two important performance issues prevent modern WiFi from reaching its potential: Increased latency under load caused by excessive queueing (i.e. bufferbloat) and the 802.11 performance anomaly.
To remedy these issues, we present…
▽ More
With more devices connected, delays and jitter at the WiFi hop become more prevalent, and correct functioning during network congestion becomes more important. However, two important performance issues prevent modern WiFi from reaching its potential: Increased latency under load caused by excessive queueing (i.e. bufferbloat) and the 802.11 performance anomaly.
To remedy these issues, we present a novel two-part solution: We design a new queueing scheme that eliminates bufferbloat in the wireless setting. Leveraging this queueing scheme, we then design an airtime fairness scheduler that operates at the access point and doesn't require any changes to clients.
We evaluate our solution using both a theoretical model and experiments in a testbed environment, formulating a suitable analytical model in the process. We show that our solution achieves an order of magnitude reduction in latency under load, large improvements in multi-station throughput, and nearly perfect airtime fairness for both TCP and downstream UDP traffic. Further experiments with application traffic confirm that the solution provides significant performance gains for real-world traffic.We develop a production quality implementation of our solution in the Linux kernel, the platform powering most access points outside of the managed enterprise setting. The implementation has been accepted into the mainline kernel distribution, making it available for deployment on billions of devices running Linux today.
△ Less
Submitted 6 March, 2017; v1 submitted 28 February, 2017;
originally announced March 2017.