Remote Desktop Protocol 5.1

The Remote Desktop Protocol is the communication protocol used by terminal services and remote desktop. The protocol determines what is sent between client and server. At a bare minimum, it passes the video display from the server to the client and the keyboard and mouse inputs from the client to the server. Previous versions of the RDP protocol (RDP 4.0 in Windows NT 4 Terminal Server and RDP 5.0 in Windows 2000) were limited in functionality as to the type of traffic it could pass. This usually meant that corporations purchased the Citrix Metaframe add-on to gain the additional functionality and performance. Windows Server 2003 uses version 5.1 of the RDP protocol, which provides several new features and enhancements.

Local Resource Redirection

One of the new features is the capability to redirect client resources to the remote terminal server. Windows 2000 allows mapping of the local client's printer to the terminal server (provided the appropriate printer driver is installed). This is still supported in Windows Server 2003, but the new protocol supports remapping of other resources?local drives, COM ports, and printers. For example, a client (CLIENT1) with a C: drive (COM1) and LPT1 can connect to a terminal server (NETSERVER) and have those resources available from the remote system, as shown in Figure 11.5 (provided the appropriate options are selected on the client and the terminal server allows it).

Figure 11.5. Access local resources from the remote terminal server.



Because making local drives available to a remote machine is a potential security risk, a warning message is displayed if this option is selected.

In addition to allowing the remapping of other local resources, the mapping of printer drivers has been enhanced. Now it not only provides for detection and automatic installation of local printers if the print driver is installed, but also attempts to locate near-miss printer drivers. Therefore, it attempts to install a compatible driver even if the exact driver for the local printer is not installed on the remote machine. Additionally, you can put the drivers you want it to use in a particular directory and tell it to use that directory by specifying the trusted driver path Registry setting.

The following are some additional improvements to the client experience provided by the RDP 5.1 protocol. Each of these options can be configured in the Remote Desktop Connection clients. Some of these options can also be enabled or disabled or configured with default settings via group policy:

  • Sound Card Redirection? With this option, you can choose to Bring To This Computer. This redirects the sound from the server to the local machine and enables you to run applications with sound on the server and hear them. The other options are to Leave At Remote Computer and Do Not Play.

  • Enhanced Color and Resolution? Now supports up to true (24-bit) color and the maximum resolution supported by client video(640x480 to 1600x1200). Additionally, the client automatically detects the color and resolution supported by the local computer and attempts to size appropriately. As mentioned previously, a Full Screen mode is available that gives the look and feel of being at the remote computer.

  • Shared Clipboard? This server-side configurable option enables clients to cut and copy items on the local system and paste them in the terminal server session, or vice versa. For example, you could be working in a document on the terminal server, copy a paragraph, and then paste it in a document on your local system. For that matter, you could even cut or copy the entire document file itself and paste it to the local system. This, coupled with the ability to access your local drives (via drive redirection), makes working on remote systems much easier because you still have access to local resources.

  • Enhanced Performance in Low Bandwidth Environments? Additional options are available in RDP 5.1 and are configurable in the Remote Desktop Connection application for improving performance, particularly over low-bandwidth connections. These are configured via the Experiences tab of the Remote Desktop Connection client, as shown in Figure 11.6.

    Figure 11.6. Configure Experience settings for low-bandwidth environments.



    Enabling each of these options generates more network traffic between the client and the remote systems, which degrades perceived performance.

    To help the user choose the appropriate settings based on the connection speed, there are default recommended settings for certain environments: Modem (56Kbps), Broadband (128Kbps?1.5Mbps), and LAN (10Mbps or higher), or you can create your own (Custom). For example, the Modem (56Kbps) setting enables Themes and Bitmap Caching but disables all the rest.

Is RDP Ready for Prime Time?

So, is RDP 5.1 good enough to rival the Citrix Metaframe protocol, Independent Computing Architecture (ICA)? Certainly. But will it completely replace ICA in all implementations? Probably not. RDP 5.1 now provides most of the commonly used features that made ICA superior to RDP. There are still some features that Metaframe provides that might be of benefit, such as support for protocols other than TCP/IP, the capability to directly dial in to the application server without connecting to a network first, and so on. The determination of whether to use Citrix Metaframe (and the ICA protocol) or stick with terminal services is a judgment call as to whether the extra cost is worth the extra features. Generally, for simple remote administration of your servers, the Remote Desktop for Administration and the RDP 5.1 protocol are usually more than adequate. For terminal server application servers, on the other hand, serious thought needs to be given to how they will be used before a determination can be made. Currently, no Metaframe add-on to Windows Server 2003 is available. But then, as of this writing, Windows Server 2003 hasn't been released yet either. Look for Citrix to make a Metaframe add-on soon after Windows Server 2003 is released. Then you can make your final determination.