SlideShare a Scribd company logo
1 of 46
An Overview of Peer-to-Peer

         Sami Rollins
           11/14/02
Outline
• P2P Overview
  – What is a peer?
  – Example applications
  – Benefits of P2P
• P2P Content Sharing
  – Challenges
  – Group management/data placement approaches
  – Measurement studies
What is Peer-to-Peer (P2P)?
• Napster?
• Gnutella?
• Most people think of P2P as music sharing
What is a peer?
• Contrasted with
  Client-Server model
• Servers are centrally
  maintained and
  administered
• Client has fewer
  resources than a server
What is a peer?
• A peer’s resources are
  similar to the
  resources of the other
  participants
• P2P – peers
  communicating
  directly with other
  peers and sharing
  resources
Levels of P2P-ness
• P2P as a mindset
  – Slashdot
• P2P as a model
  – Gnutella
• P2P as an implementation choice
  – Application-layer multicast
• P2P as an inherent property
  – Ad-hoc networks
P2P Application Taxonomy

                          P2P Systems




Distributed Computing File Sharing   Collaboration   Platforms
     SETI@home          Gnutella        Jabber         JXTA
P2P Goals/Benefits
•   Cost sharing
•   Resource aggregation
•   Improved scalability/reliability
•   Increased autonomy
•   Anonymity/privacy
•   Dynamism
•   Ad-hoc communication
P2P File Sharing
• Content exchange
  – Gnutella
• File systems
  – Oceanstore
• Filtering/mining
  – Opencola
P2P File Sharing Benefits
•   Cost sharing
•   Resource aggregation
•   Improved scalability/reliability
•   Anonymity/privacy
•   Dynamism
Research Areas
•   Peer discovery and group management
•   Data location and placement
•   Reliable and efficient file exchange
•   Security/privacy/anonymity/trust
Current Research
• Group management and data placement
  – Chord, CAN, Tapestry, Pastry
• Anonymity
  – Publius
• Performance studies
  – Gnutella measurement study
Management/Placement Challenges
•   Per-node state
•   Bandwidth usage
•   Search time
•   Fault tolerance/resiliency
Approaches
• Centralized
• Flooding
• Document Routing
Centralized
                               Bob    Alice


• Napster model
• Benefits:
  – Efficient search
  – Limited bandwidth usage
  – No per-node state
• Drawbacks:
  – Central point of failure   Judy    Jane

  – Limited scale
Flooding
                                  Carl         Jane

• Gnutella model
• Benefits:
  – No central point of failure
  – Limited per-node state
• Drawbacks:                             Bob

  – Slow searches
  – Bandwidth intensive                               Alice
                                  Judy
Document Routing
                                   001                 012


• FreeNet, Chord, CAN,
  Tapestry, Pastry model                       212 ?
                                                             212 ?
• Benefits:
                                         332
   – More efficient searching
                                                                212
   – Limited per-node state       305

• Drawbacks:
   – Limited fault-tolerance vs
     redundancy
Document Routing – CAN
• Associate to each node and item a unique id in an
  d-dimensional space
• Goals
   – Scales to hundreds of thousands of nodes
   – Handles rapid arrival and failure of nodes
• Properties
   – Routing table size O(d)
   – Guarantees that a file is found in at most d*n1/d steps,
     where n is the total number of nodes

          Slide modified from another presentation
CAN Example: Two
              Dimensional Space
• Space divided between nodes
                                  7
• All nodes cover the entire      6
  space
                                  5
• Each node covers either a
                                  4
  square or a rectangular area of
  ratios 1:2 or 2:1               3
                                              n1
• Example:                        2

   – Node n1:(1, 2) first node that   1

     joins  cover the entire space   0

                                          0    1   2   3   4   5   6   7



            Slide modified from another presentation
CAN Example: Two
            Dimensional Space
• Node n2:(4, 2) joins  space
                                  7
  is divided between n1 and n2
                                  6

                                   5

                                   4

                                   3
                                           n1           n2
                                   2

                                   1

                                  0

                                       0    1   2   3   4    5   6   7



           Slide modified from another presentation
CAN Example: Two
            Dimensional Space
• Node n2:(4, 2) joins  space
                                  7
  is divided between n1 and n2
                                  6
                                                    n3
                                   5

                                   4

                                   3
                                           n1            n2
                                   2

                                   1

                                  0

                                       0    1   2    3   4    5   6   7



           Slide modified from another presentation
