Utilisation des architectures Peer-to-Peer pour la recherche d information. Cours 6

Documents pareils
Recherche d informations à grande échelle dans des architectures Peer-to-Peer

Les protocoles Peer-to-Peer GERET. Gabrielle Feltin LORIA

Réplication adaptative sur les réseaux P2P

Revue d article : Dynamic Replica Placement for Scalable Content Delivery

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Architectures et Protocoles des Réseaux

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Évaluation d une architecture de stockage RDF distribuée

Robin Favre Fabien Touvat. Polytech Grenoble RICM 3 ème Année Vendredi 21 Novembre 2008 Etude d Approfondissement Réseau

Gestion du déploiement de composants sur réseau P2P

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

Proposition d architecture de réseau actif pour le déploiement d un réseau Peer to Peer

Ebauche Rapport finale

Proxies,, Caches & CDNs

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

Pair-à-Pair: Architectures et Services

Routage Efficace pour les Réseaux Pair-à-Pair utilisant des Tables de Hachage Distribuées

Environnement pour le calcul pair à pair

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

Introduction aux Technologies de l Internet

Architecture d un service de partage de données modifiables sur une infrastructure pair-à-pair

Notes de cours (ENS Lyon, M1) Chapitre 2 : Réseaux Pair à Pair

Télécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS

Le service IPv4 multicast pour les sites RAP

Les Content Delivery Network (CDN)

Autorité de certification distribuée pour des réseaux pair-à-pair structurés : modèle, mise en oeuvre et exemples d applications

1.Introduction - Modèle en couches - OSI TCP/IP

N d ordre : 4071 ANNÉE THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l Université Européenne de Bretagne. pour le grade de

SEMINAIRES & ATELIERS EN TÉLÉCOMMUNICATIONS RESEAUX

Groupe Eyrolles, 2000, 2004, ISBN :

Présentation Alfresco

Proposition d une grille d analyse pour la composition de systèmes P2P adaptés aux contextes applicatifs

Culture informatique. Cours n 9 : Les réseaux informatiques (suite)

RAPPORT DE STAGE DE MASTER INFORMATIQUE DE L UNIVERSITE PIERRE ET MARIE CURIE Sécurité des infrastructures critiques.

Architectures haute disponibilité avec MySQL. Olivier Olivier DASINI DASINI - -

NOTIONS DE RESEAUX INFORMATIQUES

arxiv: v1 [cs.dc] 29 Apr 2008

Cisco Certified Network Associate

Analyse empirique et modélisation de la dynamique de la topologie de l Internet

Pour les entreprises de taille moyenne. Descriptif Produit Oracle Real Application Clusters (RAC)

Réseaux Locaux. Objectif du module. Plan du Cours #3. Réseaux Informatiques. Acquérir un... Réseaux Informatiques. Savoir.

République Algérienne Démocratique et Populaire. Ministère de l Enseignement Supérieur et de la Recherche Scientifique

Plan du cours. Incarnations/applications du Grid Computing. Super-calcul virtuel

Contributions à l expérimentation sur les systèmes distribués de grande taille

Sur l utilisation de LDA en RI pair-à-pair

FORMATION CN01a CITRIX NETSCALER

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

Conception et contrôle des SMA tolérants aux fautes

NetCrunch 6. Superviser

Étude de l application DNS (Domain Name System)

Stockage décentralisé adaptatif : autonomie et mobilité des données dans les réseaux pair-à-pair

Dimensionnement Introduction

Daniel POULIN DRT 3808 (version 2010) Faculté de droit, Université de Montréal

Programmation parallèle et distribuée

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Cisco Certified Network Associate Version 4

Travail d évaluation personnelle UV valeur C : IRE. Planification de réseaux : Simulateur IT-GURU Academic Edition

3A-IIC - Parallélisme & Grid GRID : Définitions. GRID : Définitions. Stéphane Vialle. Stephane.Vialle@supelec.fr

Chapitre 1 Le routage statique

Agrégation de liens xdsl sur un réseau radio

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

17/07/2013. Décisionnel dans le Nuage. Laboratoire ERIC. Section 1. Équipe d Accueil Décisionnel dans le Nuage.

Fonctionnement d Internet

Chapitre 1: Introduction générale

2. DIFFÉRENTS TYPES DE RÉSEAUX

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Architecture distribuée pour la gestion des ressources dans des grilles à grande échelle

Tutoriel XBNE Connexion à un environnement XBMC distant

Découverte et analyse de dépendances dans des réseaux d entreprise

