Università degli Studi di Pisa Dipartimento di Informatica MASTER DEGREE COMPUTER SCIENCE AND NETWORKING P2P SYSTEMS: COURSE OUTLINE LAURA RICCI 20/9/2010 Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 1 WHY A COURSE ON PEER TO PEER SYSTEMS? Peer-to-Peer applications have become extremely popular and currently contribute to a vast amount of Internet traffic Popular applications, developed in the last decade: Sharing of Content: File Sharing, Content Delivery Networks Napster, Gnutella, Kazaa, E-Mule, Bittorrent, Akamai Sharing of storage Distributed File Systems Thaoe, XtreemOS distributed filesystem P2P Telephony Skype Massively Multiplayer Online Games OutBack Online Several academic projects Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 2 CLIENT SERVER VS.PEER TO PEER Client Server Peer to Peer Asymmetric: client / server Symmetric: no distinction among nodes Global knowledge of the network Limited Local Knowledge Centralization Decentralization of Control Single Point of Failure Robustness Limited Scalability High scalability Expensive Low Cost Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 3 WHY A COURSE ON P2P SYSTEMS? Even if P2P systems offer a set of interesting features, a set of challenging problems have still to be solved The course presents these problems, discusses the existing solutions, presents the current research efforts for the design of a P2P system Which are the challenges? Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 4 P2P SYSTEMS: THE CHALLENGES Overlay Network: logical network between the peers. Each peer has a limited knowledge of the whole network unstructured overlays: Gnutella, Kazaa, Bitorrent structured overlays: Distributed Hash Tables,Chord, Kademlia.... Delaunay Overlays,... Routing algorithms Flooding, Random Walks O(log n) routing over DHT Statistical analysis of overlays: Node degree Average path length Clustering coefficient Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 5 P2P SYSTEMS: THE CHALLENGES High Churn Rate: P2P systems are highly dynamic, peer can join /leave the overlay at each time: replication strategies to avoid data loss strategies to dinamically preserve the properties of strucured overlays Lack of a central autorithy security issues distributed consistency algorithms for updating on replicated data Cooperation Incentives: detection of free riders credit systems chocking algorithms game theory Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 6 FINAL EXAM Exam conditions a written exam or a project oral exam is mandatory project is strongly recommended Past projects examples: analysis of unstructured overlays extension of existing Distributed Hash Tables Programming Environments P2P network simulators Overlay Weaver Peersim P2P programming environments JXTA Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 7 THESIS PROPOSALS Several bachelor and master thesis completed in the last years XtreemOS European Project: definition of a P2P distributed directory P2P support for distributed virtual environments see subjects of past thesis at http://www.di.unipi.it/~ricci/masterbachelorthesis.htm download thesis reports from http://etd.adm.unipi.it/ Some proposal available on the Computer Science and Networking page Further proposals will be available on the course page http://www.di.unipi.it/~ricci/ Dipartimento di Informatica Università degli Studi di Pisa Laura Ricci 8