Uploading refers totransmittingdata from onecomputer system to another through means of anetwork.[1] Common methods of uploading include: uploading viaweb browsers,FTPclients, andterminals (SCP/SFTP). Uploading can be used in the context of (potentially many)clients that send files to a centralserver. While uploading can also be defined in the context of sendingfiles betweendistributed clients, such as with apeer-to-peer (P2P) file-sharingprotocol likeBitTorrent, the termfile sharing is more often used in this case. Moving files within a computer system, as opposed to over a network, is calledfile copying.
Uploading directly contrasts withdownloading, where data isreceived over a network. In the case of users uploading files over theinternet, uploading is often slower than downloading as manyinternet service providers (ISPs) offerasymmetric connections, which offer more networkbandwidth for downloading than uploading.
To transfer something (such as data or files), from a computer or other digital device to thememory of another device (such as a larger or remote computer) especially via the internet.[2]
Remotefile sharing first came into fruition in January 1978, whenWard Christensen andRandy Suess, who were members of the Chicago Area Computer Hobbyists' Exchange (CACHE), created theComputerized Bulletin Board System (CBBS). This used an early file transfer protocol (MODEM, laterXMODEM) to sendbinary files via a hardwaremodem, accessible by another modem via atelephone number.[3]
In the following years, new protocols such asKermit were released,[4] until theFile Transfer Protocol (FTP) was standardized 1985 (RFC 959). FTP is based onTCP/IP and gave rise to manyFTP clients, which, in turn, gave users all around the world access to the same standardnetwork protocol to transfer data between devices.
The transfer of data saw a significant increase in popularity after the release of theWorld Wide Web in 1991, which, for the first time, allowed users who were not computer hobbyists to easily share files, directly from their web browser overHTTP.[5]
Transfers became more reliable with the launch of HTTP/1.1 in 1997 (RFC 2068), which gave users the option to resume downloads that were interrupted, for instance due to unreliable connections. Before web browsers widely rolled out support, software programs likeGetRight could be used to resume downloads. Resuming uploads is not currently supported by HTTP, but can be added with theTus open protocol for resumable file uploads, which layers resumability of uploads on top of existing HTTP connections.[6][7]
Transmitting a local file to a remote system following theclient–server model, e.g., a web browser transferring a video to a website, is calledclient-to-server uploading.
Transferring data from oneremote system to another remote system under the control of a local system is calledremote uploading or site-to-site transferring. This is used when a local computer has a slow connection to the remote systems, but these systems have a fast connection between them. Without remote uploading functionality, the data would have to first be downloaded to the local system and then uploaded to the remote server, both times over a slower connection. Remote uploading is used by some onlinefile hosting services. Another example can be found in FTP clients, which often support theFile eXchange Protocol (FXP) in order to instruct twoFTP servers with high-speed connections to exchange files. A web-based example is theUppy file uploader that can transfer files from a user'scloud storage such asDropbox, directly to a website without first going to the user's device.[8]
Peer-to-peer (P2P) is adecentralized communications model in which each party has the same capabilities, and either party can initiate a communication session. Unlike the client–server model, in which the client makes a service request and the server fulfils the request (by sending or accepting a file transfer), theP2P network model allows eachnode to function as both client and server.BitTorrent is an example of this, as is theInterPlanetary File System (IPFS). Peer-to-peer allows users to bothreceive (download) andhost (upload) content. Files are transferred directly between the users' computers. The same file transfer constitutes an upload for one party, and a download for the other party.
The rising popularity of file sharing during the 1990s culminated in the emergence ofNapster, a music-sharingplatform specialized inMP3 files that used peer-to-peer (P2P) file-sharing technology to allow users exchange files freely. The P2P nature meant there was no central gatekeeper for the content, which eventually led to the widespread availability ofcopyrighted material through Napster.
TheRecording Industry Association of America (RIAA) took notice of Napster's ability to distribute copyrighted music among its user base, and, on December 6, 1999, filed amotion for apreliminary injunction in order to stop the exchange of copyrighted songs on the service. After a failed appeal by Napster, the injunction was granted on March 5, 2001.[9] On September 24, 2001, Napster, which had already shut down its entire network two months earlier,[10] agreed to pay a $26 million dollar settlement.[11]
After Napster had ceased operations, many other P2P file-sharing services also shut down, such asLimewire,Kazaa andPopcorn Time. Besidessoftware programs, there were manyBitTorrent websites that allowed files to be indexed and searched. These files could then be downloaded via aBitTorrent client. While the BitTorrent protocol itself is legal and agnostic of the type of content shared, many of the services that did not enforce a strict policy to take down copyrighted material would eventually also run into legal difficulties.[12][13]