Chapitre I. La couche réseau. 1. Couche réseau 1. Historique de l Internet

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Recherche d information textuelle

TCP/IP, NAT/PAT et Firewall

GRIDKIT: Pluggable Overlay Networks for Grid Computing

Caches sémantiques coopératifs pour la gestion de données sur grilles

Le Cloud au LIG? Pierre Neyron PimLIG

1. Introduction à la distribution des traitements et des données

Hypervision et pilotage temps réel des réseaux IP/MPLS

Ecole Mohammadia d Ingénieurs Systèmes Répartis Pr. Slimane Bah, ing. PhD G. Informatique Semaine 24

TP de réseaux : Domain Name Server.

Compte-rendu du TP n o 2

Vers une approche Adaptative pour la Découverte et la Composition Dynamique des Services

JXTA : Un Framework Peer-to-Peer Open Source

Equilibrage de charge pour les grilles de calcul : classe des tâches dépendantes et indépendantes.

2009/2010 DESCRIPTIF DES UNITES D ENSEIGNEMENT OPTIONNELLES SPECIALITE RIM

AGREGATION DE LIENS ENTRE UNE APPLIANCE FAST360 ET UN COMMUTATEUR. Table des matières PRINCIPES DE L'AGREGATION DE LIENS... 2

N.B. Cette thèse a été financée par France Télécom Division R&D et préparée au sein de France Télécom Division R&D en collaboration avec le LRI.

Fonctions Réseau et Télécom. Haute Disponibilité

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing

ACCESSNET -T IP Technique système TETRA d Hytera.

Un concept multi-centre de données traditionnel basé sur le DNS

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes.

4. SERVICES WEB REST 46

Computer Networking: A Top Down Approach Featuring the Internet, 2 nd edition. Jim Kurose, Keith Ross Addison-Wesley, July ENPC.

Équilibrage de Charge dans un Réseau Pair-à-Pair Structuré : une Méthode Dynamique Intégrée

Tests de performance du matériel

Résolution de noms. Résolution de noms

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Transcription:

Utilisation des architectures Peer-to-Peer pour la recherche d information Cours 6 1

Plan Introduction Architectures Peer-to-Peer Napster Gnutella Super-peers Principes Kazaa Peer-to-peer sémantiques SON Conclusion 2

Introduction Limitations de l architecture client/serveur dans le cadre du Web Concentration des ressources individuelles sur un petit nombre de nœuds Goulot d étranglement Besoin de répartir la charge de traitement et de la bande passante à travers tous les nœuds du système d information réparti 3

P2P Internet des débuts était un système P2P N importe quel couple d ordinateurs pouvait s envoyer des paquets : Pas de firewalls, pas de communications asymétriques Les machines sont indifféremment client ou serveurs Approche coopérative Les P2P sont une sorte de renaissance des principes de base d internet. 4

Définition Chaque nœud (peer) participant peut être client ou serveur Chaque nœud «paye» sa participation en donnant accès à une partie de ses ressources Propriétés : Pas de coordination centralisée Pas de BD centralisée Aucun nœud n a une vision globale du système Le comportement global émerge à partir des interactions locales Tous les services et données sont accessibles de n importe quel nœud Les nœuds sont autonomes Les nœuds et les connections ne sont pas fiables 5

Différents types de systèmes P2P Systèmes de partage de fichiers Napster, Gnutella, Freenet Commerce électronique ebay, serveurs d intégration B2B Bases de données réparties Mariposa [Stonebraker96] Réseaux Réseaux mobiles ad-hoc L approche P2P se trouve à tous niveaux du système : utilisateur, application, gestion de l information, réseau. 6

Approches comparables Systèmes basés sur les événements Les nœuds génèrent et reçoivent des messages «push» systems Les nœuds envoient des informations Agents mobiles Similarité dans la recherche et la navigation Bases de données réparties Les données sont réparties sur plusieurs nœuds Traitement efficace de requêtes complexes par décomposition Structures d index adaptées au passage à l échelle Le problème majeur est de retrouver l information. 7

Différents modèles P2P centralisé (ex: Napster) Index centralisé (non tolérant aux fautes) géré de façon centralisée Échange d information direct P2P décentralisé (ou «pur») (ex: Freenet, Gnutella) Pas d index global, pas de coordination centrale, le comportement global vient des interactions locales, etc. Échange d information direct (Gnutella) ou à travers une chaîne d intermédiaires (Freenet) P2P hiérarchiques ou «super peers» (ex: Kazaa) Introduction des super-peers Mélange de client/serveur et P2P P2P sémantiques (SON par exemple) P2P «pur» avec routage basé sur une information sémantique 8

