Bug 194620 - [ath] [net80211] take ampdu length and error rate into account when select ampdu length
Summary: [ath] [net80211] take ampdu length and error rate into account when select am...
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: wireless (show other bugs)
Version: CURRENT
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-wireless (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-27 02:02 UTC by Adrian Chadd
Modified: 2014-10-27 02:02 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Adrian Chadd freebsd_committer 2014-10-27 02:02:42 UTC
Right now the A-MPDU error logic in ath_rate_sample only looks at the error rate, not at where the errors are.

eg:

http://www.mwnl.snu.ac.kr/~schoi/publication/Conferences/14-CONEXT-BYEON.pdf

so for longer frames, things like changing channel conditions, clock drift/phase drift and such will cause the BER for the later subframes to be greater than the earlier frames.

The atheros NICs do channel estimate at the beginning of each frame.

So, let's add a bit of logic to check the RX AMPDU BER pattern and if we see the later sub-frames with a higher BER than the earlier subframes, start shortening the AMPDU.