Technology in terms you understand. Sign up for the Confident Computing newsletter for weekly solutions to make your life easier. Click here and get The Ask Leo! Guide to Staying Safe on the Internet — FREE Edition as my thank you for subscribing!

How do I maximize data transfer speed on my LAN?

Question:

I am in a small business with 4 computers and 1 printer networked. Data
transfer speed is very important - do I need a server or router or something
else? Does cable length substantially affect transfer speed?

As with many things, it depends. But let's look at a couple of the things
that may, or may not, affect moving data around on your LAN.

Become a Patron of Ask Leo! and go ad-free!

First, realize that we're talking about your LAN and not the internet. The
internet is easy: you're almost certainly limited by the speed of your
connection to the internet; your broadband, dedicated line, or whatever else.
If you need faster internet, that's what you need to speed up. Everything else
pales in comparison.

On your LAN it's a different story.

Ultimately we're talking about reducing the amount of time it takes to push bits
from point a to point b. More often than not that means machine A and machine
B.

Ethernet Speed Start by making sure that all the machines
are connected using at least 100 megabit connections or better. The difference
between a 10 megabit and 100 megabit connection is substantial and noticeable
when you're talking machine-to-machine. Gigabit connections are even better,
though for reasons we'll see in a moment the incremental difference over 100
megabit connections may not work out to be as much as you might expect.

"Something will always be the bottleneck ..."

Hub? Switch? Router? If your network is busy at all, you'll
want to use either a switch or a router. A hub is a "stupid" device, and will
flood all devices connected to it with all the network traffic. Switches and
routers are smart enough to "route" the data only to and from the devices
actually involved in a conversation. The result is that there are fewer
conversations with which your data might collide and "slow down" the
conversation.

Hard Disks Believe it or not, past a certain point it may
be your hard drive that's slowing down your transfer. I experienced this when I
upgraded my LAN to gigabit ethernet - I didn't get anywhere near the 10-times
increase in file transfer speed that I was hoping for. A 10x increase is
unrealistic in the best of situations, but a 6 to 8 times increase would have
made me happy. As it was, I got a little over 2 times. Now, doubling your
transfer speed is nothing to sneeze at, but it's not what I was expecting. It
turns out that I had exceeded the transfer rates of one of my hard drives -
that was now the slowest device in the chain.

System Activity If either of the two systems is doing
something else, particularly disk or network-intensive activity not related to
the file transfer, that can impact the transfer.

What about a server? It really depends on what you're
attempting to do. If you're trying to get data from machine A to machine B,
then inserting machine C in the middle certainly isn't going to make things any
faster. On the other hand, if you want to leave your data on a central server,
then having one that has fast hard drives and a fast network connections could
be a viable way to structure your LAN. But like I said, it all depends on how
you use the network, and in this case, how you use the data.

Cable Length The length of your cable can affect throughput, particularly
in higher speed networks. Much more important, though, is the quality of the cable.
A short cable with poor connectors or bad shielding can perform just as poorly as
an over-long cable. For the record, the specified max length for common
ethernet cabling is 100 meters;
in other words longer than the length of an American football field.

About that Printer I rarely even think about printers when
it comes to speed. The process of printing is comparatively slow, so speeding
up network transfers isn't going to push the paper out any faster. The one
place where it can make a difference is the amount of time your application
spends printing. Typically when an application prints, the data for the printer
is copied to the hard disk of the machine to which the printer is connected.
The faster that can happen, the sooner the application will be "done" printing even if all the pages haven't actually been printed yet. This "spooling"
operation is really just the same as any file copy operation, and it benefits from
all the items I've talked about above.

As you can imagine, there's a point of diminishing return.
Something will always be the bottleneck, and improving that may simply
not be worth the effort or cost for the speed increase it might offer. On the
other hand, simple steps such as outlined above will at least set you up for a
fast experience from the start.

Do this

Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.

I'll see you there!