Fonctionnalités d un système P2P Découverte de ressources Gestion des mises à jour Passage à l échelle Tolérance aux fautes Sécurité 9

Critères de comparaison Recherche de ressources : Topologie du réseau : ouverte(gnutella) ou contrôlée (Chord) Placement des données et des méta-données : libre(gnutella) ou dirigé (Chord) Routage des messages : fonction de choix des successeurs Besoins applicatifs : Expressivité du langage de requêtes Complétude des résultats : une réponse, toutes les réponses, les k meilleures réponses, Autonomie des nœuds : choix des ressources à stocker, choix des nœuds successeurs, etc. 10

Napster 4 Nœud j Nœud i b2.mp3 3 a1.mp3 2 1 Index centralisé 1: enregistrement de i recherche de a1.mp3 ajout des fichiers de i dans l index 2: retour des noueds possédant a1.mp3 3: demande directe de i à j pour télécharger a1.mp3 4: téléchargement de a1.mp3 et ajout dans la base de ressources partagées 11

Bilan Napster Fonctionne bien à l échelle d Internet Accès en P2P, mais recherche centralisée Serveur doit être bien dimensionné et tolérant aux fautes Sensible aux partitionnements du réseau (serveur inatteignable) et aux attaques 12

Gnutella Chaque nœud propage la requête à ses voisins (en général 4) Le nombre de propagations est limité (en général à 7) Détection de cycles grâce à l identificateur des paquets Recherche a Retour a 13

Types de messages Types Description Information Ping Annonce disponibilité et lance vide recherche nouveaux pairs Pong Réponse à un ping Adresse IP + N port; nombre et taille de fichiers partagés Query Requête Bande passante minimum demandée; critère de recherche QueryHit Réponse à Query si on possède Adresse IP + N port et la ressource bande passante; Nb de réponses + descripteurs Push Demande de téléchargement pour Id. du pair; index du fichier pairs derrière un firewall demandé; adresse IP et N port où envoyer le fichier 14

Gnutella (ajout d un nœud) Pour participer, un nœud doit se connecter à un hôte Gnutella connu (www.gnutella.com). Des serveurs spécialisés renvoient une liste des nœuds connus (extérieur au protocole). A C B Ping de A D Pong de B Pong de C E Pong de D Pong de E 15

Gnutella (recherche) Get X.mp3 A X.mp3 C X.mp3 B Query de A D QueryHit de C QueryHit de E E X.mp3 16

Les principes sous-jacents Principes d égalité entre les nœuds Même capacité (puissance, bande passante, ) Même comportement (également client et serveur) et bon comportement (pas de «mensonge») Principe de requêtes «populaires» Les ressources très demandées sont très répliquées Requêtes concernent principalement peu de ressources Principe de topologie du réseau Graphe minimisant le nombre de chemins entre deux nœuds Longueur de chemin minimum entre deux nœuds quelconques est faible (5 à 8) 17

Quid des principes en réalité? Principe d égalité entre les nœuds [Sariou et al.01] montrent un écart de 1 à 3 dans la bande passante disponible. Conséquence : risque de perturbation du réseau et de partitionnements (trop forte charge demandée à des noeuds connectés via des modems par exemple) [Adar, Hubermann 00] montrent que 70% des utilisateurs ne partagent aucun fichier (ils n en ont pas ou ils n intéressent personne), et que 50% des résultats sont produits par 1% des nœuds. Conséquences : (1) ceux qui partagent n y ont pas d intérêt (pas de réciprocité) et (2) le réseau est sensible aux fautes et aux attaques Les études montrent également que certains nœuds sous-évaluent leur bande passante disponible pour éviter d être choisis. Le free-riding est un problème social plutôt que technique. Il induit des problèmes de performances et de vulnérabilité du système. Constat : beaucoup de pairs sont des «free-riders» et tous les domaines sont concernés. 18

Quid des principes (2) Principe des requêtes «populaires» Les 100 requêtes les plus fréquentes sont distribuées uniformément Les autres suivent une distribution de type Zipf Les techniques de cache de résultats s appliquent bien et peuvent apporter une amélioration notable Principe de topologie du réseau Plusieurs études montrent que le graphe sous-jacent de Gnutella est de type «small world» et que le degré des nœuds suit une distribution «powerlaw» Le principe de diffusion de Gnutella ne s adapte pas à SW (beaucoup de message redondants) 19