CAN Example: Two
            Dimensional Space
• Nodes n4:(5, 5) and n5:(6,6)
                                  7
  join
                                  6                                n5
                                                    n3        n4
                                   5

                                   4

                                   3
                                           n1            n2
                                   2

                                   1

                                  0

                                       0    1   2    3   4     5    6   7



           Slide modified from another presentation
CAN Example: Two
             Dimensional Space
• Nodes: n1:(1, 2); n2:(4,2); n3:
                                  7
  (3, 5); n4:(5,5);n5:(6,6)
                                  6                                       n5
• Items: f1:(2,3); f2:(5,1); f3:                          n3        n4
                                  5                                            f4
  (2,1); f4:(7,5);
                                    4
                                                 f1
                                    3
                                            n1                 n2
                                    2
                                                 f3
                                    1

                                   0                                 f2

                                        0    1        2    3   4     5     6        7



            Slide modified from another presentation
CAN Example: Two
            Dimensional Space
• Each item is stored by the
                                 7
  node who owns its mapping
  in the space                   6
                                                        n3        n4
                                                                        n5

                                  5                                          f4

                                  4
                                               f1
                                  3
                                          n1                 n2
                                  2
                                               f3
                                  1

                                 0                                 f2

                                      0    1        2    3   4     5     6        7



          Slide modified from another presentation
CAN: Query Example
• Each node knows its
  neighbors in the d-space          7

• Forward query to the              6                                     n5
                                                                    n4
  neighbor that is closest to the   5
                                                          n3
                                                                               f4
  query id                          4
• Example: assume n1 queries        3
                                                 f1

  f4                                        n1                 n2
                                    2
• Can route around some                          f3
                                    1
  failures                                                           f2
                                    0
   – some failures require local
                                        0    1        2    3   4     5     6        7
     flooding
            Slide modified from another presentation
CAN: Query Example
• Each node knows its
  neighbors in the d-space          7

• Forward query to the              6                                     n5
                                                                    n4
  neighbor that is closest to the   5
                                                          n3
                                                                               f4
  query id                          4
• Example: assume n1 queries        3
                                                 f1

  f4                                        n1                 n2
                                    2
• Can route around some                          f3
                                    1
  failures                                                           f2
                                    0
   – some failures require local
                                        0    1        2    3   4     5     6        7
     flooding
            Slide modified from another presentation
CAN: Query Example
• Each node knows its
  neighbors in the d-space          7

• Forward query to the              6                                     n5
                                                                    n4
  neighbor that is closest to the   5
                                                          n3
                                                                               f4
  query id                          4
• Example: assume n1 queries        3
                                                 f1

  f4                                        n1                 n2
                                    2
• Can route around some                          f3
                                    1
  failures                                                           f2
                                    0
   – some failures require local
                                        0    1        2    3   4     5     6        7
     flooding
            Slide modified from another presentation
CAN: Query Example
• Each node knows its
  neighbors in the d-space          7

• Forward query to the              6                                     n5
                                                                    n4
  neighbor that is closest to the   5
                                                          n3
                                                                               f4
  query id                          4
• Example: assume n1 queries        3
                                                 f1

  f4                                        n1                 n2
                                    2
• Can route around some                          f3
                                    1
  failures                                                           f2
                                    0
   – some failures require local
                                        0    1        2    3   4     5     6        7
     flooding
            Slide modified from another presentation
Node Failure Recovery
• Simple failures
  – know your neighbor’s neighbors
  – when a node fails, one of its neighbors takes
    over its zone
• More complex failure modes
  – simultaneous failure of multiple adjacent nodes
  – scoped flooding to discover neighbors
  – hopefully, a rare event

       Slide modified from another presentation
Document Routing – Chord
                                  N5

                                        N10
                           N110              K19
• MIT project                             N20
• Uni-dimensional ID      N99
  space                                       N32
• Keep track of log N
  nodes
                            N80
• Search through log N
  nodes to find desired key       N60
Doc Routing – Tapestry/Pastry
                                   43F
                                                 993
                       13F          E
                                                  E
                        E
• Global mesh
• Suffix-based routing
                               73F                           F99
• Uses underlying network       E                             0
  distance in constructing                 04F
                                            E
  mesh
                                                       999
                             ABF                        0
                              E


                                         239
                                          E                  129
                                                              0
