P2P - Principle Architecture and Challenges


Published on

Published in: Technology

P2P - Principle Architecture and Challenges

  1. 1. Prof. Kang Xi By Anand Lotia Srijish Sridharan (0356187) (0332873)
  3. 3. INTRODUCTION <ul><li>What does a Peer mean in P2P? </li></ul><ul><li>Hosts on Internet having equal rights </li></ul><ul><li>Fundamental architecture in today’s world </li></ul><ul><li>Server-Client and P2P architecture </li></ul>
  4. 4. HISTORY OF P2P
  5. 5. HISTORY OF P2P <ul><li>Is the P2P concept new or did it already exist? </li></ul><ul><li>USENET and DNS – similar concept to P2P networks </li></ul><ul><li>Peer-to-Peer communication model: </li></ul><ul><li>Each peer can act as Server and Client </li></ul><ul><li>Each peer can initiate the communication session </li></ul><ul><li>Peers are directly connected to each other for file transfer </li></ul>
  6. 6. HISTORY OF P2P <ul><li>USENET </li></ul><ul><li>Based on UUCP (Unix-to-Unix Protocol) </li></ul><ul><li>Used to exchange files, system patches, etc </li></ul><ul><li>Now uses NNTP (Network News Transport Protocol) </li></ul>
  7. 7. HISTORY OF P2P <ul><li>DNS (Domain Name System) </li></ul><ul><li>DNS information is spread over different servers </li></ul><ul><li>Can act as Server or Client </li></ul>
  8. 8. HISTORY OF P2P <ul><li>Launch of the first Peer-to-Peer application </li></ul><ul><li>Napster – Shawn Fanning (1999) </li></ul><ul><li>Created to share music in the Northeastern University </li></ul>
  9. 9. HISTORY OF P2P <ul><li>Following the pioneer </li></ul><ul><li>Morpheus </li></ul><ul><li>Kazaa </li></ul><ul><li>BearShare </li></ul><ul><li>iMesh </li></ul>
  10. 10. Peer-to-Peer Architecture
  11. 11. Peer-to-Peer Architecture Architecture Based on File Listing Based on Node Connections Centralized Decentralized Unstructured Structured
  12. 12. Peer-to-Peer Architecture <ul><li>Depending upon the listing of files: </li></ul><ul><li>Centralized (Hybrid) </li></ul><ul><li>Decentralized </li></ul><ul><li>Depending upon how the nodes are connected: </li></ul><ul><li>Unstructured </li></ul><ul><li>Structured </li></ul>
  13. 13. Peer-to-Peer Architecture <ul><li>Centralized (Hybrid) </li></ul><ul><li>File listing exists on central server </li></ul><ul><li>All peers connect to this central server </li></ul><ul><li>Examples: Napster, ICQ </li></ul>
  14. 14. Peer-to-Peer Architecture <ul><li>Decentralized </li></ul><ul><li>No Central Server </li></ul><ul><li>Each node connected to many other nodes </li></ul><ul><li>May be pure Peer-to-Peer or with Super Peers </li></ul><ul><li>Examples: Gnutella, BitTorrent </li></ul>
  15. 15. Peer-to-Peer Architecture <ul><li>Unstructured </li></ul><ul><li>Nodes created arbitrarily </li></ul><ul><li>Each node copies link information from other connected nodes </li></ul><ul><li>Simple, however not efficient </li></ul><ul><li>Examples: FastTrack, Gnutella </li></ul>
  16. 16. Peer-to-Peer Architecture <ul><li>Structured </li></ul><ul><li>Implements algorithms to ensure connection between nodes. </li></ul><ul><li>Efficient, however complex algorithms involved </li></ul><ul><li>Examples: DHT and HyperCuP </li></ul>
  17. 17. Types of P2P Networks
  18. 18. Types of P2P Networks <ul><li>Napster </li></ul><ul><li>Gnutella </li></ul><ul><li>FastTrack </li></ul><ul><li>eDonkey </li></ul><ul><li>BitTorrent </li></ul>
  19. 19. Types of P2P Networks <ul><li>Napster </li></ul><ul><li>Peers connect to the Central Server </li></ul><ul><li>File request sent to the server </li></ul><ul><li>Server responds with the ID of the sharing peer </li></ul><ul><li>Peers are directly connected for file transfers </li></ul><ul><li>Control messages used to ignoring spam users, sending private messages, creating favorites list, etc </li></ul>
  20. 20. Types of P2P Networks <ul><li>Napster Clients </li></ul><ul><li>Napster </li></ul><ul><li>Napigator </li></ul>
  21. 21. Types of P2P Networks <ul><li>Gnutella </li></ul><ul><li>Peers connected to each other in flat ad-hoc topology </li></ul><ul><li>Each peers – acts as client and server </li></ul><ul><li>Dynamic network – Peers can connect and disconnect as they wish without affecting the network </li></ul>
  22. 22. Types of P2P Networks <ul><li>Connection procedure in Gnutella network </li></ul>
  23. 23. Types of P2P Networks <ul><li>File Query and Response in Gnutella </li></ul>
  24. 24. Types of P2P Networks <ul><li>Gnutella Clients </li></ul><ul><li>BearShare </li></ul><ul><li>LimeWire </li></ul><ul><li>Cabos </li></ul><ul><li>Shareaza </li></ul>
  25. 25. Types of P2P Networks <ul><li>Gnutella – Analysis and Improvement </li></ul><ul><li>Flexibility </li></ul><ul><li>Performance & Stability </li></ul><ul><li>Reliability </li></ul><ul><li>Anonymity </li></ul>
  26. 26. Types of P2P Networks <ul><li>FastTrack </li></ul><ul><li>Based on Hybrid architecture </li></ul><ul><li>Two tiers of control </li></ul><ul><li>First Tier – nodes connected to Super Peers </li></ul><ul><li>Second Tier – Super Peers connected to each other </li></ul><ul><li>Download same file from multiple users </li></ul>
  27. 27. Types of P2P Networks <ul><li>FastTrack Clients </li></ul><ul><li>Kazaa </li></ul><ul><li>iMesh </li></ul><ul><li>Grokster </li></ul><ul><li>Morpheus </li></ul>
  28. 28. Types of P2P Networks <ul><li>eDonkey </li></ul><ul><li>Based on hybrid architecture </li></ul><ul><li>Two tier architecture </li></ul><ul><li>First Tier – central servers for maintaining list of files </li></ul><ul><li>Second Tier – for file transfers </li></ul><ul><li>Two types of server software used – MetaMachine and eServer </li></ul>
  29. 29. Types of P2P Networks <ul><li>eDonkey Protocol Features </li></ul><ul><li>Ability to search files based on meta-data (music, artist, bit-rate, extension, number of sources, file size) </li></ul><ul><li>Ability to download same file from multiple peers </li></ul><ul><li>Ability to share partial files </li></ul><ul><li>Ability to detect corrupt files </li></ul>
  30. 30. Types of P2P Networks <ul><li>eDonkey Connection Procedure </li></ul><ul><li>Client initiates TCP connection to connect to the Server </li></ul><ul><li>File query messages is sent using UDP </li></ul><ul><li>Requesting peer connects to the sharing peer by TCP </li></ul><ul><li>Files are divided in 9.5 MB blocks </li></ul><ul><li>MD4 (128 bit) checksum is calculated for every block </li></ul>
  31. 31. Types of P2P Networks <ul><li>eDonkey Clients </li></ul><ul><li>eDonkey2000 (developed by MetaMachine) </li></ul><ul><li>eMule </li></ul><ul><li>MLDonkey </li></ul><ul><li>aMule </li></ul>
  32. 32. Types of P2P Networks <ul><li>BitTorrent </li></ul><ul><li>Based on decentralized network </li></ul><ul><li>Files are divided into pieces or blocks </li></ul><ul><li>Pieces can be of size from 64 kB to 4 MB </li></ul><ul><li>Pieces can be further fragmented into blocks of 16 kB </li></ul>
  33. 33. Types of P2P Networks <ul><li>BitTorrent </li></ul><ul><li>Trackers – tracks seeders, leechers and file pieces from different users </li></ul><ul><li>Seeders – Hold complete files and shares with other peers </li></ul><ul><li>Leechers – Download files from other peers </li></ul>
  34. 34. Types of P2P Networks <ul><li>BitTorrent </li></ul><ul><li>Users download .torrent files which includes meta-data information </li></ul><ul><li>Torrent files can have one or multiple trackers </li></ul><ul><li>Files are downloaded in pieces or blocks </li></ul><ul><li>Implements file sharing fairness </li></ul>
  35. 35. Types of P2P Networks <ul><li>BitTorrent surpassed eDonkey traffic (2006) </li></ul>
  36. 36. Types of P2P Networks <ul><li>BitTorrent Clients </li></ul><ul><li>Azureus </li></ul><ul><li>BitComet </li></ul><ul><li>µTorrent </li></ul><ul><li>BitTorrent </li></ul>
  37. 37. Challenges in P2P
  38. 38. Challenges in P2P <ul><li>Challenges faced in P2P networks </li></ul><ul><li>Distribution of copyrighted files </li></ul><ul><li>Security Issues </li></ul><ul><li>Bandwidth Consumption </li></ul>
  39. 39. Challenges in P2P <ul><li>Distribution of Copyrighted Files </li></ul><ul><li>Several P2P networks sued by music companies and private organizations (RIAA, MPAA, ARIA) </li></ul><ul><li>Users are also targeted </li></ul><ul><li>Copyright laws limited to few countries </li></ul>
  40. 40. Challenges in P2P <ul><li>Security Issues </li></ul><ul><li>Spread of virus, malware, spyware, adware, etc </li></ul><ul><li>Use of Steganography </li></ul><ul><li>Spread of null files by RIAA, MPAA </li></ul><ul><li>Peers can be assigned reputation values </li></ul><ul><li>Pseudospoofing & Shilling attacks </li></ul>
  41. 41. Challenges in P2P <ul><li>Bandwidth Consumption </li></ul><ul><li>Bandwidth for existing Internet traffic (2007) </li></ul>
  42. 42. Windows P2P Networking
  43. 43. Windows P2P Networking <ul><li>Windows P2P Networking Model </li></ul><ul><li>Works with IPv6 </li></ul><ul><li>Uses UPnP messages to communicate </li></ul><ul><li>Peers discovered by Simple Service Discovery Protocol </li></ul>
  44. 44. Windows P2P Networking <ul><li>Microsoft Windows P2P Architecture </li></ul>
  45. 45. CONCLUSION
  46. 46. CONCLUSION <ul><li>Potential of P2P networks are vast and still being discovered and developed </li></ul><ul><li>Can be used, not only for file transfer, but also real time media streaming, VOIP, distributed computing, etc </li></ul>
  47. 47. THANK YOU