scp与bbcp

早上在网上冲浪闲逛.发现CSDN的论坛有人讨论scp性能问题,有人提出bbcp要比scp牛,实践是检验真理的唯一标准.于是哥就亲自尝试了下.

bbcp是个功能类似scp的免费开源的点对点网络文件拷贝工具软件,使用GPL开源协议.来自SLAC(斯坦福直线加速器中心),作者是Andy Hanushevsky.

首先到bbcp的下载页面下载适合自己系统的二进制版本,放到系统路径下便可以使用了.

接着开放对应的端口:

iptables -A INPUT -s 172.16.66.65 -p tcp –dport 5031 -j ACCEPT

测试环境网络为是千兆局域网.

#生成测试的文件,并放到内存中,这样可以避免硬盘读写速度的影响.
dd if=/dev/zero of=/dev/shm/1024mb.zip bs=1024k count=1024
#首先测试scp
scp /dev/shm/1024mb.zip  [email protected]:/dev/shm/

1024mb.zip       100%   1024MB   100.9MB/s      00:10

#然后bbcp
bbcp -4 -v -s 16 -F -f -w 512k /dev/shm/1024mb.zip [email protected]:/dev/shm/

File /dev/shm/1024mb.zip created; 1073741824 bytes at 340.9 MB/s
1 file copied at effectively 111.5 MB/s

从测试结果看,确实是bbcp胜出,但哥感觉目前并没有替换的必要,原因有以下几点:
– scp拷贝文件不是像ls这种频繁执行的命令,仅是偶尔使用的程度.
– scp的传输速度就目前网络环境来说也并不算差,且带宽越小,两者的差距也会越小,毕竟现在也就Google在山景城在推广千兆宽带业务,其他地方(比如哥这儿)20Mbps的宽带都算是超快的了.
– scp只需双方都装有ssh服务即可,而bbcp则还另需双方都装有bbcp.

当然了,万一将来实现了万兆网络,那么两者的差距将会彻底拉大.届时bbcp将会出现上位的曙光(当然,也有可能scp版本升级,性能大幅提升).