Eli5: Why does downloading files take so long, but copying and pasting them on the same device takes seconds?


Eli5: Why does downloading files take so long, but copying and pasting them on the same device takes seconds?

In: Technology

The speed at which data can be written and read from a hard drive or solid state drive is often far faster than the speed of the communication between your computer and the internet.

Because when you download a file you are using a network connection which is quite a bit slower than a hard drive (or SSD).

There are many different types of “connections” in a computer and all have their own speeds. Network to hard drive, hard drive to itself, hard drive to usb connection, even RAM to the CPU!

Downloading a two step process copying is a one step. Copying essentially moves something from somewhere to another based on the speed of the cpu. Downloading is basically the same thing, but also factoring in the speed of the network and the cpu is also slowed slightly because it’s dealing with that stuff.

A download is bottlenecked either by the maximum bandwidth the server is willing or able to allocate to your or by your downstream connection.

A copy/paste operation on the same device is bottlenecked by the R/W speed of the storage medium used.

A **cut**/paste operation on the same device is instant, because your operating system does not physically move around data. It simply assigns the existing data a new path. Think of it as changing labels in a warehouse – instead of moving a box from row 1 to row 4, you simply look at row 1 and say “this is now row 4”.

When you’re downloading from a website, you’re limited by many things – the speed of your own internet connection, the physical distance to the server you’re downloading from, and the bandwidth of the server that you’re downloading from. So there’s a lot of possible speed bumps there. You could have the fastest internet connection the universe has ever seen, but it won’t make a difference if you’re downloading from a computer located halfway around the world from you and connected to the internet through a 14.4k dial-up modem.

When you’re transferring files on one system, it has virtually *no* distance to travel and the physical cabling has a very high bandwidth. Hard drives can support 80 – 160 MB/s read/write speeds, SSDs can support over double that. Even with a “gigabit internet connection” you’re looking at a max speed of 125 MB/s on a good day when your router and computer’s modem support speeds like that (you’re not likely to reach that), and that’s before you even start really getting out into the internet to download files.

Three reasons

If you’re copying it into a different file on the same hard drive, the data doesn’t actually move. There’s a registry in the hard drive of addresses of the data. When you “move” the data you’re really just updating the virtual address that directs to the physical location of the data. Since the data isn’t moving, updating the address is very quick.

If you’re copying the data to a different hard drive on the same device, you’re using connections that are usually very fast. SATA 3 is running at up to 600 megabits/second, and that connection is prioritized in your device. Not much else will be using that connection at that time, so it gets most of that 600mb/s.

When you’re downloading the data from online you have to copy all of the data from their hard drive somewhere to your own hard drive. That connection has several bottlenecks. It can’t be any faster than your download speed, which is maybe 100mb/s unless you have fiber or whatever. Their upload speed is probably similarly limited, probably less than your full download speed. Moreover, it’s likely that many people are trying to download that data, so their upload speed is being split between all of the users – in actuality, their overall upload speed is probably loads faster than your download speed, but you’re only getting a fraction of it.

At the bare basics, you *are* just copying from one hard drive to another. Just one very far away. You are limited by your internet connection, and the far away hard drive’s connection to the same internet.