1. 安装gcc
sudo apt-get install gcc
2. 安装git
sudo apt-get install git
3. 安装automake
sudo apt-get install automake autoconf
4. 在网上下载Tsunami-udp的安装包:
git clone git://github.com/rriley/tsunami-udp.git
5. cd到该文件夹后,编译:
sudo ./recompile.sh
6. sudo make install
7. 需要注意的地方:recompile.sh隨后用sudo make install來安裝。(在有些系統上 build 可能失敗/出錯,原因是automake失敗了。需要修改recompile.sh把automake变成 automake --add-missing)
8. 在存有数据的机器上启动file transfer server。下列命令表示在port 46224上启动tsunamid server,传输file1和file2。secret 指定的是连接口令:
sudo tsunamid --port 46224 --secret xxx file1 file2
1. 在需要获取数据的机器上启动tsunami client:
启动client:tsunami
设置client链接口令,也就是--secret 指定的口令:set passphrase xxx
设置client udp port:set udpport 46224
连接到tsunamid server:connect (ip地址) 46224
列出下载文件列表:dir
下载指定文件:get (dir中列出的文件名)
2. 需要注意的是,在file transfer server机器的安全组上需要打开对应TCP和UDP的端口,而在tsunami client机器的安全组上需要打开对应UDP的端口。
3. 另外,在数据传输的过程中,Tsunami-udp会使用Heartbeat检查连接,默认为15秒,超时会disconnect。因此,若传输较大文件,或者类似于EC2 T2实例类型网络性能会随着credit而变化,则有必要延长相应的Heartbeat超时时间。你可在启动file transfer server中用参数“--hbtimeout”指定Heartbeat超时的秒数,如下例子所示:
sudo tsunamid --port 46224 --secret xxx --hbtimeout 3600 file1 file2
一般在server和client端用一个screen来保留传输的进场,ctrl+a+d后detached等待传输完成,以防由于ssh断开导致当前shell进程中断。传输过程中用ls -alh来观察client端的目标文件大小不断增长,而且你可以用ifstat(sudo apt-get install ifstat )来监控当前传输的网速。