Élection et anneaux unidirectionnels en présence d homonymes

Documents pareils
Système de diffusion d information pour encourager les PME-PMI à améliorer leurs performances environnementales

La voix en images : comment l évaluation objectivée par logiciel permet d optimiser la prise en charge vocale

statique J. Bertrand To cite this version: HAL Id: jpa

Notes de lecture : Dan SPERBER & Deirdre WILSON, La pertinence

Dessin assisté par ordinateur en lycée professionnel

Budget Constrained Resource Allocation for Non-Deterministic Workflows on a IaaS Cloud

Programmation linéaire

L indice de SEN, outil de mesure de l équité des systèmes éducatifs. Une comparaison à l échelle européenne

AGROBASE : un système de gestion de données expérimentales

Sur le grossissement des divers appareils pour la mesure des angles par la réflexion d un faisceau lumineux sur un miroir mobile

Comptabilité à base d activités (ABC) et activités informatiques : une contribution à l amélioration des processus informatiques d une banque

Introduction aux algorithmes répartis

Compte-rendu de Hamma B., La préposition en français

Les Champs Magnétiques

Les intermédiaires privés dans les finances royales espagnoles sous Philippe V et Ferdinand VI

Peut-on perdre sa dignité?

Étude des formes de pratiques de la gymnastique sportive enseignées en EPS à l école primaire

Principe de symétrisation pour la construction d un test adaptatif

Jean-Luc Archimbaud. Sensibilisation à la sécurité informatique.

Calculer les coûts ou bénéfices de pratiques sylvicoles favorables à la biodiversité : comment procéder?

Program Analysis and Transformation: From the Polytope Model to Formal Languages

L exclusion mutuelle distribuée

Un SIG collaboratif pour la recherche historique Partie. Partie 1 : Naissance et conception d un système d information géo-historique collaboratif.

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

LE PROBLEME DU PLUS COURT CHEMIN

La complémentaire santé : une généralisation qui

Licence Sciences et Technologies Examen janvier 2010

Résolution d équations non linéaires

Continuité et dérivabilité d une fonction

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Probabilités sur un univers fini

Famille continue de courbes terminales du spiral réglant pouvant être construites par points et par tangentes

Représentation des Nombres

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : hivert

Fonctions de plusieurs variables

Pourquoi l apprentissage?

CSI351 Systèmes d exploitation Instructions pour rouler Linux avec Virtual PC dans la salle de labo 2052

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

Limites finies en un point

Chapitre 5 : Flot maximal dans un graphe

Les déterminants du volume d aide professionnelle pour. reste-à-charge

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

La persistance des nombres

Jessica Dubois. To cite this version: HAL Id: jpa

Comparaison de fonctions Développements limités. Chapitre 10

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Sur la transformation de l électricité statique en électricité dynamique

Chapitre 2 Le problème de l unicité des solutions

Sylvain Meille. Étude du comportement mécanique du plâtre pris en relation avec sa microstructure.

SIP. Plan. Introduction Architecture SIP Messages SIP Exemples d établissement de session Enregistrement

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Programmation C++ (débutant)/instructions for, while et do...while

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Continuité en un point

GUIDE NSP Activation et gestion des produits avec NSP

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

1 Identités pour l enregistrement IMS

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Probabilités sur un univers fini

Dualité dans les espaces de Lebesgue et mesures de Radon finies

Chapitre 10 Arithmétique réelle

Chapitre 4 : Exclusion mutuelle

Algorithmique des Systèmes Répartis Protocoles de Communications

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

chapitre 4 Nombres de Catalan

UTILISATION DE LA BORNE PAR LE CLIENT

1 Définition et premières propriétés des congruences

Utilisation des nombres pour résoudre des problèmes Aspect cardinal Maternelle MS-GS. Francette Martin

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

e-science : perspectives et opportunités pour de nouvelles pratiques de la recherche en informatique et mathématiques appliquées

Initiation à l algorithmique

Fibonacci et les paquerettes

2 État de l art. Topologie Virtuelle pour Réseaux Hybrides

Intégration et probabilités TD1 Espaces mesurés Corrigé

10 tâches d administration simplifiées grâce à Windows Server 2008 R2. 1. Migration des systèmes virtuels sans interruption de service

Probabilités. Une urne contient 3 billes vertes et 5 billes rouges toutes indiscernables au toucher.

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Raisonnement par récurrence Suites numériques

Etude des convertisseurs statiques continu-continu à résonance, modélisation dynamique

Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :


1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Problèmes de Mathématiques Filtres et ultrafiltres

