13.07.2013 Views

Conception et réalisation d'un syst`eme d'instrumentation ... - CoDE

Conception et réalisation d'un syst`eme d'instrumentation ... - CoDE

Conception et réalisation d'un syst`eme d'instrumentation ... - CoDE

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.2. ARCHITECTURE ET PRINCIPE<br />

cole final utilisé pour l’ implémentation des éléments de communication. Néanmoins, l’utilisation<br />

de RMI comme moyen d’exploitation des obj<strong>et</strong>s distribués rend le développement<br />

<strong>et</strong> le déploiement du code plus aisé, c’est pourquoi les deux versions de Jini disponibles<br />

actuellement (1.0 <strong>et</strong> 1.1) utilisent, elles, abondament RMI. N’oublions pas à c<strong>et</strong> eff<strong>et</strong> que<br />

Java perm<strong>et</strong> l’exploitation du bus CORBA, largement utilisé dans l’industrie, <strong>et</strong> donc que<br />

Jini n’apparait en rien comme fermé des standards actuels. Des recherches ont permis de<br />

montrer qu’il était possible de ”présenter” de manière totalement transparente des services<br />

CORBA comme étant des services Jini, perm<strong>et</strong>tant ainsi à c<strong>et</strong>te technologie d’encapsuler<br />

l’architecture CORBA.<br />

4.2 Architecture <strong>et</strong> principe<br />

Jini repose sur un modèle d’interaction faisant apparaître un certain nombre de rôles <strong>et</strong><br />

de mécanismes clés. On distinguera de manière simplifiée trois acteurs constituant le bus<br />

Jini :<br />

1. Le Service. Il s’agit d’un obj<strong>et</strong> distribué qui est capable d’accomplir un travail donné.<br />

Le Service propose ses capacités <strong>et</strong> invite les autres à les exploiter. Il peut être vu<br />

comme un fournisseur de comportement, de méthodes.<br />

2. Le Client cherche à utiliser un Service spécifique, répondant à ses besoins sur le<br />

moment. Il se pose en consommateur des ressources disponibles.<br />

3. Le Lookup qui orchestre les dialogues entre Clients <strong>et</strong> Services, garde trace des Services<br />

disponibles sur le réseau <strong>et</strong> perm<strong>et</strong> au client des interrogations afin de chercher<br />

le Service le plus adéquat. Il gère également toute la dynamicité du réseau : disparition<br />

des Services, apparition de nouveaux membres sur le bus, modification de rôle<br />

d’un des membres, <strong>et</strong>c.<br />

En plus de ces éléments de base, des concepts accessoires viennent se greffer afin, par<br />

exemple, d’enrichir la définition des Services, de gérer la robustesse des transactions ou<br />

encore d’introduire des mécanismes d’envoi d’évènements. Ils seront vu dans les sections<br />

qui suivent.<br />

L’architecture Jini repose sur un modèle d’interaction entre Services <strong>et</strong> Clients orchestré<br />

par un Service particulier appelé Lookup. Dans un premier temps, un ensemble de Services<br />

<strong>et</strong> de Clients sont disposés sur le réseau <strong>et</strong> cherchent à interagir. Pour ce faire, ils doivent<br />

tout d’abord découvrir un ou plusieurs Service de Lookup. Soit ils possèdent l’adresse IP<br />

de ce service <strong>et</strong> ils peuvent donc prendre contact avec lui sans difficulté, soit ils peuvent<br />

utiliser une technique d’envoi de paqu<strong>et</strong>s en multicast, pour tout le sous-réseau, <strong>et</strong> attendre<br />

la réponse d’un éventuel Lookup présent (Fig. 4.1).<br />

Pendant c<strong>et</strong>te transaction, les Clients comme les Services agissent en temps que consommateurs<br />

du Service de Lookup. On constatera tout au long du détail des mécanismes de<br />

Jini que chaque intervenant n’est pas amené à jouer un rôle unique, mais se présentera<br />

tantôt comme client, tantôt comme service.<br />

39

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!