====== Sistemi Peer to Peer 2011/12 ====== =====Docente: Laura Ricci ===== {{:informatica:p2p:new.gif?|}} Il 18/4/2012 è stato consegnato il testo Graph Theory and Complex Network, Van Steen (in formato elettronico). Chi non avesse ricevuto la copia del testo, si può mettere in contatto con me. ===== Orario delle lezioni ===== ^ Giorno ^ Orario ^ Aula ^ | Mercoledì | 9.00-11.00 | N1 | | Venerdì | 16.00-17.30 | L1 | ===== Orario di Ricevimento ===== ^ Giorno ^ Orario ^ Luogo ^ |Giovedì | 15.00-18.00 | Studio Ricci (348DE) presso Dipartimento di Informatica | Per qualsiasi problema, e per la richiesta di tesi/tirocini riguardanti gli argomenti del corso, potete contattatemi via e-mail (ricci@di.unipi.it) oppure su skype (contatto lauraemiliaricci) oppure durante l'orario di ricevimento. ===== Informazioni Generali ===== Nell'anno accademico 2011/2012 il corso si terrà in LINGUA ITALIANA, nel secondo semestre Il programma dell'anno accademico 2011/2012 prevede alcune parti nuove rispetto a quelle degli anni precedenti, in particolare la parte sulle reti P2P mobili (reti opportunistiche, modelli di mobilita'). Su questo argomento sono disponibili tesi di laurea ===== Regolamento per studenti dei vecchi corsi di laurea ===== Gli studenti che hanno frequentato le vecchie Lauree Specialistiche possono comunque sostenere l'esame che verrà verbalizzato con il vecchio codice Gli studenti della vecchia laurea triennale(26) possono inserire l'esame nel proprio piano di studi utilizzando i crediti a scelta Gli studenti della vecchia laurea triennale(26) che hanno gia' utilizzato i crediti a scelta e che intendono sostenere l'esame sono pregati di contattarmi =====Prerequisiti===== Reti di Calcolatori, Algoritmica ===== Materiale Didattico ===== * **Lucidi delle Lezioni + Materiale Integrativo** * **Testi di Riferimento** * //Overlay Networks, Toward Information Networking//, Sasu Takoma, Taylor and Francis, ‏ 2010 * //Graph Theory and Complex Networks//, M. Van Steen, 2010 Per ottenere i testi di riferimento, contattare il docente * **Testi di Consultazione** * //P2P: Networking and Applications//, J. Buford, H. Yu, E.K.Lua, Morgan Kaufmann, 2009 * //Peer to Peer Systems and Applications//, R.Steinmetz, K. Wehrle, LNCS. 3485, Springer Verlag, 2005 * //Peer to Peer Computing, Principles and Applications//, Q.Hieu Vu, M.Lupu, B. Chin Ooi, Springer Verlag, 2010 ===== Modalitá d'esame ===== L'esame prevede una **prova scritta** oppure **un progetto** ed una prova orale. La prova orale può essere rimpiazzata da alcune prove proposte durante il corso. Durante il corso verranno infatti consegnati degli esercizi e verrà indicata, per ogni esercizio, una **deadline** entro cui l'esercizio dovrà essere consegnato. Lo studente **non dovrà sostenere la prova orale** nel caso in cui tutti gli esercizi consegnati entro la deadline risultino sufficienti. Altrimenti lo studente dovrà sostenere la prova orale sia nel caso in cui abbia svolto il progetto che in quello in cui abbia sostenuto la prova scritta. ===== Verifiche Intermedie ===== Il Final Term è stato assegnato in data 25/5/2012 e deve essere consegnato entro l'08/06/2012. Per qualsiasi problema relativo alla comprensione del testo, potete contattarmi via e-mail o durante l'orario di ricevimento. ^ Testo ^ Riferimenti ^ |[[http://www.di.unipi.it/~ricci/Assignment-28-03-12.pdf|Mid Term]]| [[http://www.di.unipi.it/~ricci/tapestry_jsac03.pdf|Tapestry]] [[http://www.di.unipi.it/~ricci/viceroy.pdf|Viceroy]] | |[[http://www.di.unipi.it/~ricci/Assignment-25-05-12.pdf|Final Term]]| [[http://www.di.unipi.it/~ricci/Gossipico.pdf|Gossipico]] | ^ Cognome ^ Valutazione MidTerm ^ Valutazione FinalTerm ^ | Aiello | Ottimo | Ottimo | | Baroni | Appena Sufficiente| Discreto | |Cipolli | Discreto | Ampiamente Sufficiente | | Dondio | Buono | Buono | | Esposito | Buono | Discreto | |Guidi | Discreto | Discreto | |LaRosa |Buono | Ottimo | |Manzulli | Ampiamente Sufficiente | Discreto | |Piermartini | Ottimo (e Lode)| Ottimo(e Lode) | |Pitto | Buono | Ottimo | |Soldani | Ottimo| Ottimo (e Lode) | Gli elaborati possono essere visionati durante l'orario di ricevimento. **Valutazione:** OTTIMO 29-30 BUONO 27-28 DISCRETO 25-26 SUFFICIENTE 18-24 ===== Appelli di Esame ===== [[http://www.di.unipi.it/~ricci/p2p040612.pdf|Appello 04/06/2012: Testo]] **Risultati** ^ Cognome ^ Valutazione ^ | Cornolti | Discreto | | Pitto | Ottimo| | Soldani | Buono | [[http://www.di.unipi.it/~ricci/p2p250612.pdf|Appello 25/06/2012: Testo]] **Risultati** ^ Cognome ^ Valutazione ^ | Aiello | Sufficiente | | Manzulli | Sufficiente| Per la verbalizzazione dell'esame, contattemi via e-mail, oppure durante l'orario di ricevimento, giovedì ore 15.00-18.00 ===== Progetti proposti ====== I progetti proposti per l'anno accademico 2011/12 sono i seguenti: ^ Argomento ^ Testo del Progetto ^ Riferimenti ^ |Costruzione di Overlay Strutturati Mediante Gossip|[[http://www.di.unipi.it/~ricci/t-chord1112.pdf|Chord on Demand]]|[[http://www.di.unipi.it/~ricci/Slides-Montresor.pdf|SlidesMontresor]] [[http://www.di.unipi.it/~ricci/TMAN.pdf|TMAN]][[http://www.di.unipi.it/~ricci/tchord.pdf|TChord]]| |Symphony: Distributed Hashing in a Small World|[[http://www.di.unipi.it/~ricci/DHT-Symphony-1112.pdf|Symphony-DHT]]|[[http://www.di.unipi.it/~ricci/symphony.pdf|Symphony]]| * I progetti rimangono validi fino alla fine di Aprile 2013. * Il progetto può essere consegnato in qualsiasi periodo dell'anno esclusi i periodi di vacanza (agosto ed il periodo natalizio). La discussione del progetto e l'eventuale orale si tengono circa una settimana dopo la consegna del progetto. * Nel caso di problemi con Peersim/PeerfactSIM.KOM, contattatemi via e-mail =====Programma del Corso===== * Introduzione * Sistemi P2P : caratteristiche generali * Applicazioni P2P: file sharing (eMule), voice over P2P (Skype), content distribution networks (BitTorrent), reti sociali P2P (Triber) * Overlay Non strutturati * Sistemi Centalizzati: Napster, e-Mule: la rete dei server * Sistemi Completamente Distribuiti: Gnutella 0.4 * Sistemi Ibridi: Gnutella 0.6, Kazaa * Overlay strutturati: Distributed Hash Tables * Chord * Prefix Based DHT: Pastry, Kademlia * Emule: la Rete KAD * CAN, Proximity Aware Overlays: Vivaldi * Query Complesse su DHT * Content Distribution Networks: BitTorrent * Strategie di cooperazione * Algoritmi per la scelta dei contenuti * Voice over P2P: Skype * Reti P2P in ambienti mobili * Opportunistic Networks * Modelli di mobilità * Condivisione di contenuti in ambienti P2P mobili * Overlay P2P: analisi di reti complesse * Random Graphs * Small Worlds: Modello di Watts Strogatz, Kleinberg * Symphony * File Sharing Social Networks * Scale Free Networks: Gnutella * Processi Stocastici * Modelli Epidemici * Protocolli P2P basati su Gossip * Network Dynamics: processi random su reti complesse, random walks * Strumenti per la simulazione di reti P2P: Peersim, PerfactSim =====Proposte di Tesi===== Nel seguente documento sono riportate alcune proposte di tesi magistrali e di tirocini per il curriculum professionalizzante [[http://www.di.unipi.it/~ricci/Proposte-Maggio-27-05-12.pdf|Proposte Tesi Maggio 2012]] Gli studenti interessati possono inviarmi una e-mail o contattarmi durante l'orario di ricevimento. ===== Registro delle lezioni ===== **IMPORTANTE: ** Il corso è in continua evoluzione, per cui si devono utilizzare i lucidi pubblicati in questa sezione, non quelli degli anni precedenti! ^ Giorno ^ Argomenti ^ Lucidi ^ Materiale Integrativo ^ |22/2/2012 |Introduzione al Corso | | | |23/2/2012 |Sistemi Centralizzati, Attraversamento di NAT | |[[http://www.di.unipi.it/~ricci/rfc5128.pdf|Hole Punching: Tutorial 1]][[http://www.di.unipi.it/~ricci/p2pnat.pdf|Hole Punching: Tutorial 2]]| |29/2/2012 |Sistemi Completamente Decentralizzati, Gnutella 0.4 | | | |02/3/2012 |Sistemi Ibridi, Gnutella 0.6, Kazaa | | [[http://www.di.unipi.it/~ricci/TutorialKazaa.pdf|Tutorial Kazaa]] | |07/3/2012 |Bloom Filter in Sistemi P2P | |[[http://www.di.unipi.it/~ricci/im2005b.pdf|Tutorial Bloom Filter: Definizione ed Applicazioni]] | |07/3/2012 |DHT: Introduzione | | | |09/3/2012 |Chord: Analisi del Routing, Self Organization | | | |14/3/2012 |Chord: Self Organization | | | |16/3/2012 |CAN: Content Addressable Network, Proximity Sensitive Overlay | | | |21/3/2012 |Modelli Epidemici, Algoritmi di Gossip, Peer Sampling| |[[http://www.di.unipi.it/~ricci/demers-epidemic.pdf|Algoritmi Epidemici: Tutorial]][[http://www.di.unipi.it/~ricci/all.pdf|Random Peer Sampling]] | |23/3/2012 |Reti Complesse: Modello dei Random Graph| | | |28/3/2012 |Small World Networks: Modello di Watts Strogatz| | | |18/4/2012 |Coefficiente di Clustering: esercizi| | Attenzione: Data Ultimo Upload 18/4/2012| |20/4/2012 |Query Complesse in Sistemi P2P| |Guest Lecture del Dott. Matteo Mordacchini| |27/4/2012 |EMule: Architettura, Crediti, Merkel Trees| |[[http://www.di.unipi.it/~ricci/e-mule-report.pdf|Tutorial EMule]] | |02/5/2012 |Kademlia: Metrica, Gestione tabelle di Routing, Routing| | | |04/5/2012 |KAD: DHT in e-Mule e BitTorrent| |[[http://www.di.unipi.it/~ricci/A-performance-evaluation-of-the-Kad-protocol.pdf| 1 Tutorial KAD]] [[http://www.di.unipi.it/~ricci/emule_reverse_report-Kademlia.pdf| 2 Tutorial KAD]] | |09/5/2012 |BitTorrent: Algoritmi, Tit for Tat| |[[http://www.di.unipi.it/~ricci/jBittorrentAPI_report.pdf| Centralized Tracker Protocol]][[http://www.di.unipi.it/~ricci/XR-EE-LCN_2010_010.pdf| Distributed Tracker]] | |11/5/2012 |Ricerca decentralizzata in Reti Small World| | | |16/5/2012 |Peersim: Presentazione del Simulatore| | | |18/5/2012 |Scale Free Network: Distribuzioni Power Law| | | |23/5/2012 |Opportunistic Networking and Computing| | |Guest Lecture della Dott.ssa Franca Del Mastro | |25/5/2012 |PeerFactSIM.KOM: Presentazione del Simulatore| | |Guest Presentation di Carmela Semprevivo: Orientamento per la Tesi di Laurea | |25/5/2012 | Distributed Virtual Environments: Proposte P2P| | | ===== Link corso anno precedente ===== [[Peer to Peer 2010-2011]]