4

The Situation:
When I try to transfer a file from one computer to another that are both connected via wireless on a WRT54GL (in a office) with dd-wrt firmware I often get bad speeds. In generally they average around 100 kilobytes a second. Either computer can download via wireless from the Internet at at about 2 megabytes a second. The speed is slow with the transfer of one large file.

There are about 20 other wireless networks that the computers can see, so there is a lot of noise, but I don't have the equipment to really monitor the frequencies well. But that still seems pretty slow. I thought maybe it was the transmit on each card, but even when they are 5 feet away with a line of sight I still get these speeds. According to Linux both cards are operating at 54g.

My Questions:

  • Is this normal for this sort of consumer level wireless equipment?
  • Anything I can do to improve it?
  • why is wireless to wireless transfer slow when everything else isn't?
  • Whats steps might I take to figure out what is happening? For example, are lots of packets not making to the access point requiring retransmissions?

Above all, I want to find out what the problem actually is. This may seem odd, but at this point I am more interested in understanding what the problem is than fixing it.

What I have tried:
I have tried messing with lots of settings. Different channels, xmit power, G-Only, none of which has made anything any better. I've also tried upgrading to newer dd-wrt firmware version and doing a reset to wipe out the settings.

Kyle Brandt
  • 83,619
  • 74
  • 305
  • 448

6 Answers6

3

Is this normal for this sort of consumer level wireless equipment?

Unfortunately, yes. I have had horrible results with consumer grade 802.11 equipment, in particular the famed Linksys WRT54G model line. This includes the pre-5.0 versions that have the full 16MB of system memory and 4MB of flash memory. The vxWorks stock firmware is barely stable in my experience - with reliable uptimes ranging from three weeks to a few months. Observed behavior is that clients can associate with the access point, ping the access point's LAN IP address with no unusual amount of latency or packet loss, the firmware itself can ping (again with no unusual amount of latency or packet loss) a site on the internet but for inexplicable reasons the clients cannot. Power-cycling will "cure" this for a limited time.

Additionally dd-wrt is notoriously unstable. I have been through at least a half dozen versions of the firmware and they have all been horrible. I know people love it, but I wouldn't consider recommending it to anyone.

Anything I can do to improve it?

Yes. Buy quality wireless access points. The economics of consumer grade wireless products optimizes for two things - 1) to be the fastest to the market with their product regardless of consequences in terms of quality or design and 2) to produce the cheapest possible product thus maximizing return per unit. This situation does not produce quality products.

We've been using D-Link's DWL-3200 managed access points with decent results, although they are a little rough around the edges (particularly with respect to their command line interface). But for entry level (at $250 a piece) "enterprise-grade" products they're a pretty good value. Cisco Aironet products are largely the defacto standard here (but are priced accordingly).

Why is wireless to wireless transfer slow when everything else isn't?

Because consumer grade 802.11 equipment sucks. AND because 802.11 sucks (here's why)...

You've already determined that you're running at 802.11g so let's start with your theoretical peak throughput of 54Mbps. You're immediately going to lose half that due to overhead in the 802.11 protocol (because its a shared stream, signalling is done "in-band" and due requirement for collision avoidance). You'll be lucky to see a peak throughput of 22Mbps. And this does not take into account signal interference (the 2.4Ghz band is heavily used by a whole number of things other than 802.11), distance the client is from the access point (inverse-square law) or overhead for encryption. In my experience, a realistic (or pessimistic) estimate of your actual real world throughput is about 1/4 of the advertised speed. This puts you right around your 16Mbps (or 2MBps) that you're getting when downloading from the internet. Add in the overhead for TCP/IP and for the Application Layer and things are looking grim. However you should be getting somewhere around 8-11Mbps, which is about an order of magnitude better than what you're seeing.

Whats steps might I take to figure out what is happening?

First things, first. You need a client with a wireshark and a wireless card capable of monitor mode (see Wireshark's wiki). This will let you see the 802.11 control and management packets. Without this you're going to have a real hard time troubleshooting.

Unfortunately, you have already done everything I would recommend:

  • Ensure you're operating at 802.11g and not 802.11b/g mixed mode
  • Ensure decent signal strength and signal to noise ratio (wavemon is OK, but the Fluke AirCheck is far superior).
  • Check for channel overlap with other 802.11 traffic. Kismet or NetStumbler is helpful here.
  • Ensure that your clients are associating with the closest access point (check the MAC address of the BSSID/SSID)
  • Check the Tx/Rx power
  • Look at your client-side drivers especially if you're using Linux or BSD - these are often half-working and full of bugs (through no fault of the developers).
  • Check for polarization and alignment problems with your antennas (if applicable)
  • Using Windows XP and a "hidden" SSID? This breaks horribly (XP will automatically try to associate with any broadcast-ed SSIDs even if your hidden one is on the Preferred Network list).

If you continue to use dd-wrt be advised that the "official" recommend builds are largely considered broken. The current recommend build is 14929. Read the wonderfully organized "peacock" thread for more information.

I suspect using higher quality access points will largely resolve your problem, but I doubt you'll ever see speeds above 16Mbps.

3

No, that router should be pretty quick between computers on the network. I've never had that sort of issue using that firmware.

I would suggest starting with a fresh firmware install of DD-WRT without playing with any of the settings. Leave the network unprotected and test out the speeds. WPA can cause slowdowns if you have that enabled.

The other thing to look at is what kind of files you are transferring. Are they a large number of tiny files? That will considerably slow down the transfers.

Update: A few other things you can look for:

Wireless packet info on /Info.htm - This indicates how many packets are being sent/received and lost.

Try plugging the computers in (wired vs. wireless).

How is your load average (top right of the page) anything under 1 is OK.

On the /Status_Wireless.asp page, check to see what the actual signal strength is as reported by the router. This also gives you the Signal to Noise Ratio. I'm not sure what is good, but on mine the signal is at -88, noise -94, SNR 5. If you are getting bad signal, try changing the channel.

dubRun
  • 1,061
  • 2
  • 12
  • 22
0

is the router operating exclusively in G?

Keith
  • 2,429
  • 1
  • 22
  • 18
0

You could try different firmwares. DD-WRT would be a good start, as it can cope with interfearance by automatically switching chanels. Wireless-to-wireless traffic is slow, but 100kB/s is too slow. You should achieve at least 1MB/s in good environment.

Don Zoomik
  • 1,533
  • 9
  • 14
0

Try using iperf to test your bandwidth. This can help you to track down your problem.

sybreon
  • 7,405
  • 1
  • 21
  • 20
0

Which version of DD-WRT are you using ? I remember having speed issues with 0.23SP?

What xmit power are you using ? any overclocking ? I found out the hard way the WRT54G is working better at low xmit power if your equipment is not too far away.

I'm using three of them with 0.24 firmware now and did not encounter any issue lately.

olefebvre
  • 472
  • 3
  • 6
  • Tried low / medium/ high xmit settings – Kyle Brandt Aug 06 '09 at 14:39
  • really check the DD-Wrt revision, i had similar issues with some version of 0.23 firmware IIRC. I use two of mine WRT54G/GS as a bridge between first and second floor. With the exact same settings i got abysmal performance with the faulty 0.23 while the latest 0.24 version proved excellent. – olefebvre Aug 06 '09 at 19:20