对于文件传输,ftp的性能是否优于http?


Answers:


7

从eHow偷了,在底部的链接

HTTP的优缺点

HTTP上载提供了一种非常简单的将文件上载到服务器的方法,而对文件传输的了解却很少。下载文件也非常容易。但是,缺点在于HTTP缺乏文件上传功能。另外,程序员需要具备以HTML创建表单所需的知识,以便上传相关文件。如果文件用于与他们正在创建的Myspace或Facebook类似的社交网络,则尤其如此。

FTP的优缺点

使用FTP服务器具有其自身的优势。例如,用户可以使用程序执行向服务器的批量上传,而不必担心反复需要重新浏览文件并使用一种形式重新上传文件。也可以批量下载。不幸的是,FTP服务器仍然需要使用FTP客户端,对于只想上传一两张图片的用户来说,使用一个FTP客户端特别麻烦。

差异性

最终,FTP和HTTP文件传输具有完全不同的目的。FTP的文件传输目的或多或少用于网站维护和批量上传,而HTTP用于客户端工作以及最终用户将诸如电影,图片和其他文件之类的内容上传到服务器。通常,程序员会使用FTP上传文件,最终用户也可以通过HTML / HTTP上传文件。

阅读更多:HTTP与。FTP文件传输| eHow.com http://www.ehow.com/about_5435784_http-vs-ftp-file-transfer.html#ixzz0wlUSkVIY


4
这主要是关于上传时的优缺点。这不是问题所在。
sleske 2010年

@sleske:同意。我对Nifle的回答不满意。
unforgettableidSupportsMonica'3

8

通常,关于协议的网络性能的一般答案非常困难,因为性能在很大程度上取决于特定的网络设置,而不仅仅是取决于所使用的协议。

就是说,我不知道http和ftp的数据吞吐量为何不同的任何原因。两者基本上都只是通过TCP流发送数据,因此实际的数据传输过程是相同的。因此,不可以,通常ftp和http的下载速度应该相同。

通常出于其他原因,通常首选http:与防火墙配合使用(可以代理),允许重新启动中断的下载,并可以随下载提供媒体类型(MIME),更易于加密(TLS / SSL)等


1
http不允许中断的下载,您确定您的意思不是ftp吗?ftp也可以被代理和加密。仅首选Http下载,因为它不需要任何人安装ftp客户端(或内容提供商的服务器)
Nifle 2010年

1
是的,我的意思是http。http使您可以恢复下载(通过使用“ Range:”标头)。我对FTP的立场是正确的,但是:它也允许继续下载。
sleske 2010年

关于代理/加密:是的,FTP可以做到这一点,但是它显然更复杂,更重要的是,它不那么广泛,而对HTTP代理和TLS的支持实际上是普遍的。
sleske 2010年

顺便说一句,ftp下载通常不需要安装ftp客户端,因为大多数浏览器都可以通过ftp下载(使用ftp:// URL)。但是,大多数浏览器无法通过ftp上传。
sleske 2010年

3

对我而言,FTP的最大陷阱之一是它无法重用套接字。FTP具有3种传输模式:Stream,Block和Compressed,但是对后两种的支持并不常见。在默认且使用最广泛的模式(Stream)中,数据基本上作为原始字节流传输,并且由于它没有有关何时完成该文件的元数据,因此必须在完成时关闭连接。这意味着,如果通过FTP传输100,000个文件,则将打开和关闭100,000个TCP连接。如果在关闭这些连接之一时还不够好,则必须将其置于TIME_WAIT状态一段时间。在Windows上重用该端口的默认延迟为240秒(4分钟)。最重要的是,默认情况下最多只能使用5,000个端口。这使FTP成为传输大量小文件的噩梦。通过调整注册表,您可以将冷却延迟延长至30秒,并将最大用户端口增加到大约65,000,这将有很大帮助,但绝非理想选择。

另一方面,HTTP可以重用同一套接字来传输多个文件。因此,如果您有很多文件(尤其是较小的文件),那么毫无疑问,HTTP是更好的选择。

如果您只处理几个大文件,那么使用哪种协议都无关紧要。我认为当人们想到传输文件时,FTP才浮现在脑海中,但这当然并不意味着它会更好。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.