Comprendre le Remote Desktop Protocol (RDP)


Résumé


Cet article décrit le protocole RDP (Remote Desktop) utilisé pour la communication entre le serveur Terminal Server et le Client Terminal Server. RDP est encapsulée et chiffré dans TCP.

Plus d'informations


Comprendre le Remote Desktop Protocol (RDP)

Le protocole Bureau à distance est basé sur une extension de la famille T-120 des normes de protocoles. Un protocole capable multicanal permet à des canaux virtuels distincts de transporter les données de présentation, LNA, informations relatives aux licences, des données fortement cryptées (clavier, activité de la souris) et ainsi de suite. RDP est une extension du noyau T.Share protocole, plusieurs autres fonctionnalités sont conservées comme partie du RDP, telles que les caractéristiques de l'architecture nécessaires pour prendre en charge le multipoint (sessions multi-utilisateurs). La livraison de données multipoint permet aux données d'une application d'être livrées en « temps réel » à plusieurs parties sans avoir à envoyer les mêmes données à chaque session individuellement (par exemple, les tableaux blancs virtuels).


Toutefois, dans cette première version de Windows Terminal Server, nous nous sommes concentrés sur la fourniture de communications point à point fiables et rapides (sessions). Un seul Canal de données sera utilisé dans la version initiale de Terminal Server 4.0 Toutefois, la flexibilité de RDP offre suffisamment d'espace pour les fonctionnalités dans les futurs produits.


Une raison pour laquelle Microsoft a décidé d'implémenter RDP à des fins de connectivité dans Windows NT Terminal Server est qu'il fournit une base très extensible à partir de laquelle il est possible de générer bien plus de fonctionnalités. C’est parce que RDP fournit des 64 000 canaux distincts pour la transmission de données. Toutefois, les activités en cours de transmission utilisant uniquement un seul canal (pour clavier, souris et données de présentation).


De même, RDP est conçu pour prendre en charge les différents types de topologies réseau (telles que RNIS, POTS et de nombreux protocoles de réseau local IPX, NetBIOS, TCP/IP, etc.). La version actuelle du protocole RDP ne s’exécute que sur TCP/IP, mais avec des commentaires des clients, la prise en charge d’autre protocoles peut-être être ajoutée dans les futures versions.


L'activité impliquée par l'envoi et la réception de données via la pile de protocole RDP est la même que via les normes actuelles des septs couches du modèle OSI du réseau commun LAN. Les données à partir d’une application ou un service à transmettre sont passées vers le bas à travers les piles de protocole, sectioned, dirigé vers un canal (à l’aide de MCS), crypté, encapsulé, encadré, emballés sur le protocole réseau et enfin adressé et envoyé sur le réseau à la client. Les données retournées fonctionnent de la même façon que dans le sens inverse, le paquet étant débarrassé de son adresse, puis dévoilé, décrypté, et ainsi de suite jusqu'à ce que les données sont présentées à l’application à utiliser. Parties de la modification de pile de protocole se produisent entre les couches d’une quatrième et septième, où les données sont cryptées, encapsulées et encadrées, dirigées vers un canal et classés par priorité.


Un des points clés pour les développeurs d’applications est que, en utilisant le protocole RDP, Microsoft a abstrait la complexité du traitement avec la pile de protocole. Cela leur permet simplement à écrire des applications 32 bits propres, bien conçues et se comportant bien, et puis la pile RDP implémentée par le serveur Terminal Server et ses connexions client s’occupe du reste.


Pour plus d’informations sur l’interaction des applications sur le serveur Terminal Server et ce qu’il faut être conscient lors de développement d’applications pour une infrastructure Windows Terminal Server, consultez le « optimisation des Applications pour Windows NT Server 4.0, Édition Terminal Server » livre blanc. Les quatre composants utile d’aborder dans l’instance de pile RDP sont le Service de Communication Multipoint (MCSMUX), le contrôle de conférence générique (GCC), Wdtshare.sys et Tdtcp.sys. MCSmux et GCC font partie de la famille T.120 de l’Union internationale des télécommunications (UIT). Les MCS se compose de deux normes : T.122, qui définit les services multipoints, et T.125, qui spécifie le protocole de transmission de données. Les contrôles MCSMux canal affectation (par multiplexage de données sur des canaux virtuels prédéfinis dans le protocole), les niveaux de priorité et segmentation des données envoyées. Il isole essentiellement plusieurs piles de protocole RDP dans une entité unique, du point de vue de la GCC. GCC est responsable de la gestion de ces canaux multiples. Le GCC permet la création et la suppression des connexions de session et les ressources de contrôles fournies par MCS. Chaque protocole de Terminal Server (actuellement, seuls les ICA RDP et de Citrix sont supportées) aura une instance de pile de protocole chargée (une pile de récepteur en attente d’une demande de connexion). Le serveur Terminal Server pilote coordonne et gère l’activité du protocole RDP et est constitué de composants plus petits, un pilote RDP (Wdtshare.sys) pour le transfert de l’interface utilisateur, la compression, le cryptage, trames et ainsi de suite et un pilote de transport (Tdtcp.sys) au package de la protocole sur le protocole de réseau sous-jacent, TCP/IP.


RDP a été développé pour être entièrement indépendantes de sa pile de transport sous-jacent, dans ce cas TCP/IP. Le protocole RDP, qui est totalement indépendante de sa pile de transport, signifie que nous pouvons ajouter les autres pilotes de transport pour d’autres protocoles de réseau comme clients pour les besoins, avec peu ou pas de modifications importantes pour les éléments fondamentaux du protocole. Ce sont des éléments clés pour les performances et l’extensibilité de RDP sur le réseau.