Sistemi P2P avanzati Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco – –

Slides:



Advertisements
Presentazioni simili
1 Gestori tecnologici reti Reti Client-Server e Peer to Peer.
Advertisements

di Architetture Peer to Peer per la Gestione di Database Distribuiti
1 Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento.
Peer to Peer DBMS: il sistema FOAF Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Università degli.
Organizzazione di una rete Windows 2003
Cluster openMosix Linux Day ’04 Caserta Ing. Diego Bovenzi.
DNS: Il Servizio Directory di Internet
Routing Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
La rete in dettaglio: rete esterna (edge): applicazioni e host
Organizzazione di una rete Windows Server Client Il ruolo dei computer I computer in una rete possono svolgere le funzioni di client e server dei.
Middleware per MANET WP3 Alessandro Ghioni
Remote file access sulla grid e metodi di interconnesione di rete M. Donatelli, A.Ghiselli e G.Mirabelli Infn-Grid network 24 maggio 2001.
Sistemi Distribuiti Reti di Calcolatori a.a. 2003/2004
1: Introduction1 Condivisione file P2P r Allinizio del 2004 P2P era responsabile di un volume di traffico maggiore a qualunque altra applicazione Internet.
IDUL 2010 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
IDUL 2012 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto logico della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
Peer To Peer (o quasi) Gennaro Cordasco.
? Peer To Peer (P2P) Kademlia pastry can jxta napster fiorana
Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco Gennaro Cordasco
Crawling Saverio Caminiti.
Ancora esercizi!!! Chernoff Bound allora
Sistemi P2P avanzati Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco – –
Autori: I. Stoica, R. Morris, D. Liben-Nowell, D. R. Karger, M. F
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley Chord: A Scalable Peer-to-peer Lookup Service for Internet.
Ricapitolando…. Sistemi P2P puri Sistemi UniformiSistemi Non uniformi KoordeNeighbor of Neighbor routing (NON)
Sistemi P2P avanzati Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco – –
Lezione 5 Domande: Laverage path length di Chord con 2^b identificatori e N=2^b nodi è (giustificare la risposta) Laverage path length di Chord con 2^b.
Errata Corrige. DHT Routing (Tapestry) Tabella di routing (base k=4, digit d=4) Consideriamo il nodo x con id (x 1, x 2, x 3, x 4 ): (1+x 1, *, *, *)
Domande Consideriamo un grafo di de bruijn con base k, ed N = k^b nodi, quale delle seguenti affermazioni è vera (giustificare la risposta) Il grado di.
LA RETE GNUTELLA e il P2P (Prima parte)
Concetti introduttivi
Reti di Calcolatori IL LIVELLO RETE.
La facility nazionale Egrid: stato dell'arte Egrid-Team Trieste, 9 ottobre 2004.
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
P2P (o quasi): Peer To Peer (o quasi) Gennaro Cordasco.
Sistemi P2P avanzati Lezione 3 Chord seconda parte.
Sistemi P2P avanzati Lezione 4 Consisten Hashing Altri sistemi P2P uniformi F-Chord :-)
JXTA: Protocols JXTA definisce una formati per messaggi XML (aka protocolli) per la comunicazione fra peer: Peer Discovery Protocol (PDP) utilizzato dai.
Sistemi Peer To Peer (P2P)
Di Carrera Marco Anno scolastico Cosa è un server di scambio? Sistema (software e hardware) che permette di scambiare file tra computer Esistono.
Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Progetto IS-MANET WP3: Algoritmi e modelli Milano
PERMESSO PERsistent MESSaging in ad hOc networks Alessio Franco Matr Corso di Reti di Calcolatori LS A.A. 2005/2006.
Reti L-S 2005 Servizio per la ricerca distribuita basato sul protocollo Rossi Daniele
Reti di Calcolatori L-S Un Sistema Decentrato di Allocazione del Carico per Applicazioni di Calcolo Distribuito Mauro Bampo.
Corso di Informatica per Giurisprudenza Lezione 7
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
Internet L’essenziale.
Progetto protocollo p2p
COMUNICAZIONE ONLINE, RETI E VIRTUALITA MATTEO CRISTANI.
1 P2P e DHT - G. Ruffo Peer to Peer Computing e Distributed Hash Table (DHT) Giancarlo Ruffo Dipartimento di Informatica Università di Torino.
Peer-to-Peer Systems Content-Based Routing of Path Queries in Peer-to-Peer Systems Georgia Koloniari and Evaggelia Pitoura Ingargiola Salvatore Montauti.
COMUNICAZIONE ONLINE, RETI E VIRTUALITA MATTEO CRISTANI.
Reti di calcolatori 14 novembre 2003 INFORMATICA GENERALE Scienze per Operatori dei Servizi Giuridici Anno Accademico
Le reti di calcolatori ©Apogeo 2004.
Informatica Lezione 9 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
FairPeers Progettazione ed implementazione di un servizio di file management tramite Pastry.
Dischi in RAID  Redundant Array of Independent Disk Configurazione che permette di combinare più dischi secondo obiettivi di performance e ridondanza.
IDUL 2013 RETI E PROTOCOLLI. INTERNET.. IDEE PRINCIPALI IN QUESTA LEZIONE Reti: Aspetto ‘logico’ della rete e tipologie: peer-to-peer, a hub, a bus Trasmissione.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
Overlay network strutturate per applicazioni peer to peer Lorenzo Castelli.
INTRODUZIONE A INTERNET
Servizi Internet Claudia Raibulet
Ernesto Damiani Lezione 5 – Gnutella Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 2 - Telnet, FTP e altri.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Silvia Pasqualotto e Giulia Nanino
I NTERNET Rete interconnessa che permette il collegamento tra due host eterogenei, appartenenti a reti differenti separati anche da grande distanze. Internet.
Riunione PRIN STOA - Bologna - 18 Giugno 2014 Testbed del T2 distribuito Napoli-Roma Dr. Silvio Pardi INFN-Napoli Riunione PRIN STOA – Bologna 18 Giugno.
Cenni di Crittografia Luigi Vetrano TechnoLabs S.p.A. L’Aquila, Aprile 2011.
Algoritmi di routing statici (pag.72) UdA2L4 Questi algoritmi, sono eseguiti solamente all'avvio della rete, e le decisioni di routing a cui essi pervengono.
A simulator for peer to peer protocols Gennaro Cordasco
Transcript della presentazione:

