* Add support for passing airtime_sta_weight into hostapd configuration.
* Since that commit it is possible to configure station weights. Set higher
value for larger airtime share, lower for smaller share.
I have tested this functionality by modyfing /etc/config/wireless to:
config wifi-device 'radio0'
...
option airtime_mode '1'
config wifi-iface 'default_radio0'
...
list airtime_sta_weight '01:02:03:04:05:06 1024'
Now, when the station associates with the access point it has been assigned
a higher weight value.
root@OpenWrt:~# cat /sys/kernel/debug/ieee80211/phy0/netdev\:wlan0/stations/01\:02\:03\:04\:05\:06/airtime
RX: 12656 us
TX: 10617 us
Weight: 1024
Deficit: VO: -2075 us VI: 256 us BE: -206 us BK: 256 us
[MAC address has been changed into a dummy one.]
Signed-off-by: Dobroslaw Kijowski <dobo90@gmail.com>
include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd
include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd
PKG_SOURCE_URL:=http://w1.fi/hostap.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=http://w1.fi/hostap.git
PKG_SOURCE_PROTO:=git
config_add_array hs20_conn_capab
config_add_string osu_ssid hs20_wan_metrics hs20_operating_class hs20_t_c_filename hs20_t_c_timestamp
config_add_array hs20_conn_capab
config_add_string osu_ssid hs20_wan_metrics hs20_operating_class hs20_t_c_filename hs20_t_c_timestamp
+ config_add_array airtime_sta_weight
config_add_int airtime_bss_weight airtime_bss_limit
}
config_add_int airtime_bss_weight airtime_bss_limit
}
[ -n "$1" ] && append bss_conf "hs20_conn_capab=$1" "$N"
}
[ -n "$1" ] && append bss_conf "hs20_conn_capab=$1" "$N"
}
+append_airtime_sta_weight() {
+ [ -n "$1" ] && append bss_conf "airtime_sta_weight=$1" "$N"
+}
+
hostapd_set_bss_options() {
local var="$1"
local phy="$2"
hostapd_set_bss_options() {
local var="$1"
local phy="$2"
acct_server acct_secret acct_port acct_interval \
bss_load_update_period chan_util_avg_period sae_require_mfp \
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key \
acct_server acct_secret acct_port acct_interval \
bss_load_update_period chan_util_avg_period sae_require_mfp \
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key \
- airtime_bss_weight airtime_bss_limit
+ airtime_bss_weight airtime_bss_limit airtime_sta_weight
set_default isolate 0
set_default maxassoc 0
set_default isolate 0
set_default maxassoc 0
[ "$airtime_bss_weight" -gt 0 ] && append bss_conf "airtime_bss_weight=$airtime_bss_weight" "$N"
[ "$airtime_bss_limit" -gt 0 ] && append bss_conf "airtime_bss_limit=$airtime_bss_limit" "$N"
[ "$airtime_bss_weight" -gt 0 ] && append bss_conf "airtime_bss_weight=$airtime_bss_weight" "$N"
[ "$airtime_bss_limit" -gt 0 ] && append bss_conf "airtime_bss_limit=$airtime_bss_limit" "$N"
+ json_for_each_item append_airtime_sta_weight airtime_sta_weight
append bss_conf "bss_load_update_period=$bss_load_update_period" "$N"
append bss_conf "chan_util_avg_period=$chan_util_avg_period" "$N"
append bss_conf "bss_load_update_period=$bss_load_update_period" "$N"
append bss_conf "chan_util_avg_period=$chan_util_avg_period" "$N"