Stabilisation instantanée efficace

Slides:



Advertisements
Présentations similaires
1 CNAM Vendredi 29 Novembre 2002 Bases de Données Avancées UV C Responsable : Mr Scholl PROTOCOLE A DEUX PHASES Meryem Guerrouani.
Advertisements

Structural Funds Financial Management La Procédure Budgétaire (1) Nouvel Accord Interinstitutionnel ( ) Principes (Berlin + PE): 1)Objectif.
Introduction à la tolérance aux défaillances
Introduction à l’Algorithmique
Apprentissage de représentation et auto-organisation modulaire pour un agent autonome Bruno Scherrer 6 janvier 2003 Directeurs : F. Alexandre, F. Charpillet.
Implémentation de la gestion de réseau dans Windows 2000 et plus
Synchronisation des Processus
Potet Marie-Laure Périn Michaël
Module 2 : Allocation de l'adressage IP à l'aide du protocole DHCP
Yann Chevaleyre et Jean-Daniel Zucker
Plan Présentation de la Solution. Le Protocole MESI
Modèle de coût algorithmique intégrant des mécanismes de tolérance aux pannes Samir Jafar, Thierry Gautier, Jean Louis Roch Laboratoire ID-IMAG Equipe.
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
STSWEB Echanges avec SCOnet Les éléments de structure
Séminaire IMS 10/01/2008 Distribution large échelle d’un algorithme financier de contrôle stochastique CIGC05 - GCPMF Xavier WARIN (EDF R&D - OSIRIS) Stéphane.
"Recherche de scénarios redoutés à partir d'un modèle réseau de Petri"
IRISA18 novembre ACI Sécurité DADDi Dependable Anomaly Detection with Diagnosis IRISA.
Quoi ? Un tampon.
Le 19/ 11/ Modèle de tarification planifiée pour les réseaux mobiles Mustapha OUGHDI Alexandre CAMINADA Sid LAMROUS.
                                        République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche Scientifique.
Systèmes distribués C. Delporte-Gallet (ESIEE-IGM)
Cours d’Automatique MASTER OIV
Restriction daccès aux logiciels et aux matériels Problème de licence Nicolas CHABANOLES Matière : SRR Lieu: UFRIMA.
Architecture de grille générique, multi-
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Auto-organisation dans les réseaux ad hoc
Algorithmique et Programmation
(ref : Bray section pages 283 à 290)
Arbre Rouge Noir.
III – Convergence Asymptotique
Algorithme à vague Stéphane Devismes.
Algorithmique et Programmation
Mémoires Partagées Distribuées pour systèmes dynamiques à grande échelle Vincent Gramoli.
Coloration gap sommet identifiante de graphes
Rappels de logique des prédicats du 1er ordre
IFT Complexité et NP-complétude
Universté de la Manouba
Vincent Thomas Christine Bourjot Vincent Chevrier
Module 4 : Maintenance des pilotes de périphériques
L ABORATOIRE d I NGÉNIERIE des S YSTÈMES A UTOMATISÉS EA 4014 – Université dAngers Institut des Sciences et Techniques de lIngénieur dAngers Master2 Recherche.
Propriétés des ordonnancements SPT
SEMINAIRE DE CONTACT novembre 2008 Outils de gestion de projet.
Programmation non procédurale Le projet ECOLE 2000
Synchronisation Classique
Structures de données IFT-2000 Abder Alikacem La récursivité Semaine 5 Département dinformatique et de génie logiciel Édition Septembre 2009.
Modèle polyédrique et méthodes formelles
Conditions aux Frontières Ouvertes
Spécification de Demoney en JML par raffinement Pierre-Alain Masson, Julien Groslambert LIFC Besançon Réunion GECCOO - 10 mars 2006 FRE 2661.
Fondements de l’algorithmique des réseaux
Séminaire 10 Juin 2008 Pervasive Learning Network : P-LearNet Institut TELECOM.
Julien Pley – Équipe ADEPT Colloque de DEA 2001/2002
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
Parcours, fouilles et vagues Franck Petit LaRIA Université de Picardie Jules Verne, Amiens
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Modèles et protocoles de cohérence des données en environnement volatil Grid Data Service IRISA (Rennes), LIP (Lyon) et LIP6 (Paris) Loïc Cudennec Superviseurs.
Licence Informatique Algorithmique des graphes
Université Pierre et Marie Curie Laboratoire d’Informatique de Paris VI Département ASIM Analyse et résultats sur le dimensionnement des mémoires pour.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
[Dijkstra 74] BT Bottom Top Middle BottomTopMiddle.
Application à la viabilité des systèmes irrigués à Podor de la modélisation à la restitution aux paysans Olivier Barreteau.
20/06/2015propagation de signatures lexicales dans le graphe du Web 1 Propagation de signatures lexicales dans le graphe du Web M. Bouklit M. Lafourcade.
LA PRISE EN CHARGE DU TRAVAIL COOPÉRATIF
30/11/2007Architecture logicielle pour l’adaptation dynamique; Application à la réplication de données1 Architecture logicielle pour l’adaptation dynamique.
R PIF sur l’arbre Je lance une vague. r PIF sur l’arbre J’ai une vague en cours: j’attends la réponse de mes fils.
Recuit simulé Une métaheuristique venue de la métallurgie.
SYNCHRONISATION ET HIÉRARCHISATION DE GRAFCETS
Protocoles de routage dynamique RIP & OSPF
Présentation des concepts Sandre Les méthodes d’évaluation de l’état des eaux : situation et perspectives dans le contexte de la directive-cadre européenne.
Systèmes Distribués et Autostabilisation
Transcription de la présentation:

