[PATCH 0/7] Reduce and optimize quick/roam scan frequencies

James Prestwood
2023-12-20T13:12:10Z

For large network deployments with many APs the list of known
frequencies can grow rather large. Since there is no cap on
the number of frequencies for quick scans this results in quite
a long scan. Roam scans (with no neighbor report) do cap at 5
frequencies but this list isn't sorted or optimized to scan
the most recently used BSS's.

These patches separate the known frequency list into two
sections, first most recently used, then most recently
seen. That way previously connected BSS frequencies are scanned
ahead of others. This also caps the number of frequencies for
quick scans to 5 per network. This still could result in 25
frequencies scanned (worst case), but its probably not very
common for a device to see 5 separate SSID's it can connect to.
In most cases its one, maybe 2.

James Prestwood (7):
known_network: rename known_network_add_frequency
knownnetworks: add known_network_add_connected_frequency
network: call network_connected with BSS
network: add network_roamed
station: use network_roamed
auto-t: update known frequency test to check order
knownnetworks: limit 5 recent frequencies per network

autotests/testKnownNetworks/frequency_test.py | 122 +++++++++++++-----
autotests/testKnownNetworks/hw.conf | 10 +-
.../{ssidCCMP-2G.conf => ssidCCMP-2G-1.conf} | 0
.../testKnownNetworks/ssidCCMP-2G-2.conf | 8 ++
autotests/testKnownNetworks/ssidHotspot.conf | 2 +-
src/knownnetworks.c | 66 +++++++++-
src/knownnetworks.h | 6 +-
src/network.c | 19 ++-
src/network.h | 3 +-
src/station.c | 4 +-
10 files changed, 190 insertions(+), 50 deletions(-)
rename autotests/testKnownNetworks/{ssidCCMP-2G.conf => ssidCCMP-2G-1.conf} (100%)
create mode 100644 autotests/testKnownNetworks/ssidCCMP-2G-2.conf

--
2.34.1