Improving 5GHz 802.11n performance on Buffalo WZR-600DHP

I am connecting to a Buffalo WZR-600DHP running OpenWrt 18.06.2 r7676-cddd7b4c77 from a Thinkpad T430 (with an Intel Centrino Ultimate-N 6300) running Linux 4.20. wlan1 on the WZR-600DHP is configured with channel 48, width 40MHz, power auto, WMM Mode enabled. iw dev wlan0 station dump reports rx bitrate: 300.0 MBit/s MCS 15 40MHz short GI and signal avg: -39 dBm. However, speed tests and iperf3 only report ~50 Mbits/sec. Is there any way to improve the performance to get closer to 300 Mbits/sec?

With debugging enabled on the T430, I see the following messages in dmesg (which may or may not be relevant):

wlan0: Open BA session requested for XX:XX:XX:XX:XX:XX tid 0
wlan0: BA request denied - HW unavailable for XX:XX:XX:XX:XX:XX tid 0

Suggestions appreciated. Thanks for reading,

Quick update: With the help of Reventlov and johill on #linux-wireless I was able to improve the performance by enabling TX AMPDU by passing module option 11n_disable=8 to
iwlwifi on the ThinkPad, which also resolved the BA messages in dmesg. I started a thread on linux-wireless to make it the default.

The WZR-600DHP is still not performing as well as other APs at MCS 15, but it is sufficient for me for now.

1 Like