Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a Netgear DG834G ADSL modem/802.11g router at home. My notebook and media centre PC (both (K)ubuntu 10.04) both connect at a reported speed of 54 Mbit/s, yet copying files between the two gives an average transfer speed of around 9Mbps. I see the same speed whether I use scp, FTP or even just iperf.

I tried copying something from my wife's notebook (Windows 7) to the media center and to my notebook using scp, both of which give me an average speed of around 6 Mbit/s.

On all three machines the wireless is reporting a link speed of 54 Mbit/s most of the time, sometimes it drops to 48 Mbit/s. All three machines and the Netgear router are within 4 metres of each other with no walls between any of them.

Based on tops I've found on other sites while researching this, I have tried changing the channel used on the wireless router to 1 and 6 (default was 11) and it makes no difference. I even tried to force the router to use 802.11g only, which also makes no difference.

I understand that the throughput won't ever reach 54 Mbit/s, but surely it should be significantly more than what I'm currently able to achieve.

Am I missing something obvious?

share|improve this question
I have similar performance when transferring data from one wirelessly connected computer to another. For me it works much faster when I transfer data from wired to wireless PC or other way around. – AndrejaKo Jul 27 '10 at 9:54
Are your measurements Mbps or MBps? It's a critical difference. – Fake Name Jul 27 '10 at 11:38
Read the first paragraph of my question. Its pretty clear, and since the entire question uses the same measurement, it's also pretty irrelevant. – ThatGraemeGuy Jul 27 '10 at 14:25

They are sharing the same channel. From what I know so far (not much) you are sharing the 54 Mbit/s between devices. So you are actually transferring data at 18 Mbit/s, add some overhead and some collision/resent ... Try connecting one of the devices with a wired connection and you will see the speed increase by more than double.

share|improve this answer

Don't forget that there's a lot of encryption and protocol overhead when the clients talk to the access points.

My experience: On a 54 MBit WLAN you'll reach about 2 MB/s (Megabyte/s) if your connection is really good and there are not to many other clients and networks around.

share|improve this answer
2 MB/s is my experience as well. That said, the asker is getting roughly half that via iperf. That's not good. – afrazier Dec 16 '10 at 20:11

Without frame bursting, TCP over 802.11g was only about 40-45% efficient. So even if you always got the 54 megabits/sec signaling rate between one client and the AP, you'd probably only see somewhere around 23 megabits/sec of throughput between the wireless client and something on the wired Ethernet on the far side of the AP.

Wireless to wireless data transfers only get half that speed because each packet has to cross the air twice: once from the source client to the AP, and once from the AP to the destination client. This is called "Intra-BSS Relay", and the 802.11 standard requires APs to do this, to avoid the "hidden node problem" where two wireless clients are each in range of the AP, but are not in range of each other. So I'd expect you to get around 11 megabits/sec of TCP throughput wireless to wireless through an AP, assuming everything's always getting the 54 megabits/sec signaling rate, and your client and server software use TCP as efficiently as IPerf does.

The fact that you're only getting 6-9 mbps sounds a little low. It would be interesting to see what performance you get if you temporarily turn off wireless encryption. Some older/cheaper equipment slowed down if you turned encryption on. Just to keep things clean, use IPerf for this test.

If turning off encryption doesn't get you up to around 11mbps, the next thing I'd check is your TCP receive window. It would be interesting to know what TCP receive window IPerf is reporting your OSes as using by default. If it's less than 64K, it would be interesting to see if setting it to 64K by adding the the -w 64K option to IPerf gets you to 11 megabits/sec of throughput. Honestly 20K ought to be enough for a 54 megabits/sec connection with a typical 3ms round trip time, but sometimes the latency increases when the network is fully loaded, so going to 64K TCP receive windows isn't out of the question.

share|improve this answer

I don't think that speed is especially surprising. Wikipedia gives a typical speed of 10 Mbps. Do you have neighbouring networks on the same channel, or other interference of some kind? Apple has a good list of things to check.

share|improve this answer
For PAN and LAN standards like WiFi, these levels of performance are attainable under ideal radio conditions (that is, a complete lack of interference and at close range without obstacles). – Nitrodist Jul 27 '10 at 13:03

Gen has a good point, all traffic to the router is competing with all traffic from the router, including both sides of a file transfer.

I would add, the Netgear DG834G is not a high performance router.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .