[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 215
  • Last Modified:


I am looking for some information pertaining to the upload and download of files on the Internet, FTP, VPN file transfer ect.  what I am looking for is If I download from the Internet I know that I am downloading, I am thinking that file transfer is upload ect...
basically looking for thte differneces on how up/down are use for specific functions and transfers.

for example if I pull a 5MB file through a VPN it is very much slower than if I put it on a FTP site and transfer it that way???
  • 2
  • 2
2 Solutions
This is anything but a straightforward question. To really understand why one protocol might transfer a file faster than the other has to do with endless variables... If you really want to get into it, this is a great place to start.

Pay special attention to the OSI layers and the overhead involved in TCP versus UDP packets.

hope this helps.
Speaking in gross generalities --

Upload/download are relative, depending on what computer you're talking about.  When your home computer is downloading a file from a server, the server is uploading the file to your computer.  Regardless of what protocol is being used.

Speed varies based on, as DVation191 said, endless variables.  FTP was designed to move files, hence its name: File Transfer Protocol.  It's going to be faster than HTTP, which was designed to display text in a browser - all other things being equal.

Secure protocols (like HTTPS) and secure tunnels (like PPTP and IPSec VPN) add overhead to the data, used to manage the security.  That means that a smaller percentage of the packets being moved are data, and a larger percentage is the security information.  Because of that, unencrypted data will be transferred more quickly than encrypted data - all other things being equal.
Adding to the gross generalities... ;)

Uploading and downloading also depends on the protocols in use BELOW the "application" chosen to do the actual transfer.  Some use Transmission Control Protocol (TCP) and some use User Datagram Protocol (UDP) and some use something else ... like cough, Sequenced Packet Exchange (SPX).

TCP is a connection oriented protocol.  It is designed to be self monitoring - making sure it gets everything, checks for errors, puts it back in order.  If it doesn't get everything, or if something has an error, it will ask for a retransmission.  Thus, it's RELIABLE but it takes longer than a protocol that doesn't do this such as ....

UDP is a connectionLESS protocol.  UDP packages it up and sends it as fast as it can.  it receives as fast as possible.  It don't no stinkin error checking or anything else.  It relies says, I got it here as fast as possible - if it's messed up, so what - you deal with it!  It makes the applications that use it take into account error checking and retransmission.  

So, FTP which uses TCP is slower than TFTP which uses UDP - however FTP is more reliable than TFTP.
Oh yeah, that.  I suppose I was presuming TCP, and not UDP, IPX/SPX, AppleTalk, etc.

Here's a quick rundown on a few protocols.

TCP is Transmission Control Protocol.  It sends a group of packets, then waits for the reply "I got em, send more."  Like a two-way telephone call.  UDP, User Datagram Protocol, just sends the packets, doesn't wait for any reply or anything.  Like a radio broadcast.  TCP and UDP are both host specific, meaning they'll send the packets just to the host IP that they're intended for.

IPX/SPX (or Microsoft's NWLink) is Internetworked Packet Exchange / Sequenced Packet Exchange.  Developed by Novell, so you know it's good.  The major difference between TCP/IP and IPX/SPX is that IPX/SPX is a broadcast medium.  This means that every node on the network gets every packet that every other node sends, and discards all the packets that don't apply to it.  A ton of overhead there, and a lot of network traffic.  And think that Novell wanted IPX/SPX to be the protocol for the internet ...
Once again, as stated above many times, knowing your OSI layers and being aware of overhead involved in specific protocols incorporates a lot of information...and their comparisons only apply in identical environments which obviously are not real-world scenarios.

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now