Systèmes pair-à-pair et diffusion épidémique d information Laurent Massoulié Thomson Laboratoire de recherche parisien
Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique Epidémies et diffusion de flux d information Conclusions et Perspectives 2
Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique Epidémies et diffusion de flux d information Conclusions et Perspectives 3
Principe: Mutualisation des ressources Architecture client-serveur (Telechargements; Podcast) Architecture pair-à-pair 4 Capacité
80% Web Pair-à-Pair Email 1993 5 2006 2008
Une réputation sulfureuse Principale utilisation : partage illégal de fichiers audio et vidéo La bête noire des studios de cinéma Peu apprécié des Fournisseurs d Accès à l Internet : Complique la gestion des réseaux (95% du trafic de l opérateur Telefonica) L opérateur ComCast empêchait ses clients d utiliser «BitTorrent» Au cœur d une polémique au Parlement Américain sur la neutralité d Internet 6
Et pourtant Le pair-à-pair est là pour rester Incontournable pour ces applications : Partage de fichiers Vidéo à la demande Diffusion de flux vidéo en temps réel (télévision sur Internet) 7
Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique Epidémies et diffusion de flux d information Conclusions et Perspectives 8
Diffusion du virus «Code Red» 9
Diffusion du virus «Code Red» Diffusion optimale théorique Courbe logistique (Verhulst 1838) Croissance exponentielle 10 Temps d infection complète «optimal» (logarithmique en nombre de cibles)
Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique Epidémies et diffusion de flux d information Conclusions et Perspectives 11
Epidémies pour la diffusion d information Paquets de données 1 2 3 4 1 2 2 12 Spécification du mécanisme: règle de sélection de nœud cible paquet à transmettre Des épidémies (une par paquet) en compétition
Pourquoi une approche épidémique La centralisation est inopérante : Grandes populations d usagers (10 3 10 6 ) Déconnexions et reconnexions fréquentes La décentralisation épidémique fonctionne : Protocoles très simples (à bien choisir) Performances quasi-optimales en débit et délai Systèmes déjà déployés: tous de type épidémique 13
Scénario 1: contraintes d accès Ressource limitée: Capacité d accès Modélise contraintes de connexion Internet (ADSL, cable, ) Normalisée: 1 paquet / seconde Performance de diffusion optimale: Débit = 1 (paquet / seconde) 14 Délai = log 2 (N) où N: nombre de nœuds
La version centralisée Paquets pairs: Envoyés le long des flèches bleues Paquets impairs: flèches vertes En cas de départ, comment reconstruire les arbres? 15
Décentralisation Approche naïve Choix de cible au hasard Choix du «premier paquet utile» Privilégie les intérêts du receveur Paquets de l envoyeur Fraction de nœuds atteints 0.02 0.01 0.02 0.018 0.016 0.014 0.012 0.01 1 0.9 0.8 0.7 0.6 0.5 0.4 1 2 3 1 2 4 5 7 8 1 er paquet utile 1 2 3 4 Paquets du receveur 0.008 0.006 0.004 0.002 0 0.3 0.2 0.1 0 0 10 20 30 40 50 60 70 80 90 100 20 40 0 0 5 10 15 20 25 30 35 40 45 50 Temps 16
Mieux: cible au hasard / dernier paquet Paquets de l envoyeur 1 2 4 5 7 8 Fraction de nœuds atteints 1 0.2 0.9 0.18 0.8 0.16? Dernier paquet??????? 0.7 0.14 0.6 0.12 0.5 0.1 Paquets du receveur 0.4 0.08 0.3 0.06 Privilégie les bénéfices indirects: 0.2 0.04 Potentiel de nouvelles transmissions depuis le receveur 0.1 0.02 17 0 10 20 30 40 50 60 70 80 90 100 0 2 4 6 8 10 12 14 16 18 20 Temps
Mieux: cible au hasard / dernier paquet chaque nœud reçoit 1-1/e 63% des paquets en temps optimal (logarithmique) Diffusion à débit de 63% de l optimal, avec délai optimal, est faisable (en formant par codage à la source des paquets supplémentaires, contenant de l information redondante) 18
Encore mieux: cible au hasard / dernier paquet utile 1 1 Paquets de l envoyeur 1 2 4 5 7 8 Dernier paquet utile???? 1 2 3 8 Paquets du receveur Fraction atteinte Fraction atteinte 0.9 0.9 0.8 0.8 0.7 0.7 0.6 0.6 0.5 0.5 0.4 0.4 0.3 0.3 0.2 0.2 0.1 0.1 0 0 20 40 60 80 100 0 5 10 Temps 15 20 25 30 Temps 19
Encore mieux: cible au hasard / dernier paquet utile Pour un taux d injection λ<1, pour tout x>0, chaque nœud reçoit une fraction 1-1/x des paquets en temps log 2 (N)+O(x). En français: Diffusion à débit arbitrairement proche de l optimal, avec délai optimal 20
Scénario 2: contraintes de réseau Graphe entre les nœuds Capacités associées aux arcs Débit de diffusion [Edmonds, 73]: nombre maximal d arbres couvrants arc-disjoints qu on peut inclure dans le graphe 21
Politique «paquet utile au hasard» et théorème d Edmonds 1 2 4 5 7 8 5 1 4 Cette politique permet un débit de diffusion optimal, pour un graphe arbitraire??? Fondée sur des informations locales Ne requiert pas la construction d arbres couvrants?????? 22
Comment ça se prouve : Comportement du système après renormalisation en temps et en espace : 100 1000 10000 98 980 9800 96 960 9600 94 940 9400 92 920 9200 90 900 9000 88 880 8800 86 84 82 80 0 10 20 30 40 50 60 70 80 90 100 860 840 820 800 0 100 200 300 400 500 600 700 800 900 1000 8600 8400 8200 8000 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 Evolution régie par des équations différentielles (plus d aléa) On montre que les solutions convergent vers un point d équilibre (avec une fonction de Lyapunov adaptée ) Corollaire: Une preuve analytique du résultat combinatoire d Edmonds 23
Plan Le pair-à-pair aujourd hui Exemple de diffusion épidémique: un virus informatique Epidémies et diffusion de flux d information Conclusions et Perspectives 24
Conclusions Diffusion épidémique allie simplicité d implémentation Efficacité dans l utilisation des ressources Optimum global réalisable sur la base de décisions Aléatoires Décentralisées Comme en physique statistique, sauf qu on peut choisir à volonté les règles d interaction locale! 25
Perspectives Recherche de mécanismes efficaces pour : La vidéo à la demande [ressources : communication et mémoire] Les calculs distribués [ressource : capacité des processeurs] L ère du super-ordinateur L ère du «Personal Computer» L ère de l «Internet Computer» 26