There have been various attemps to improve performance in VNC, for example, by
using caching. Recently, Novell posted a link to this document:
After this posting, there were some discussions on the mailing list as well.
Created attachment 228 [details]
Mail from Karl J. Runge
This bug might be suitable for a master thesis work.
The time required depends on how many client should support this extension.
For what it's worth, NoMachine have a method of converting RFB to X11 which they then use NX to compress, and they claim a compression factor of between 2 and 10 for this data.
See http://www.nomachine.com/documents/intr-technology.php subheading "RDP and RFB Foreign Protocols".
Caching in NX is described in http://www.nomachine.com/documents/NX-XProtocolCompression.php but I think the only relevant subheading is "Disk Based Cache of Images"
UltraVNC has some encoding types that mention caching. Might be something worth looking at there.
Some (somewhat old) information from Sun: