FTP vs. HTTP Download Speeds?

greggustin

OSNN Addict
Joined
Jan 7, 2006
Messages
166
#1
I have a 2.7 gb file I want to Xfer to a friend
http is easier for me, but I CAN make a ftp site for him
(I have a server with plenty of space and Bandwidth)

how much faster for him to DL with FTP vs HTML
or is there any difference?

he has a 3Mbit DSL
 

Brad

OSNN Veteran Addict
Political User
Joined
Mar 24, 2002
Messages
2,280
#3
FTP would be faster due to less overhead. Fastest would probably be burn the file to a DVD and then give the disc to him.
 

j79zlr

Glaanies script monkey
Political User
Joined
Feb 16, 2003
Messages
2,725
#4
Doesn't matter what his download speed is, if you are hosting the http/ftp server the limit will be your upload speed.
 

Brad

OSNN Veteran Addict
Political User
Joined
Mar 24, 2002
Messages
2,280
#5
A bit more information for you. TCP (http) uses a checksum after every packet to ensure the packet was received, UDP (FTP) does not use this checksum, so you can squeeze a little bit more throughput out of the connection.

Yes, j79zlr, you are correct. The bottleneck is going to be the lowest connection speed. If the OP has an offsite webhost, most likely the bottleneck is going to be the downloader's connection. However, if the OP is hosting the file on his own computer, then the bottleneck is most likely going to be OP's connection.
 

greggustin

OSNN Addict
Joined
Jan 7, 2006
Messages
166
#6
thanks guys
here is more info
I am in Florida
he is in Japan
so, sending DVD is LAST resort

I have 8Mbit DL to my home office and only .8Mbit upload
so, yes - THAT is the limit when I Upload to my company server

hmmm . ..
is there a way I get "Act" as a server here at home for him?
( I do not use any of the P2P programs - and Do not want anyone (even him) to have open access to my computer)
is there a way to do that? or just be simple and upload to my public server 1st
( I do have Wampser here at home)

and to those that say FTP is faster because of no checksums
ok - got it - but how much faster in THIS case?

thanks
 

greggustin

OSNN Addict
Joined
Jan 7, 2006
Messages
166
#8
hmm
looks ok
I went to filezilla
not much info
guess I am turning my home cpu into a ftp server?
I have run bullttproofFTP - guess it is similar?
then I guess I make a folder and assign him a username/pwd?
hmm
my ip is to my router
will I need to port fwd?
or how else will he get into 'his folder"

thanks
 

fitz

Woah.. I'm still here?
Staff member
Political User
Joined
Apr 26, 2004
Messages
4,082
#10
You'll need to give him an account to login with (assuming you don't want anonymous logins) and yes.. you'll have to forward yoru ports. Unless you are using PassiveFTP (which I would suggest doing) you will have to open up port 20 and 21 for full FTP functionality/connectivity (again, unless you use PASV FTP mode - which, I again suggest using so you don't have to open/forward multiple ports on your firewall).

A bit more information for you. TCP (http) uses a checksum after every packet to ensure the packet was received, UDP (FTP) does not use this checksum, so you can squeeze a little bit more throughput out of the connection.
Actually, FTP is also TCP driven. Unless you are doing a TFTP which is UDP based and much less secure, FTP is also TCP packets since it needs to guarantee packet delivery.

edit: honestly, if you are going to host it off your machine and all you want to do have the user download (ie: he's not going to send you any files), it would probably be easier just to setup a basic web site with anonymous access turned off and a single page with a link to the file you want him to download.
I don't think there will be a significant speed difference - the biggest bottleneck (as has been pointed out) is your upload speed. Not much going to make it any better FTP/TFTP/HTTP/etc.. going across an overseas link will introduce a lot of latency in the transfer as well.

edit2:
I have 8Mbit DL to my home office and only .8Mbit upload
so, yes - THAT is the limit when I Upload to my company server
a 800kb/s link equates to ~5.5MB/min transfer rate upload. Which means your 2.7GB file will take over 8 hours to upload in a best case scenario. If you are hosting this on your machine at your place, you need to make sure your link and computer stay up for the entire transfer (Not sure if you are one that shuts off their machines at the end of the day or not)
 
Last edited:

greggustin

OSNN Addict
Joined
Jan 7, 2006
Messages
166
#11
You'll need to give him an account to login with (assuming you don't want anonymous logins) and yes.. you'll have to forward your ports. Unless you are using PassiveFTP (which I would suggest doing) you will have to open up port 20 and 21 for full FTP functionality/connectivity (again, unless you use PASV FTP mode - which, I again suggest using so you don't have to open/forward multiple ports on your firewall).
I looked in router setup
did not see this PASV thing,
is that in the Router (linksys WRT54G) or in the ftp program?

