managing peer to peer applications
play

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?


  1. Managing Peer-to-Peer Applications Vana Kalogeraki Hewlett-Packard Laboratories Palo Alto, CA 94304 vana@hpl.hp.com Vana Kalogeraki H 1

  2. What is a P2P System? ������������������������������������������� ������������������������ ❏ Virtual point to multipoint network of many peers ❏ Symmetric communications between peers ❏ Ad-hoc communication & collaboration between peers Vana Kalogeraki H 2

  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 ★ Vana Kalogeraki H 3

  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 ★ Vana Kalogeraki H 4

  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 ★ Vana Kalogeraki H 5

  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? Vana Kalogeraki H 6

  7. Peer-to-Peer Applications ❏ Modeled as a sequence of method invocations of objects across multiple processors ❏ Topology of the resulting network could be random ❏ Dynamically setup routes ❏ Problem: which peers to connect to? Vana Kalogeraki H 7

  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 ★ Vana Kalogeraki H 8

  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 ★ Vana Kalogeraki H 9

  10. Searching in the Network ❏ Messages are sent over Queuering Peer multiple hops from one peer to another Query ❏ P2P Protocol Ping: discover active peers in ★ the network Query Pong: reply to a Ping ★ message including IP address Hit Query: search for data in the ★ network QueryHit: reply to a Query ★ message with the corresponding results Vana Kalogeraki H 10

  11. Peer Profiles Monitor Queuering Peer ������ ������� ❏ Search requests (type & time) ❏ Number & source of replies Immediate ❏ Time to get a result Peer ❏ Immediate peer who Indirect propagated the results Peer ❏ Peer failures Vana Kalogeraki H 11

  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 ★ Vana Kalogeraki H 12

  13. System Objectives ❏ Importance of a Peer percQueryH its ( q ) = + − − p Importance ( q , t ) a * ( 1 a ) * Importance ( q , t 1 ) p p averNumHop s ( q ) p ❏ Minimize the number of messages in the network ❏ Retrieve data fast Vana Kalogeraki H 13

  14. Performance Results Number of QueryHits �� ����� � ���������������� 50000 ������� � � Num of QueryHits 40000 30000 Gnutella Our Model 20000 �������� ��� �� 10000 ������� �� ���� 0 ������� 1 5 9 13 17 21 25 29 33 Num of Decision Points ��������������������������� ������������������������ Vana Kalogeraki H 14

  15. Performance Results (cont.) Mean Num of Hops �������� ��� 4 �� ���� �������� 3 Num of Hopts �������� �� ��� Gnutella 2 ������� Our Model 1 0 1 4 7 10 13 16 19 22 25 28 31 34 Num of De cision Points ���������������������������������������� Vana Kalogeraki H 15

  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 Vana Kalogeraki H 16

  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 Vana Kalogeraki H 17

  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..) Vana Kalogeraki H 18

Recommend


More recommend