Proxy Servers Lighten Up X
An anonymous reader writes "LinuxDevices.com is reporting on a compression and differential proxy scheme for X that makes it practical to xhost rich applications like Mozilla or a whole UNIX desktop over a 9.6Kbps connection (think cell phone with GSM modem). The company developing NX has a neat test drive set up -- and it is way zippier than VNC. There'll be a paper about it at the next LinuxKongress in Saarbrucken, Germany, and a call is out to OSS programmers to build on the GPL'ed NX library."
(Sorry, but I'm not able to read the PDF right now, and there doesn't appear to be a whole lot of technical info on the web site.)
So can anyone address how this new product is any different or better than Low Bandwith X? LBX is also a proxy server that caches a lot of information local to the application cut down on traffic across the slow link to the actual X server. I've used it to run programs like XEmacs and XTerm across 56K links and it works very well. It's less useful at graphics-intensive programs like Gimp.
Just what X was made for I thought.
First I tried straight X (over ssh -X -C of course). This is on a 256k upstream DSL link.
The performance was pants. Really bad. At first I thought I must be doing something wrong. To be honest, Gimp wasn't too bad, but a Gnome 2 application like Xchat2 was really slow. Menus would take an age to display.
I tried looking around for a low bandwidth solution, but couldn't find any free ones.
I've ended up using VNC over SSH. It's much better than straight X. Plus it's got the added advantage that I can just leave the application running, and connect to it from anywhere.
With X, there is no easy way (xmove was impractical) to leave an application running, and move it between desktops.
-- Hulver's site
Always the problem with these things. ssh display forwarding and lbxproxy can both reduce the bandwidth used by X11 but both increase the latency, sometimes to unacceptable levels.
On the corporate LAN we have 100Mbit switched and haven't noticed bandwidth being a problem. We have however noticed that both lbxproxy and ssh require more CPU in order to perform compression and buffering which *can* be a problem on a shared server if the number of concurrent sessions it can support drops by 20%.
I guess if you want X to your phone then it could be an issue, but that's a fairly niche market.
Government of the people, by corporate executives, for corporate profits.
Another product that's been around for a while and works pretty good is Differential X Protocol Compressor. How does this new product differ?
VNC isn't like that. The x client just continues on its merry way, rendering rapidly to the vnc server. The vnc viewer, meanwhile, sees only what it has enough bandwidth to download. You could play a movie over VNC if you wanted, but you'd only see a tiny fraction of the frames :) For this reason I find VNC greatly improved on slow/high-latency links compared to X.
I see this new thing uses a proxy, and that extra layer raises the possibility for sloppy synchronization. I wonder if that is part of the trick, of if it's just lots of caching?