B-Tracker CDN: Designing a P2P CDN

State: completed by Claudio Anliker

Introduction and Motivation

P2P file sharing applications still account for a large portion of internet traffic [1]. P2P induced traffic contributes to link congestion and drives cost since it does not consider provider domains. Traffic shaping techniques to discriminate P2P trafficcan have a negative effect on P2P costumers. Handling the peaks with higher capacity infrastructure leads to overprovisioning. Recent advances in transport protocols [2] promise a smoother transfer for bulk background data compared to TCP.Biased Neighbor Selection lets peers prefer locally close peers when establishing connections and has proven to reduce intra domain traffic [3], [4].

In P2P systems a tracker manages the overlay network by serving neighbors to peers. The tracker should already provide a biased provider set. This becomes possible with B-Tracker [5] since it is fully distributed and peers sharing a resource are tracking it at the same time. Furthermore BTracker is more efficient and better balanced compared to a DHT tracker. Motivated by the effectiveness of B-Tracker, RB-Tracker was designed to shift the traffic away from peak hours and reduce inter domain traffic. It is based on the main idea of exploiting locality and replicate similar content during non-peak hours. RB-Tracker is an extension of B-Tracker to automatically manage the overlay network and replication of content. 

RB-Tracker incorporates three fully distributed mechanisms: (1) Identification of content that is popular and of interest to the user in order to replicate it to the local cache. (2) Identification of network status to determine a feasible time to replicate, that is an off-peak hour. (3) Identification of close peers to replicate from so no additional intra domain traffic is induced by replication. Our main contribution of this work is the design and description of these mechanisms.

Description of Work

RB-Tracker performs three tasks: (1) determines which files to replicate, (2) determines when to replicate, and (3) determines which peers to select for replication. This thesis focuses on (1).

Cachable files are determined by the caching strategy and this depends on the goals of caching. Which are reduction of peak loads and inter-AS traffic. Therefore, popular contents need to be cached since these cause most traffic. Furthermore, since caching space is provided by peers it is important to cache content the peer itself is interested in, so it has an incentive to provide space. A peer participating in file sharing is likely to share more than one file at a time and a peer shares files he himself is interested in. Therefore a peers file set is an expression of its interest. Under these assumptions B-Trackers mesh structure can be exploited to compare file sets of neighbors. Highly overlapping file sets indicate common interest and therefore additional content can be found in those peers’ filesets.

The student will design and implement RB-Tracker in a way that caching strategies can be easily changed. Several caching strategies need to be implemented in order to evaluate them against each other.

Thesis Goals

The general goals of RB-Tracker are: (i) Offloading peaks, (ii) Reduce inter domain traffic (iv) Caching interesting files. Furthermore, a (v) fully P2P system does not rely on external services which makes it independent. In this thesis several caching startegies will be designed, implemented and evaluated. These strategies have to contribute to RB-Trackers general goals. Thus, the main goals of this thesis are:

- Design of caching strategies for finding and replicating popular content.

- Implementation of a flexible RB-Tracker prototype which supports pluggable caching strategies. The implementation should be generic and provide reasonable interfaces.

- Evaluation and comparison these strategies through experiments.

- A written report detailing the results.

30% Design, 20% Implementation, 30% Evaluation, 20% Documentation
Java programming, P2P, Linux skills

Supervisors: Dr. Thomas Bocek, Andri Lareida

back to the main page