P2P tutorial (ESEC 2001) 和 Usage Patterns to position P2P Discovering information is the predominant problem Occasional discovery:search engines P2P,MA ad hoc requests,irregular -E.g.,new town-where is the next car rental? Notification:event-based systems push notification for(correlated)events(event patterns) -E.g.,notify me when my stocks drop below a threshold .Regular discovery:P2P systems search engines,MA find certain type of information on a regular basis E.g.,search for MP3 files of Jethro Tull regularly ● Continuous information feed:push systems event-based -subscription to a certain information type -E.g.,sports channel,updates are sent as soon as available 82001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 The Interaction Spectrum Event-based systems Mobile agents Push systems Peer-to-peer systems passive active 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 22 (c)2001 Karl Aberer,Manfred Hauswirth 11
P2P tutorial (ESEC 2001) (c) 2001 Karl Aberer, Manfred Hauswirth 11 © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 21 Usage Patterns to position P2P Discovering information is the predominant problem • Occasional discovery: search engines – ad hoc requests, irregular – E.g., new town — where is the next car rental? • Notification: event-based systems – notification for (correlated) events (event patterns) – E.g., notify me when my stocks drop below a threshold • Regular discovery: P2P systems – find certain type of information on a regular basis – E.g., search for MP3 files of Jethro Tull regularly • Continuous information feed: push systems – subscription to a certain information type – E.g., sports channel, updates are sent as soon as available P2P, MA push search engines, MA event-based © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 22 The Interaction Spectrum Event-based systems Push systems Mobile agents Peer-to-peer systems passive active
P2P tutorial (ESEC 2001) Peer-to-Peer vs.C/S and web-based Systems Client-Server Session- Peer-to-Peer Web-based based Coupling tight loose very loose Comm. Style asymmetric asymmetric symmetric Number of moderate high Clients (1000) (1,000,000) high(1,000,000) Number of Servers few (10) many (100,000) none(0) 2001 Karl Aberer,Manfred Hauswirth ESEC/PSE 2001 2 Coupling vs.Scalability session-based push-based event-based web-based peer-to-peer Scalability 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 (c)2001 Karl Aberer,Manfred Hauswirth 12
P2P tutorial (ESEC 2001) (c) 2001 Karl Aberer, Manfred Hauswirth 12 © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 23 Peer-to-Peer vs. C/S and web-based Systems Client-Server Sessionbased Web-based Peer-to-Peer Coupling tight loose very loose Comm. Style asymmetric asymmetric symmetric Number of Clients moderate (1000) high (1,000,000) high (1,000,000) Number of Servers few (10) many (100,000) none (0) © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 24 Coupling vs. Scalability Scalability Coupling session-based web-based push-based event-based peer-to-peer
P2P tutorial (ESEC 2001) 和 Main P2P Design Requirements 。Resource discovery ·Managing updates 。Scalability Robustness and fault tolerance Trust assessment and management 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 25 The P2P Cloud Alpine India Akamai Napster Chord DFSI Gnutella JXTA Gridella Freenet Intermemory OFSI Gnutmeg ..and many more .. 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 26 (c)2001 Karl Aberer,Manfred Hauswirth 13
P2P tutorial (ESEC 2001) (c) 2001 Karl Aberer, Manfred Hauswirth 13 © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 25 Main P2P Design Requirements • Resource discovery • Managing updates • Scalability • Robustness and fault tolerance • Trust assessment and management © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 26 The P2P Cloud Gnutella Freenet Napster JXTA Akamai India Intermemory Alpine Chord DFSI OFSI Gnutmeg ... and many more ... Gridella
P2P tutorial (ESEC 2001) State-of-the-Art Systems ·Napster ·Gnutella gnutella ·Freenet 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 27 Napster:A brief History May 1999:Napster Inc.file share service founded by Shawn Fanning and Sean Parker 。 Dec 7 1999:Recording Industry Association of America(RIAA)sues Napster for copyright infringement April 13,2000:Heavy metal rock group Metallica sues Napster for copyright infringement 。 April 27,2000:Rapper Dr.Dre sues Napster May 3,2000:Metallica's attorney claims 335,000 Internet users illegally share Metallica's songs via Napster July 26,2000:Court orders Napster to shut down Oct 31,2000:Bertelsmann becomes a partner and drops lawsuit Feb 12,2001:Court orders Napster to cease trading copyrighted songs and to prevent subscribers to gain access to content on its search index that could potentially infringe copyrights Feb 20,2001:Napster offers $1 billion to record companies (rejected) March 2,2001:Napster installs software to satisfy the order 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 (c)2001 Karl Aberer,Manfred Hauswirth 14
P2P tutorial (ESEC 2001) (c) 2001 Karl Aberer, Manfred Hauswirth 14 © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 27 State-of-the-Art Systems • Napster • Gnutella • Freenet © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 28 Napster: A brief History • May 1999: Napster Inc. file share service founded by Shawn Fanning and Sean Parker • Dec 7 1999: Recording Industry Association of America (RIAA) sues Napster for copyright infringement • April 13, 2000: Heavy metal rock group Metallica sues Napster for copyright infringement • April 27, 2000: Rapper Dr. Dre sues Napster • May 3, 2000: Metallica’s attorney claims 335,000 Internet users illegally share Metallica’s songs via Napster • July 26, 2000: Court orders Napster to shut down • Oct 31, 2000: Bertelsmann becomes a partner and drops lawsuit • Feb 12, 2001: Court orders Napster to cease trading copyrighted songs and to prevent subscribers to gain access to content on its search index that could potentially infringe copyrights • Feb 20, 2001: Napster offers $1 billion to record companies (rejected) • March 2, 2001: Napster installs software to satisfy the order
P2P tutorial (ESEC 2001) Napster:System Architecture Central (virtual)database which holds an index of offered MP3/WMA files ● Clients(!)connect to this server,identify themselves(account)and send a list of MP3/WMA files they are sharing(C/S) Other clients can search the index and learn from which clients they can retrieve the file (P2P) Combination of client/server and P2P approaches First time users must register an account 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 29 Napster:Communication Model Napster Server register (user,files)】 "Where is X.mp3?" "A has X.mp3” B Download X.mp3 2001 Karl Aberer,Manfred Hauswirth ESEC/FSE 2001 (c)2001 Karl Aberer,Manfred Hauswirth 15
P2P tutorial (ESEC 2001) (c) 2001 Karl Aberer, Manfred Hauswirth 15 © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 29 Napster: System Architecture • Central (virtual) database which holds an index of offered MP3/WMA files • Clients(!) connect to this server, identify themselves (account) and send a list of MP3/WMA files they are sharing (C/S) • Other clients can search the index and learn from which clients they can retrieve the file (P2P) • Combination of client/server and P2P approaches • First time users must register an account © 2001 Karl Aberer, Manfred Hauswirth ESEC/FSE 2001 30 Napster: Communication Model A B Napster Server register (user, files) “Where is X.mp3?” “A has X.mp3” Download X.mp3