Stabilisation instantanée efficace Séminaire à l’université de Reims, le 5 avril 2007 Stabilisation instantanée efficace Alain Cournier, Stéphane Devismes et Vincent Villain

Stabilisation instantanée efficace Auto-stabilisation (Dijkstra, 1974) Un système auto-stabilisant, quel que soit son état initial, converge en un temps fini vers un comportement vérifiant ses spécifications. Stabilisation instantanée (Bui, Datta, Petit et Villain, 1999) Un système instantanément stabilisant, quel que soit son état initial, vérifie toujours ses spécifications. Applications : Tolérance aux fautes transitoires, systèmes dynamiques Stabilisation instantanée efficace

Stabilisation instantanée efficace Algorithme à vagues Un algorithme à vagues P vérifie [Tel, 2001] : Chaque exécution (vague) de P se déroule en un temps fini Chaque exécution de P contient au moins une décision Durant une exécution, chaque décision est causalement précédée par au moins une action sur chaque processeur Décision : tâche « terminée » Actions de démarrage Exemples : Propagation d’informations avec retour (PIR) Circulation de jetons Stabilisation instantanée efficace

Algorithme à vagues auto-stabilisant N est fini mais non borné N.X F(X) 4.X ≠ F(X) 3.X ≠ F(X) 2.X ≠ F(X) 1.X ≠ F(X) F(.) Un protocole de service auto-stab converges vers un comportement spécifique en un temps fini. En conséquence, un tel protocole doit être répété un nombre fini de fois pour assurer que le service fini par être rendu conformément à ses spécifs. En fait, le service sera rendu correctement à condition qu’il soit initié à partir d’une configuration légitime. Pb : dns le cas général, le nombre de répétitions nécessaire pour assurer un service correct n’est pas borné. Stabilisation instantanée efficace

Algorithme à vagues instantanément stabilisant 1.X F(X) F(.) Au contraire, la stabilisation instantanée assure que le service est rendu correctement dès la première exécution, quelque soit la config initiale. Il faut noter, que dans la snap, le service n’a pas besoin d’être démarrer à partir d’une configuration spéciale. Une configuration initial correct n’est pas requise pour assurer le service. Plus précisément, une perturbation du réseau, le réseau se retrouve dans une configuration quelconque. La snap assure qu’à partir de cette conf, dès la première requête. Le service associé à cette requête sera démarré en un temps fini et à partir de ce démarrage, le service sera rendu conformément à ses spécifs. Stabilisation instantanée efficace

Modèle à états Mémoire localement partagée Algorithme sous forme de règles gardées : Garde(p) → Traitement(p) Le modèle à états est un modèle à mémoire partagée : Chaque processeur a un accès direct en lecture aux variables de ses voisins En revanche, son accès en écriture est limité a ses propres variables Dans le modèle à états, on écrit les algorithmes sous la forme de commandes gardées : La garde d’une commande est un prédicats sur les variables du processeur et celle de ses voisins On dira qu’une commande est activable dans une configuration donnée si sa garde est à vrai Et dans ce cas le processeur sera dit « activable » Stabilisation instantanée efficace

Algorithme non tolérant aux fautes Transformateur Algorithme non tolérant aux fautes Algorithme instantanément stabilisant Le but d’un transformateur instantanément stabilisant est de … Stabilisation instantanée efficace

Les autres transformateurs Transformateur auto-stabilisant de [Katz et Perry, 1993] (modèle à passage de messages) Pour graphe quelconques Stabilisation instantanée efficace

Les autres transformateurs Transformateur instantanément stabilisant de [Cournier, Datta, Petit et Villain, 2003] (modèle à états) Pour graphe quelconques Stabilisation instantanée efficace

Transformateur de [Cournier et al, 2003] Auto(P) KP P Snap(P) CDPV Pas à usage pratique Outil de demonstration Tout protocole qui peut être transformé en protocole auto par KP peut être rtansformé en protocole snap par Counier et al Stabilisation instantanée efficace

