A framework for cost-effective peer-to-peer content distribution

Distributing digital media contents to a large number of users in a cost-effective manner is a challenging task for the content provider. Traditionally, the content provider either deploys a set of high-capacity servers, or contracts a content delivery network (CDN) to transport contents to users. The first approach requires significant investment to set up and administer servers. In the second approach, the delivery cost of large multimedia files burdens the budget of the content provider. We propose a collaborative peer-to-peer (P2P) framework for cost-effective content distribution. The challenge is to manage and coordinate unreliable, heterogeneous peers with limited capacity to provide a high-quality real-time streaming service over the current Internet. Our framework can be used in two settings. First, it can be used as a cooperative real-time streaming environment, in which peers cooperate and coordinate among themselves to serve requests from other peers. Second, the framework can be used as an architecture through which content providers disseminate contents by employing and aggregating resources from participating peers. For the first setting of the framework, we propose a new network service, CollectCast, to provide high-quality streaming in cooperative P2P environments. CollectCast optimizes the quality of each streaming session by carefully selecting senders and dynamically adapting to sender failures and network fluctuations. To select the best senders, CollectCast constructs the network topology connecting all candidate senders and the receiver. It employs end-to-end measurement techniques to infer the loss rate and available bandwidth on each segment of the topology. Using this information, CollectCast casts the selection problem as a constrained maximization problem. The objective is to select senders that maximize the aggregate rate at the receiver, constrained by the input bandwidth of the receiver. We develop a P2P media streaming system, PROMISE, on top of CollectCast. Performance evaluations of PROMISE in local and wide-area environments demonstrate the potential performance gain for applications that use CollectCast. For the second setting of the framework, we propose a new media distribution architecture that can support a large number of clients at a low cost. The architecture is designed for on-demand streaming environments such as university distance learning and enterprise streaming services. We design and implement a new two-level peer clustering technique suitable for P2P systems. Leveraging the peer clustering technique, we design network-aware searching and dispersion algorithms for locating nearby peers who have a requested object, and adjusting the available streaming capacity according to the client demand, respectively. Network-aware searching and dispersion result in a reduction of the load on the wide-area network and a better streaming service. In addition, we conduct a cost-profit analysis to show the economic potential of the proposed media distribution architecture. The analysis provides guidelines to help the content provider in maximizing its revenue by controlling the amount of incentives offered to peers.