Sistemi P2P avanzati Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco – – – Laboratorio ISISLAB 2 (L8 a Baronissi)

Sistemi P2P avanzati Outline Peer-to-Peer (P2P) –Motivazioni Un po di storia –Napster –Gnutella Classificazione P2P Open Problems

Sistemi P2P avanzati Peer-to-Peer (P2P) File Sharing? Sistema distribuito nel quale ogni nodo ha identiche capacità e responsabilità e tutte le comunicazioni sono potenzialmente simmetriche; Peer to peer (obiettivi): condividere risorse e servizi (dove per risorse e servizi intendiamo: scambio di informazioni, cicli di CPU, spazio sul disco …); I sistemi P2P possiedono molti aspetti tecnici interessanti: –permettono di sfruttare risorse altrimenti non utilizzate; –controllo decentralizzato (niente Server); –assenza di punti nevralgici (single point to failure); –si organizzano da soli;

Sistemi P2P avanzati P2P: Applicazioni File Sharing system File Storage system Distributed file system Grid Computing Redundant storage Anonymity system Collaboration system Instant Messaging system napster gnutella morpheus kazaa bearshare ebay limewire icq fiorana mojo nation jxta united devices open cola uddi process tree can Chord ocean store farsite pastry tapestry ? grove netmeeting freenet popular power jabber Kademlia Kelips Viceroy

