Table of Contents
Fetching ...

Understanding and Enhancing Linux Kernel-based Packet Switching on WiFi Access Points

Shiqi Zhang, Mridul Gupta, Behnam Dezfouli

TL;DR

The differences in Ethernet-to-WiFi and WiFi-to-Ethernet data paths regarding processing components, multi-core utilization, and energy efficiency are identified and it is shown that the WiFi-to-Ethernet data path leverages better multi-core processing and exhibits lower power consumption.

Abstract

As the number of WiFi devices and their traffic demands continue to rise, the need for a scalable and high-performance wireless infrastructure becomes increasingly essential. Central to this infrastructure are WiFi Access Points (APs), which facilitate packet switching between Ethernet and WiFi interfaces. Despite APs' reliance on the Linux kernel's data plane for packet switching, the detailed operations and complexities of switching packets between Ethernet and WiFi interfaces have not been investigated in existing works. This paper makes the following contributions towards filling this research gap. Through macro and micro-analysis of empirical experiments, our study reveals insights in two distinct categories. Firstly, while the kernel's statistics offer valuable insights into system operations, we identify and discuss potential pitfalls that can severely affect system analysis. For instance, we reveal the implications of device drivers on the meaning and accuracy of the statistics related to packet-switching tasks and processor utilization. Secondly, we analyze the impact of the packet switching path and core configuration on performance and power consumption. Specifically, we identify the differences in Ethernet-to-WiFi and WiFi-to-Ethernet data paths regarding processing components, multi-core utilization, and energy efficiency. We show that the WiFi-to-Ethernet data path leverages better multi-core processing and exhibits lower power consumption.

Understanding and Enhancing Linux Kernel-based Packet Switching on WiFi Access Points

TL;DR

The differences in Ethernet-to-WiFi and WiFi-to-Ethernet data paths regarding processing components, multi-core utilization, and energy efficiency are identified and it is shown that the WiFi-to-Ethernet data path leverages better multi-core processing and exhibits lower power consumption.

Abstract

As the number of WiFi devices and their traffic demands continue to rise, the need for a scalable and high-performance wireless infrastructure becomes increasingly essential. Central to this infrastructure are WiFi Access Points (APs), which facilitate packet switching between Ethernet and WiFi interfaces. Despite APs' reliance on the Linux kernel's data plane for packet switching, the detailed operations and complexities of switching packets between Ethernet and WiFi interfaces have not been investigated in existing works. This paper makes the following contributions towards filling this research gap. Through macro and micro-analysis of empirical experiments, our study reveals insights in two distinct categories. Firstly, while the kernel's statistics offer valuable insights into system operations, we identify and discuss potential pitfalls that can severely affect system analysis. For instance, we reveal the implications of device drivers on the meaning and accuracy of the statistics related to packet-switching tasks and processor utilization. Secondly, we analyze the impact of the packet switching path and core configuration on performance and power consumption. Specifically, we identify the differences in Ethernet-to-WiFi and WiFi-to-Ethernet data paths regarding processing components, multi-core utilization, and energy efficiency. We show that the WiFi-to-Ethernet data path leverages better multi-core processing and exhibits lower power consumption.
Paper Structure (13 sections, 10 figures, 5 tables)

This paper contains 13 sections, 10 figures, 5 tables.

Figures (10)

  • Figure 1: The main steps of packet switching. Here, we assume the ingress interface is 1 and the egress interface is 2.
  • Figure 2: The components, data plane, and control plane of the testbed. Data plane is used for data flow transmissions, and control plane is used for automation of experiments and collecting performance monitoring data.
  • Figure 3: (a) Single-core configuration: The of both are assigned to Core 0. (b) Dual-core configuration: The of the WiFi is assigned to Core 0 and the of Ethernet is assigned to Core 1.
  • Figure 4: Ethernet-to-WiFi (E2W) packet switching using the single-core configuration. The maximum achieved throughput of this configuration is 750 Mbps.
  • Figure 5: Ethernet-to-WiFi (E2W) packet switching using the dual-core configuration. The maximum achieved throughput of this configuration is 893 Mbps.
  • ...and 5 more figures