This is the companion website to the paper “PoliFi: Airtime Policy Enforcement for WiFi” by Toke Høiland-Jørgensen, Per Hurtig and Anna Brunstrom, which will be presented at the 2019 IEEE Wireless Communications and Networking Conference.

Slides from the WCNC presentation

DOI

Paper 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 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.

Running the code

The patches (+ the two following commits) have been accepted into mainline Linux and will be released as part of Linux 5.1

Test setup

The evaluations in the paper are carried out on a WiFi testbed using regular PCs to simulate a simple WiFi network. We use two wireless clients (“Fast 1” and “Fast 2” in the diagram in the linked blog post), each of which connect two virtual clients to the access point. The traffic source is a server located one Gigabit Ethernet hop from the access point. All the wireless nodes are regular x86 PCs equipped with PCI-Express Qualcomm Atheros AR9580 adapters (which use the ath9k driver).

In all tests, three stations (numbered 1-3 in the results section) are connected to one SSID, while the last station is connected to another SSID (both are virtual SSIDs on the same hardware). These SSIDs correspond to the groups being used for policy enforcement, as explained in the paper.

Dataset

The full dataset (Flent data files) used to generate the plots in the paper is available below:

Contact

This page written and maintained by Toke Høiland-Jørgensen. Questions, comments, etc. are very welcome on toke AT toke DOT dk.