Managing Peer-to-Peer Applications Vana Kalogeraki Hewlett-Packard - - PowerPoint PPT Presentation

managing peer to peer applications
SMART_READER_LITE
LIVE PREVIEW

Managing Peer-to-Peer Applications Vana Kalogeraki Hewlett-Packard - - PowerPoint PPT Presentation

Managing Peer-to-Peer Applications Vana Kalogeraki Hewlett-Packard Laboratories Palo Alto, CA 94304 vana@hpl.hp.com Vana Kalogeraki H 1 What is a P2P System?


slide-1
SLIDE 1

Vana Kalogeraki

H

1

Managing Peer-to-Peer Applications

Vana Kalogeraki Hewlett-Packard Laboratories Palo Alto, CA 94304

vana@hpl.hp.com

slide-2
SLIDE 2

Vana Kalogeraki

H

2

What is a P2P System?

❏ Virtual point to multipoint network of many peers ❏ Symmetric communications between peers ❏ Ad-hoc communication & collaboration between peers

slide-3
SLIDE 3

Vana Kalogeraki

H

3

P2P Taxonomy

❏ Distributed Computations/Edge Services

Employ and aggregate unused processing power and storage resources of individual computers

Seti@Home, Intel, Entropia

❏ Distributed Search/Information Sharing

Message broadcasting system to discover peers and search for information

Gnutella, Freenet, Napster

❏ Distributed Computing Platform

Real-Time Collaboration

Sun’s JXTA, Groove, Proksim

slide-4
SLIDE 4

Vana Kalogeraki

H

4

P2P Success Stories

❏ Popularity of Napster

Online users: 9,842

Shared MP3 files: 1,633,585

Shared drive space (GB): 6,838

❏ Popularity of Gnutella Network

Online peers: 43,546

Shared files: 1,843,549

Shared drive space (GB): 41,170

❏ Popularity of JXTA

Online users: 6,809

CVS Commits: 769

slide-5
SLIDE 5

Vana Kalogeraki

H

5

The Advantages are Compelling

❏ Innovation at the edges of the network ❏ Cost savings

Aggregate existing resources

❏ Autonomous, decentralized systems

Direct & real-time connectivity

❏ High-availability

Remove single point of failure

❏ Various Transparencies

Location, migration, language/OS/platform

slide-6
SLIDE 6

Vana Kalogeraki

H

6

But what are the challenges?

❏ How to build a system that will scale with exponential network growth? ❏ How to efficiently propagate the requests through a large number of peers? ❏ How to monitor the actual behavior of the peers and the actual usage of the resources? ❏ How to dynamically deploy the objects on the peers and balance the load on the resources? ❏ How to provide end-to-end QoS and real-time guarantees?

slide-7
SLIDE 7

Vana Kalogeraki

H

7

Peer-to-Peer Applications

❏ Modeled as a sequence

  • f method invocations of
  • bjects across multiple

processors ❏ Topology of the resulting network could be random ❏ Dynamically setup routes ❏ Problem: which peers to connect to?

slide-8
SLIDE 8

Vana Kalogeraki

H

8

Issues in the P2P networks

❏ Architectural organization ❏ Routing of queries in the network ❏ These are difficult problems because..

Dealing with the dynamic aspects of the system

  • Peer arrival/departures
  • Data publishing/withdrawal

Peers have limited knowledge

Peers make autonomous decisions

slide-9
SLIDE 9

Vana Kalogeraki

H

9

The Model

❏ Peer

Set of interests

List of peers

Horizon

Local Knowledge

Resource capabilities (communication, processing, storage)

Asynchronous requests for information

Timely delivery of critical content

slide-10
SLIDE 10

Vana Kalogeraki

H

10

Searching in the Network

❏ Messages are sent over multiple hops from one peer to another ❏ P2P Protocol

Ping: discover active peers in the network

Pong: reply to a Ping message including IP address

Query: search for data in the network

QueryHit: reply to a Query message with the corresponding results

Queuering Peer Query Hit Query

slide-11
SLIDE 11

Vana Kalogeraki

H

11

Peer Profiles

Monitor ❏ Search requests (type & time) ❏ Number & source of replies ❏ Time to get a result ❏ Immediate peer who propagated the results ❏ Peer failures

Queuering Peer Immediate Peer Indirect Peer

slide-12
SLIDE 12

Vana Kalogeraki

H

12

Resource Monitoring

❏ Current utilization of processor resources

processor (i.e., cpu, memory)

storage (i.e., disk)

❏ Bandwidth on the communication links ❏ Percentage of resources used by executing requests ❏ Profiling frequency is important

User behavior

slide-13
SLIDE 13

Vana Kalogeraki

H

13

System Objectives

❏ Importance of a Peer ❏ Minimize the number of messages in the network ❏ Retrieve data fast ) 1 , ( * ) 1 ( ) ( ) ( * ) , ( − − + = t q Importance a q s averNumHop q its percQueryH a t q Importance

p p p p

slide-14
SLIDE 14

Vana Kalogeraki

H

14

Performance Results

Number of QueryHits

10000 20000 30000 40000 50000 1 5 9 13 17 21 25 29 33 Num of Decision Points Num of QueryHits Gnutella Our Model

slide-15
SLIDE 15

Vana Kalogeraki

H

15

Performance Results (cont.)

Mean Num of Hops

1 2 3 4 1 4 7 10 13 16 19 22 25 28 31 34 Num of De cision Points Num of Hopts Gnutella Our Model

slide-16
SLIDE 16

Vana Kalogeraki

H

16

Impact of Applications at the Edges

❏ Objects maintained by peers not unique ❏ Popular objects highly replicated ❏ Each object characterized by meta-data (e.g., name, provider, keywords)

keyword searches

❏ Problem: how to uniquely identify the objects among the peers

slide-17
SLIDE 17

Vana Kalogeraki

H

17

Load Balancing

❏ Distribute objects on peers to meet end-to-end real-time response requirements ❏ Improve performance and availability of applications ❏ Best location to deploy objects based on

Number of object replicas in the network

Load on the peers

Latencies of the applications

Number and frequency of object invocations made by users

❏ Peer-to-Peer applications both originated and delivered from the edges of the network

slide-18
SLIDE 18

Vana Kalogeraki

H

18

Conclusions

❏ Decentralized management of peer-to-peer applications ❏ Connections between the peers established dynamically

Future Work

❏ Global state of system cannot be captured ❏ Current work has focused in the sharing of “small” objects ❏ Assure reliability of applications despite the unreliability of the peers ❏ Security issues (eg., user authentication, encryption..)