为什么msys2或cygwin中的scp传输速度限制为4MB

问题描述

我在git bash中使用scp将文件传输到远程服务器。我发现传输速度限制为4MB。当我在win32_openssh中使用scp时,速度达到10MB。 然后我安装了cygwin openssh进行比较测试,其scp速度也为4MB。

那为什么受限制呢?如何破解?

解决方法

这似乎是Cygwin本身的局限性,如本2006 thread

中所述

不幸的是,在以下情况下cygwin sshd服务器的性能非常差 涉及到复制大文件。

我已经在运行Windows XP或Windows 2003 Server的多台新的快速计算机(3 GHz,512 MB RAM,100 MB / s Intel Pro网卡)上观察到了这一点。 将文件从SSH客户端复制到SSH服务器时,可达到的最佳速度约为4 MB / s;
相反,吞吐量甚至更糟,约为2.3 MB /秒。
我在运行最新版本的Windows的三台不同的计算机上进行了尝试 cygwin的sshd和scp / sftp。结果大致相同。 客户端和服务器的处理器都不是很忙。中央处理器 使用率在30-40%之间波动。

在Linux上设置相同的方案会产生完全不同的结果 图片。
在客户端和服务器计算机上使用Knoppix光盘4.0.2 轻松实现双向吞吐量为10.8 MB / 到服务器或从中下载文件。

该线程points out to

ssh和scp的低速度不是由于加密。 问题是协议中的窗口大小限制为64K。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...