====== Peer to Peer Systems 2014/15 ====== =====Teacher: Laura Ricci ===== **Note: This is a temporary page: the course will be managed by the Moodle platform.** **For any information about the course contact laura.ricci@di.unipi.it/ricci@di.unipi.it ** You can find all the materials of the course on the Moodle Site: [[https://elearning.di.unipi.it/moodle/course/view.php?id=41|Link to the Moodle Site of the Course]] The Moodle Site is also exploited for communications, assignments, discussions,... ===== Timetable===== **Please check this page for possible timetable updates!** {{:informatica:p2p:new.gif?50|}}**New Timetable!** ^ Day ^ Hour ^ Room ^ | **Tuesday** | **11.00-13.00** | **N1** | | **Wednesday** | **11.00-13.00**| **L1** | {{:informatica:p2p:new.gif?50|}}The class of Friday September 26th will not be held, it will be made up in the next weeks. ===== Question Time ===== ^ Day ^ Hour ^ Place ^ |Giovedì | 15.00-18.00 | Studio Ricci (348DE) Computer Science Department | For any problem and for requesting bachelor/master thesis, we can contact me by e-mail (ricci@di.unipi.it) or by skype (contact lauraemiliaricci) or during the question time. =====Prerequisites===== Computer Networks, Algorithm Engineering =====Preliminary Course Program===== * Introduction * P2P Systems : general characteristics * P2P Applications: file sharing, voice over P2P, content distribution networks, P2P video e music streaming * Unstructured Overlays * Centralized systems: Napster, e-Mule: the server network * NAT transversal techniques * Distributed Systems: Gnutella 0.4 * Hybrid Systems: Gnutella 0.6, Kazaa * Structured Overlays: Distributed Hash Tables * Chord * CAN, Proximity Aware Overlays: Vivaldi * Prefix Based DHT: Kademlia * DHT Applications: * Kademlia Implementation in EMule e Bitorrent: the KAD network * DHT based Distributed Systems: Amazon Dynamo * Formal tools: Markov Chians * Distribution of routing paths in Chord * Epidemic Models * SI model (anti entropy) * SIR model (rumor mongering) * Gossip Algorithms * Random Peer Sampling * Information Diffusion * Computation of aggregation functions * Network Dynamics: random processes on complex networks, random walks * P2P Overlays analysis as complex networks * Random Graphs * Small Worlds: Watts Strogatz, Kleinberg models * d-lattice: clustering coefficient * Symphony: a Kleinberg based DHT * Overlay Analysis: * Chord: clustering coefficient, node degree, diameter * Analysis of networks generated by random peer sampling * Scale Free Networks: Gnutella * Content Distribution Networks: BitTorrent * Elements of game theory * Chocking: peer cooperation * Algorithms for choosing pieces * P2P Audio/Video Streaming: Spotify * Distributed Virtual environments: Massively Multiplayer Online Games on cloud e P2P * Simulators for P2P: Peersim, PerfactSim ==== Link to the Course of the Previous Year ==== [[informatica:p2p:peer-to-peer-1415]] [[Peer to Peer 2013-2014]]