A measurement-driven approach to designing peer-to-peer systems

  • Authors:
  • Kunwadee Sripanidkulchai;Hui Zhang;Bruce Maggs

  • Affiliations:
  • Carnegie Mellon University;Carnegie Mellon University;Carnegie Mellon University

  • Venue:
  • A measurement-driven approach to designing peer-to-peer systems
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Peer-to-peer architectures have the potential to provide a massive amount of resources and enable quick deployment of services on the Internet. However, the lack of dependence on any supporting infrastructure raises questions about the feasibility of peer-to-peer architectures in supporting large-scale applications. It is critical to understand peer characteristics, such as their resource constraints and dynamic participation, and application requirements in order to devise high-performance peer-to-peer solutions. In this dissertation, we take a measurement-driven approach to designing peer-to-peer systems. We extract and expose inherent properties of peers using extensive measurements. We then design distributed algorithms that efficiently exploit those properties to scale peer-to-peer applications. For file-sharing systems, we identify and exploit two types of locality to improve scalability. By caching query results to exploit temporal locality, we can provide immediate responses to popular queries and greatly reduce the amount of query and reply traffic. We exploit a second type of locality, interest-based locality, which posits that if a peer has a particular piece of content that one is interested in, it is likely that the peer will have other items that one is interested in as well. We use simple heuristics that exploit interest-based locality to find popular and unpopular content. We evaluate the performance of our solutions using several real-world traces of peer-to-peer file-sharing applications. In overlay multicast, we provide a detailed characterization of the common features of live streaming workloads on the Internet. We identify three key requirements for evaluating the feasibility of peer-to-peer architectures for large scale live streaming: (i) there must be enough resources to construct an overlay, (ii) a stable and connected overlay must be maintained despite the presence of group dynamics, and (iii) the structure of the overlay must be efficient. If these requirements are not satisfied, there is little chance that a peer-to-peer architecture is feasible. We show that in most of the common application scenarios all three requirements are satisfied. Overall, our findings argue for the feasibility of peer-to-peer architectures in supporting two classes of large-scale applications by exposing inherent properties of peer-to-peer systems and exploiting such properties to improve scalability and performance.