rsync或sftp?

我试图发送服务器之间的巨大(大约5 GB的巨大)文件..哪个更好,SFTP或SFTP?

有人可以指点我的sftp vs rsync的比较,如果有的话? 这个比那个好吗 ? 如果是,为什么?

请指教..

对于像这样的大文件,使用带有--inplace--partial-dir=选项的rsync ,这样,如果传输中途中断(例如由于意外的连接中断),只需重新运行相同的命令。

我倾向于使用rsync来进行大多数通用的传输,而不仅仅是在实际需要更全面的同步function的情况下。 如果通过ssh运行(通常是这样),效率也不低于sftp

我认为sftp (和相关的scp )的主要优点是通常在ssh可用的任何地方可用,所以几乎任何Linux / BSD /类似的客户端或服务器设置,而rsync不倾向于默认安装。

scp/sftp/rsync在文件的实际传输上很慢,甚至在Nehalems上也是如此,因为encryption是一个非常沉重的负担。 另外我还有一个印象: scp/ssh设置了自己的魔术插槽选项,例如TCP窗口大小,并且总是很慢(在本地 10Gbpspath上最高速度为50-70MB / s)。

特别是对于较大的文件和广域网,这使我感到困惑,我不明白为什么有人认为他更聪明,然后从操作系统的底层TCP堆栈。

我将研究Globus Toolkit的GridFTP(这是类固醇上的FTP),它使用并行/多streamTCP会话进行批量传输,并且也是完全WAN调优的。 您可以使用全面的PKI备份GridFTP,或者使用ssh获取凭证和会话启动。 以10Gbps的速度运行线速,并可根据需要进行扩展和负载均衡,但这确实是TB数据所需要的。

编辑:是的,有SSH修补程序修复窗口选项,并引入一个空密码进行传输,只使用密钥交换和凭证的encryption,但你需要有连接的两个终结者有SSH的build设充分利用它。