Guide des développeurs pour les services de données Sun Cluster pour SE Solaris

Présentation générale du protocole CRNP

Le protocole CRNP définit les couches application, présentation et session de la pile de protocoles de communication OSI (Open System Interconnect/interconnexion de systèmes ouverts) standard constituée de sept couches. La couche transport doit utiliser le protocole TCP et la couche réseau le protocole IP. Le protocole CRNP est indépendant des couches liaison de données et physique. Tous les messages de la couche application échangés au moyen du protocole CRNP utilisent le langage XML 1.0.

Sémantique du protocole CRNP

Les clients initient des communications en envoyant un message de connexion (SC_CALLBACK_RG) au serveur. Ce message spécifie le type d'événements dont les clients souhaitent être avertis, ainsi que le port auquel ces événéments peuvent être transmis. L'IP source de la connexion d'enregistrement et le port spécifié constituent l'adresse de rappel.

Chaque fois qu'un événement susceptible d'intéresser un client est généré au sein du cluster, le serveur contacte le client sur son adresse de rappel (IP et port) et lui transmet l'événement (SC_EVENT). Le serveur est hautement disponible car il fonctionne sur le cluster lui-même. Il enregistre les connexions clients en mémoire et en conserve la trace même après la réinitialisation du cluster.

Les clients se déconnectent en envoyant un message de connexion (SC_CALLBACK_RG contenant un message REMOVE_CLIENT) au serveur. Lorsque ce dernier leur renvoie le message SC_REPLY, les clients ferment leur connexion.

Le diagramme suivant illustre le flux de communications entre un client et un serveur :

Figure 12–2 Flux de communications entre un client et un serveur

Organigramme présentant le flux de communications entre un client et un serveur