12.07.2015 Views

Architectures Fault Tolerant CORBA - Institut d'Informatique

Architectures Fault Tolerant CORBA - Institut d'Informatique

Architectures Fault Tolerant CORBA - Institut d'Informatique

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.

<strong>Architectures</strong> <strong>Fault</strong> <strong>Tolerant</strong> <strong>CORBA</strong> 9Gestionnaire de laréplicationGestionnaired'objets répliquésFabriquegénériqueGestionnairede propriétésRéplique ClientApplication <strong>CORBA</strong>Réplique ServeurDétecteurde fautesNotifieurde fautes<strong>CORBA</strong> ORB<strong>CORBA</strong> ORBMessages IIOPMécanisme dejournalisationet récupérationMécanismede réplicationIntercepteurIntercepteurMécanismede réplicationMécanisme dejournalisationet récupérationMessages IIOPMessages IIOPArchiveTotem via TCP/IPArchiveFig. 2. Placement des différents mécanismes de l’architecture Eternal. Ceux-ci sontsitués au-dessus et en-dessous de l’ORB de <strong>CORBA</strong> - Source fig. [6]Les messages interceptés sont redirigés vers le mécanisme de réplicationd’Eternal (Eternal Replication Mechanisms) permettant de réaliser la logiquede réplication à travers la diffusion multicast de messages IIOP réinjectés dansla couche TCP/IP . Le mécanisme de réplication d’Eternal est, en réalité, soustraiteau système Totem [5] qui gère la logique de réplication de manière cohérente.Totem est un toolkit de réplication utilisé lors du développement d’une applicationdistribuée. Il permet d’intégrer directement à l’application un système detolérance aux fautes.Afin d’implémenter simplement la logique de réplication et de ne pas répéterdeux fois une même invocation, un identifiant unique est ajouté à chaque invocationd’un objet répliqué. Ce mécanisme n’est possible que si les objets ont uncomportement déterministe.Prenons l’exemple d’un objet client répliqué invoquant une méthode sur unobjet serveur lui aussi répliqué. Étant donné que les requêtes des différentesrépliques du client sont identiques et interviennent dans le même ordre (ie.déterministe), le système FT-<strong>CORBA</strong> peut numéroter d’une manière identiquetoutes les requêtes. Dans le cas d’une réplication active, la première requêtearrivant à un hôte hébergeant une réplique de l’objet serveur est transmise àl’objet. Étant donné que toutes les requêtes arrivant sur chaque hôte sont journalisées,les autres requêtes provenant des autres répliques de l’objet client serontignorées. Pour les réponses, le principe est appliqué en sens inverse. Nous voyonsdonc bien que ce mécanisme n’est possible que si une numérotation identiquedes requêtes existe et donc que si les objets ont un comportement déterministe.

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

Saved successfully!

Ooh no, something went wrong!