我怎样才能使 VNC 更快?

我怎样才能使 VNC 更快?

我每周需要远程访问和使用我的工作电脑几次。我目前使用 UltraVNC。我想使用 VNC,因为它价格便宜。我以前用过 VNC,主要是在自己的网络上,速度很快。

但是,互联网上的 VNC 速度非常慢。即使在 256 色或更低颜色下,关闭 Aero,速度也慢得令人无法忍受。我最近使用了Ammyy 管理员连接以执行需要快速反应时间的操作。Ammyy 非常快,几乎没有延迟,并且在 Aero 开启的情况下以全彩色运行!

我怎样才能让 VNC 像 Ammyy 一样快?我会使用 Ammyy,但可能很快就会达到每月 15 小时的限制。有什么建议吗?

答案1

VNC 使用的协议本身就存在一些限制。RFB(远程帧缓冲区)通过网络传输像素矩形来工作。分辨率和位深度越高,发送更新所需的带宽就越大。VNC 服务器/客户端已经进行了一些优化:

  1. 仅发送已更改的区域,并在客户端上缓存未更改的区域。
  2. 当发生变化时复制客户端上的缓存区域。
  3. 各种形式的无损和有损压缩

您可以调整客户端和服务器上的设置,看看哪种设置最适合您的互联网连接。任何客户端都可以连接到任何服务器,因为它们会协商确定两者都支持哪些协议功能,但如果您想使用更高级的协议功能,最好使用同一家公司的客户端和服务器。

RDP 和 X 协议传输的是绘图指令,而不是像素块。这就是为什么在某些情况下它们优于 VNC。

其他专有远程访问服务可能使用类似技术,但未记录在案。远程访问服务确实具有比直接远程访问更容易突破防火墙的优势,它们通常更易于配置,并且对加密的支持更好。

我使用过 VNC、远程桌面、LogMeIn Free、PCAnywhere 和远程 X。每种都有其优点:

  • VNC 在比特率极其有限的情况下实际上比其他协议表现更好。(想想拨号连接)而且它几乎可以在任何平台上运行。
  • 远程桌面可在 LAN 上良好运行并与 ActiveDirectory 无缝集成。
  • LogMeIn 非常适合通过互联网访问 Windows PC,并且还支持 ActiveDirectory 集成。它具有 ActiveX、Java、Firefox 扩展,甚至还有基于 HTML 的客户端。免费版本允许您管理最多 5 台 PC。付费版本可增加此数量,并添加文件传输和高级管理功能。
  • PCAnywhere 类似于 VNC 和远程桌面。它支持各种级别的加密、文件传输和远程配置。您必须将这些东西与 VNC 和远程桌面拼凑在一起。
  • X 是 Unix 世界中的远程桌面。公平地说,它的存在时间比其他任何协议都要长。它在 LAN 上工作得很好,但在互联网上却太过繁琐。有几个项目试图改进这一点,并取得了不同程度的成功。前面提到的 NoMachine NX 就是这样一个项目。

我提到的所有远程访问协议都是免费提供的(通过操作系统或下载均可),除了赛门铁克 (Symantec) 销售的 PcAnywhere 之外。

我个人会尝试每一个并选择最适合您需求的一个。

答案2

你可以试试无机器 NX我的一个朋友使用它,成功地提高了 VNC 的速度。

至于我,我正在使用 RDP,我认为这绝对是 Windows 系统的最佳选择。其他人使用 RDP 取得了良好的效果TeamViewer或者远程管理员

答案3

尝试使用这个:

-snapfb

不要轮询 X 显示帧缓冲区 (fb) 以查看是否有更改,而是定期将所有 X 显示 fb 复制到主内存中并检查该副本是否有更改。在某些情况下,这将改善交互式响应,或者至少使事情看起来更流畅,但在其他情况下(大多数情况下!),它会使响应变差。如果视频硬件 fb 读取小图块的速度非常慢,则此模式可能会有所帮助。要保持“帧速率”,屏幕尺寸 x bpp 不能太大。请注意,此模式非常浪费内存 I/O 资源(即使没有任何变化,它也会进行全屏复制)。它可能在类似视频捕获的应用程序中有用,或者在窗口撕裂是一个问题的地方有用。

这为我解决了这个问题。

答案4

你调查过吗超VNC?他们的系统内置了镜像视频驱动程序,有助于加快某些刷新和通知问题。我认为它可以帮助你解决问题,而且它仍然是免费的。

相关内容