Mac enterprise server is slower than windows enterprise server

Corne Beerse cbeerse at
Tue Feb 23 08:42:52 GMT 2010

On 19-2-2010 20:55, Mr. B wrote:
> I have two machines on a wired network.  A win xp machine and a mac
> book pro.  Both systems have vnc enterprise servers and viewers
> version 4.5.x installed with the servers configured to operate in
> service mode.
> When I use the mac vnc viewer app to access the windows machine vnc
> server and thus remotely control the windows machine, the speed is
> incredible, like sitting at the actual windows computer.
> When I use the windows vnc viewer to access the mac vnc server and
> thus remotely control the mac, the speed is horrible, about 1/4th the
> speed of the aforementioned scenario.  When moving a window or
> scrolling a page, I can count to "2" (so about 1 to 2 seconds lag)
> before the scrolled page or moved window updates on the vnc viewer
> window.  Clicking pull down menus at the top of the screen takes
> several moments for them to appear in the viewer.  I have the mac
> machine (running the vnc server) sitting next to me to test this while
> I access from the windows vnc viewer, and the screen updates are
> obviously instantaneous on the actual mac.  So the lag is in the vnc
> connection itself.
> On both systems, I have the viewers set to 'adapt to network speed'.
> Even going manual and sliding the slider to 'most compression' does
> not work.  In fact, while reducing the colors and making things hard
> to read, it actually seems to make the mac vnc server even slower to
> respond.
> What should I check or adjust to help increase the performance of the
> mac vnc server, as this level of performance is nearly unusable.....

I guess it is not the viewer that makes the difference, it is the server 
side that makes the difference. That's the one that captures the screen 
and sends it over to the viewer.

For msWindows, there is only one way to act as a vnc-server: replicating 
the session at the console. Hence it is optimized to do so. In the old 
days, it was just capturing (polling) the display memory. With curent 
vnc-servers, hooks are used to effectively capture only changed parts. 
At the server side, there are some options to tune and tweak this.

For unix there is a complete different approach: From the start (way 
back in the '80s or early '90s) the vnc-server provides a new session, 
complete independent from the console session. Only after the msWindows 
implementation shows the console and unix became in use at the console, 
this became wanted in the unix implementation. Since the unix console is 
constructed in several layers, there are multiple aproaches to capture 
the console:

Low level aproach: vnc-console-server captures the display memory: This 
vnc-server is hooked to the X11 server, the display driver on unix 
machines. Most implementation binaries start with a capital X. The 
origional vnc-server reflects this by being called Xvnc. On linux this 
is a module that can be loaded in the X11 environment and is configured 
in the /etc/X11/xorg.conf file or around.

The middle level aproach: vnc-console-server hooked into the window 
manager: The window manager is the tool that effectively puts the 
windows on the screen. These binaries most times end their name with 
'wm'. Old/antique names include sunwm, xwm, cdwm, kwm and such. As far 
as I know, the kwm (from the kde-bundle) does have 
hooks/libraries/modules to act as a vnc-server.

The top level aproach: vnc-console-server hooked into the display 
manager. This is the tool that hanldes the menus and such on your 
system. I donnot know vnc-server implementations by head.

I'm sorry I donnot know what is available on apple, All I do know, it is 
a unix implementation, hence, it uses one of the unix aproaches. I'm not 
sure if you do have a choice on apple. All I do know is the more 
low-level the vnc-server hooks into the system, the faster it is.


mailing list