Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 414 - Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt.

Similar presentations


Presentation on theme: "CS 414 - Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt."— Presentation transcript:

1 CS 414 - Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt

2 Administrative MP3 ongoing CS 414 - Spring 2014

3 Why P2P? People like to get together  Share things  Share information How can I find others to share? How can I find what they are sharing? CS 414 - Spring 2014

4 Why P2P? WWW to share?  Not everyone can set up and maintain a website  Might not have a good enough search engine rank Sharing on a social network?  Only possible if you created the content  People have to find you, instead of the content CS 414 - Spring 2014

5 Napster Created in 1999 to share music CS 414 - Spring 2014 Napster’s servers Store file directory (Filename/location) Clients/peers Store files Centralized Peer Management: Each Peer registers with the Napster server and Napster server(s) keep Peer List Centralized File Management: Searching for other peer file is central, i.e., Peers go to Napster servers which keep file list of files and which peer keeps what files

6 Napster- Search Operation CS 414 - Spring 2014 1. Query (keyword) 2. Servers search using ternary tree 3. Response 4. Ping candidates 5. Download

7 Napster’s drawbacks Asymmetric operation – servers vs. client peers  Centralized Peer Management and File Management  Scalability and congestion issues  Single point of failure Napster responsible for abetting users’ copyright violation CS 414 - Spring 2014

8 Contemporary P2P systems Symmetric operation – all nodes (peers) have the same functionality  System naturally scales with new peers Distributed Peer Management  Each peer when it comes online, advertises its own presence  Each peer keeps a peer list to whom it is connected Distributed File Management  Each peer keeps file list of files it keeps.  If a peer wants a file, it queries/searches for a file. CS 414 - Spring 2014

9 Contemporary P2P systems Basic operations  Insert file  Search file  Delete file  Maintain an overlay network CS 414 - Spring 2014 physical network Overlay P2P network

10 Contemporary P2P Systems (Classification) Usually classified depending on how peers connect to each-other  how the overlay network is created and maintained Unstructured – no particular connection pattern (e.g., randomly connected)  Gnutella  Fast Track Skype  BitTorrent, etc. CS 414 - Spring 2014

11 Contemporary P2P Systems (Classification) Structured – defines a distributed data structure (e.g., distributed hash table)  Chord  Pastry  CAN  Etc. CS 414 - Spring 2014

12 Gnutella – Example of Unstructured P2P CS 414 - Spring 2014 Servents (peers) Peer pointer Peers store: Their files Peer pointers (peer management)

13 Gnutella, searching for files CS 414 - Spring 2014 Query message: Query hit message: <id, QUERY HIT, ttl, hops, payload length, num hits, port, ip, speed, (fileindex, filename, filesize), servent id> “jazz”?? 1.Flood query ( ) 2.Ignore repeated messages 3.Answer if local match 4.Query hit sent using reverse path ( ) 5.Establish connection and fetch file ( ) “jazz”

14 Gnutella, maintaining overlay (peer management) CS 414 - Spring 2014 V X A Ping: Pong: Neighbor list: “A” “V” “X” 1.Periodically flood ping ( ) 2.Pong sent using reverse path( ) 3.Update neighbor list with received pongs Why periodically?

15 Gnutella, maintaining the overlay (peer management) CS 414 - Spring 2014 V X Peers can leave or fail at any time – P2P systems can have high churn rate!. Neighbor list: “A” “V” “X”

16 Gnutella: some issues Ping/Pong constitutes 50% of traffic Flooding causes excessive traffic Repeated searches with same keywords Large number of freeloaders (70% of users in 2000) CS 414 - Spring 2014

17 DHTs (Distributed Hash Tables) – Example of Structured P2P Hash table allows these operations on object identified by key:  Insert  Lookup  Delete Distributed Hash Table – same but in a distributed setting (object could be files) CS 414 - Spring 2014

18 DHT performance comparison MemoryLookup latencylookup overhead NapsterO(1) at client; O(N) at server O(1) GnutellaO(N) Chord (DHT)O(log(N)) CS 414 - Spring 2014

19 Conclusion P2P technology – very viable technology for multimedia distribution CS 414 - Spring 2014


Download ppt "CS 414 - Spring 2014 CS 414 – Multimedia Systems Design Lecture 37 – Introduction to P2P (Part 1) Klara Nahrstedt."

Similar presentations


Ads by Google