Plan du cours Cours théoriques. 29 septembre 2014

Architecture des Systèmes d Information Architecture des Systèmes d Information

Chapitre 7. Récurrences

Glossaire des nombres

Pôle de Dakar S IMUL ATIONS. 1 Utiliser un taux d accroissement pour une simulation

Systèmes et algorithmes répartis

Feuille TD n 1 Exercices d algorithmique éléments de correction

Cryptographie et fonctions à sens unique

Algorithmes récursifs

Big Data et Graphes : Quelques pistes de recherche

Dynamic Host Configuration Protocol

LA CONJONCTION MÊME SI N EXISTE PAS!

Transcription:

Élection et anneaux unidirectionnels en présence d homonymes Anaïs Durand To cite this version: Anaïs Durand. Élection et anneaux unidirectionnels en présence d homonymes. AL- GOTEL 2017-19èmes Rencontres Francophones sur les Aspects Algorithmiques des Télécommunications, May 2017, Quiberon, France. HAL Id: hal-01513893 https://hal.archives-ouvertes.fr/hal-01513893 Submitted on 25 Apr 2017 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Élection et anneaux unidirectionnels en présence d homonymes Anaïs Durand VERIMAG UMR 5104, Université Grenoble Alpes, France Cet article est un résumé de deux articles [1, 2] portant sur l élection de leader dans les anneaux unidirectionnels en présence de processus homonymes, c est-à-dire des anneaux unidirectionnels où les processus sont nommés par des étiquettes qui ne sont pas nécessairement uniques. Nous étudions la résolution de ce problème dans des classes d anneaux où l étiquetage des processus est asymétrique. Nous proposons trois algorithmes pour des classes où une borne sur la multiplicité des étiquettes (c est-à-dire, le nombre de processus partageant la même étiquette) est connue. Mots-clefs : Algorithmes distribués, élection de leader, anneau unidirectionnel, homonymes. 1 Introduction Angluin [3] a démontré l impossibilité de résoudre l élection de leader déterministe dans un réseau anonyme. Depuis, deux directions de recherche ont principalement été étudiées pour casser les symétries : proposer des solutions probabilistes pour les réseaux anonymes ou des solutions déterministes pour les réseaux identifiés. Récemment, la notion de processus homonymes a été introduite [7] comme modèle intermédiaire entre les réseaux anonymes et les réseaux identifiés. Dans ce modèle, chaque processus est nommé par une étiquette qui peut ne pas être unique. Notre étude est centrée sur des anneaux unidirectionnels en modèle à message, c est-à-dire des anneaux orientés où chaque processus peut uniquement envoyer des messages à son voisin de droite et uniquement en recevoir de son voisin de gauche. Nous supposons que les liens de communication sont asynchrones, FIFO et fiables. Et nous nous intéressons à deux variantes du problème d élection de leader, en présence de processus homonymes, dans ce modèle : l élection de leader avec terminaison explicite, où les processus terminent leur exécution en temps fini, et l élection de leader avec terminaison implicite, où les processus ne terminent pas mais où seul un nombre fini de messages est échangé. État de l art. Plusieurs travaux récents [4 6] étudient le problème de l élection de leader dans les anneaux en présence de processus homonymes. Dans [6], Flocchini et al étudie l élection de leader faible dans les anneaux bidirectionnels. L élection de leader faible consiste à élire au mieux un unique processus, sinon deux processus voisins. Ils démontrent que même en connaissant le nombre de processus n, il est impossible de résoudre l élection de leader faible avec terminaison explicite dans les anneaux bidirectionnels où l étiquetage est symétrique. Un anneau étiqueté est dit symétrique s il existe une rotation non triviale (c est-à-dire non multiple de sa taille) des étiquettes qui donne le même étiquetage. Dans le cas contraire, l anneau est dit asymétrique. Deux algorithmes résolvant l élection de leader faible avec terminaison explicite pour les anneaux asymétriques de n processus sont ensuite proposés, en supposant que n est premier et qu il n y a que deux étiquettes possibles, 0 et 1. Le premier algorithme suppose en plus une orientation commune à tout processus, alors que le second généralise le premier pour des anneaux sans orientation. Delporte et al [4] étudient l élection de leader dans les anneaux bidirectionnels. Ils démontrent qu il y a une solution déterministe à l élection de leader avec terminaison implicite dans ces anneaux si et seulement si le nombre d étiquettes différentes est strictement plus grand que le plus grand diviseur non trivial de n. Sous cette hypothèse, ils proposent deux algorithmes. Le premier résout l élection de leader avec

