]> git.ipfire.org Git - thirdparty/hostap.git/commit
hostapd: Add airtime policy configuration support
authorToke Høiland-Jørgensen <toke@toke.dk>
Wed, 20 Mar 2019 14:58:52 +0000 (15:58 +0100)
committerJouni Malinen <j@w1.fi>
Thu, 2 May 2019 11:57:43 +0000 (14:57 +0300)
commitef7217518be9705409cc330309221041c1312993
tree4ecd0f355074524c78d157978f115162dbbee5a5
parent6720b9482f523f7385c6eaef9c27361d30a9c954
hostapd: Add airtime policy configuration support

This adds support to hostapd for configuring airtime policy settings for
stations as they connect to the access point. This is the userspace
component of the airtime policy enforcement system PoliFi described in
this paper: https://arxiv.org/abs/1902.03439

The Linux kernel part has been merged into mac80211 for the 5.1 dev
cycle.

The configuration mechanism has three modes: Static, dynamic and limit.
In static mode, weights can be set in the configuration file for
individual MAC addresses, which will be applied when the configured
stations connect.

In dynamic mode, weights are instead set per BSS, which will be scaled
by the number of active stations on that BSS, achieving the desired
aggregate weighing between the configured BSSes. Limit mode works like
dynamic mode, except that any BSS *not* marked as 'limited' is allowed
to exceed its configured share if a per-station fairness share would
assign more airtime to that BSS. See the paper for details on these
modes.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
12 files changed:
hostapd/Makefile
hostapd/config_file.c
hostapd/defconfig
hostapd/hostapd.conf
src/ap/Makefile
src/ap/airtime_policy.c [new file with mode: 0644]
src/ap/airtime_policy.h [new file with mode: 0644]
src/ap/ap_config.c
src/ap/ap_config.h
src/ap/hostapd.c
src/ap/hostapd.h
src/ap/sta_info.h