在各大洲之间传输大量数据[重复]


12

可能重复:
通过Internet共享大文件的免费方法?
在不使用Internet的情况下传输大文件有哪些选择?

我妻子的实验室正在美国与新加坡的合作者在美国做一个项目。他们有时需要跨大洲传输大量的高维图像数据(压缩后约为10GB)。使用当前的技术,对于这种使用情况,哪种解决方案会更好?

我可以想到一些,但没有一个看起来很理想:

  • 通过Internet直接连接:传输速率约为500KB / s,也缺少处理错误/重新传输的工具。
  • 上载到通用服务器或服务(例如Dropbox):非美国合作者上载非常麻烦。
  • 刻录光盘或复制到HD并通过Courier运送:延迟时间很长,另外还要做一些本地复制工作。

有什么建议么?

更新:双方都不是精通技术的用户。


是图片中的图像,还是代表DVD的文件中的图像?
丹尼尔·贝克

高维图像,由显微镜生成。
弗兰克(Frank)

1
所以这是几个很大的文件?您能否提供更多有关文件数,单个文件大小以及传输之间有多少变化的信息?是全部,其中一些等等吗?
丹尼尔·贝克


对于SneakernetIPoAC来说,这听起来像是一份工作。
Naftuli Kay 2011年

Answers:


20

我建议您使用rsync。Rsync支持增量传输算法,因此,如果您的文件仅被部分更改,或者以前的传输异常终止,Rsync足够智能,可以仅同步新内容/更改内容。

原始Rsync到Windows和其他非Unix兼容系统的端口有几个,包括免费和非免费。有关详细信息,请参见Rsync Wikipedia文章

SSH上的Rsync被广泛使用,并且运行良好。如今10GB的数据量相对较小,您没有指定“偶尔”的含义。每周?日常?每小时一次?以500KB /秒的传输速率,大约需要6个小时,而不是很长时间。如果您需要经常传输数据,最好创建一个cron任务以自动启动rsync。


是否rsync不需要自己的增量协议,而在另一端需要功能强大的对等系统?
丹尼尔·贝克

@DanielBeck:文档中没有任何内容表明通过SSH进行的rsync不能使用deltacopy ...基本上,rsync客户端通过ssh在服务器上执行另一个rsync副本,所以我不明白为什么它不起作用。
haimg 2011年

+1那里有一个要点。那在服务器上留下了Linux要求吗?
丹尼尔·贝克

rsync传输二进制压缩数据(.zip.jpg)时,的增量算法是否有效?
Aditya

@DanielBeck:我添加了带有几个Windows rsync端口的Wikipedia文章链接。显然,其中至少有一部分可以用作服务器,包括ssh。我从来没有用过它们。
haimg 2011年

12

跨Internet的连接可能是一个可行的选择,而诸如bittorrent之类的程序正是适合于此目的的,因为它将文件分解成逻辑部分,然后通过Internet发送以在另一端进行重构。

Bittorrent还为您提供自动纠错,修复损坏的部件以及如果有更多的人需要文件,则他们将可以从已下载文件(部分)的众多来源获得文件的好处。

理所当然的人们认为它是下载电影之类的好方法,但是它确实有更多的法律用途。

许多bittorrent客户端还内置了跟踪器,因此您不必具有专用的服务器来托管文件。


2
感谢您的输入。在学术网络中使用BitTorrent可能会使管理员感到紧张。而且,对于普通计算机用户而言,跟踪服务器的设置和维护可能并不容易。
弗兰克(Frank)

2
很好,在许多公司和学术网络中都积极禁止bittorrent。通过适当的管理,尽管您可以在允许使用Bittorrent的用户或计算机网络中建立白名单,但这将意味着与各个IT部门的紧密联系以使其正常工作。正如我提到的那样,您不一定需要具有专用服务器,因为它可以内置到许多客户端程序中。如果尽管这并不适合您的情况,那么就不用担心,考虑到您的要求,在我看来这是合理的。
Mokubai