Transformateur de [Cournier et al, 2003] Calcul périodique d’état global du système Inconvénients : Prédicat Réseau identifié Nombre de calculs d’état global non bornable Conséquence : nombre d’étapes de calculs pour une exécution non bornable Le transformateur de Cournier Datta Petit et Villain utilise périodiquement des calculs d’état global pour vérifié si le systeme est dans une configuration normale Inconvénient : Prédicat difficile à formaliser Réseau identifié Les snapshot se font indépendamment de la progreession de l’exécution du protocol à transformer. D’après le dernier inconvénient, on a les conséquences suivantes Stabilisation instantanée efficace

Transformateur instantanément stabilisant efficace Stabilisation instantanée efficace

Exemple : Circulation de jeton en profondeur Prédicat PriseEnMain(r) Stabilisation instantanée efficace

Exemple : Circulation de jeton en profondeur PriseEnMain(r) est vérifié Stabilisation instantanée efficace

Réinitialisation : PIR Phase de diffusion : Les processeurs stoppent l’exécution du protocole initial Phase de retour : les variables du protocole initial sont réinitialisées PIR instantanément stabilisant [Cournier, Devismes et Villain, 2006] Nombre borné d’étapes de calculs par exécution PIR -> RESET : easy Nous avons créé un protocole de PIR instantanément stabilisant en utilisant en particulier le mécanisme de question Avantage ? Stabilisation instantanée efficace

Stabilisation instantanée efficace Notre transformateur Algorithme à vagues mono-initiateur Décision à l’initiateur Exemples : Parcours en profondeur Calcul d’arbre en largeur avec détection de terminaison Applications : Calcul d’arbre couvrant Exclusion mutuelle Diffusion Notre transformateur : utilisable mais pas universel On s’intéresse à … Pourquoi ces proto : Tout d’abord, protocole fondammentaux qui permettent de résoudre de nombreuse tâches. Ensuite, nous allons utiliser les propriétés intrinsecque de ces proto pour pourvoir nous affranchir de l’utilisation des snapshots. Stabilisation instantanée efficace

PriseEnMain(r) est plus faible Notre transformateur Pour tout algorithme à vagues P mono-initiateur avec décision à l’initiateur, on a : Stabilisant(P) ⇒ ∃ PriseEnMain(r) ⇍ PriseEnMain(r) est plus faible Ce type de prédicat existe aussi intrinsequement dans les solutions auto car comme on répéte les exécutions de service. On doit assurer que le prochain service sera exécuté seulement après que le précédent soit terminé. Donc la propriété de stabilisation dans les proto de service implique l’existence d’un tel prédicat. La réciproque est qu’en a elle fausse. Assurer que la racien reprend la main en un temps fini malgré la configuration initial quelconque n’assure pas la stabilisation du protocole. Nous verrons par la suite un exemple de protocole … Il faut noté qu’en utilisant ce prédicat de prise en main, nous avons montrer que tout proto auto de service mono initiateur avec décision à la racine pouvais être trivialement transformer en proto snap . (interblocage du la config initiale quelconque) Stabilisation instantanée efficace

Stabilisation instantanée efficace La propriété étant plus simple en théorie, l’est aussi en pratique : Par exemple À gauche on a le code de notre deuxième sol snap Et à droite, le code de notre protocole modifié Stabilisation instantanée efficace

Aucun calcul d’état global ⇒ Efficacité HC93 Opodis’04 SSS’05 DFST Mémoire Θ(log n) Θ(n log n) Θ(log n) Θ(log n) Exécution(rondes) Θ(Dn) Θ(n) Θ(n²) Θ(n) Exécution(étapes) ∞ Θ(n²) Θ(∆n3) Θ(∆n3) Equité F I I I Surcoût Θ(1) Θ(1) Θ(n) Θ(1) Stabilisation instantanée efficace

Extention de la circulation de jeton Extention directe : exclusion mutuelle auto-stabilisante efficace Sûreté vérifiée dès le 3ème jeton Avec une légère modification : Exclusion mutuelle instantanément stabilisante Spécification : Tout processeur demandeur finit par entrer en SC (Vivacité) Si un processeur demandeur est en SC alors il est le seul en SC (Sûreté) Stabilisation instantanée efficace

Stabilisation instantanée efficace Conclusion Simplicité Solution avec un démon distribué inéquitable Efficacité Extension : Exclusion mutuelle instantanément stabilisante Avantanges Stabilisation instantanée efficace

Stabilisation instantanée efficace Perspectives Peut-on obtenir un transformateur efficace pour des classes de protocoles plus larges ? Existe-t-il une propriété plus faible que la propriété de « prise en main » permettant d’obtenir un transformateur efficace ? Peut-on obtenir la propriété de « prise en main » automatiquement ? Stabilisation instantanée efficace

Stabilisation instantanée efficace