edit: honestly, if you are going to host it off your machine and all you want to do have the user download (ie: he's not going to send you any files), it would probably be easier just to setup a basic web site with anonymous access turned off and a single page with a link to the file you want him to download.
this is what I have awalys done in the past
but my new hoster is so LAME
I used to give out a URL/sub-folder link with nothing in the folder but the target file (ie no index.html) and the surfer would get a file listing and then just download the file
but NOW - I have to actually make a web page with a linked-text to the DL file (yes - only about 5-10 minutes to make, etc, but a pain - nonetheless)

I don't think there will be a significant speed difference - the biggest bottleneck (as has been pointed out) is your upload speed. Not much going to make it any better FTP/TFTP/HTTP/etc.. going across an overseas link will introduce a lot of latency in the transfer as well.
the latency is not an issue - once connected :p

edit2:
a 800kb/s link equates to ~5.5MB/min transfer rate upload. Which means your 2.7GB file will take over 8 hours to upload in a best case scenario. If you are hosting this on your machine at your place, you need to make sure your link and computer stay up for the entire transfer (Not sure if you are one that shuts off their machines at the end of the day or not)
I predicted 10 hours, and so far - seems to be right on track
I am actually getting 73-75 KB/s on my upload ( for past 3.5 hours)

part of the logic was - if he could fetch right from my computer, he would have the file in 10 hours, but this way, it is 20 hours
(ie 10 for my upload and 10 for his download)

but as that is not critical, I figured - better to have it own my server (vs my home computer), in case others needed it, or he gets an interruption

thanks
ps
as you have all given such good advice
my original question remains -
how much faster is FTP vs HTML DL at a given Bandwidth?
1% 5% 10% ?? just curios
 

fitz

Woah.. I'm still here?
Staff member
Political User
Joined
Apr 26, 2004
Messages
4,082
#13
I looked in router setup
did not see this PASV thing,
is that in the Router (linksys WRT54G) or in the ftp program?
Beyond forwarding ports on routers, setting PASV mode FTP is really a two step process:

1) Making sure yoru FTP Server program supports it (I believe most modern ones will support it out of the box without making any changes to the default settings - it's been a while since I played with smaller FTP Server programs)
2) Directing the end user to setup their FTP Client to use it (depends greatly on what client they are using. Internet Explorer will support PASV FTP mode by default i believe)

I used to give out a URL/sub-folder link with nothing in the folder but the target file (ie no index.html) and the surfer would get a file listing and then just download the file
but NOW - I have to actually make a web page with a linked-text to the DL file (yes - only about 5-10 minutes to make, etc, but a pain - nonetheless)
This would be a function of the server allowing directory browsing. I'm surprised you had a host that had it enabled. Most will disable it for security issues. you might ask them if they can enable it for you on your site..

the latency is not an issue - once connected :p
Latency is still an issue as an overseas trip will generally require more hops over more routers meaning greater trip time for each packet sent as well as longer trip times for the ACK (remember, this is TCP connection and requires the ACK) to come back which means possible missed windows requiring possible retransmission of packets/data meaning longer transfer times.

part of the logic was - if he could fetch right from my computer, he would have the file in 10 hours, but this way, it is 20 hours
(ie 10 for my upload and 10 for his download)
You said the person you are sending it to as a 3mbs downstream connection - assuming your hosting provider has a better upload speed of 800kbs, it shouldn't take him 10 hours to download it of your hosting provider.

as you have all given such good advice
my original question remains -
how much faster is FTP vs HTML DL at a given Bandwidth?
1% 5% 10% ?? just curios
Well, my personal observations would be that there is little speed gained on an HTTP download vs. an FTP download. All cases being equal (ie: an HTTP server and an FTP server only serving a single connection/transfer on an equal network connection) the speed differences would be negligible. I have no hard evidence to back up this claim.. just my own observations. From a technical perspective, since they both use TCP, the underlying transport mechanism is the same.. so assuming all other things being equal (similar configured systems, TCP settings, window size, no use of download accelerators, etc) the data transfer should be about the same. It becomes an application implementation issue. On a single really large file transfer, I can see how FTP may gain some speed the larger the transfer required since an FTP header I believe is slightly smaller than an HTTP header allowing it to squeeze a little more.. but on a small file transfer, HTTP may be faster since there is more overhead in establishing an FTP session compared to an HTTP session.

This is also assuming your ISP isn't filtering FTP traffic as some of the more draconian service providers don't like seeing FTP transfers.
 
Last edited:

greggustin

OSNN Addict
Joined
Jan 7, 2006
Messages
166
#14
thanks to all
as I have just uploaded the whole file to my server
I will make an http page for him to make easier on him

and I tried to get the server hosting company to allow the directory listing
but they refused (I used to keep all my potentially needed files in a remote folder when I traveled - now I cannot)
 

fitz

Woah.. I'm still here?
Staff member
Political User
Joined
Apr 26, 2004
Messages
4,082
#15
well.. you could write a quick/dirty asp/php page to generate a dynamic directory listing..
 

Members online

No members online now.

Latest profile posts

Perris Calderon wrote on Electronic Punk's profile.
Ep, glad to see you come back and tidy up...did want to ask a one day favor, I want to enhance my resume , was hoping you could make me administrator for a day, if so, take me right off since I won't be here to do anything, and don't know the slightest about the board, but it would be nice putting "served administrator osnn", if can do, THANKS

Been running around Quora lately, luv it there https://tinyurl.com/ycpxl
Electronic Punk wrote on Perris Calderon's profile.
All good still mate?
Hello, is there anybody in there? Just nod if you can hear me ...
Xie
What a long strange trip it's been. =)

Forum statistics

Threads
62,000
Messages
673,421
Members
89,024
Latest member
swipk8