I have a Linksys WRT54G plugged into the cable modem, and a 2nd wireless router, an old D-Link plugged into that. Both wireless routers work, but if I connect wirelessly to the Linksys router I get transfers going about 10 times slower than if I connect wirelessly to the D-Link even when accessing computers that are plugged directly into the Linksys router.
I've tried using just the D-Link and removing the Linksys, but it seems to hang regularly when it's running a DHCP server. When I have both routers on, the D-Link passes all DHCP requests to the Linksys.
If I disconnect and reconnect, the Linksys runs at full speed for a while, but quickly drops back down to slow speeds.
What might be causing this, and how can I go about fixing it?
@Spiff: I ran IPerf between my laptop ('chris') which is connecting wirelessly to the Linksys, and 'server' which is wired to the Linksys. This is with the D-Link router turned off. I get very different results depending on which is the client and which is the server:
server$ iperf -c chris
------------------------------------------------------------
Client connecting to chris, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.194 port 53856 connected with 192.168.0.172 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-11.0 sec 1.88 MBytes 1.43 Mbits/sec
chris$ iperf -c server
------------------------------------------------------------
Client connecting to server, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.172 port 55601 connected with 192.168.0.194 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 9.12 MBytes 7.60 Mbits/sec
I see speeds of about 100KBytes/sec when downloading from 'server' onto the laptop with a wireless connection to the Linksys, which is what IPerf is saying I should see too. With the D-Link I expect I'll see something around 8 Mbits/sec in both directions. I'll edit this question with IPerf output from the D-Link when I have access to it.
Here's something odd. Last night I was getting slow downloads over the Linksys wireless interface so tried switching the wireless channel setting from 1 to 8. This caused IPerf output to go back to reasonable. Here's the before and after:
[ 5] local 192.168.0.172 port 5001 connected with 192.168.0.194 port 34362
[ 5] 0.0-15.9 sec 1.00 MBytes 527 Kbits/sec [using channel 1]
[ 4] local 192.168.0.172 port 5001 connected with 192.168.0.194 port 34363
[ 4] 0.0-10.4 sec 21.6 MBytes 17.4 Mbits/sec [using channel 8]
But this morning I noticed downloads were slow again. I switched the wireless channel back from 8 to 1, and again got a speedup:
[ 5] local 192.168.0.172 port 5001 connected with 192.168.0.194 port 34441
[ 5] 0.0-17.9 sec 1.88 MBytes 880 Kbits/sec [using channel 8]
[ 4] local 192.168.0.172 port 5001 connected with 192.168.0.194 port 34442
[ 4] 0.0-10.4 sec 26.4 MBytes 21.2 Mbits/sec [using channel 1]
There's no other wireless device around. And it seems that it doesn't matter which channel I switch to, just so long as I switch.
Update: I just noticed that I don't have to change the channel to temporarily 'fix' the problem. Earlier I used the router's web interface to switch from channel 1 to channel 8, which let me download quickly for 5 minutes or so, and left the browser at http://router/apply.cgi. Later, when the downloads were going very slowly again, I just hit 'refresh' on that page. The browser asked me:
The page that you're looking for used information that you entered.
Returning to that page might cause any action that you took to be
repeated. Do you want to continue?
I continued, and the downloads immediately started going ten times faster. I expect the router is still using channel 8, as it was before, so I don't even need to change the channel to get it to speed up for a while.