Sélection d’une séquence de protocole
Une séquence de protocole est le langage utilisé par un système d’exploitation réseau pour communiquer sur le réseau à d’autres ordinateurs. En termes plus spécifiques, les applications RPC doivent spécifier une chaîne qui représente une combinaison d’un protocole RPC, d’un protocole de transport et d’un protocole réseau.
Microsoft RPC prend en charge trois protocoles RPC :
- Protocole NCACN (Network Computing Architecture) orienté connexion
- Protocole NCADG (Network Computing Architecture datagram protocol)
- Appel de procédure distante locale (NCALRPC) de l’architecture de calcul réseau
Les applications RPC peuvent utiliser le protocole NCALRPC pour appeler les procédures offertes par les programmes serveur s’exécutant sur le même ordinateur que celui sur lequel le programme client s’exécute. Il s’agit, de loin, de la méthode la plus efficace pour appeler des fonctionnalités dans un processus différent sur le même ordinateur.
Les protocoles de transport et de réseau utilisés par votre application dépendent des protocoles pris en charge par le réseau. Aujourd’hui, de nombreux réseaux, y compris Internet, prennent en charge TCP/IP. Les autres protocoles réseau et de transport courants sont IPX/SPX, NetBIOS et AppleTalk DSP. Microsoft RPC prend en charge ces protocoles de transport et réseau, ainsi que d’autres. Pour obtenir la liste complète, consultez Constantes de séquence de protocole.
Lorsque votre application utilise des handles de liaison automatiques, elle n’a pas besoin de spécifier la séquence de protocole. S’il utilise des handles implicites ou explicites, il doit obtenir ou spécifier la séquence de protocole. Chaque système distribué doit examiner l’environnement dans lequel il sera déployé pour déterminer la séquence de protocole la mieux adaptée à cet environnement.
Toutes les séquences de protocole n’ont pas de fonctionnalités équivalentes. Les développeurs doivent vérifier que la séquence de protocole choisie prend en charge les fonctionnalités requises. En général, ncalrpc pour les communications locales et les ncacn_ip_tcp ou ncacn_http pour les communications à distance sont recommandés; ils fonctionnent dans tous les environnements, ils ont des performances optimales et ils prennent en charge toutes les fonctionnalités nécessaires et les meilleures pratiques.
Les clients peuvent également spécifier les informations de séquence de protocole qu’ils obtiennent à partir d’Active Directory, du Registre, des variables d’environnement créées et initialisées par le programme d’installation, des fichiers de configuration spécifiques à l’application ou à partir de chaînes littérales dans le code source du programme.
Une fois que votre programme client dispose d’une chaîne de séquence de protocole valide, il peut transmettre ces informations aux fonctions RpcStringBindingCompose et RpcBindingFromStringBinding pour créer le handle de liaison.