[Cerowrt-devel] Managed to break 802.11n (on a 3800)
Aaron Wood
woody77 at gmail.com
Thu Jan 16 07:03:44 PST 2014
All,
I'm noting this here in case anyone is interested. After I write this up,
I'm going to start from scratch on the configuration, and factory-reset the
router.
=====
The 5GHz radio on my 3800 seems to be in a very odd state. I'm not quire
sure what state it's in, but it seems to be only doing HT20 1x1. And in a
fairly broken manner at that.
Running the rrul test (over wifi directly to the router as the netserver),
tcp uploads were 25Mbps or so, but download was 5Mbps. This is me 1-2
meters from the router. Load was never more than 0.33. (I can share the
results of people are interested).
After a full power cycle, wifi isn't coming up at all.
=====
How I got here:
I'm in France, and had dutifully set my unit with the FR country code when
setting up CeroWRT. I had noticed some odd latencies (periodic 100-200ms
latency every 10-20 seconds over wifi) on the 5GHz network. The router was
on channel 36, and I wanted to move it up to the far-upper ranges, so I
tried to specify a "custom" channel to do so (140). This was the channel I
thought I had been using with stock (Netgear) firmware.
Wifi didn't come back up after applying the changes, and the luci interface
seemed to be tripping up over stuff that it was reading out of the
configuration files.
I ssh'd in via ethernet, and fixed up the configurations by hand.
Except the driver is still reporting that the 5GHz network won't kick into
802.11n modes, and won't use HT40. It seems to be sure it's configured for
it, but isn't using it.
Further, digging into the rc_stats files with the minstrel speeds, I found
some very odd data (not what I was expecting to see:
(laptop, which can do 2x2 HT40)
rate throughput ewma prob this prob this succ/attempt success
attempts
D 6 6.0 99.9 100.0 2( 2) 65
65
9 0.0 0.0 0.0 0( 0) 0
0
12 2.9 25.0 100.0 0( 0) 1
1
18 4.3 25.0 100.0 0( 0) 1
1
24 5.6 25.0 100.0 0( 0) 1
1
A P 36 32.4 99.9 100.0 0( 0) 51
51
C 48 10.4 25.0 100.0 0( 0) 1
1
B 54 11.5 25.0 100.0 0( 0) 1
1
Total packet count:: ideal 53 lookaround 7
(AppleTV, 1x1 HT20)
root at cerowrt:/sys/kernel/debug/ieee80211/phy1/netdev:sw10# cat
stations/58\:55\:ca\:51\:b5\:4b/rc_stats
rate throughput ewma prob this prob this succ/attempt success
attempts
6 3.5 57.8 100.0 0( 0) 6
6
9 3.9 43.7 100.0 0( 0) 2
2
12 5.1 43.7 100.0 0( 0) 2
2
18 10.0 57.8 100.0 0( 0) 3
3
D 24 13.1 57.8 100.0 0( 0) 3
3
C 36 14.2 43.7 100.0 0( 0) 2
2
B 48 18.2 43.7 100.0 0( 0) 2
2
A P 54 46.2 99.9 100.0 1( 1) 348
367
Total packet count:: ideal 331 lookaround 37
Whereas what I'm seeing for the 2.4GHz radio is:
root at cerowrt:/sys/kernel/debug/ieee80211/phy0/netdev:sw00/stations# cat
10\:9a\:dd\:30\:96\:34/rc_stats
type rate throughput ewma prob this prob retry this
succ/attempt success attempts
CCK/LP 1.0M 0.7 100.0 100.0 0
0( 0) 2 2
CCK/SP 2.0M 0.0 0.0 0.0 0
0( 0) 0 0
CCK/SP 5.5M 0.0 0.0 0.0 0
0( 0) 0 0
CCK/SP 11.0M 0.0 0.0 0.0 0
0( 0) 0 0
HT20/LGI MCS0 5.6 100.0 100.0 1
0( 0) 2 2
HT20/LGI MCS1 0.0 0.0 0.0 0
0( 0) 0 0
HT20/LGI MCS2 0.0 0.0 0.0 0
0( 0) 0 0
HT20/LGI MCS3 0.0 0.0 0.0 0
0( 0) 0 0
HT20/LGI MCS4 0.0 0.0 0.0 0
0( 0) 0 0
HT20/LGI MCS5 30.3 100.0 100.0 5
0( 0) 1 1
HT20/LGI t MCS6 32.5 100.0 100.0 5
0( 0) 11 11
HT20/LGI T P MCS7 35.0 100.0 100.0 5
6( 6) 34 34
Total packet count:: ideal 45 lookaround 3
Average A-MPDU length: 1.3
And here are radio blocks from the current /etc/config/wireless:
config wifi-device 'radio1'
option type 'mac80211'
option macaddr '28:c6:8e:bb:9a:49'
list ht_capab 'SHORT-GI-40'
list ht_capab 'TX-STBC'
list ht_capab 'RX-STBC1'
list ht_capab 'DSSS_CCK-40'
option txpower '17'
option distance '25'
option channel '48'
option country 'US'
config wifi-device 'radio0'
option type 'mac80211'
option hwmode '11ng'
option macaddr '28:c6:8e:bb:9a:47'
option htmode 'HT20'
list ht_capab 'SHORT-GI-40'
list ht_capab 'TX-STBC'
list ht_capab 'RX-STBC1'
list ht_capab 'DSSS_CCK-40'
option txpower '26'
option country 'FR'
option distance '15'
option channel 'auto'
======
Some notes after having repaired the situation:
- The pci paths to the radios was missing from /etc/config/wireless, that's
the only thing that I saw that seemed grossly out of place.
- Back up and running, and yes, it's much happier, now. Over wifi I get
60-70Mbps upload and ~40Mbps download (running rrul). Latency sucks. Wifi
has some ugly bufferbloat. (although these results are somewhat in
question when the router has a 1m load average over 5.0...)
- Enabling all the SQM features I was having previously also considerably
cleaned up wifi performance. It's more balanced, but still not nearly as
balanced as I see on gigabit ethernet.
-Aaron
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cerowrt-devel/attachments/20140116/6661a4fc/attachment-0001.html>
More information about the Cerowrt-devel
mailing list