Summary: Network performance tuning can be a black art but some simple decisions and configurations can easily set you up with a reasonably fast network.
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.
•
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 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.
•
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.
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.
Related:
Ask Leo! - What's the difference between a Hub, a Switch and a Router?
Ask Leo! - How should I set up my home network?
Article C3060 - June 19, 2007
Leo: Interesting that hard disk transfer speed turned out to be the weakest link in your networking chain. How did you figure this out?
Posted by: Michael Horowitz at June 22, 2007 9:12 PMJust 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.
-----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
Posted by: Leo A. Notenboom at June 23, 2007 5:18 PMkc6mX/48j3PBO6MV3Dj3m40=
=azwJ
-----END PGP SIGNATURE-----
Good hunch. :-)
Posted by: Michael Horowitz at June 29, 2007 8:24 PMHow do you copy a file to NUL?
I assume with a DOS command...
-----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
Posted by: Leo A. Notenboom at June 30, 2007 12:46 PMMaN3rBK3JWmPBTJdeS/WeiY=
=zAam
-----END PGP SIGNATURE-----
Relief!! ~2x is the best we are achieving after upgrading all to 1Gb.
Posted by: Robert Marshall at April 4, 2008 5:28 PMThe 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.
With he speed of SATA drives and the GB network, does the FSB speed (400, 800, 1333, 1600...) may also be a bottleneck?
Posted by: Alex at November 5, 2008 8:43 AMI 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?
Posted by: PANKAJA K at December 17, 2008 2:52 AMalex, 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.
Posted by: Sam at February 10, 2009 11:35 AMSomething 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
Posted by: Bill at April 30, 2009 9:39 AMOnly 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.
Posted by: Dave Rothery at November 13, 2009 4:18 AM