OpenWrt Forum Archive

Topic: WGT634U replace old 2.4 GHz miniPCI with ath9k 5 GHz card?

The content of this topic has been archived on 4 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I recently found one of my old routers and have been using it for learning the OpenWRT build. Surprisingly the WGT634U has 8MB flash and 32MB ram but I'm thinking it might have too old a CPU for latest trunk and ath9k. I get this impression primarily because LuCI is very slow on it whereas LuCI on the WR1043ND is reasonably quick even without tweaking it.

Anyone guess if a ath9k 5GHz card would work ok or not? I would mod the case to use two antennas if it would work.

Yes, CPU isn’t that critical. I’m confident you’ll get line-speed.

I have the Compex WLM200N5 card working but it cannot reach it's potential because high CPU utilisation. The loadavg was well above 1 and [ksoftirqd/0] had high CPU utilisation.

I tested two ath5k, two ath9k and one acx based miniPCI cards and they all suffer the same issue. Sometimes the CPU utilisation increase progressed slowly for a short period of time so perhaps there is hope of a patch to solve the problem.

Wired file transfer was at maximum speed with almost zero CPU utiilisation.

I reverted back to the netgear stock firmware with the original miniPCI wireless card and during wireless transfer the serial console was also very sluggish during peak wireless transfer suggesting the same issue exists so perhaps the issue has always existed?

Anyone have any hints how to diagnose this issue or will confirm it's likely a lost cause?

I tried tweaking MAX_SOFTIRQ_RESTART which is hard coded to 10 in the source code. I created /sys/kernel/max_softirq_restart which allowed me to change it while testing and wireless throughput was ~2.75MB/sec (connected at 300Mbps) regardless of setting it to 1 or 1000. Lower values were much more responsive when typing at the serial and ssh console yet throughput was virtually unchanged.

I'm still interested in learning so any hints on how to proceed to find out more about the mediocre performance would be appreciated.

right away, i would see the following cpu-intense processes when using wireless compared to wired transfers: ciphering (WPA/WPA2), firewall/packet filtering, data transfer between wired and wireless interface.
you won't be able to influence the last one, but for testing purpose, you could temporarily disable firewall and/or ciphering and see how it goes.

Saw a localhost iperf test in another thread so I tried it on the WGT634U:

root@OpenWrt:/sys/kernel# iperf -c 127.0.0.1 -d
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 127.0.0.1, TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  5] local 127.0.0.1 port 46940 connected with 127.0.0.1 port 5001
[  4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 46940
[ ID] Interval       Transfer     Bandwidth
[  5]  0.0-10.0 sec  87.4 MBytes  73.2 Mbits/sec
[  4]  0.0-10.0 sec  87.4 MBytes  73.2 Mbits/sec

So now I know that ~20Mbit/sec wireless throughput isn't really a bad result for the WGT634U.

I also briefly tested x86 OpenWRT with the Compex WLM200N5 in a miniITX PC (runs a T6670 mobile CPU) and wireless throughput was ~120Mbit/sec but I think the bottleneck was actually the LAN connected hard drive.

MBS wrote:

right away, i would see the following cpu-intense processes when using wireless compared to wired transfers: ciphering (WPA/WPA2), firewall/packet filtering, data transfer between wired and wireless interface.
you won't be able to influence the last one, but for testing purpose, you could temporarily disable firewall and/or ciphering and see how it goes.

Thanks for the suggestion. I did try without firewall and encryption but the difference was negligible.

I tested again to make sure and the speed increased by ~2Mbit/sec when encryption and firewall is disabled.

Perhaps the PCI interface is the bottleneck?

Dude, reading throughput from an attached USB drive and pure switched wireless throughput are two different pairs of shoes.

towolf wrote:

Dude, reading throughput from an attached USB drive and pure switched wireless throughput are two different pairs of shoes.

Huh?

It is an external hard drive with a Gigabit ethernet interface.

The discussion might have continued from here.