]> git.ipfire.org Git - thirdparty/hostap.git/commit
Interpolate rate calculation functions
authorMatthew Wang <matthewmwang@chromium.org>
Mon, 16 Mar 2020 21:11:06 +0000 (14:11 -0700)
committerJouni Malinen <j@w1.fi>
Sat, 21 Mar 2020 17:00:44 +0000 (19:00 +0200)
commit22f0318dbdbddca3dd8a82d0065bc8c93deb23d1
tree291ff5cd177b0096138f693ac59c9dabc14873fc
parent3a25897ef77aef313160c4c09f00d8198fb85f68
Interpolate rate calculation functions

Make max_*_rate() functions and rate calculation at the beginning of
wpas_get_est_tpt() more continuous. In wpa_supplicant_need_to_roam(), we
compare these values to make a roaming decision. However, at certain
SNRs, we see unrealistically large jumps in estimated throughput
according to these functions, leading us to make incorrect roaming
decisions. Perform linear interpolation where applicable to more
accurately reflect actual throughput.

Example:
wlan0: Current BSS: 88:3d:24:b4:95:d2 freq=2412 level=-69 snr=20 est_throughput=54000
wlan0: Selected BSS: 88:3d:24:b4:89:9e freq=2417 level=-67 snr=22 est_throughput=63500
wlan0: Using signal poll values for the current BSS: level=-69 snr=20 est_throughput=54000
wlan0: Allow reassociation - selected BSS has better estimated throughput

2 dB increase in RSSI likely isn't responsible for a 17% increase in
throughput.

Signed-off-by: Matthew Wang <matthewmwang@chromium.org>
wpa_supplicant/scan.c