Sistemi P2P avanzati P2P: Storia Proposti già da oltre 30 anni (ARPAnet era una rete P2P!!!); Lintroduzione del Web e la grande differenza, in termini di prestazioni, fra macchine Client e Server ha spostato lattenzione verso i sistemi Client\Server; Successivamente, laumento delle prestazioni delle macchine Client e laumento delle capacità di banda della Rete, hanno portato un maggiore interesse verso le risorse che si trovano sul bordo della Rete. Alla fine degli anni novanta sono nati quindi i primi sistemi P2P (ICQ, Linteresse verso questo tipo di protocolli è aumentato con la nascita dei primi sistemi per file-sharing (Napster (1999), Gnutella(2000)); –Nel milioni di utenti hanno scaricato il Client di Napster; –Napster ha avuto un picco di traffico di circa 7 TB in un giorno;

Sistemi P2P avanzati P2P: Storia(2) Sfortunatamente i primi sistemi P2P soffrivano di gravi problemi di scalabilità Napster era un sistema P2P con lookup centralizzata

Sistemi P2P avanzati P2P: Storia(3) Leredità di Napster è stata raccolta da Gnutella; Il 14/03/2000 Justin Frankel e Tom Pepper realizzano la prima release di Gnutella (!!! Solo 14 ore !!! ); La taglia della rete cresce in 7 mesi da 2K a 48K nodi; Tuttavia nel 95% delle query il diametro è di 7-8 hop; Le applicazioni più conosciute che si basano sul protocollo Gnutella sono: – BearShare; – LimeWire; – …

Sistemi P2P avanzati P2P: Storia(4) La lista degli host presenti nella rete è disponibile sul Server gnutellahost.com; Il Server gnutellahost.com( ) viene usato dai nodi per il boot: –Single point of failure; –La ricerca di un file usa il flooding (non è scalabile): –controllo dei cicli; –TTL per evitare di congestionare la rete; C A BD E As query (e.g., X) Cs query hit Es query hit X X GET X X

Sistemi P2P avanzati P2P: Storia(4)

Sistemi P2P avanzati P2P: Scalabilità Il lavoro richiesto a un determinato nodo nel sistema non deve crescere (o almeno cresce lentamente) in funzione del numero di nodi nel sistema; I protocolli usati da Napster e Gnutella non sono scalabili; Per migliorare la scalabilità sono nati i cosiddetti protocolli P2P di seconda generazione che supportano DHTs (Distributed Hash Tables); Alcuni esempi di questi protocolli sono: Tapestry, Chord, CAN, Viceroy, Koorde, kademlia, kelips …;

Sistemi P2P avanzati Esempi

Sistemi P2P avanzati P2P di seconda generazione e DHT A ogni risorsa e ad ogni nodo è associata una chiave La chiave viene di solito creata facendo lhash del nome della risorsa o dellIP del nodo Ogni nodo del sistema è responsabile di un insieme di risorse/chiavi e tutti realizzano una DHT Lunica operazione che un sistema DHT deve fornire è lookup(chiave), la quale restituisce lidentità del responsabile di una determinata chiave

Sistemi P2P avanzati P2P di seconda generazione e DHT Tutti i nodi del sistema condividono una tabella hash Conoscono la struttura della tabella Ma non conoscono il responsabile di una determinata entry Nodo x Nodo y Nodo z ID …2m …2m …

Sistemi P2P avanzati P2P Classificazione Sistemi P2P Centralizzati (a.k.a. Ibridi) Sistemi P2P Gerarchici Sistemi P2P Puri Sistemi P2P che utilizzano SuperPeer

Sistemi P2P avanzati P2P Classificazione Sistemi P2P Centralizzati (a.k.a. Ibridi) Resource request P2P Communication

Sistemi P2P avanzati P2P Classificazione Sistemi P2P Gerarchici Servers/Coordinators Communication Resource request P2P Communication

Sistemi P2P avanzati P2P Classificazione Sistemi P2P Puri P2P Communication

Sistemi P2P avanzati P2P Classificazione Sistemi P2P che utilizzano SuperPeer Servers/Coordinators Communication Resource request P2P Communication

Sistemi P2P avanzati P2P Classificazione(2) E possibile classificare i sistemi P2P in base allapplicazione fornita: –File Sharing –Communication –Distributed Computing –Collaboration

Sistemi P2P avanzati P2P Desiderata Scalability Stability Performance Decentralization Load Balancing Topology awareness Flexibility

Sistemi P2P avanzati P2P: Capacità di far fronte ai fallimenti Cosa succede se un nodo cade? –I dati presenti nel nodo possono essere recuperati solo se ci sono duplicati. –Il routing continua a funzionare? Con quale efficienza? –Quanto costa una procedura per ripristinare tutti i link? –Chi chiama questa procedura? (vale a dire chi si accorge che un nodo non è attivo).

Sistemi P2P avanzati P2P: Routing Hot Spots Se una chiave è richiesta più spesso, il responsabile della chiave e anche i suoi vicini potrebbero sovraccaricarsi; – Per ovviare al problema si possono usare meccanismi di caching e di duplicazione; Diverso è il problema relativo ai nodi che si sovraccaricano per il traffico generato dalle lookup; – Questo tipo di traffico è abbastanza difficile da individuare e da gestire;

Sistemi P2P avanzati P2P: Performance Dal punto di vista topologico: Consideriamo una rete P2P come un grafo G=(V,E), dove V è linsieme dei nodi nel sistema e E rappresenta linsieme delle interconnessioni fra essi: –Minimizzare, per ogni nodo, le informazioni relative agli altri nodi: minimizzare il grado dei nodi; –Minimizzare il numero di messaggi necessari per fare lookup: Minimizzare il diametro; Minimizzare laverage path lenght (APL), vale a dire, la distanza media fra due nodi nel grafo. Condizioni necessarie ma non sufficienti

Sistemi P2P avanzati P2P: Incorporating Geography Di solito le le prestazioni del routing dei sistemi P2P si misurano contando il numero di hop necessari a individuare il responsabile di una chiave a parità di link nella rete Sarebbe utile, inoltre, minimizzare la latenza del singolo hop In pratica vogliamo che nodi vicini sulla rete DHT, siano fisicamente vicini s t s t

Sistemi P2P avanzati P2P: Incorporating Geography(2) Alcune tecniche: –Geographic Layout: Usare un algoritmo per attribuire le chiavi ai nodi in modo che nodi fisicamente vicini abbiano identificatori simili. (Controindicazioni: Bilanciamento del carico, Routing Hot Spots e Sicurezza) – PNS(Proximity neighbor selection) La scelta dei vicini non dipende solo dalla distanza fra i nodi sulla rete di overlay ma è influenzata anche dalle distanze reali –PRS(Proximity routing selection) Durante la ricerca lalgoritmo di routing non sceglie il successivo step basandosi solo sulla distanza fra i nodi nella rete di overlay; considera anche la distanza effettiva fra i nodi (in termini di RTT)

Sistemi P2P avanzati P2P: Extreme Heterogeneity I nodi connessi a questo tipo di reti sono eterogenei (Es. capacità di calcolo e banda) E possibile progettare algoritmi di routing che considerino anche questa eterogeneità La tecnica più diffusa per risolvere questo problema consiste nel considerare dei nodi virtuali tutti con le stesse capacità e assegnare a ogni nodo reale un numero di nodi virtuali proporzionale alle proprie capacità

Sistemi P2P avanzati P2P: Sicurezza E possibile realizzare un protocollo P2P che resiste ad attacchi di tipo denial of service E necessario replicare i dati E importante usare funzioni hash One Way (per i dati e per i nodi) E importante osservare che tutte le dimostrazioni relative alla sicurezza dei vari algoritmi incontrati finora si basano sul fatto che le chiavi vengono associate ai nodi e alle risorse in modo pseudo- casuale (quasi tutti gli algoritmi usano SHA-1)

Sistemi P2P avanzati Riferimenti S. Ratnasamy, S. Shenker, and I. Stoica. Routing algorithms for DHTs: Some open questions. In 1st International Peer To Peer Systems Workshop (IPTPS02). I. Stoica, R. Morris, D. Liben-Nowell, D. R. Karger, M. F. Kaashoek, F. Dabek, H. Balakrishnan, Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications. In IEEE/ACM Trans. on Networking, 2003.

Sistemi P2P avanzati Fine Lezione 1