Proposal for session persistence on thin clients

Jerry Haltom wasabi at larvalstage.net
Mon Oct 23 20:48:09 BST 2006


I just want to throw this out to you, because it has been something that
has been on my mind for awhile for a variety of other reasons.

X client display migration.

An effort was put into this before (libdm), and some work has been done
by some parties in Gtk towards this goal. I believe any work that had
been done is probably bit rotted at this point.

I want to bring it up because I believe it is the "proper" way to solve
the issue. Applications should be able to disconnect from the running X
display, and connect to another. This would solve a variety of problems:

GDM managed VNC session. GDM itself runs a VNC port. It accepts incoming
connections and spawns a VNC server for them, much in the style of
inetd. It then displays it's own greeter onto the server, when the user
logs in, it clears it's greeter, and migrates the user's existing
desktop to the VNC server (instructing all applications running in the
existing X server to move to the new one). Using a variety of existing
protocols: Xinerama, Xrandr, the applications discover the layout of the
new screen and conform to it (it might have shrunk). GDM then puts it's
greeter back on the existing X server or kills it.

Yes, some applications will never support migration. They get killed.
Sucks for them. We should fix them.

Disconnected sessions. When a user disconnects, the GDM server managing
the session creates a XVFB-type server, and migrates all the apps to it.
The apps can continue to operate in the background drawing nowhere. When
the user reconnects, they all migrate to the destination server.

I suspect nobody has done this yet because of the massive amount of work
which would have to be done in Gtk to accomplish it. I do believe it is
a more correct implementation than some of the other ideas, such as
forwarding all X connections through a proxy by default.

Also, I may be unimaginative, but I really can't think of another way to
accomplish it other than the proxy.

On Mon, 2006-10-23 at 13:44 -0400, Jim McQuillan wrote:
> I'd like to propose a topic for the Ubuntu dev summit in Mt.View.
> 
> "Session Persistence"
> 
> This is the ability to disconnect from a session, and re-attach later. 
> Possibly from a different thin client.
> 
> Other thin client systems have this already.
> 
> A possible solution might be VNC or NX, but both of those have their issues.
> 
> I'm thinking that since we'll have lots of LTSP people at MtView, and
> we'll have Keith Packard from X.org, and lots of other people, it would be
> a great opportunity to discuss this feature and various methods of
> providing it.
> 
> Whadya all think?
> 
> Jim McQuillan
> jam at Ltsp.org
> 
> 




More information about the ubuntu-devel mailing list