Let's say I have two computers in a network (Same OS..let's say Windows ), one very fast and one very slow, and I want to copy files from one to another. Does it make any difference which one I use to do the copying or which one is the file server ?

(If the server computer is doing more work than the client then I gues it would be quicker to use the fast one to do the copying)

Different example: two identical computers, one is doing nothing and one is executing some tasks. Any difference in using one or the other?

  • This may depend on os/fs. Assume you're talking about CIFS/SMB? If so, add that to the question. – Linef4ult Sep 25 '15 at 9:31
  • I don't have so deep knowledge in network protocols to add such specific parameters to my question :) – Anonymous Sep 25 '15 at 9:33
  • Typically creating & writing a file involves more work than simply reading a file, since a directory entry has to checked for a duplicate before it can be created, and clusters have to be allocated. But your question makes no sense. You don't normally get to select the source or destination computer by capability. You copy from the computer that has the source file, and transfer it to the computer that needs the copy. – sawdust Sep 25 '15 at 9:37
  • when both the destination and source folder are shared then you can use both computers to select the files, right click and select paste. that's what I mean by "which computer I use to do the copying" – Anonymous Sep 25 '15 at 9:40
  • Purely anecdotally, it often feels faster to 'pull' a file than to 'push' it - though I've never measured it. – Tetsujin Sep 25 '15 at 9:44

Disclaimer: The below statements should involve the word "usually", as there are exceptions to most of them, depending on hardware, filesystem, software, and OS at play.

Some key points that can serve as guidelines:

  • Writing data to disk takes longer than reading. (although the difference is very small)
  • disk I/O doesn't really take much processing power in itself.
  • disks can read/write faster than the network can transfer.

Ergo, the amount of work on both ends is roughly the same, but the receiving end needs a bit longer to write the data to the disk. However, the speed is likely to be bottlenecked by the network speed

What you want to keep in mind is that the server can have multiple clients connected to it and therefore might need properly scaled hardware to be able to serve them all without transfer speeds suffering. On a proper modern network, this basically means that you want to ensure that the disk is able to keep up with the network. Say, if a few clients end up saturating the network bandwidth, the fileserver needs to be able to have disks that can keep up with the transfer rate.

  • so if i select a file from computer A and copy it to computer B, it's the computer A that is writing the data? not computer B after responding to a write request? – Anonymous Sep 25 '15 at 11:05
  • @Anonymous Incorrect. Basically, the receiver of the data will do the writing to its own disk, regardless of which computer initiates the transfer. – Jarmund Sep 26 '15 at 22:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.