为什么通过 'ssh -X' 的应用程序比通过 'ssh -X' 的 vncviewer 慢

Tik*_*ik0 5 ssh vnc xforwarding

如果我通过 x-forward 运行程序,它在动画方面的表现非常糟糕。例如:

ssh -X <USER>@<SERVER> "application"
Run Code Online (Sandbox Code Playgroud)

但是如果我启动一个远程 vnc 服务器并通过 ssh远程连接到它,那么动画和所有其他东西就会运行得更加流畅。例如:

DSPLY=1 && ssh -X <USER>@<SERVER> "vncserver :$DSPLY ; vncviewer localhost:$DSPLY"
Run Code Online (Sandbox Code Playgroud)

在我看来,它(或多或少)需要通过 ssh 传输的数据量相同。那么为什么速度会有如此大的差异呢?

ter*_*don 1

在不知道的情况下,我猜测这取决于所使用的加密协议。我对此了解不够,无法调试它或为您提供更多详细信息,但尝试更改您使用的协议,您将看到导出的 X 程序的响应能力大大提高。

所以,代替ssh -X user@host,尝试

ssh -YC4c arcfour,blowfish-cbc user@host
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅此处(尽管我建议使用-Y而不是-X为了速度)。