大文件传输

在互联网上传输大文件,一直是具有挑战性的工作,特别是要将几个G以至于上百G的文件上传到云端服务器,或从服务器下载下来,能否成功是要靠点运气的,造成此困难的原因大致有以下几点:

  • 互联网网速飘忽不定,传输过程不稳定以至于被中断
  • 常用的传输协议,如http、ftp等在传输中断时恢复的能力不强
  • 大文件传输时间跨度长,要保障在整个传输周期内不发生问题的几率较低

LargeFileTransfer既是解决大文件传输问题的工具,它是从OnTheSSH软件的一个模块提取出来而独立创建的程序,是完全免费的工具软件。

LargeFileTransfer工作在SSH协议之上,因此不需要在云端服务器上安装任何服务程序。下图展示了工作原理:

在传输之前,先在源端将大文件分割成许多块文件,然后传输这些块文件,最后在目的端将这些块文件进行合并。LargeFileTransfer软件在传输过程中进行以下管理和控制:

  • 获得源文件的大小、设置块文件的大小,将源文件进行分割。
  • 通过ssh/scp协议并发传输块文件,在传输过程中监控每个块文件的传输状态,任何块文件传输失败或传输超时,都会触发此块文件的重新传输,直至此块文件被完整传输到目的端。
  • 全部的块文件传输完成时,进行块文件合并。

下图是LargeFileTransfer上传大文件的程序截图(下载界面和此截图基本一致)。LargeFileTransfer软件当前版本支持中文和英文,如果你的系统是非中文的(英文或其他语种)将会显示为英文界面。

在源和目的栏目中,选择要上传的本地文件和远端接收此文件的目录。在分割大小栏目中定义分割块的单位和数量,他们决定了分割块文件的大小。在分割目录栏目中,设置本地分割块的存储目录和远端分割块的接收目录。

下面是传输过程的界面截图:

二进制发行版

下载版本适用于大小
https://onthessh.com/download/large-file-transfer-v15-windows/V1.5X86 Winodws 10、1124M
https://onthessh.com/download/large-file-transfer-v15-linux/V1.5X86 linux Kylin V10(SP1)82M
https://onthessh.com/download/large-file-transfer-v15-macos/V1.5RAM MacOS21M

运行说明:

  • windows版本无需安装,解压后双击”LargeFileTransfer15.exe”即可运行。
  • MacOS版本解压后是app包程序,因为此包程序不是从Apple Store下载,因此需要按照安装第三方app程序去安装运行。
  • Linux版本解压后,需要在终端中执行”LargeFileTransfer15.sh”脚本来运行。

源码

LargeFileTransfer程序由Qt和Rust两种编程语言共同构建,其中Qt部分是开源的。

下载适用于大小
https://onthessh.com/download/large-file-transfer-v15-src-for-windows/Windows Qt6460K
https://onthessh.com/download/large-file-transfer-v15-src-for-linux/Linux Qt61.3M
https://onthessh.com/download/large-file-transfer-v15-src-for-macos/MacOs Qt6460K

Leave a Reply

Your email address will not be published. Required fields are marked *