Comparing Guarantees
           Model         Search   State

Chord         Uni-       log N    log N
           dimensional
             Multi-
CAN                      dN1/d    2d
           dimensional

Tapestry   Global Mesh   logbN    b logbN


Pastry      Neighbor     logbN    b logbN + b
              map
Remaining Problems?
• Hard to handle highly dynamic
  environments
• Usable services
• Methods don’t consider peer characteristics
Measurement Studies
•   “Free Riding on Gnutella”
•   Most studies focus on Gnutella
•   Want to determine how users behave
•   Recommendations for the best way to
    design systems
Free Riding Results
• Who is sharing what?
• August 2000
   The top             Share       As percent of whole
   333 hosts (1%)      1,142,645   37%
   1,667 hosts (5%)    2,182,087   70%
   3,334 hosts (10%)   2,692,082   87%
   5,000 hosts (15%)   2,928,905   94%
   6,667 hosts (20%)   3,037,232   98%
   8,333 hosts (25%)   3,082,572   99%
Saroiu et al Study
• How many peers are server-like…client-
  like?
  – Bandwidth, latency
• Connectivity
• Who is sharing what?
Saroiu et al Study
• May 2001
• Napster crawl
  – query index server and keep track of results
  – query about returned peers
  – don’t capture users sharing unpopular content
• Gnutella crawl
  – send out ping messages with large TTL
Results Overview
• Lots of heterogeneity between peers
  – Systems should consider peer capabilities
• Peers lie
  – Systems must be able to verify reported peer
    capabilities or measure true capabilities
Measured Bandwidth
Reported Bandwidth
Measured Latency
Measured Uptime
Number of Shared Files
Connectivity
Points of Discussion
• Is it all hype?
• Should P2P be a research area?
• Do P2P applications/systems have common
  research questions?
• What are the “killer apps” for P2P systems?
Conclusion
• P2P is an interesting and useful model
• There are lots of technical challenges to be
  solved

More Related Content

What's hot

Deadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddikDeadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddikSaeed Siddik
 
Programming Elasticity in the Cloud
Programming Elasticity in the CloudProgramming Elasticity in the Cloud
Programming Elasticity in the CloudHong-Linh Truong
 
Google app engine
Google app engineGoogle app engine
Google app engineSuraj Mehta
 
3 tier data warehouse
3 tier data warehouse3 tier data warehouse
3 tier data warehouseJ M
 
Knowledge Representation, Semantic Web
Knowledge Representation, Semantic WebKnowledge Representation, Semantic Web
Knowledge Representation, Semantic WebSerendipity Seraph
 
Cloud Computing (Lecture 1 & 2).pptx
Cloud Computing (Lecture 1 & 2).pptxCloud Computing (Lecture 1 & 2).pptx
Cloud Computing (Lecture 1 & 2).pptxMuhammadArslan799356
 
Tapestry
TapestryTapestry
TapestrySutha31
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management SystemAAKANKSHA JAIN
 
Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??Abdul Aslam
 
Benefits Of Building Private Cloud
Benefits Of Building Private CloudBenefits Of Building Private Cloud
Benefits Of Building Private Clouddinobusalachi
 
Key Challenges In CLOUD COMPUTING
Key Challenges In CLOUD COMPUTINGKey Challenges In CLOUD COMPUTING
Key Challenges In CLOUD COMPUTINGAtul Chounde
 
Server virtualization
Server virtualizationServer virtualization
Server virtualizationofsorganizer
 
Data Mining: Data warehouse and olap technology
Data Mining: Data warehouse and olap technologyData Mining: Data warehouse and olap technology
Data Mining: Data warehouse and olap technologyDatamining Tools
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server ArchitectureAshir Mubeen
 

What's hot (20)

Deadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddikDeadlock in distribute system by saeed siddik
Deadlock in distribute system by saeed siddik
 
Programming Elasticity in the Cloud
Programming Elasticity in the CloudProgramming Elasticity in the Cloud
Programming Elasticity in the Cloud
 
Cloud Deployments Models
Cloud Deployments ModelsCloud Deployments Models
Cloud Deployments Models
 
Virtual machine security
Virtual machine securityVirtual machine security
Virtual machine security
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
3 tier data warehouse
3 tier data warehouse3 tier data warehouse
3 tier data warehouse
 
