2 Functional Architecture
The Remote Desktop Services protocols provide functionality for securely connecting remote clients and servers, for channeling communication between components of remote clients and servers, and for managing servers.
The Remote Desktop Services protocols implement the Remote Desktop Protocol (RDP), which is a multichannel protocol that allows users of a remote client to connect to a server over a network. Remote Desktop Services protocols use either TCP or UDP for the transport.<1> When using the UDP transport, in addition to the main remote desktop connection, Remote Desktop Services protocols can create multiple transport connections between an RDP client and an RDP Session Host server.
This multichannel capability enables the use of separate channels, called virtual channels, to carry different types of data, including presentation data, highly encrypted data (such as keyboard and mouse user input), device communication, and licensing information.
The Remote Desktop Services protocols are used to initialize connections, negotiate capabilities (including security), and transfer input and graphics between a remote client (RDP client) and an RD Session Host server. In scenarios where the efficient transfer of server-side graphics display data is required from an RD Session host to a RDP Client, Remote Desktop Protocol: Graphics Pipeline Extension [MS-RDPEGFX] is used.<2>
When a user of an RDP client runs a remote application, the application is executed on the RD Session Host server, and the RD Session Host server sends graphical output or other types of data to the RDP client.
The Remote Desktop Services protocols enable an RDP client and an RD Session Host server to communicate directly, or to communicate across a firewall using a gateway protocol that tunnels RDP communications.
Remote Desktop Services protocols can be deployed in other enterprise network topologies, such as virtual private networks, to allow access to user sessions on individual RD Session Host servers or RD Session Host servers configured in farms.