AccueilđŸ‡«đŸ‡·Chercher

Protocole de bavardage

Un protocole de bavardage (en anglais, gossip protocol) ou un algorithme de bavardage dĂ©signe un algorithme distribuĂ© dans un rĂ©seau informatique pair Ă  pair pour propager l'information Ă  tous les agents du rĂ©seau. La formulation d'un protocole de bavardage date d'un article de 1987 de Demers et al. [1] L'un des intĂ©rĂȘts de ces protocoles est de permettre l'auto-organisation dans les rĂ©seaux informatiques sans coordinateurs centraux, tant que les agents sont suffisamment actifs et connectĂ©s.

Types

On peut classer des algorithmes de bavardage en deux types[2], en fonction de leurs tĂąches :

  • Diffusion de l'information, oĂč, par exemple, des agents peuvent s'informer mutuellement de la survenance d'un Ă©vĂ©nement.
  • AgrĂ©gation d'informations, oĂč, par exemple, des agents peuvent calculer en collaboration une valeur.

Comme dans la plupart des algorithmes distribués, nous pouvons également identifier qu'un algorithme de bavardage a plusieurs catégories liées à sa conception technique :

  • La direction de l'information[3] :
    1. Un protocole push fait référence au type de flux d'informations qui est créé lorsque les agents transmettent des messages à leurs voisins, qu'ils le veuillent ou non.
    2. Un protocole pull fait rĂ©fĂ©rence au type de flux d'informations crĂ©Ă© lorsque les agents demandent eux-mĂȘmes des messages Ă  leurs voisins.
    3. Un protocole push-pull fait rĂ©fĂ©rence au cas oĂč les deux types de flux d'informations sont disponibles.
  • Le moment du flux d'information :
    1. Un protocole synchrone se rĂ©fĂšre au cas oĂč chaque agent accepte d'envoyer / recevoir des informations Ă  des moments prĂ©cis.
    2. Un protocole asynchrone fait rĂ©fĂ©rence au cas oĂč chaque agent peut envoyer / recevoir des informations Ă  tout moment.

Une décision dans la conception technique conduit généralement à des performances meilleures ou pires, par exemple dans la vitesse de convergence ou la tolérance aux pannes. De plus, certaines décisions de conception peuvent nécessiter des stratégies plus avancées pour prouver des garanties de performances.

Exemple

Soit le graphe connexe d'un rĂ©seau de communication, oĂč l'ensemble dĂ©note les agents et l'ensemble dĂ©note les liens entre eux.
Soit , et attribuer chaque avec .

Considérons que les agents visent à calculer collectivement la moyenne de leurs valeurs assignées.

Soit un protocole de bavardage tel que chaque agent s'engage à montrer son attribut à ses voisins et à mettre à jour de maniÚre itérative la valeur affichée en calculant la moyenne des valeurs affichées par ses voisins.

Si chaque agent s'engage dans le protocole, aprÚs quelques itérations, la valeur affichée par chaque agent est égale à la moyenne des valeurs initiales.

Applications

Vie privée

Des algorithmes de bavardage peuvent permettre d'effectuer des tĂąches collaboratives dĂ©centralisĂ©es tout en prĂ©servant la confidentialitĂ© des donnĂ©es[4], comme dans un systĂšme de communications P2P anonyme. Une telle tĂąche pourrait ĂȘtre, par exemple de calculer la moyenne sur des valeurs individuelles, comme suggĂ©rĂ© dans l'exemple donnĂ©, et oĂč la confidentialitĂ© des donnĂ©es peut ĂȘtre quantifiĂ©e, comme la confidentialitĂ© diffĂ©rentielle, le k-anonymat[5], ou tout autre mesure de vie privĂ©. En gardant l'exemple de la moyenne, la valeur individuelle peut suivre un modĂšle qui dĂ©pend d'une statistique sensible d'un agent, et donc si la valeur rĂ©elle a Ă©tĂ© affichĂ©e, la statistique sensible peut ĂȘtre dĂ©duite par une attaque de reconstruction. Nous pouvons prĂ©server la confidentialitĂ© des donnĂ©es en masquant la valeur individuelle sous un bruit (par exemple, une variable alĂ©atoire gaussienne avec une moyenne de 0). MĂȘme si tous les agents d'un rĂ©seau de communication font de mĂȘme, un algorithme de bavardage particulier peut toujours rĂ©ussir Ă  rĂ©aliser la tĂąche avec une faible erreur. En fin de compte, on obtient un compromis entre l'erreur dans la moyenne et le niveau de confidentialitĂ© des donnĂ©es.

Moniteur systĂšme

Un algorithme de bavardage peut ĂȘtre conçu pour permettre Ă  chaque agent de rĂ©sumer l'Ă©tat d'un systĂšme multi-agent, par exemple la charge systĂšme ou le nombre d'agents actifs. Cela peut ĂȘtre perçu comme un moniteur systĂšme. Une telle tĂąche peut ĂȘtre rĂ©alisĂ©e par agrĂ©gation, lorsque les agents font la moyenne de leurs descripteurs d'Ă©tat[6].

Implémentations dans des logiciels

Notes et références

  1. Alan Demers, Dan Greene, Carl Hauser, Wes Irish, John Larson, Scott Shenker, Howard Sturgis, Dan Swinehart et Doug Terry, Epidemic Algorithms for Replicated Database Maintenance (Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing (Trad:Actes du sixiĂšme symposium annuel de l'ACM sur les principes de l'informatique distribuĂ©e)), New York, NY, USA, ACM, coll. « PODC '87 », , 1–12 p. (ISBN 978-0-89791-239-6, DOI 10.1145/41840.41841)
  2. MĂĄrk Jelasity, « Gossip », dans Self-organising Software, Springer Berlin Heidelberg, (ISBN 978-3-642-17347-9, DOI 10.1007/978-3-642-17348-6_7, lire en ligne), p. 139–162
  3. George Giakkoupis, « Tight bounds for rumor spreading in graphs of a given conductance », 28th International Symposium on Theoretical Aspects of Computer Science (STACS 2011), Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, leibniz International Proceedings in Informatics (LIPIcs), vol. 9,‎ , p. 57–68 (ISBN 978-3-939897-25-5, DOI 10.4230/LIPIcs.STACS.2011.57, lire en ligne, consultĂ© le )
  4. Pierre Dellenbach, AurĂ©lien Bellet et Jan Ramon, « Hiding in the Crowd: A Massively Distributed Algorithm for Private Averaging with Malicious Adversaries », arXiv:1803.09984 [cs, stat],‎ (lire en ligne, consultĂ© le )
  5. Benjamin Nguyen, L’anonymisation : ThĂ©orie et Pratique, (lire en ligne)
  6. (en) Robbert Van Renesse, Kenneth P. Birman et Werner Vogels, « Astrolabe: A robust and scalable technology for distributed system monitoring, management, and data mining », ACM Transactions on Computer Systems (TOCS), vol. 21, no 2,‎ , p. 164–206 (ISSN 0734-2071 et 1557-7333, DOI 10.1145/762483.762485, lire en ligne, consultĂ© le )
  7. « Documentation », sur cassandra.apache.org (consulté le )
  8. « AWS Service Health Dashboard - Amazon S3 Availability Event: July 20, 2008 », sur status.aws.amazon.com (consulté le )

Bibliographie

  • (en) Fatemeh Rahimian, Gossip-based Algorithms for Information Dissemination and Graph Clustering, Stockholm, Royal Institute of Technology (thĂšse de doctorat), , 22 p. (ISBN 978-91-7595-108-9)

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplĂ©mentaires peuvent s’appliquer aux fichiers multimĂ©dias.