Anaïs Durand Classe U A K k EL-TE impossible EL-TE impossible EL-TI impossible Classe Borne Inf. Temps Temps Nbr. Msgs Mémoire U K k Ω(kn) n(k + 2) O(n 2 + kn) log(k + 1) + 2b + 4 (2k + 2)n n A K k Ω(kn) (2k + 1) 2(k + 1)nb + 2b + 3 O(k 2 n 2 ) O(k 2 n 2 ) 2 logk + 3b + 5 TABLE 1: Résumé des résultats. L élection de leader avec terminaison explicite et l élection de leader avec terminaison implicite sont respectivement notées EL-TE et EL-TI. terminaison implicite sans hypothèse supplémentaire. Le second résout l élection de leader avec terminaison explicite en supposant que les processus connaissent n. Ce dernier algorithme est asymptotiquement optimal en nombre de messages, O(nlogn). Enfin, Dobrev et Pelc [5] étudient une généralisation de l élection de leader dans les anneaux unidirectionnels et bidirectionnels. Ils supposent que les processus connaissent une borne inférieure m et une borne supérieure M sur n. Leur généralisation consiste à déterminer, de manière distribuée, si l élection avec terminaison explicite est possible, et, le cas échéant, la réaliser. Ils proposent ainsi des algorithmes synchrones pour les anneaux unidirectionnels et bidirectionnels résolvant ce problème en O(M) unités de temps et utilisant O(nlogn) messages. Ils proposent également un algorithme asynchrone pour les anneaux bidirectionnels qui utilisent O(nM) messages et montrent que cette complexité est optimale. Aucune complexité en temps n est donnée pour ce dernier algorithme. Contributions. Nous nous intéressons ici à l élection de leader déterministe dans des anneaux unidirectionnels où, contrairement à [4 6], les processus ne connaissent ni le nombre de processus, n, ni aucune borne sur n. Tout d abord, l élection de leader avec terminaison implicite reste impossible à résoudre sans hypothèse supplémentaire. En effet, si on considère le cas d un anneau où l étiquetage est symétrique, il est impossible de distinguer deux processus ayant la même étiquette au cours d une exécution synchrone. Nous nous intéressons alors à la classe A des anneaux unidirectionnels asymétriques. Notre premier résultat a été de démontrer que, pour un anneau unidirectionnel asymétrique qui possède au moins une étiquette unique (nous notons U A l ensemble de ces anneaux), l élection de leader avec terminaison explicite est impossible à résoudre. Maintenant, nous introduisons une connaissance supplémentaire : nous supposons que les processus connaissent une borne supérieure, k, sur les multiplicités des étiquettes (par multiplicité d une étiquette, on entend le nombre de processus de l anneau portant cette étiquette). Nous notons K k la classe de tous les anneaux unidirectionnels avec multiplicités bornées par k. Sous cette dernière hypothèse, l élection de leader avec terminaison explicite dans les anneaux unidirectionnels asymétriques devient possible, c està-dire qu il existe des algorithmes résolvant le problème pour tous les anneaux de la classe A K k. Par ailleurs, nous avons aussi démontré l impossibilité de résoudre l élection de leader avec terminaison implicite dans la classe K k. En plus de ces résultats d impossibilité, nous avons proposé trois algorithmes d élection de leader avec terminaison explicite. Le premier résout le problème pour la classe U K k, c est-à-dire, pour tout anneau unidirectionnel où au moins une étiquette est unique et où les multiplicités sont bornées par k. Cet algorithme termine en au plus n(k + 2) unités de temps, requiert (logk + 1) + 2b + 4 bits par processus et O(n 2 + kn) messages sont échangés pendant une exécution, où b est le nombre de bits nécessaires pour stocker une étiquette. En outre, nous avons démontré une borne inférieure en Ω(kn) unités de temps pour cette classe. Ainsi, cet algorithme est asymptotiquement optimal en temps. Pour la classe plus générale A K k des anneaux unidirectionnels asymétriques avec multiplicités bornées par k, nous avons proposé deux algorithmes résolvant l élection de leader avec terminaison explicite illustrant le compromis classique entre occupation mémoire et complexité en temps. Le premier est asymptotiquement optimal en temps, avec au plus (2k + 2)n unités de temps (en effet, U K k étant inclus dans A K k, la borne inférieure pour U K k l est aussi pour A K k ). Cependant, cet algorithme nécessite 2(k + 1)nb + 2b + 3 bits par processus, et au plus n 2 (2k + 1) messages sont échangés durant une exécution. Au contraire, notre seconde solution nécessite seulement 2 logk + 3b + 5 bits par processus. Par contre, sa complexité en temps est en O(k 2 n 2 ) et sa complexité en messages est en O(k 2 n 2 ).

