哪种协议最适合文件传输

时间:2009-08-12 06:13:53

标签: network-protocols file-transfer

我可以用来传输大文件的最佳协议是什么,应该快速可靠? 它必须支持低带宽系统,因为我需要跨印度传输文件。文件大小可以是100到500MB。

7 个答案:

答案 0 :(得分:10)

Rsync非常适合这个问题。它旨在远程发送/更新大文件。

  • 从命令行运行,因此您可以非常轻松地将其作为外部进程启动。
  • 它可以同步两个远程文件系统。
  • 它处理大文件
  • 它有一个聪明的算法,试图在周围的文件中仅复制差异
  • 它已被广泛实施,并且开源
  • 它具有限制功能,因此您可以限制传输中使用的WAN连接数量,以便对其进行调整以避免其他连接过程匮乏。
  • 内部使用zlib压缩传输的数据块

原始网站:http://samba.anu.edu.au/rsync/

使用ssh保护rsync:http://www.linux.com/archive/feature/113847

详细功能:http://en.wikipedia.org/wiki/Rsync

答案 1 :(得分:8)

File Transfer Protocol

BitTorrent

  

BitTorrent是一个点对点文件   用于分发的共享协议   大量数据。

List of file transfer protocols

答案 2 :(得分:4)

尽管FTP是最有效的文件传输协议,但实施起来却相当困难。我会使用HTTP。该支持内置于大多数平台上,对防火墙更具弹性。

答案 3 :(得分:2)

FTP

答案 4 :(得分:0)

HTTP可能是小文件和/或不熟练用户的方式。必须配置防火墙将阻止许多用户感冒。几乎每个网络都允许通过端口80进行http传输而无需特殊配置。

但你确实说过大文件。您可以编写传输代码,使其使用范围传输来重试中断的下载。

有人可能已经编写了一个文件传输库来自动处理部分传输和重试,但我不知道。

答案 5 :(得分:0)

这可能与文件传输和.NET有关,而不是原始帖子以任何形式或形式提到.NET。

Sending Files in Chunks with MTOM Web Services and .NET 2.0 由Tim Mackey发誓 如何使用MTOM(WSE 3)以小块方式跨Web服务发送大型文件

请注意,您需要安装 Web Service Enhancements 3.0 (您可以在文章中找到相关链接)。

有一个美好的一天先生!

答案 6 :(得分:-3)

我认为最好使用TCP协议。它是可靠的,UDP不是。虽然UDP更快,但尽力而为协议并不“安全”。 P2P程序使用UDP,因为它更快,并且真的不关心包丢失。 FTP通常使用TCP。所以我建议在套接字上实现TCP和编程。使用120000之类的端口,因为它们是免费的。