Hi,

Recently I bought a net5501 to use as a firewall and a wireless access
point.  For wireless I'm using a Ralink RT2561S minipci card.  The box
is running FreeBSD 6.3-RELEASE.

My setup is as follows:
 * vr0 - Internet uplink
 * vr1 - LAN
 * ral0 - Wireless, mode 11g, channel 1, WPA 

I'm experiencing really poor performance under heavy wireless load.  The
interrupts seem to use around 95% of the cpu and it affects the LAN
performance considerably (voip gets choppy, slow ssh, etc.) 

I did some iperf benchmarks and here is what I got: 

iperf server side (soekris):

$ iperf -s -B 10.10.3.1
------------------------------------------------------------
Server listening on TCP port 5001
Binding to local address 10.10.3.1
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  4] local 10.10.3.1 port 5001 connected with 10.10.3.5 port 58779
[  4]  0.0-62.6 sec  76.3 MBytes  10.2 Mbits/sec

client side (Thinkpad T42, atheros card):

$ iperf -c 10.10.3.1 -t 60 -i 5
------------------------------------------------------------
Client connecting to 10.10.3.1, TCP port 5001
TCP window size: 32.5 KByte (default)
------------------------------------------------------------
[  3] local 10.10.3.5 port 58779 connected with 10.10.3.1 port 5001
[  3]  0.0- 5.0 sec  7.05 MBytes  11.8 Mbits/sec
[  3]  5.0-10.0 sec  6.74 MBytes  11.3 Mbits/sec
[  3] 10.0-15.0 sec  6.95 MBytes  11.7 Mbits/sec
[  3] 15.0-20.0 sec  6.91 MBytes  11.6 Mbits/sec
[  3] 20.0-25.0 sec  6.51 MBytes  10.9 Mbits/sec
[  3] 25.0-30.0 sec  6.28 MBytes  10.5 Mbits/sec
[  3] 30.0-35.0 sec  6.49 MBytes  10.9 Mbits/sec
[  3] 35.0-40.0 sec  6.68 MBytes  11.2 Mbits/sec
[  3] 40.0-45.0 sec  6.30 MBytes  10.6 Mbits/sec
[  3] 45.0-50.0 sec  6.20 MBytes  10.4 Mbits/sec
[  3] 50.0-55.0 sec  4.64 MBytes  7.79 Mbits/sec
[  3] 55.0-60.0 sec  5.52 MBytes  9.25 Mbits/sec
[  3]  0.0-60.0 sec  76.3 MBytes  10.7 Mbits/sec

systat -v capture on the soekris during the test, showing the cpu load
and interrupts:


        Tot   Share      Tot    Share    Free           in   out     in   out
Act   68112    8720    87292    11348  128984  count
All   87952   10216  2256192    13228          pages
Proc:                                                            Interrupts
  r   p   d   s   w   Csw  Trp  Sys  Int  Sof  Flt        cow    2642 total
  1       2  27      1986   51  421 6723    2    3      3 zfod   1007 clk irq0
                                                        1 ozfod       sio0 irq4
 4.2%Sys  94.7%Intr  0.9%User  0.0%Nice  0.2%Idle      40%ozfod       ohci0 ehci
|    |    |    |    |    |    |    |    |    |    |       daefr   129 rtc irq8
==+++++++++++++++++++++++++++++++++++++++++++++++>        prcfr       ata0 irq14
                                         3 dtbuf          totfr  1506 ral0 ata1
Namei     Name-cache   Dir-cache     17521 desvn          react
   Calls    hits   %    hits   %      8069 numvn          pdwak
                                      4378 frevn          pdpgs
                                                          intrn
Disks   ad1                                         31008 wire
KB/t   0.00                                         59048 act
tps       0                                         28876 inact
MB/s   0.00                                               cache
%busy     0                                        128984 free
                                                    35264 buf


I compiled the soekris kernel with device polling and enabled it on both
vr0 and vr1 as suggested on the soekris wiki[1].  However, I was unable to
enable polling on ral0 (looks like this isn't supported).  When running
iperf on the LAN interface I get around 92.0 Mbits/sec and the cpu load
is around 20% which is fine. 

Before I got the soekris I used a Thinkpad X40 with exactly the same
config and an Atheros minipci card. I was getting around 20 Mbits/sec on
wireless, but obviously it was a much faster machine.  Also the wireless
range was much greater on the Thinkpad (using the internal antenna
build in to the screen).  My soekris has got a 9db antenna, I would
expect it to outperform the Thinkpad on range but it didn't.  I've read
an article[2] mentioning that those Ralink cards are well know for low
quality signal so I guess that explains it. 

Is there anything I can do to improve the wireless performance (as in
the cpu load)?  Would changing the wireless card to a minipci Atheros
help?  

I'd be very grateful for any suggestions.

Cheers, 


Andrew.
-- 
accidents happen... 
_______________________________________________
Soekris-tech mailing list
[email protected]
http://lists.soekris.com/mailman/listinfo/soekris-tech

Reply via email to