20 comments on “How do I maximize data transfer speed on my LAN?”

  1. Leo’s the man! I nominate Leo for the Nerd Hall of Fame.

    A couple of quick other bits of potentially useful data:

    First, just about *any* Internet connection will be slower than your internal business network and should have very little impact on a switched system. I know that the Internet wasn’t included in the original question, but sharing the Internet connection seems to come up often in small network questions.

    Second, if you have a wireless connection into your network, don’t expect the wireless connection to operate as quickly as the wired machines. I bet Leo could dedicate a whole article to getting decent speed from wireless networking. Wireless wasn’t mentioned in the original question either – but it tends to come up in small network questions too.

    I have to agree with Leo about network speed. This year I upgraded my home network to gigabit and rarely see much difference from the 100 megabit switched. The other day I hit a series of files from two different machines (copying from the server to two different machines) and the *second* copy of 111 files was amazingly fast… it was sitting in the cache of the server, so there weren’t any hard drive bottle necks.

    Recently I moved locations at work – the original location was running at 10mbps half-duplex – the new location is running at 100mbps full-duplex. Whoosh – what a difference!

    Reply
  2. Leo: Interesting that hard disk transfer speed turned out to be the weakest link in your networking chain. How did you figure this out?

    Just for the record, different parts of the hard disk transfer data at different speeds. Not that it matters though, I can’t imagine how anyone could force the placement of files to a specific section of the platters.

    Reply
  3. —–BEGIN PGP SIGNED MESSAGE—–
    Hash: SHA1

    I started with a machine-to-machine copy, and was disappointed. :-)

    So, on a hunch, I did a drive-to-drive copy on the same machine (happens to
    have two drives) and the number was VERY similar.

    Then I did a copy to NUL, (i.e. just a read of the entire file) and once again
    the numbers were very similar.

    If I recall right, I was using a CD image of around 650 megabytes.

    Thanks,

    Leo

    —–BEGIN PGP SIGNATURE—–
    Version: GnuPG v1.4.6 (MingW32)

    iD8DBQFGfbhDCMEe9B/8oqERAoRfAJ9ERANrul7eZmhDrl0WVyfN9Mf0fACggTF0
    kc6mX/48j3PBO6MV3Dj3m40=
    =azwJ
    —–END PGP SIGNATURE—–

    Reply
  4. —–BEGIN PGP SIGNED MESSAGE—–
    Hash: SHA1

    Exactly. NUL is just a special filename, so:

    copy filename NUL

    Reads the entire file and copies it to … NUL.

    Same idea as CON (screen and keyboard), LPT1, COM1 and so on.

    Leo
    —–BEGIN PGP SIGNATURE—–
    Version: GnuPG v1.4.6 (MingW32)

    iD8DBQFGhrLbCMEe9B/8oqERAvSMAJ9RPyQHgIkqG1NuxzzJajMAft4NlwCfSkBU
    MaN3rBK3JWmPBTJdeS/WeiY=
    =zAam
    —–END PGP SIGNATURE—–

    Reply
  5. Relief!! ~2x is the best we are achieving after upgrading all to 1Gb.
    The rate from an internal (4+GB)to an internal was twice the rate of xfr from the internal to an external on another machine (USB connected HD).
    Best rate was 10.17MB/s at 1Gb
    We thought we had major problems. Thanks for the writeup. Intel was no help except for driver upgrades.

    Reply
  6. I READ THE ARTICLE THOROUGHLY, BUT NOT SATISFIED AS MY PROBLEM IS DIFFERENT.RECENTLY I SHIFTED MY NETWORK WITH GIGA SWITCH & gaga lan cards & cat6 cable to all my pcs, but the data transfer speed is even reduced to 10mbps, not getting why it is so?

    Reply
  7. alex, no, sata hard drives have better BURST rates, up to 3gb/s but that isn’t how fast the drives read, its the physically spinning disks that limit the hdd transfer rates so an upgrade to sata doesn’t inherently mean a massive increase in any file reading or writing.

    Reply
  8. Something else that can really speed up yoru transfer speeds is to enable jumbo frames on a gigabit network. Just make sure your routers and switches support it

    Reply
  9. Only by improving the hard drive system can you see much much greater data transfer rates, using raid 5 arrays, or even high performing solid state drives. On the network you can team network cards on servers to improve throughput, but this will only benefit already cached data.

    Reply
  10. Leo,

    Since you’ve been on vacation since June 2009 and are not accepting email, I have to post here.

    I was happily reading a Google found article when an Awebber opt-in form appeared. I did the unthinkable: I opted in. I was then asked to confirm the subscription, in the process losing the article I was happily starting to read. I opted in. This led to yet another redirect. In the course of all this I lost the original article. Thank god I remembered a few words I read; I was able to search for it for 10 minutes on your Google specialized search tool, and find it.

    What a nightmare.

    Of course, I should know better than to opt in to javascript popups.

    Reply
  11. I READ THE ARTICLE THOROUGHLY, BUT NOT SATISFIED AS MY PROBLEM IS DIFFERENT.RECENTLY I SHIFTED MY NETWORK WITH GIGA SWITCH & gaga lan cards & cat6 cable to all my pcs, but the data transfer speed is even reduced to 10mbps, not getting why it is so?

    Reply
  12. need to check your spellings :p
    spell check didnt work for this :-

    Ultimately we’re talking about reducing amount of time it takes to push bits from point
    at
    to point b. More often than not that means machine A and machine B.

    Reply
  13. I am currently on a 10/100 MBPS lan network, were one of my PC (an i7 machine with 8gb ram) is viewed by 100 other PCs (all C2D with 2gb ram) with the help of R-admin viewer…
    Should I shift to gigabyte networking?
    Please advice

    Regards,

    Ashish

    The number of connections isn’t a determining factor – the amount of data being transferred is. If you don’t perceive a speed issue, I’d be tempted to leave well enough alone.

    Leo
    03-Aug-2010

    Reply
  14. hi i want to tell you that i am a student in ethio-china and there is a small LAN for only 23 students in our classroom but i could see that there is a different speed (bandwidth) b/n each of our computer and i asked my friends why but they refused to tell me the secret how to make it speedy. we all are on the same netwok how could it be like this please if there is a method you know dont wait to answer me thanks.

    Reply
  15. I am having issues with my network. Comp A Comp B and Server. If I transfer from A – B I get about 60MBps If I transfer from Server – A I get about 50MBps. If I transfer A – Server It starts out real high then it freezes and drops down to about 10MBps.. The file is one big ISO. Obviously I am on gigabit network. The Computer is decent 3.0 Dual core 4gigs of memory. The HD is 7200rpm Cache I can not remember off the top of my head. Do you have any suggestions to help me improve my transfer rate

    Reply
  16. 1)open the registry and browse the following branch:
    ‘HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanworkstaion’.

    2)if the following entries aren’t already there, Create the DWORDs ‘MaxCmds’,’MaxThreads’ and ‘MaxCollectionCount’ under this branch.Assign them a value of 30,30and 32 respectively.

    3)After you restart your system, you should experience an increase in the performance of your network transfers.
    Enjoy your network speed,………………………………………

    Reply

Leave a reply:

Before commenting please:

  • Read the article.
  • Comment on the article.
  • No personal information.
  • No spam.

Comments violating those rules will be removed. Comments that don't add value will be removed, including off-topic or content-free comments, or comments that look even a little bit like spam. All comments containing links and certain keywords will be moderated before publication.

I want comments to be valuable for everyone, including those who come later and take the time to read.