Thin client-remote transmission protocol

Source: Internet
Author: User
Tags windows remote desktop

In the previous article, I talked about some of the current situation and fantasies about thin clients. Next, we will explore the possibility of implementing this technology. To achieve thin clients, the most important thing is to select a communication method that both the client and the server can understand. This communication method is the communication protocol or remote transmission protocol.

This article does not discuss private and undisclosed transfer protocols developed by companies such as onlive, but some existing generic protocols. In fact, everyone is familiar with these general protocols. They are Microsoft's RDP protocol, Citrix's ICA protocol, VNC's RFB Protocol, and MIT's X11 protocol.

 

Common protocols:

Software Protocol License
Citrix xenapp RDP, ICA Proprietary
Freenx NX, RDP, RFB (VNC) GPL
LogMeIn Proprietary Proprietary
Neatx NX GPL
Rdesktop RDP GPL
RealVNC RFB (VNC) GPL
UltraVNC RFB (VNC) GPL
Remote Desktop Services/Terminal Services RDP Proprietary
SSH with X forwarding X11 BSD
Symantec PCAnywhere Proprietary Proprietary
Citrix xenapprdp ICA Proprietary

For a more detailed list, see: http://en.wikipedia.org/wiki/Comparison_of_remote_desktop_software

RDP Protocol

RDP stands for Remote Desktop Protocol, which is the Protocol we usually use in Windows Remote Desktop. With mstsc.exe, We can remotely connect to the desktop of a Windows machine for operations. In windows2008, there is a more attractive thing, that isTerminal Services RemoteApp.

Terminal Services RemoteAppSupports remote execution of a single applicationProgramAs if the application is running on the local machine. With RemoteApp, we can run an Excel or vs2010 on a client without office or Visual Studio installed, the Excel and vs2010 programs are actually installed on machines remotely installed with the RemoteApp server.

Set remote applications:

Remoeapp architecture diagram:

The client can directly run the remote app using the. RDP shortcut, orIn the browserRun a remote app through ts Web Access (the remote app is not running in the browser ).

For example, run the remote WordPad (non-Vista style) through ts web access on a Vista machine ).

The running effect is as follows:

Microsoft's technology is cool, right. However, RemoteApp is only available on Windows.

ICA Protocol

ICA stands for the Independent Computing Architecture, an independent computing architecture. It separates the computing/execution logic of an application from the display logic and keeps the computing/execution 100% of the Program on the server, the running results are visualized/GUI-based and transmitted to the client over the network. for the client, only Keyboard clicks and mouse clicks are transmitted to the server over the network.

ICA is designed by Citrix. Citrix can be the eldest brother in this field, even a technically powerful company like Microsoft, the previous Remote Desktop and TS RemoteApp are made only by purchasing Citrix technologies. Citrix is the technology pioneer, so Citrix has a greater advantage and uses more innovations to make better products. This product is Citrix xenapp.

Xenapp is a commercial tool that I have never used. Naturally, it cannot be used in depth. If you are interested, visit the Citrix official website to learn more. Here is a xenapp design map I found:


RFB Protocol

RFB is short for remote frame buffer, which is the protocol used by common VNC. RFB is a simple protocol for remote graphical users. Because it works at the frame cache level, it can be applied to all window systems, such as X11, windows, and MAC systems. Remote End users use an RFB client (such as a display, keyboard, or mouse) to provide the RFB server with frame cache changes.

Because frame caching technology is used, the performance of VNC has been criticized. At the same time, VNC can only remotely control the entire desktop, but cannot run only one program.

X11 Protocol

X11 (X Window System Core Protocol) is an open source transmission protocol designed by MIT in 1984. It has been developing so far. The latest version is x11r7.5. It is the basic protocol of X Window System. The X Window System was born to serve thin customers. Since its design, it was designed as a computing and display separation architecture, that is, the program can run on a computer, it is displayed on another computer. With the continuous evolution of X11, there have been various forms of improved versions, the most famous of which is the NX protocol developed by nomachine. the NX protocol is based on X11, the cache mechanism and compression and transmission mechanism are added to improve its performance. This is what I will focus on in the next article.

The X11 design principle is:Create mechanic, not policyTherefore, X intentionally does not regulate the user interface of the application, such as the title bar of buttons, menus, and windows. These are provided by Windows Manager, GUI Component kits, desktop environments, Gui specified by applications (such as POS machines), and other user software. In this way, we can understand why there are many desktop systems, such as gnome and KDE, in Linux, which use the X protocol and draw different interfaces.

To understand X11, a very important concept must be clarified. X Server and X client. Server usually refers to the server, and cilent refers to the user's client, but X11 should be understood in turn. In X11, the server is used to display the screen, and the client is used for computing and processing. Therefore, if you remotely connect to the client through X11, you must initiate an X Server, and the remote application is actually executed through the remote X cilent.

X11 itself is not complex. There are four types of requests for server-client interaction: requests, replies, events, and errors.
1. Request: the client requests the server to return information or execute an action.
2. Reply: the server returns a request. Not all requests are returned.
3. Event: Some interface-related events sent by the server to the client, such as keyboard, mouse input, window movement, and resize.
4. Error: when the request is invalid, the server sends an error message to cilent.

If you are using X Window System, such as Linux, Debian, and Ubuntu, try it now. Run the following command to run a remote gedit (Text Editor ):

SSH - X - C Root @ 192.168 . X. x gedit

Even if the image is not displayed remotely, the X11 architecture is the same for locally executed applications, with a server and client. We can modify the display environment variable to display the screen elsewhere.

For example, the client executes:

Export display = 192.168 . X. x: 0

Remote display of X server to accept client connection, use xhost to join the allowed list, server side to execute:

Xhost +   192.168 . X. x

Then, run an application on the client, such as gedit, and the screen is displayed on the remote server.

Okay. This is the end of this article. The next article will show you the secrets of nomachine's NX. If you are interested in this, please let me know.

Series of thin clients:

Thin client-Opening

Thin client-remote transmission protocol

What about thin clients-nomachine secrets

......

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.