Knowledge Representation, Semantic Web
Knowledge Representation, Semantic WebKnowledge Representation, Semantic Web
Knowledge Representation, Semantic Web
 
Cloud Computing (Lecture 1 & 2).pptx
Cloud Computing (Lecture 1 & 2).pptxCloud Computing (Lecture 1 & 2).pptx
Cloud Computing (Lecture 1 & 2).pptx
 
Tapestry
TapestryTapestry
Tapestry
 
Cloud Reference Model
Cloud Reference ModelCloud Reference Model
Cloud Reference Model
 
Data mining
Data miningData mining
Data mining
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
 
Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??
 
Benefits Of Building Private Cloud
Benefits Of Building Private CloudBenefits Of Building Private Cloud
Benefits Of Building Private Cloud
 
Key Challenges In CLOUD COMPUTING
Key Challenges In CLOUD COMPUTINGKey Challenges In CLOUD COMPUTING
Key Challenges In CLOUD COMPUTING
 
Server virtualization
Server virtualizationServer virtualization
Server virtualization
 
Data Mining: Data warehouse and olap technology
Data Mining: Data warehouse and olap technologyData Mining: Data warehouse and olap technology
Data Mining: Data warehouse and olap technology
 
Cloud computing architectures
Cloud computing architecturesCloud computing architectures
Cloud computing architectures
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
 
Cloud computing and Cloudsim
Cloud computing and CloudsimCloud computing and Cloudsim
Cloud computing and Cloudsim
 

Viewers also liked

Peer to peer Networks
Peer to peer Networks Peer to peer Networks
Peer to peer Networks Nicola Cerami
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure callsAshish Kumar
 
Peer To Peer Networking
Peer To Peer NetworkingPeer To Peer Networking
Peer To Peer Networkingicanhasfay
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed SystemsRupsee
 

Viewers also liked (7)

CS6601 DISTRIBUTED SYSTEMS
CS6601 DISTRIBUTED SYSTEMSCS6601 DISTRIBUTED SYSTEMS
CS6601 DISTRIBUTED SYSTEMS
 
Peer to peer Networks
Peer to peer Networks Peer to peer Networks
Peer to peer Networks
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure calls
 
Distributed System
Distributed System Distributed System
Distributed System
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 
Peer To Peer Networking
Peer To Peer NetworkingPeer To Peer Networking
Peer To Peer Networking
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 

Similar to Peer to-peer

An overview of Peer-to-Peer technology new
An overview of Peer-to-Peer technology newAn overview of Peer-to-Peer technology new
An overview of Peer-to-Peer technology newchizhangufl
 
Tricks of the trade with Ted Malaska
Tricks of the trade with Ted MalaskaTricks of the trade with Ted Malaska
Tricks of the trade with Ted MalaskaDatabricks
 
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simon
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer SimonDocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simon
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simonlucenerevolution
 
Column Stride Fields aka. DocValues
Column Stride Fields aka. DocValues Column Stride Fields aka. DocValues
Column Stride Fields aka. DocValues Lucidworks (Archived)
 
Hadoop virtualization extensions hadoop world meetup
Hadoop virtualization extensions hadoop world meetupHadoop virtualization extensions hadoop world meetup
Hadoop virtualization extensions hadoop world meetupJunping Du
 
Untangling Cluster Management with Helix
Untangling Cluster Management with HelixUntangling Cluster Management with Helix
Untangling Cluster Management with HelixAmy W. Tang
 
HPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaHPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaTed Dunning
 

Similar to Peer to-peer (9)

An overview of Peer-to-Peer technology new
An overview of Peer-to-Peer technology newAn overview of Peer-to-Peer technology new
An overview of Peer-to-Peer technology new
 
Tricks of the trade with Ted Malaska
Tricks of the trade with Ted MalaskaTricks of the trade with Ted Malaska
Tricks of the trade with Ted Malaska
 
03 search blind
03 search blind03 search blind
03 search blind
 
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simon
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer SimonDocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simon
DocValues aka. Column Stride Fields in Lucene 4.0 - By Willnauer Simon
 
Column Stride Fields aka. DocValues
Column Stride Fields aka. DocValuesColumn Stride Fields aka. DocValues
Column Stride Fields aka. DocValues
 
Column Stride Fields aka. DocValues
Column Stride Fields aka. DocValues Column Stride Fields aka. DocValues
Column Stride Fields aka. DocValues
 
