Remote desktop software
||This article may contain original research. (July 2011)|
||This article may require cleanup to meet Wikipedia's quality standards. (July 2011)|
|Look up remote desktop in Wiktionary, the free dictionary.|
In computing, the term remote desktop refers to a software or operating system feature that allows a personal computer's desktop environment to be run remotely on one system (usually a PC, but the concept applies equally to a server), while being displayed on a separate client device. Remote desktop applications have varying features. Some allow attaching to an existing user's session (i.e., a running desktop) and "remote controlling", either displaying the remote control session or blanking the screen. Taking over a desktop remotely is a form of remote administration.
Remote access can also be explained as remote control of a computer by using another device connected via the internet or another network. This is widely used by many computer manufacturers and large businesses' help desks for technical troubleshooting of their customers' problems. There are various professional first-party, third-party, open source, and freeware remote desktop applications, some of which are cross-platform across various versions of Windows, Mac OS X, UNIX, and Linux.
How it works 
Remote desktop virtualization implementations operate as client/server computing environments. The controlling computer (referred to in this context as the client) displays a copy of the image received from the controlled computer's (in this context the server) display screen. The copy is updated on a timed interval, or when a change on screen is noticed by the remote control software. The software on the controlling computer transmits its own keyboard and mouse activity to the controlled computer, where the remote control software implements these actions. The controlled computer then behaves as if the actions were performed directly at that computer. In many cases the local display and input devices can be disabled so that the remote session cannot be viewed or interfered with.
The quality, speed and functions of any remote desktop protocol are based on the system layer where the graphical desktop is redirected and the efficiency of the remote display protocol. Software such as VNC and others use the top software layer to extract and compress the graphic interface images for transmission. Other implementations such as Microsoft's RDP use a kernel driver level to construct the remote desktop for transmission of data.
A main use of remote desktop software is remote administration. It can also be used for "headless computers": instead of each computer having its own monitor, keyboard, and mouse, or using a KVM switch, a monitor, keyboard and mouse can be attached to one computer with remote control software, and headless computers controlled by it. The duplicate desktop mode is useful for user support and education. Remote control software combined with telephone communication can be nearly as helpful for novice computer-users as if the support staff were actually there.
Since the advent of cloud computing remote desktop software can be housed on USB hardware devices, allowing users to connect the device to any PC connected to their network or the Internet and recreate their desktop via a connection to the cloud. This model avoids one problem with remote desktop software, which requires the local computer to be switched on at the time when the user wishes to access it remotely. (It is possible with a router with C2S VPN support, and Wake on LAN equipment, to establish a virtual private network (VPN) connection with the router over the Internet if not connected to the LAN, switch on a computer connected to the router, then connect to it.)
Malicious use 
Remote control software is also used maliciously. For example, typically someone will be telephoned at random by a caller claiming to be from Microsoft. The victim might be told that a virus has been detected originating on their machine, or offered a free checkup. They will be asked to install remote control software, often TeamViewer as it is very easy to use. This gives the attacker full control, and they can do anything they want. Typically they will do things which imply that the system is not working properly, e.g. by displaying alarming messages, then demand payment to resolve the "problem". It is also possible for Trojan software to be installed to recruit the machine to a botnet.
Remote desktop products 
These are available in three models: hosted service, software, and appliance.
Remote desktop protocols 
The main remote desktop protocols in use are:
- Virtual Network Computing (VNC) - a cross-platform protocol
- Remote Desktop Protocol (RDP) - a Windows-specific protocol featuring audio and remote printing
- Remote Frame Buffer Protocol (RFB) - A framebuffer level cross-platform protocol that VNC is based on.
- Apple Remote Desktop Protocol (ARD) - Original protocol for Apple Remote Desktop on Mac OS X machines.
- Independent Computing Architecture (ICA) - a proprietary protocol designed by Citrix Systems
- X Window System (X11) - a well-established cross-platform protocol mainly used for displaying local applications, but can also be used remotely
- Appliance Link Protocol (ALP) - a Sun Microsystems-specific protocol featuring audio (play and record), remote printing, remote USB, accelerated video
See also 
- Comparison of remote desktop software
- Comparison of Java Remote Desktop projects
- Desktop virtualization
- Remote computer
- Guardian newspaper article on fraudulent use of remote control software
- Microsoft Answers discussion: case of user totally taken in by "Windows Service Centre" caller. Persuaded to install Teamviewer, and charged to resolve a virus problem; after the "problem" was "resolved" and paid for and the call terminated, a virus was present on the computer.