these doctorat une architecture de securité
these doctorat une architecture de securité
these doctorat une architecture de securité
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Section 6.6. Tolérance aux pannes et sécurité<br />
fin<br />
tel-00239252, version 1 - 5 Feb 2008<br />
Chaque worker est inclus dans un nœud appartenant au nœud virtuel WorkerVN.<br />
– Seuls les Workers ayant le même certificat d’application que les TasksServers pourront<br />
télécharger <strong>de</strong>s tâches et déposer <strong>de</strong>s résultats.<br />
Au démarrage, un Worker sécurisé va commencer par créer <strong>de</strong>ux autres Workers. Grâce au mécanisme<br />
implicite <strong>de</strong> propagation dynamique du contexte <strong>de</strong> sécurité, chacun <strong>de</strong>s <strong>de</strong>ux nouveaux<br />
Workers aura un gestionnaire <strong>de</strong> sécurité qui contiendra la politique <strong>de</strong> sécurité <strong>de</strong> l’application<br />
ainsi qu’un certificat dérivé du certificat d’application. Ils disposeront ainsi <strong>de</strong>s mêmes possibilités<br />
(création <strong>de</strong> nouveaux Workers et téléchargement <strong>de</strong>s tâches) que leur parent. Les avantages<br />
<strong>de</strong> cette approche décentralisée sont doubles :<br />
– Elle permet <strong>une</strong> croissance exponentielle du nombre <strong>de</strong> Workers,<br />
– mais surtout <strong>de</strong> distribuer efficacement le coût <strong>de</strong> la génération <strong>de</strong>s certificats sur tous les<br />
Workers.<br />
L’utilisation <strong>de</strong> l’<strong>architecture</strong> pair-à-pair a permis <strong>de</strong> tester notre mécanisme <strong>de</strong> sécurité sur<br />
un système dont la gestion <strong>de</strong> la sécurité peut être considérée comme décentralisée et dynamique.<br />
Les exemples nous ont permis <strong>de</strong> montrer les réactions du mécanisme <strong>de</strong> propagation<br />
dynamique du contexte <strong>de</strong> sécurité couplé avec la combinaison <strong>de</strong>s politiques <strong>de</strong> sécurité au sein<br />
d’un environnement pair-à-pair. L’analyse <strong>de</strong>s divers cas survenant lors <strong>de</strong> l’utilisation du système<br />
pair-à-pair montre que notre modèle <strong>de</strong> sécurité peut être utilisé dans un environnement<br />
dynamique.<br />
6.6 Tolérance aux pannes et sécurité<br />
L’ensemble <strong>de</strong>s diverses ressources utilisables par <strong>une</strong> application utilisant la bibliothèque<br />
est vaste. Il est possible <strong>de</strong> déployer <strong>une</strong> application sur <strong>une</strong> machine multiprocesseur, sur <strong>de</strong>s<br />
grilles <strong>de</strong> calcul ou encore sur <strong>de</strong>s réseaux ad-hoc créés à partir d’ordinateurs <strong>de</strong> bureau. Toutes<br />
ces ressources ne disposent pas <strong>de</strong>s mêmes taux <strong>de</strong> fiabilité. Ainsi, il est plus probable <strong>de</strong> voir<br />
disparaître un ordinateur <strong>de</strong> bureau suite à son redémarrage par son utilisateur principal pour<br />
<strong>une</strong> raison donnée ou sa déconnexion du réseau que <strong>de</strong> perdre <strong>une</strong> machine appartenant à <strong>une</strong><br />
grille <strong>de</strong> calcul pour ces mêmes raisons. Ainsi, du fait <strong>de</strong> la nature volatile <strong>de</strong>s ressources, <strong>une</strong> application<br />
peut perdre <strong>une</strong> partie d’elle même et <strong>de</strong> ses données suite à l’extinction d’<strong>une</strong> machine<br />
donnée. Dans ce contexte, l’utilisation d’un protocole <strong>de</strong> tolérance aux pannes se révèle plus que<br />
nécessaire afin <strong>de</strong> palier à la volatilité <strong>de</strong>s ressources et <strong>de</strong> permettre <strong>de</strong> minimiser l’impact <strong>de</strong><br />
la perte d’<strong>une</strong> partie <strong>de</strong> l’application sur le temps <strong>de</strong> calcul global <strong>de</strong> l’application.<br />
Il est intéressant <strong>de</strong> noter qu’il n’existe pas qu’un seul type <strong>de</strong> panne mais plusieurs ; elles<br />
sont classées en quatre catégories majeures [70] que nous présentons brièvement :<br />
– les pannes franches (crash, fail-stop), que l’on appelle aussi arrêt sur défaillance. C’est le cas<br />
le plus simple : on considère qu’un processus peut être dans <strong>de</strong>ux états, soit il fonctionne et<br />
donne le résultat correct, soit il ne fait rien. Il s’agit du type <strong>de</strong> panne actuellement supporté<br />
par le mécanisme <strong>de</strong> tolérance aux pannes <strong>de</strong> ProActive ;<br />
– les pannes par omission (transient, omission failures). Dans ce cas, on considère que le<br />
système peut perdre <strong>de</strong>s messages. Ce modèle peut servir à représenter <strong>de</strong>s défaillances du<br />
réseau plutôt que <strong>de</strong>s processus ;<br />
– les pannes <strong>de</strong> temporisation (timing, performance failures). Ce sont les comportements<br />
anormaux par rapport à un temps, comme par exemple l’expiration d’un délai <strong>de</strong> gar<strong>de</strong> ;<br />
– les pannes arbitraires, ou byzantines (malicious, byzantine failures). Cette classe représente<br />
toutes les autres pannes : le processus peut alors faire “n’importe quoi”, y compris<br />
avoir un comportement malveillant.<br />
Le protocole <strong>de</strong> tolérance aux pannes intégré dans la bibliothèque se classe parmi les protocoles<br />
<strong>de</strong> points <strong>de</strong> reprise induits par message, avec reprise asynchrone [11]. Son fonctionnement<br />
est le suivant : chaque objet actif prend périodiquement un point <strong>de</strong> reprise. Ce point <strong>de</strong> reprise<br />
est numéroté dans l’ordre croissant. Chaque message émis par un objet actif est annoté du nu-<br />
115