如果您使用的是bitorrent,那么使用网络种子听起来也很聪明
Journeyman Geek

(作为答案中提到的“更多合法用途”之一的示例,Facebook 利用 bittorrent将其站点(1GB二进制文件)部署到数千个生产服务器中。不幸的是,一项技术主要由于其用途之一而被废弃。)
安东·斯特罗贡诺夫

6

将文件分割成例如50MB的块(使用split)。计算所有校验和(例如md5sum)。直接使用FTP和容错FTP客户端(例如lftpLinux)上载。传输所有块和包含所有校验和的文件。

在远程站点上,验证所有块均具有所需的校验和,重新上传失败的块,然后将它们重新组装为原始文件(例如,使用cat)。

根据需要还原服务器的位置(我假设目标站点提供了服务器,并且在文件准备好后在本地启动传输)。您的FTP客户端无需理会。


过去,我曾遇到过类似的问题,并且使用了容错FTP客户端。没有位被翻转过,只是常规连接中止了,所以我可以跳过创建块并仅上传文件。为了以防万一,我们仍然提供了完整文件的校验和。


3
您需要知道,尽管这样lftp不会由于任何原因中止正在进行的传输。确保目标站点上始终有足够的可用磁盘空间。
丹尼尔·贝克

3

丹尼尔·贝克(Daniel Beck)回答的一个变体是将文件分成50MB到200MB的块,并为整个集合创建奇偶校验文件

现在,您可以使用FTP,SCP或其他方式将文件(包括奇偶校验文件)传输到远程站点,并在整个文件到达后进行检查。现在,如果有损坏的零件,如果有足够的块,则可以通过奇偶校验文件修复它们。这或多或少取决于损坏的文件数和创建的奇偶校验文件数。

在Usenet上,奇偶校验文件经常用于发送大文件。多数情况下,它们然后被拆分为RAR档案。通过这种方式发送高达50到60GB的数据并不少见。

您绝对应该检出第一个链接,并且还可以查看QuickPar,该工具可用于创建奇偶校验文件,验证下载的文件,甚至可以使用提供的奇偶校验文件还原损坏的文件。


+1-这种方法在Usenet上效果很好,奇偶校验文件可以修复数量惊人的丢失数据。缺点是接收后拆分和生成奇偶校验文件以及奇偶校验和提取文件所需的处理时间。
deizel

1

是一个10GB的大文件吗?可以轻易拆分吗?

我玩的还不是很多,但是它让我感到惊讶,因为它是一个有趣且相对简单的概念,在这种情况下可能会起作用:

http://sendoid.com/


Sendoid非常酷,但是不幸的是上传仍然很痛苦。再说一次,除非您要邮寄HDD,否则所有类型的问题仍然存在。+1易于使用。
DMan 2011年

0

通过ftp / http / https / sftp / ftps(需要登录凭据)使数据可用,并使用客户端上的任何下载管理器

下载管理器专门设计用于检索数据,而不管可能发生的任何错误,因此它们非常适合您的任务。

对于服务器,FTP服务器通常是最容易设置的。您可以在Wikipedia上查阅列表。HTTPS,SFTP和FTPS允许加密(在纯FTP / HTTP中,密码以明文形式发送),但是客户端软件很少支持SFTP / FTPS,并且HTTP / HTTPS服务器设置很棘手。


1
使用http或ftp的问题是存在任何传输错误,您必须再次发送整个内容。rsync,bittorrent和其他协议可以验证文件是否匹配,并且仅重新传输损坏的文件。像QuickPar生成的奇偶校验数据也可以提供帮助。
2011年

FTP和HTTP都包括传输恢复功能作为可选扩展,大多数服务器和几乎所有下载管理器都支持该功能。
2011年

它们可以恢复,并且理论上TCP可以确保数据按顺序到达并带有有效的校验和。但是,任何HTTP或FTP传输损坏的人都已经了解了更强大的协议或某种ECC的价值。
afrazier 2011年
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.