Hadoop virtualization extensions hadoop world meetup
Hadoop virtualization extensions hadoop world meetupHadoop virtualization extensions hadoop world meetup
Hadoop virtualization extensions hadoop world meetup
 
Untangling Cluster Management with Helix
Untangling Cluster Management with HelixUntangling Cluster Management with Helix
Untangling Cluster Management with Helix
 
HPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaHPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with Katta
 

More from Mohd Arif

Bootp and dhcp
Bootp and dhcpBootp and dhcp
Bootp and dhcpMohd Arif
 
Arp and rarp
Arp and rarpArp and rarp
Arp and rarpMohd Arif
 
User datagram protocol
User datagram protocolUser datagram protocol
User datagram protocolMohd Arif
 
Project identification
Project identificationProject identification
Project identificationMohd Arif
 
Project evalaution techniques
Project evalaution techniquesProject evalaution techniques
Project evalaution techniquesMohd Arif
 
Presentation
PresentationPresentation
PresentationMohd Arif
 
Pointers in c
Pointers in cPointers in c
Pointers in cMohd Arif
 
Overview of current communications systems
Overview of current communications systemsOverview of current communications systems
Overview of current communications systemsMohd Arif
 
Overall 23 11_2007_hdp
Overall 23 11_2007_hdpOverall 23 11_2007_hdp
Overall 23 11_2007_hdpMohd Arif
 
Objectives of budgeting
Objectives of budgetingObjectives of budgeting
Objectives of budgetingMohd Arif
 
Network management
Network managementNetwork management
Network managementMohd Arif
 
Networing basics
Networing basicsNetworing basics
Networing basicsMohd Arif
 
Iris ngx next generation ip based switching platform
Iris ngx next generation ip based switching platformIris ngx next generation ip based switching platform
Iris ngx next generation ip based switching platformMohd Arif
 
Ip sec and ssl
Ip sec and  sslIp sec and  ssl
Ip sec and sslMohd Arif
 
Ip security in i psec
Ip security in i psecIp security in i psec
Ip security in i psecMohd Arif
 
Intro to comp. hardware
Intro to comp. hardwareIntro to comp. hardware
Intro to comp. hardwareMohd Arif
 
H.323 vs. cops interworking
H.323 vs. cops interworkingH.323 vs. cops interworking
H.323 vs. cops interworkingMohd Arif
 

More from Mohd Arif (20)

Bootp and dhcp
Bootp and dhcpBootp and dhcp
Bootp and dhcp
 
Arp and rarp
Arp and rarpArp and rarp
Arp and rarp
 
User datagram protocol
User datagram protocolUser datagram protocol
User datagram protocol
 
Project identification
Project identificationProject identification
Project identification
 
Project evalaution techniques
Project evalaution techniquesProject evalaution techniques
Project evalaution techniques
 
Presentation
PresentationPresentation
Presentation
 
Pointers in c
Pointers in cPointers in c
Pointers in c
 
Overview of current communications systems
Overview of current communications systemsOverview of current communications systems
Overview of current communications systems
 
Overall 23 11_2007_hdp
Overall 23 11_2007_hdpOverall 23 11_2007_hdp
Overall 23 11_2007_hdp
 
Objectives of budgeting
Objectives of budgetingObjectives of budgeting
Objectives of budgeting
 
Network management
Network managementNetwork management
Network management
 
Networing basics
Networing basicsNetworing basics
Networing basics
 
Loaders
LoadersLoaders
Loaders
 
Lists
ListsLists
Lists
 
Iris ngx next generation ip based switching platform
Iris ngx next generation ip based switching platformIris ngx next generation ip based switching platform
Iris ngx next generation ip based switching platform
 
Ip sec and ssl
Ip sec and  sslIp sec and  ssl
Ip sec and ssl
 
Ip security in i psec
Ip security in i psecIp security in i psec
Ip security in i psec
 
Intro to comp. hardware
Intro to comp. hardwareIntro to comp. hardware
Intro to comp. hardware
 
Heap sort
Heap sortHeap sort
Heap sort
 
H.323 vs. cops interworking
H.323 vs. cops interworkingH.323 vs. cops interworking
H.323 vs. cops interworking
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 

