Intel's IWD 1.11 Released For Faster WiFi Scanning
The Intel-developed IWD Linux wireless daemon is out with its first feature release of 2021.
IWD 1.11 as the new release issued on Wednesday isn't a big update but comes with primary new feature: "intelligent scan of all [wireless] frequencies", as noted in the 1.11 tag.
Digging more into that, it basically should yield faster initial WiFi scanning times. The commit leading to this change is splitting DBus scans into three frequency scans.
That commit by Intel developer Andrew Zaborowski explains:
Hopefully in 2021 we see more desktop Linux distributions finally using Intel IWD by default.
IWD 1.11 as the new release issued on Wednesday isn't a big update but comes with primary new feature: "intelligent scan of all [wireless] frequencies", as noted in the 1.11 tag.
Digging more into that, it basically should yield faster initial WiFi scanning times. The commit leading to this change is splitting DBus scans into three frequency scans.
That commit by Intel developer Andrew Zaborowski explains:
A scan normally takes about 2 seconds on my dual-band wifi adapter when connected. The drivers will normally probe on each supported channel in some unspecified order and will have new partial results after each step but the kernel sends NL80211_CMD_NEW_SCAN_RESULTS only when the full scan request finishes, and for segmented scans we will wait for all segments to finish before calling back from scan_active() or scan_passive().
To improve user experience define our own channel order favouring the 2.4 channels 1, 6 and 11 and probe those as an individual scan request so we can update most our DBus org.connman.iwd.Network objects more quickly, before continuing with 5GHz band channels, updating DBus objects again and finally the other 2.4GHz band channels.
The overall DBus-triggered scan on my wifi adapter takes about the same time but my measurements were not very strict, and were not very consistent with and without this change. With the change most Network objects are updated after about 200ms though, meaning that I get most of the network updates in the nm-applet UI 200ms from opening the network list. The 5GHz band channels take another 1 to 1.5s to scan and remaining 2.4GHz band channels another ~300ms.
Hopefully this is similar when using other drivers although I can easily imagine a driver that parallelizes 2.4GHz and 5GHz channel probing using two radios, or uses 2, 4 or another number of dual-band radios to probe 2, 4, ... channels simultanously. We'd then lose some of the performance benefit. The faster scan results may be worth the longer
overall scan time anyway.
Hopefully in 2021 we see more desktop Linux distributions finally using Intel IWD by default.
5 Comments