Élection et anneaux unidirectionnels en présence d homonymes Plan. Nos résultats sont résumés dans la table 1. Par manque de place, nous présentons ici uniquement une petite partie d entre eux. Précisément, nous rappelons dans la section 2 les définitions des deux notions d élection considérées ici. Les sections 3 et 4 sont consacrées aux bornes inférieures et aux résultats d impossibilité. Les idées principales de notre solution pour la classe U K k sont exposées dans la section 5. 2 Election de Leader Un algorithme résout l élection de leader avec terminaison implicite si 1. toutes ses exécutions sont finies, c est-à-dire qu en un temps fini, plus aucun message n est échangé ; 2. dans toute configuration terminale, un unique processus se déclare leader et tout processus connaît l étiquette du leader. Un algorithme résout l élection de leader avec terminaison explicite si 1. il résout l élection de leader avec terminaison implicite ; 2. la décision de se déclarer leader est irrévocable, c est-à-dire qu aucun processus ne peut pas passer du statut leader à non-leader (par conséquent, dans toute configuration, il y a au plus un processus se déclarant leader) ; et 3. les processus finissent par décider localement de la terminaison de l élection, c est-à-dire qu ils finissent par s arrêter une fois le leader élu et son étiquette connue. 3 Bornes inférieures pour les classes U K k et A K k, avec k 2. X q kn q 2n 1 x n 1 x 0 x 1 q 0 q1 x t 1 q t 1 q n 1 x n 1 q n q n+1 x 0 x 1 FIGURE 1: R n,k. En gris, les processus qui peuvent avoir reçu des informations de q kn après t 0 unités de temps. Nous avons démontré une borne inférieure en Ω(kn) sur la complexité en temps de l élection de leader avec terminaison explicite dans U K k, où k est une constante supérieure ou égale à 2. Pour cela, nous considérons un algorithme ALG qui résout ce problème. Ensuite, nous étudions l exécution synchrone e de ALG dans un anneau unidirectionnel R n où les processus p 0,..., p n 1 sont étiquetés de manière unique x 0,...,x n 1, c est-à-dire R n K 1 U K k. Par hypothèse, e termine et élit un leader, notons le p l. Soit T le temps d exécution de e. Soit R n,k l anneau unidirectionnel de nk +1 processus q 0,...,q nk dont l étiquetage consiste en la séquence x 0,...,x n 1 répétée k fois suivie de la dernière étiquette X, différente de toutes les autres. Cette construction est présentée dans la figure 1. Par définition, R n,k appartient aussi à U K k. Considérons maintenant l exécution synchrone e de ALG sur R n,k. De nouveau, par hypothèse, e termine et il n existe aucune configuration de e où deux processus se déclarent leader, l élection étant irrévocable. Or, après t 0 unités de temps, seuls les processus q i avec i {0,...,t} peuvent avoir reçu une information du processus q kn d étiquette X, (cf. les processus dans la zone grise sur la figure 1). Ainsi, on a la propriété suivante : (*) Après t 0 unités de temps, tous les processus q i, avec i {t,...,kn 1}, ont le même état que le processus p i mod n dans e après t unités de temps. Supposons maintenant par contradiction que T (k 2)n. Soit j 1 = (k 2)n + l et j 2 = (k 1)n + l. D après (*), après T unités de temps dans e, q j1 et q j2 ont le même état que p l dans la configuration terminale de e, i.e., q j1 et q j2 se déclarent leader, ce qui contredit l irrévocabilité de l élection. Ainsi, l exécution e dure au moins (k 2)n + 1 unités de temps. Notez que, par définition, U A. Ainsi, cette borne inférieure est aussi valable pour A K k, avec k 2. 4 Impossibilité pour les classes U, A et K k avec k 2. La borne inférieure précédente nous permet de démontrer notre résultat d impossibilité pour la classe U. L idée de la preuve est que U contient l union infinie des classes U K k pour tout k 1. Ainsi, comme la borne inférieure sur chaque classe U K k avec k 2 dépend du paramètre k, la borne inférieure sur le temps d exécution de tout algorithme pour U est nécessairement non bornée, d où le résultat d impossibilité. Comme U A, ce résultat d impossibilité est aussi valable pour A. Concernant la classe K k avec k 2, elle contient en particulier des anneaux symétriques de i k processus avec i 1, dont la séquence d étiquettes est l 1,l 2,...,l i répétée k fois. L exécution synchrone de

