Let's begin this by starting with the following levels of progress
- Impossible
- Improbable
- Probable
- Feasible
- Implementable
- Testible
- Operational
Terminal Server - What is it?
A Terminal Server is a system that incorporates 2 or more PCs with one of them being called a server and the other(s) being called a client. The server is an Operational GUI desktop with tools that any user would need to accomplish tasks while sitting at the console of the server. Now, when the servers' Terminal Server service is started, it will allow a remote client to login and get a desktop IDENTICAL to the desktop a user would see if he were sitting at the server's console. The remote client would operate his session in EXACTLY the same way as if he were sitting at the server's console even though someone else may be using the real console for something totally different. Thus, a Terminal Server serves desktop, simultaneously to all users who logon; and, each and every users is separate (or private) from every other user on the Terminal Server.
All of the client's experience, even though he is seeing it on his local screen, is totally on the Terminal Server! Everything! His mouse-ing, his keyboard-ing, what he sees, ....everything.
Obvious to everyone reading here is "what must a remote client PC use to connect in such a way to do this?" Many familiar with Microsoft will offer up RDP (Remote Desktop Protocol). Others familiar with Linux will immediately offer up VNC. Those familiar with UNIX will offer up Thin clients. Further, those familiar with Citrix will offer up ICA.
Of those clients I mention, I will rank them in terms of their efficientcy on a low bandwidth connection:
Thin Client/True UNIX terminal 100%
ICA 99%
RDP 90%
VNC 45%
Note: VNC has NO ABILITY to deliver a multimedia experience to any user. (Multimedia is tantamount to every user experience in today's world)
The Linux community has seen a significant growth in Terminal Server demand and growth over the past 8 years. LTSP has been the fore-runner in this. REDHAT AND UBUNTU have been instrumental in delivering "true" Terminal Server service within their products over the past 4-6 years.
If any of you are NOT familiar with what a Terminal Server is you can easily see this if you have a XP Pro machine and any other PC on your LAN which will run its RDP client (built-in on all M$ PCs and RDP client is in most Linux PCs). That RDP client can connect, get a desktop, and operate a session independent of the XP Pro console user. This makes the XP Pro PC, a 2 user Terminal Server simultaneously serving a console user and another PC user using RDP to connect to it. This is accomplished without installing ANY software on either the XP Pro PC or the RDP client.
Others of you who want to witness this in a Linux environment need ONLY to use a free service from Ubuntu to get a feel for its speed and efficiency that it delivers to a user on a low/high bandwidth connection. Go here to see it. Sign up and run a WebLive session for yourself.
If you are not familiar with a Terminal Server connection, you will find that, in either of the cases mentioned in the above 2 paragraphs, your desktop experience is just as fast as if you were sitting at the console of the Terminal Server even though you are NOT sitting at that console.. In fact, a Terminal Server can serve multiple users faster than a user would experience on a local PC.
"What is the advantage?" one might ask: It is to
- utilize a High Powered PC satisfying multiple people simultaneously
- Set up a single system that everyone in the household or office uses
- Only need to fix or maintain 1 PC versus several
- Only need to install an OS once and everyone is immediately using
- Only need to install or upgrade a program once and everyone uses
- NO MORE BACKUP of individual user machines....ever again.
- When the TS is backed up, everyone is backed up because everyone is on the TS.
- Clients are low-powered disposable machines.
- Single controlling location for "who can see what ..."
- One Firewall to maintain which benefits EVERY TS user
- and on and on and on.
What is needed to bring a High-performance connection protocol for delivering desktops to Puppy such that Puppy will be a "true" Terminal Server?