Ame*_*ina 17 ssh virtual-machine windows x11
我有以下设置:
|-----------------| |---------------|
| Windows | LAN (or VPN) | Linux box |
| (local machine) | <--------------------> | |
|-----------------| |---------------|
Run Code Online (Sandbox Code Playgroud)
我想从我的 Windows 机器上以最小的延迟访问 Linux 机器上的 Emacs 和 Eclipse 窗口。
我的选择似乎是:
ssh -X从它到 Linux 机器(这是一个讨论快速 ssh X 隧道配置的线程)ssh -X远程框。目前我使用 RealVNC,但我注意到一些显着的延迟。在做了一些研究之后,我在维基百科上阅读了以下内容:
VNC 协议是基于像素的。尽管这带来了极大的灵活性(即可以显示任何类型的桌面),但它通常不如对底层图形布局有更好理解的解决方案(如 X11 或 Windows 远程桌面协议)效率低下
这让我想知道, 要从本地 Windows 机器以最快的速度访问远程 X 窗口,我有哪些选择?
我认为最大带宽的最新技术是NX,一种 X11 协议压缩程序。它也应该在延迟方面表现良好。尝试在 Linux 上使用Windows NX 客户端和免费的 NX 服务器。
如果可能,请使用直接 TCP 连接而不是 SSH。当然,这仅在没有安全担忧的受控环境中可行。
我认为在大多数设置中,本地运行的虚拟机将为您提供最佳延迟。更好的是,在 Windows 下运行 Emacs 和 Eclipse;让他们编辑远程文件,或者(为了更好的结果)让他们编辑本地文件,然后与 Unison 或通过版本控制系统同步。
小智 6
我同意 Mobaxterm 在 x 转发方面速度很快。然后我发现它使用的是基于cygwin的ssh,但它仍然比我的cygwin/ssh快。在查看调试信息后,我发现 Mobaxterm 的秘密是使用aes128-ctr而不是更常见的aes256-cbc密码,使用hmac-sha1并默认打开压缩。
在 Cygwin 中,
ssh -m hmac-sha1 -c aes128-ctr -C
Run Code Online (Sandbox Code Playgroud)
应该会给你接近 mobaxterm 的性能。如果您仍然认为 mobaxterm 更快,您可以直接使用 _ssh.exe,您可以在 mobaxterm 根目录中找到它。
一些博客/答案建议使用arcfour或blowfish 等密码。它们应该比aes128-ctr(对于旧 CPU)稍好一些,但是它们已经过时了,并且不一定在所有平台上都可用。您可以通过以下方式查看所有支持的密码和 MAC:
ssh -Q cipher
ssh -Q mac
Run Code Online (Sandbox Code Playgroud)
该基准测试表明 aes128-gcm 应在现代 CPU 上为您提供最佳性能。
有些人建议反对压缩。我想说假设 -C 仍然有帮助,除非你的试验结果相反,即使你相信你的网络是完美的。由于数据传输量非常巨大,并且压缩率令人印象深刻,例如
debug1: compress outgoing: raw data 603154, compressed 141717, factor 0.23
debug1: compress incoming: raw data 67841628, compressed 641357, factor 0.01
Run Code Online (Sandbox Code Playgroud)
实际上,我尝试使用直接 tcp 和 ssh 进行 x 转发,并通过压缩和适当的密码在内部 100Mbps LAN 连接上实现 <1ms 延迟。ssh 选项显然更快。
| 归档时间: |
|
| 查看次数: |
28091 次 |
| 最近记录: |