在 windows 的 cmd 中使用 ssh ,发现输入速度非常的慢,有什么解决办法吗?

2022-05-25 07:39:17 +08:00
 LonnyWong

用 go 写了个类似 rz / sz 上传和下载文件的功能,项目地址:https://github.com/trzsz/trzsz-go

出于通用和研究的目的,也支持在 windows 的 cmd 中使用,下载速是正常的,但是上传速度只有 24KB/s ,超级慢。

感觉是 windows 版本的 ssh 在处理输入时,使用了一个特别小的 buffer ,并且每隔一段时间再处理一次?

效果如图:

2610 次点击
所在节点    Windows
10 条回复
Cooky
2022-05-25 07:43:26 +08:00
你在 wsl 里的命令弹出了 windows 对话框,是不是没走 wsl 里的 ssh
ysc3839
2022-05-25 07:43:41 +08:00
试试 msys2 的 ssh 如何呢?
LonnyWong
2022-05-25 08:04:54 +08:00
@Cooky 是 trzsz 进程拉起 ssh 进程的。

对话框是 trzsz 进程弹出的,选择文件后,trzsz 进程会读取文件内容,并以 stdin 输入给 ssh 进程。
ruanimal
2022-05-25 09:09:23 +08:00
@LonnyWong 还有,如果跨了一层 tmux 的话,速度也就只有 20k
Cooky
2022-05-25 09:10:39 +08:00
@LonnyWong 单独测一下每个环节的速度吧
磁盘部分用 dd 看
管道部分用 pv 看
上传部分找个别的程序试试
sprite82
2022-05-25 09:16:08 +08:00
ssh 不知道,scp 是肯定有问题的,之前试过大量文件 scp 上传,直接卡死。用 git bash 的窗口就没这个问题
creanme
2022-05-25 10:18:43 +08:00
好像和服务器之间的延迟有关?之前我用 cmd 的 ssh 连搬瓦工,巨卡,连腾讯云服务器就好多了。
pagxir
2022-05-25 10:31:36 +08:00
印象中,伪终端也是有波特率的。想要绕过波特率限制就只能不要打开 pty 。
billlee
2022-05-25 16:34:17 +08:00
windows 的终端确实有很多奇怪的设计,他们特地写了一系列文章来介绍

https://devblogs.microsoft.com/commandline/windows-command-line-backgrounder/
LonnyWong
2022-05-28 16:45:07 +08:00
@ysc3839 当往 msys2 的 ssh 输入大量数据时,远程服务器的进程会有些数据收不到,不知是哪里出了问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/855101

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX