vnc出现rect too big的问题的解决

症状:
1. 启动虚拟机使用了-vnc 127.0.0.1:2的选项
2. 在本地使用vncviewer访问的时候,出现了Rect too big的小提示框,然后VNC session就消失了

原因:
This happens because of a VNC protocol flaw on the way on-the-fly pixel format changes are handled
ref: http://www.linux-kvm.org/page/FAQ#.22rect_too_big.22_Message_when_using_VNC_Display
深度ref: https://bugs.launchpad.net/ubuntu/+source/vnc4/+bug/117229
总而言之,这是vncviewer的一个bug

解决:
1. 如果使用命令行的vnc, 那么加上这个选项:AutoSelect=0 FullColor=1(实际上只加上AutoSelect=0也可以),即使用方式是:
# vncviewer AutoSelect=0 127.0.0.1:1

2. 如果使用图形的vnc, 选择options, 把Encoding and Colour Level里的Auto select去掉即可

恩,看来修改的是encoding的方式,原来好像用的是hextile,貌似吞吐率太大了。。。去掉自动选择后,好像使用的zrle

----------------------------------------------------
P.S. 原来vnc也可以用命令行的啊,而且还有过程输出哦:
1)
# vncvi

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TurboVNCVNC(虚拟网络计算)的派生产品,其经过调整可为3D和视频工作负载提供最佳性能。 TurboVNC最初是TightVNC 1.3.x的分支,从表面上看,X服务器和Windows查看器的行为仍然与其父代相似。但是,当前版本的TurboVNC包含更新得多的X服务器代码库(基于X.org 7.7)以及TightVNC中不存在的各种其他功能和修补程序,包括高性能Java查看器。此外,TurboVNC压缩3D和视频工作负载的性能明显好于TightVNC 1.3.x中的“最紧密”压缩模式,而通常只使用后者的15-20%的CPU时间。使用非默认设置,TurboVNC还可以匹配TightVNC 1.3.x对2D工作负载产生的最佳压缩率。此外,TurboVNC包含一些专门为可视化应用程序设计的独特功能。所有VNC实现(包括TurboVNC)都使用RFB(远程帧缓冲器) 从VNC服务器向所有连接的“查看器”发送“帧缓冲区更新”的协议。每个帧缓冲区更新可以包含多个“矩形”(自上次更新以来已更改的区域。)与TightVNC一样,TurboVNC分析每个矩形,将其拆分为多个“子矩形”,并尝试使用“子编码类型”对每个子矩形进行编码给定子矩形中唯一颜色的数量,它将提供最有效的压缩。 TurboVNC执行此操作的过程称为“编码方法”。首先分析矩形以确定矩形的重要部分是否为实心,如果是,则将该部分编码为边界框和填充颜色(“实数子编码”。)在其余子矩形中,只有两种颜色的子矩形为编码为带有2色调色板的“每像素1位”位图(“单声道子编码”),具有少量唯一颜色的那些将被编码为调色板和8位每像素的位图(“颜色子编码”),和 根据编码方法,使用JPEG或RGB像素阵列对具有大量唯一颜色的子矩形进行编码(“原始子编码”)。 zlib可以可选地用于压缩索引颜色,单色和原始子矩形。 TurboVNC加速的一部分来自libjpeg-turbo的使用。但是,TurboVNC还消除了TightVNC 1.3.x用来确定子矩形是否是JPEG压缩的良好候选者的CPU占用率过高的检测例程,并且TurboVNC的编码方法倾向于更多地使用JPEG,因为现在通常使用JPEG。最快的子编码类型。此外,TurboVNC消除了缓冲区副本,它通过将帧缓冲区更新划分为相对较大的子矩形来最大化网络效率,并且仅使用zlib压缩级别,可以证明具有可衡量的性能优势。 TurboVNC是广泛研究的产物,其中TightVNC编码器的许多不同排列都以 低级,针对各种捕获的RFB会话,这些会话模拟2D和3D的实际应用程序工作负载。 TigerVNC和libvncserver已采用TurboVNC的编码方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值