Observations sur la bande passante Gnutella Sur une période de 1 mois La taille d une requête typique est de 560 bits (y compris headers TCP/IP) Les requêtes occupent 25% du trafic, les ping 50% et le reste 25% En moyenne, un pair est connecté activement à 3 autres Limite de la dégradation à 10 requêtes/seconde 10 req * 560bits*4 *3 connections = 67200 b/s Au dessus de la capacité des modems Gnutella ne passe pas à l échelle (pour la bande passante) 20

Bilan de Gnutella Complètement décentralisé Très tolérant aux fautes S adapte bien à la dynamique du réseau Gros consommateur de bande passante Pas de garantie de succès, ni d estimation de la durée des requêtes Pas de sécurité, ni de réputation (pas de notion de qualité des pairs ni des données fournies) Problème du «free riding» Simple, robuste, passe l échelle (pour le moment) 21

Super-Peers Client/serveur + P2P 22

Super-peers Eviter les problèmes dus à l hétérogénéité de la bande passante des nœuds Tous les nœuds ne sont plus égaux Les nœuds avec une bonne bande passante sont organisés en P2P : les super-peers Les nœuds avec faible bande passnte sont rattachés en mode client/serveur à un super-peer (cluster) Les super-peers disposent d un index de ressources de leur cluster Utilisé dans Kazaa 23

Exemple de super-peer C/S P2P 24

Super-peer redondant Le super-peer introduit de la sensibilité aux défaillances Amélioration possible, choisir k super-peers (partenaires) au lieu d un dans un cluster Chaque partenaire est connecté à chaque client et possède un index de toutes leurs ressources Les clients envoient leurs requêtes aux partenaires selon un principe de «round robin» Les voisins d un partenaire distribuent également leurs requêtes équitablement Fait baisser la charge du partenaire d un facteur k Augmente le coût d entrée d un nouveau client d un facteur k Augmente le nombre de connections ouvertes de k 2 25

Exemple de super-peer redondant C/S P2P 26

Règles de conception d un super-peer [Yang 2003] R1 : augmenter la taille d un cluster augmente la charge individuelle (bande passante) mais diminue la charge agrégée Peu de gros clusters : sensibilité aux défaillances, attaques, R2 : la redondance de super-peer est favorable Amène la bonne charge agrégée des gros clusters avec une faible charge individuelle et une bonne tolérance aux fautes 27

Règles de conception d un super-peer R3 : maximiser le nombre de connections des superpeers (diminue le nombre de sauts pour atteindre les résultats). La stratégie doit être choisie pour tous les pairs. R4 : minimiser le TTL (time-to-live) 28

Peer-to-Peer «sémantique» Semantic Overlay Network 29

P2P «sémantique» Ajouter de l information aux tables de routage Généraliste vs spécifique (à une application) L information doit pouvoir être maintenue dynamiquement Équilibre entre taille et précision 30

Quelle information? Sur le contenu des nœuds (index) Suppose que les nœuds aient un contenu homogène (pas de placement aléatoire) Routage par comparaison requête-index Même information partagée par tous, ou bien construite localement Exemple «routing indices», SON Sur les requêtes Suppose qu il y a peu de requêtes différentes Routage par comparaison requête-requête Sur les utilisateurs Suppose que les utilisateurs aient toujours le même besoin Routage par comparaison utilisateur-utilisateur Sur un mélange des trois solutions 31

Semantic Overlay Networks [Crespo, Garcia-Molina 03] Classifier l ensemble des nœuds via une classification «sémantique» (ex: genres de musiques) Un même nœud peut se trouver dans plusieurs classes Selon la requête, on sélectionne le ou les SON susceptibles d y répondre au mieux 32

Exemple de SON Rock Rap A C Country Jazz B D E F H G Un nœud est logiquement relié à un autre, par un lien : (n i, n j, l k ). Ex : (A, B, Rock ) Les nœuds ayant le même l forment un SON 33

Problématique des SON Un SON avec un seul label est un P2P classique Une fois le label choisi (en fonction de la requête), on a un P2P classique Comment définir le SON? 34

Processus de génération d un SON Hiérarchie concepts requête Classification requête Définition SON Distribution Des données SON résultats Nouveaux noeuds Classification document Classification noeud 35

Exemple de classification Music Rock Sous-style Style Jazz Sous-style Pop Dance Soft New Orleans Bop Fusion Un concept = un SON 36

