Change the AMRR TX rate control algorithm:
commit0685fbf9b7eaa412bedf57041a923f150ed6abdc
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Sat, 21 Oct 2006 08:37:04 +0000 (21 08:37 +0000)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Sat, 21 Oct 2006 08:37:04 +0000 (21 08:37 +0000)
tree7d2e204c0156a535311be4fee5e88d82e805cd91
parentf41f6fb6d0f4d6ca0a96ae782592ccc4b26c2ede
Change the AMRR TX rate control algorithm:
- Bookkeeping number of TX (counter1), and number of "fail to TX at
  desired rate" (counter2), instead of bookkeeping number of TX at
  each rate (old_counter[1-4]).
- Calculate "failure" and "success" conditions using 'counter1' and
  'counter2', instead of only using 'old_counter1' and 'old_counter2'.
  The mistake of the old way is that 'old_counter3' and 'old_counter4'
  should also be taken as "fail to TX at desired rate".
- Nuke no longer needed macro after above changes.

This change is tested with acx(4).  The testing result shows much
better TX performance under bad enviroment (e.g. lots of concrete
obstacles between STA and AP, long distance etc.).
sys/dev/netif/acx/acx111.c
sys/netproto/802_11/ieee80211_ratectl.h
sys/netproto/802_11/wlan_ratectl/amrr/ieee80211_ratectl_amrr.c
sys/netproto/802_11/wlan_ratectl/amrr/ieee80211_ratectl_amrr.h