Anaïs Durand tout algorithme sur de tels anneaux ne permet pas de différencier les processus d étiquettes identiques. Par conséquent, il est impossible de résoudre l élection de leader avec terminaison implicite dans cette classe. 5 Élection de leader avec terminaison explicite pour U K k Les performances de cette solution sont données dans la table 1. Son but est d élire, parmi les processus d étiquettes uniques, celui (noté l) de plus petite étiquette. Nous utilisons pour cela des compteurs dont le but est d évaluer approximativement les multiplicités des étiquettes. Chaque processus p possède une étiquette p.id et un compteur entier p.cnt ; tous les messages échangés contiennent une étiquette et un compteur entier qui reflète lui aussi la multiplicité de l étiquette. Chaque processus p commence par initialiser son compteur p.cnt à 0, puis initie un jeton en envoyant un message contenant son étiquette et la valeur de son compteur, 0. L ensemble des jetons va circuler dans l anneau. Lorsqu un processus reçoit un jeton contenant son étiquette, il incrémente son propre compteur ainsi que le compteur du jeton. Grâce à ces compteurs, les processus, initialement tous actifs, vont petit à petit devenir passifs jusqu à ce que seul l, le leader, reste actif. Élimination des processus non uniques. La première règle pour désactiver un processus est la suivante. Si un processus p reçoit un jeton contenant une valeur de compteur plus petite que son propre compteur, p.cnt, alors p peut en déduire que son étiquette n est pas unique et devient passif. Lorsqu un processus p devient passif, le jeton qu il a initié devient inutile : p ne retransmet plus les jetons portant son étiquette. Ainsi, tous les processus d étiquette non unique deviennent passifs lors du premier tour de leur jeton. Lorsque les jetons initiés par les autres processus ont fait une fois le tour de l anneau, le compteur dans chacun de ces jetons vaut 1 et leurs initiateurs sont encore actifs. Élection du processus d étiquette unique minimum. Pour élire le leader parmi les processus encore actifs, on procède comme suit. Si un processus p reçoit un jeton contenant une étiquette plus petite que la sienne et une valeur de compteur c à la fois strictement positive et identique à la valeur son propre compteur, i.e., p.cnt = c c > 0 (cette condition assure que l on ne se trouve pas dans le premier tour de l anneau), p en déduit que son étiquette n est pas la plus petite étiquette unique et devient passif. Terminaison explicite. Ainsi, après que les jetons restants aient fait au plus deux tours de l anneau, seul l est encore actif, mais l ne peut pas immédiatement le déterminer et se déclarer leader. Cependant, lorsque l reçoit un jeton contenant son étiquette et la valeur de compteur k, l peut en déduire qu il n est pas dans le premier tour (les compteurs étant initialisés à 0, aucun jeton ne peut atteindre la valeur k lors du premier tour). Donc, son étiquette est nécessairement unique et en conséquence, ce jeton a effectué k + 1 > 2 tours de l anneau. Ainsi, l déduit qu il est le seul processus encore actif et se déclare leader. Il envoie alors un dernier jeton l.id, k + 1 pour informer les autres processus de l étiquette du processus élu. Lorsque les autres processus reçoivent ce jeton, ils le retransmettent puis s arrêtent explicitement. Lorsque l reçoit l.id,k + 1, il s arrête à son tour, mettant fin à l exécution. Références [1] K. Altisen, A. K. Datta, S. Devismes, A. Durand, and L. L. Larmore. Leader election in rings with bounded multiplicity (short paper). In SSS 2016, pages 1 6, Lyon, France, November 7-10 2016. [2] K. Altisen, A. K. Datta, S. Devismes, A. Durand, and L. L. Larmore. Leader election in asymmetric labeled unidirectional rings. In IPDPS 2017, Orlando, Florida, USA, May 29 - June 2 2017. To appear. [3] D. Angluin. Local and global properties in networks of processors. In STOC, pages 82 93, 1980. [4] C. Delporte-Gallet, H. Fauconnier, and H. Tran-The. Leader election in rings with homonyms. In NETYS, pages 9 24, 2014. [5] S. Dobrev and A. Pelc. Leader election in rings with nonunique labels. Fundam. Inform., 59(4) :333 347, 2004. [6] P. Flocchini, E. Kranakis, D. Krizanc, F. L. Luccio, and N. Santoro. Sorting and election in anonymous asynchronous rings. JPDC, 64(2) :254 265, 2004. [7] M. Yamashita and T. Kameda. Electing a leader when processor identity numbers are not distinct (extended abstract). In WDAG, pages 303 314, 1989.