Association des nœuds aux SON Repose sur un classifieur de documents Si un document du nœud correspond : favorise la complétude, mais augmente le coût de la recherche Si k documents du nœud correspondent : diminue la complétude, mais diminue le coût de la recherche Résolution d une requête Cherche le(s) concept(s) correspondant à la requête Propage la requête dans le SON + ascendants + descendants 37

Principe de recherche SON i requête Nœud i Classification requête SON k 38

Choix de la classification «bonne» hiérarchie de classification Classes dont les documents appartiennent à un petit nombre de nœuds Les nœuds se trouvent dans peu de classes Classifieurs faciles à construire et les plus fiables possibles 39

Bilan SON Repose sur la classification Lié à un domaine précis Favorise la précision, mais pas la complétude Peut se paralléliser pour obtenir rapidement des réponses (requête lancée dans chaque SON sélectionné par le classifieur) Les résultats expérimentaux montrent une amélioration notable en nombre de messages par rapport à Gnutella. 40

Systèmes P2P Napster, Gnutella, Freenet, OceanStore, Farsite, FastTrack, Tornado, Chord, CAN, Gridella, JXTA, OFSI, DFSI, Pastry, P-Grid, Random Walker, 41

Problèmes ouverts Sécurité Réputation Contrôler le «free riding» Tables de hachage dynamique P2P sémantique On en est au début! Mixer différents types de connaissances Connaissances dynamiques (apprentissage) 42

Sécurité Disponibilité Authentification des ressources (si plusieurs réponses différentes pour la même ressource) Plus vieille ressource Réputation («experts») Vote Anonymat Auteur : quels auteurs ont créé quels documents Serveur : sur quels nœuds est stocké un document donné? Lecteur : quels utilisateurs accèdent à quels documents? Documents : quels documents sont stockés sur un nœud donné? 43

Bibliographie (1) K.Aberer et al. «Improving Data Access in P2P Systems», IEEE internet Computing, January 2002. K. Aberer. «P-Grid : A Self-Organizing Access Structure for P2P Information Systems». Proc. COOPIS, 2001. K. Aberer, M. Hauswirth. «Peer-tp-peer Information Systems : Concepts and Models, state-of-the-art, and Future Systems», tutorial IEEE ICDE 2002. E. Adar, B. Huberman. «Free Riding on Gnutella», Technical Report, Xerox Parc, Sept.2000. I. Clarke et al. «Freenet : A Distributed Anonymous Information Storage and Retrieval System», LNCS 2009, Springer Verlag, 2001. A. Crespo, H. Garcia-Molina. «Routing Indices for Peer-to-Peer Systems», Proc. ICDCS 2002. A. Crespo, H. Garcia-Molina. «Semantic Overlay Networks for P2P Systems» A COMPLETER 44

Bibliographie (2) N. Daswani, H. Garcia-Molina, B. Yang.»Open Problems in Data-Sharing Peer-to- Peer Systems», proc. ICDT Conf. 2003. L. Gong.»JXTA : A Network programming environment», IEEE Internet Computing, 5(3), 2001. M.A.Jovanic et al. «Sclalbility issues in Large Peer-to-Peer Networks A Case Study of Gnutella», Research report, Univ. Cincinnati, 2001. J. Kleinberg. «The small-world phenomenon : an Algorithmic Perspective»? Technical report 99-1776, Cornell Univ. 1999. S. Ratsanamy et al. «A Scalable Content Addressable Network». Proc ACM SIGGCOMM 2001. A. Rowstron, P. Dreschel.»Pastry : Scalable, Distributed Object Location and Routing for Large-Sclae Peer-to-Peer Sharing Systems». Proc IFIP/ACM conf. On Distributed Systems Platforms, 2001. S. Saroiu, P. Gummadi, s. Gribble. «A Measurement Study of Peer-to-Peer Sharing Systems». Proc. Multimedia Computing and Networking, 2002. I. Stoica et al. «Chord : A Sclalble Peer-to-Peer Lookup Service for Internet Applications». Proc ACM SIGCOMM 2001. 45

Bibliographie(3) B. Yang, H. Garcia-Molina. «Improving Search in Peer-to-Peer Systems». Proc 28th Conf. On Distributed Systems, 2002. B. Yang, H. Garcia-Molina. «Comparing Hybrid Peer-to-Peer Systems». Proc. VLDB Conference 2002 B. Yang, H. Garcia-Molina. «Designing a Super-Peer Network». Proc ICDE Conf, 2003. 46