In computer networks, uploading can refer to the sending of data from a local system to a remote system such as a server or another client with the intent that the remote system should store a copy of the data being transferred, or the initiation of such a process. The words first came into popular usage among computer users with the increased popularity of bulletin board systems (BBS), facilitated by the widespread distribution and implementation of dial-up internet access in the 1970s.
Downloading is the inverse operation of uploading which means to receive data to a local system from a remote system, or to initiate such a data transfer. Examples of a remote system from which a download might be performed include a web server, FTP server, email server, or other similar systems.
A download can mean either any file that is offered for downloading or that has been downloaded, or the process of receiving such a file.
The use of the terms uploading and downloading often imply that the data sent or received is to be stored permanently, or at least stored more than temporarily. Downloading would imply that the data is only usable when it has been received in its entirety. Increasingly, websites that offer streaming media or media displayed in-browser, such as YouTube, and which place restrictions on the ability of users to save these materials to their computers after they have been received, say that downloading is not permitted. In this context, download implies specifically “receive and save” instead of simply “receive”. However, it is also important to note that downloading is not the same as “transferring” (i.e., sending/receiving data between two storage devices would be a transferral of data, but receiving data from the Internet would be considered a download of data).
When applied to local transfers (sending data from one local system to another local system), it is often difficult to decide if it is an upload or download, as both source and destination are in the local control of the user. Technically, if the user uses the receiving device to initiate the transfer, then it would be a download and if they used the sending device to initiate, it would be an upload. However, as most non-technical users tend to use the term download to refer to any data transfer, the term sideload is sometimes being used to cover all local-to-local transfers to end this confusion.
When there is a transfer of data from a remote system to another remote system, the process is called “remote uploading“. This is used by some online file hosting services.
Uploading is also used in situations where the computers that need to share data are located on a distant high-speed LAN, and the remote control is being performed using a comparatively slow dial-up modem connection.
None of the hosts are located on the user's local network.
Without remote uploading functionality, the user would be required to download the file first to their local host and then upload it to the remote file hosting server.
Where the connection to the remote computers is via a dial-up connection, the transfer time required to download locally and then upload again could increase from seconds to hours or days.