Recently uploaded (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Peer to-peer

  • 1. An Overview of Peer-to-Peer Sami Rollins 11/14/02
  • 2. Outline • P2P Overview – What is a peer? – Example applications – Benefits of P2P • P2P Content Sharing – Challenges – Group management/data placement approaches – Measurement studies
  • 3. What is Peer-to-Peer (P2P)? • Napster? • Gnutella? • Most people think of P2P as music sharing
  • 4. What is a peer? • Contrasted with Client-Server model • Servers are centrally maintained and administered • Client has fewer resources than a server
  • 5. What is a peer? • A peer’s resources are similar to the resources of the other participants • P2P – peers communicating directly with other peers and sharing resources
  • 6. Levels of P2P-ness • P2P as a mindset – Slashdot • P2P as a model – Gnutella • P2P as an implementation choice – Application-layer multicast • P2P as an inherent property – Ad-hoc networks
  • 7. P2P Application Taxonomy P2P Systems Distributed Computing File Sharing Collaboration Platforms SETI@home Gnutella Jabber JXTA
  • 8. P2P Goals/Benefits • Cost sharing • Resource aggregation • Improved scalability/reliability • Increased autonomy • Anonymity/privacy • Dynamism • Ad-hoc communication
  • 9. P2P File Sharing • Content exchange – Gnutella • File systems – Oceanstore • Filtering/mining – Opencola
  • 10. P2P File Sharing Benefits • Cost sharing • Resource aggregation • Improved scalability/reliability • Anonymity/privacy • Dynamism
  • 11. Research Areas • Peer discovery and group management • Data location and placement • Reliable and efficient file exchange • Security/privacy/anonymity/trust
  • 12. Current Research • Group management and data placement – Chord, CAN, Tapestry, Pastry • Anonymity – Publius • Performance studies – Gnutella measurement study
  • 13. Management/Placement Challenges • Per-node state • Bandwidth usage • Search time • Fault tolerance/resiliency
  • 15. Centralized Bob Alice • Napster model • Benefits: – Efficient search – Limited bandwidth usage – No per-node state • Drawbacks: – Central point of failure Judy Jane – Limited scale
  • 16. Flooding Carl Jane • Gnutella model • Benefits: – No central point of failure – Limited per-node state • Drawbacks: Bob – Slow searches – Bandwidth intensive Alice Judy
  • 17. Document Routing 001 012 • FreeNet, Chord, CAN, Tapestry, Pastry model 212 ? 212 ? • Benefits: 332 – More efficient searching 212 – Limited per-node state 305 • Drawbacks: – Limited fault-tolerance vs redundancy
  • 18. Document Routing – CAN • Associate to each node and item a unique id in an d-dimensional space • Goals – Scales to hundreds of thousands of nodes – Handles rapid arrival and failure of nodes • Properties – Routing table size O(d) – Guarantees that a file is found in at most d*n1/d steps, where n is the total number of nodes Slide modified from another presentation
  • 19. CAN Example: Two Dimensional Space • Space divided between nodes 7 • All nodes cover the entire 6 space 5 • Each node covers either a 4 square or a rectangular area of ratios 1:2 or 2:1 3 n1 • Example: 2 – Node n1:(1, 2) first node that 1 joins  cover the entire space 0 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 20. CAN Example: Two Dimensional Space • Node n2:(4, 2) joins  space 7 is divided between n1 and n2 6 5 4 3 n1 n2 2 1 0 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 21. CAN Example: Two Dimensional Space • Node n2:(4, 2) joins  space 7 is divided between n1 and n2 6 n3 5 4 3 n1 n2 2 1 0 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 22. CAN Example: Two Dimensional Space • Nodes n4:(5, 5) and n5:(6,6) 7 join 6 n5 n3 n4 5 4 3 n1 n2 2 1 0 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 23. CAN Example: Two Dimensional Space • Nodes: n1:(1, 2); n2:(4,2); n3: 7 (3, 5); n4:(5,5);n5:(6,6) 6 n5 • Items: f1:(2,3); f2:(5,1); f3: n3 n4 5 f4 (2,1); f4:(7,5); 4 f1 3 n1 n2 2 f3 1 0 f2 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 24. CAN Example: Two Dimensional Space • Each item is stored by the 7 node who owns its mapping in the space 6 n3 n4 n5 5 f4 4 f1 3 n1 n2 2 f3 1 0 f2 0 1 2 3 4 5 6 7 Slide modified from another presentation
  • 25. CAN: Query Example • Each node knows its neighbors in the d-space 7 • Forward query to the 6 n5 n4 neighbor that is closest to the 5 n3 f4 query id 4 • Example: assume n1 queries 3 f1 f4 n1 n2 2 • Can route around some f3 1 failures f2 0 – some failures require local 0 1 2 3 4 5 6 7 flooding Slide modified from another presentation
  • 26. CAN: Query Example • Each node knows its neighbors in the d-space 7 • Forward query to the 6 n5 n4 neighbor that is closest to the 5 n3 f4 query id 4 • Example: assume n1 queries 3 f1 f4 n1 n2 2 • Can route around some f3 1 failures f2 0 – some failures require local 0 1 2 3 4 5 6 7 flooding Slide modified from another presentation
  • 27. CAN: Query Example • Each node knows its neighbors in the d-space 7 • Forward query to the 6 n5 n4 neighbor that is closest to the 5 n3 f4 query id 4 • Example: assume n1 queries 3 f1 f4 n1 n2 2 • Can route around some f3 1 failures f2 0 – some failures require local 0 1 2 3 4 5 6 7 flooding Slide modified from another presentation
  • 28. CAN: Query Example • Each node knows its neighbors in the d-space 7 • Forward query to the 6 n5 n4 neighbor that is closest to the 5 n3 f4 query id 4 • Example: assume n1 queries 3 f1 f4 n1 n2 2 • Can route around some f3 1 failures f2 0 – some failures require local 0 1 2 3 4 5 6 7 flooding Slide modified from another presentation
  • 29. Node Failure Recovery • Simple failures – know your neighbor’s neighbors – when a node fails, one of its neighbors takes over its zone • More complex failure modes – simultaneous failure of multiple adjacent nodes – scoped flooding to discover neighbors – hopefully, a rare event Slide modified from another presentation
  • 30. Document Routing – Chord N5 N10 N110 K19 • MIT project N20 • Uni-dimensional ID N99 space N32 • Keep track of log N nodes N80 • Search through log N nodes to find desired key N60
  • 31. Doc Routing – Tapestry/Pastry 43F 993 13F E E E • Global mesh • Suffix-based routing 73F F99 • Uses underlying network E 0 distance in constructing 04F E mesh 999 ABF 0 E 239 E 129 0
  • 32. Comparing Guarantees Model Search State Chord Uni- log N log N dimensional Multi- CAN dN1/d 2d dimensional Tapestry Global Mesh logbN b logbN Pastry Neighbor logbN b logbN + b map
  • 33. Remaining Problems? • Hard to handle highly dynamic environments • Usable services • Methods don’t consider peer characteristics
  • 34. Measurement Studies • “Free Riding on Gnutella” • Most studies focus on Gnutella • Want to determine how users behave • Recommendations for the best way to design systems
  • 35. Free Riding Results • Who is sharing what? • August 2000 The top Share As percent of whole 333 hosts (1%) 1,142,645 37% 1,667 hosts (5%) 2,182,087 70% 3,334 hosts (10%) 2,692,082 87% 5,000 hosts (15%) 2,928,905 94% 6,667 hosts (20%) 3,037,232 98% 8,333 hosts (25%) 3,082,572 99%
  • 36. Saroiu et al Study • How many peers are server-like…client- like? – Bandwidth, latency • Connectivity • Who is sharing what?
  • 37. Saroiu et al Study • May 2001 • Napster crawl – query index server and keep track of results – query about returned peers – don’t capture users sharing unpopular content • Gnutella crawl – send out ping messages with large TTL
  • 38. Results Overview • Lots of heterogeneity between peers – Systems should consider peer capabilities • Peers lie – Systems must be able to verify reported peer capabilities or measure true capabilities
  • 45. Points of Discussion • Is it all hype? • Should P2P be a research area? • Do P2P applications/systems have common research questions? • What are the “killer apps” for P2P systems?
  • 46. Conclusion • P2P is an interesting and useful model • There are lots of technical challenges to be solved

Editor's Notes

  1. Upload index to central server when you come online To search, consult central server Request doc directly
  2. Everyone knows about some small number of nodes To find a file, ask everyone you know When you find out who has the doc, ask directly
  3. More systematic approach Ids for docs and nodes Store doc at node with closest id Keep track of small number of nodes with ids close to yours Route requests toward the document
  4. Most projects address the same goal Slightly different models Some specifics? Main goals, minimize search time and routing state