现在最常用的SSH出生于OpenBSD,windows是移植的应用,所以比较担心SSH在windows下效率,前面有个文章测试,两台电脑用千兆网线互联,都跑FreeBSD的情况下,scp的速度基本上能跑满千兆(平均104Mbyte/s)。
平时使用winscp的时候,就感觉它相对比较慢,到底能慢到什么程序呢?或者说到底应该做才能使windows下的ssh快一些?今天我专门做了一个测试,测试一下windows下最常用的winscp和putty自带的scp。
先看winscp,test.rar大小为581,559,743字节,下面的示例,第一次用的是scp的,第二次是sftp3的:
再看putty带的pscp,可以看到两种scp和sftp之间的差别,sftp模式下,速度不到一兆,干脆ctrl+c了:
D:\putty0.60>pscp -P 122 -scp test@192.168.6.21:/ftp/test.rar ./
Using keyboard-interactive authentication.
Password for test@192.168.6.21:
test.rar | 567929 kB | 12620.7 kB/s | ETA: 00:00:00 | 100%
D:\putty0.60>pscp -P 122 -sftp test@192.168.6.21:/ftp/test.rar ./
Using keyboard-interactive authentication.
Password for test@192.168.6.21:
test.rar | 90176 kB | 490.1 kB/s | ETA: 00:16:14 | 15%^C
fileZilla的结果:
命令: cd "/ftp"
响应: New directory is: "/ftp"
状态: 读取目录列表...
命令: ls
状态: Listing directory /ftp
命令: get "test.rar" "D:\test.rar"
状态: remote:/ftp/test.rar => local:D:\test.rar
状态: 文件传输成功,传输了 579,698,688 字节 (用时28 秒)
状态: 开始下载 /ftp/test.rar
命令: get "test.rar" "D:\test.rar"
状态: remote:/ftp/test.rar => local:D:\test.rar
状态: 文件传输成功,传输了 581,009,408 字节 (用时28 秒)
状态: 已从服务器断开
速度在20Mbyte/s上下。
fzsftp.exe是filezilla使用的后端,filezilla可以达到但一直不清楚它的使用方法。
综上结果,windows下的ssh,一般速度就在20Mbyte/s,也就是差不多200Mbits/s的速度,比Linux/BSD还有一些差距。
但是具体是scp快还是sftp快,不同的软件表现出来的结果不相同。另外,看winsftp的状态,sftp有个版本的问题,下一步应该找一下决定这个版本的参数,测试结果可能又会变一下,但是windows下的ssh客户端能不能支持,又是另一个问题了。
该贴由hui.chen转至本版2014-11-5 17:04:53