ath9k: fix dynack in IBSS mode
authorKoen Vandeputte <koen.vandeputte@ncentric.com>
Mon, 5 Nov 2018 10:31:12 +0000 (11:31 +0100)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Tue, 6 Nov 2018 10:49:55 +0000 (11:49 +0100)
commit779b89c7577de4d7615e2975341fc8ffc580ca09
tree425efd9e54be2e1a007176dc9ca7d7741fe95fe1
parentf9c79947b5c4e726ecf5afd1b04d99f0b4101755
ath9k: fix dynack in IBSS mode

Currently, dynack was only tested upstream using AP/STA mode.
Testing it on IBSS, showed that late-ack detection was broken.

This is caused due to dynack using Association Request/Response
frames for late-ack detection, which IBSS does not use.
Also allowing Authentication frames here solves this.

A second issue also got fixed, which was also seen AP/STA mode:

When a station was added, the estimated value would be exponentially averaged
using 0 as a starting point.

This means that on larger distances, the ack timeout was still not high
enough before synchronizing would run out of late-ack's for estimation.

Fix this by using the initial estimated value as a baseline
and only start averaging in the following estimation rounds.

Test setup:
- 2x identical devices:  RB912UAG-5HPnD + 19dB sector
- IBSS
- 2x2 802.11an (ar9340), HT20, long GI
- RSSI's  -70 / -71
- Real distance: 23910 meter

Results (60s iperf runs):

Fixed coverage class 54 (up to 24300m):
* 21.5 Mbits/sec

Dynack:
* 28.9 Mbits/sec

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
package/kernel/mac80211/patches/552-ath9k-dynack-use-authentication-messages-for-late-ac.patch [new file with mode: 0644]
package/kernel/mac80211/patches/553-ath9k-dynack-move-debug-log-after-buffer-increments.patch [new file with mode: 0644]
package/kernel/mac80211/patches/554-ath9k-dynack-check-da-enabled-first-in-sampling-rout.patch [new file with mode: 0644]
package/kernel/mac80211/patches/555-ath9k-dynack-make-ewma-estimation-faster.patch [new file with mode: 0644]
package/kernel/mac80211/patches/556-ath9k-dynack-remove-experimental-tag.patch [new file with mode: 0644]