Flaky AP has bad AIFSN, so no HT/VHT....
One of our customers reported that our ath10k stations were only able to connect at 54Mbps speeds. This is using somewhat hacked 3.17.8 kernel, but it looks like 3.19 has the same code checks for AIFSN.
It looks like their beacon has bogus AIFSN info, and sniff of the beacon does show AIFSN set to 0.
Kernel dmesg logs:
wlan0: authenticated at: 1424969385.456415
wlan0: AP has invalid WMM params (AIFSN=0 for ACI 0), disabling WMM
wlan0: associate with 00:18:25:06:4a:b4 (try 1/3), at: 1424969385.457148
wlan0: RX AssocResp from 00:18:25:06:4a:b4 (capab=0x401 status=0 aid=2) at: 1424969385.476681
wlan0: associated at: 1424969385.477265
But a commercial phone connects just fine to this AP, and reports ~780Mbps link speed, so it at least thinks it is doing VHT.
My question is, should we just warn and ignore this bad AIFSN, or is this really a fatal issue as far as enabling WMM?
Thanks,
Ben
Signature · 2 lines
Ben Greear <[email protected]> Candela Technologies Inc http://www.candelatech.com
Quoted 2 lines · Ben Greear
It looks like their beacon has bogus AIFSN info, and sniff of the beacon does show AIFSN set to 0.
Yeah this is invalid - the spec requires at least 2.
Quoted 4 lines
Kernel dmesg logs:
wlan0: authenticated at: 1424969385.456415
wlan0: AP has invalid WMM params (AIFSN=0 for ACI 0), disabling WMM
and then since we disable WMM we also can't do HT or VHT since they both require WMM (technically QoS, but that's mostly just different IE signalling)
Quoted 10 lines
wlan0: associate with 00:18:25:06:4a:b4 (try 1/3), at: 1424969385.457148
wlan0: RX AssocResp from 00:18:25:06:4a:b4 (capab=0x401 status=0 aid=2) at: 1424969385.476681
wlan0: associated at: 1424969385.477265But a commercial phone connects just fine to this AP, and reports ~780Mbps link speed, so it at least thinks it is doing VHT.
My question is, should we just warn and ignore this bad AIFSN, or is this really a fatal issue as far as enabling WMM?
It's hard to say what the AP meant when it said 0 ... did it really want the non-standard behaviour of 0, which will result in really bad medium access behaviour? Or should we override to use the minimum of 2?
AFAIR at least the Intel device gets horribly confused and crashes when we actually ask it to use 0 - the backoff calculation then is rather strange anyway.
Note that disabling WMM of course also makes use of *some* medium access rules, so there's perhaps the possibility of using the default value for ACs that have it as 0? OTOH, if we disable WMM, we'll use 3 for all frames, rather than 2/2/3/7 (for VO/VI/BE/BK) ...
It's not really trivial though.
johannes