Sommaire: Cours réseaux informatiques le protocoles RPC
• Introduction
• RPC
• Les messages RPC
• La programmation des RPC
• XDR
• Conclusion
Extrait du cours réseaux informatiques le protocoles RPC
1. Introduction
Besoin d’un environnement de haut niveau pour le développement d’applications réparties qui :
• reprend le concept duclient/serveur
• permet d’identifier un très grand nombre de services (> #n˚ de port)
• conserve les paradigmes habituels d’exécution :
– l’appel defonction, passage de paramètres
– la notion de programme (ensemble de fonctions)
+RPC
• masque l’hétérogénéité de représentation des données
– format standard, fonctions de transcodage
+XDR
– description des structures de données
. langage de description : RPC language
– accompagné d’un outil de génération automatique :
+RPCgen
• tout en offrant des services supplémentaires :
– d’authentification, de “broadcast”, de “batching”, de “call back”, etc.
2. Le RPC
2.1. Présentation
o Remote Procedure Call (rfc 1831) version 2
2.2. La sémantique de l’appel :
• Si on tient compte des erreurs (pertes, duplications) pouvant survenir lors des communi-cations, on définit 3 sémantiques possibles pour l’appel de procédures distantes :
– exactement une fois
– au moins une fois
– au plus une fois.
• La sémantique choisie par l’implémentation sous RPC-Sun estau moins une fois
– de ce fait il faut s’assurer que l’exécution d’une procédure distante soit idempotent,
. par exemple en utilisant le numéro de transaction (xid) disponible dans chaque message RPC.
2.3. Les paramètres
• un seul paramètreest échangé lors de l’appel (RPC call)
– si l’application requiert l’échange de plusieurs paramètres ils doivent être regroupés au sein d’une seule structure de données.
• un seul élément peut être échangé lors du retour (RPC reply)
– à traversla valeur de retourde la fonction
2.4. Identification des procédures distantes
• Une procédure distante est identifiée de manière unique par un triplet :
– #program, #prog_version, #procedure
• Un programme regroupe un ensemble de procédures et possède une version
– plusieurs versions peuvent être disponibles simultanément
• Certains numéros de programmes sont réservés à certains services :
………
Cours réseaux informatiques le protocoles RPC (225 KO) (Cours PDF)