The Importance of History in A Media Delivery System: Richard J. Dunn, Steven D. Gribble, Henry M. Levy, John Zahorjan

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

The Importance of History in a Media Delivery System

Richard J. Dunn, Steven D. Gribble, Henry M. Levy, John Zahorjan


University of Washington
E-mail: {rdunn,gribble,levy,zahorjan}@cs.washington.edu

Abstract In the next section, we examine the structure of our


We examine the performance dynamics of a generic me- simulation, outlining our models of requests, peer avail-
dia delivery service, in which a single provider distributes ability, and object delivery. In Section 3, we examine the
to a set of peers using a BitTorrent-like protocol. Previ- best and worst possible performance of any strategy, and
ous studies of BitTorrent have examined its performance the performance of a strategy implicitly used by exist-
in delivering single objects; here we discuss the dynamics ing BitTorrent clients. In Sections 4 and 5, we examine
of distributing a population of objects. Specifically, we improvements on this strategy, and conclude in Section 6.
assume that peers cache objects they download, and ex-
amine strategies for choosing which objects peers should 2. Methodology
serve while participating in the system. We examine a set
Our approach is to simulate a generic media deliv-
of strategies, and show that a simple strategy yields per-
ery system and to measure the effect that certain design
formance gains over that employed by current BitTorrent-
choices have on its overall performance. We begin by
like systems.
framing the general structure of a media delivery system:

1. Introduction • There is a single content provider, who possesses a


set of objects. The provider has unlimited band-
In recent years, the BitTorrent protocol has proved width with which to serve these objects (more pre-
an efficient means to distribute content from a single cisely, the provider has enough bandwidth to serve
provider to a set of interested peers. Its success is such to all peers at their maximum download rate, con-
that recently several proposals [5, 9, 8] have been made sistent with a well-provisioned service.)
to utilize this protocol as part of a media delivery ser-
vice, delivering non-real-time media content (movies, mu- • There is a set of peers, who over time make requests
sic). Such a service utilizes the interested peers to reduce on and download objects from the provider. Peers
bandwidth demands on the content provider. have fixed download and upload bandwidths, and we
In this paper, we examine the performance dynamics further assume that download bandwidth exceeds
of such a system. We are interested in how to manage the upload bandwidth by some constant factor.
limited resource of the peers in the most efficient manner. • The provider faces a fundamental trade-off between
Previous studies of BitTorrent have focused on its perfor- the bandwidth it expends to deliver the objects to
mance in delivering a single object. Here we focus on how the peers, and the rate (and therefore latency) at
to manage resources across a wide population of objects. which peers can download an object. To resolve
Specifically, we assume that peers cache downloaded con- this trade-off, we assume the provider serves objects
tent for some time, and seek to determine which objects such that each peer can download at its full down-
peers should serve while participating in the system. load bandwidth, regardless of the total bandwidth
We approach the problem by simulating a generic me- expended by the provider. This is consistent with
dia delivery system. Using a model developed from traces providing a good user experience; our goal is to re-
of P2P file-sharing systems, we drive a simulation with a duce bandwidth through other means.
request pattern that exhibits the characteristics of mea-
sured requests to media objects. Using this simulation, • We assume that the peers are willing to use their
we determine performance based on the bandwidth re- upload bandwidth to relieve the bandwidth require-
quirement placed on the content provider. ments on the provider. Peers can serve objects they
Our key result is to show that good performance in me- are currently downloading or have downloaded in
dia delivery relies on clients caching and re-distributing the past, as long as they are online in the system.
objects they download, referred to as “seeding” in Bit- We assume peers are online whenever they are down-
Torrent parlance. We show the the current default be- loading an object and at select other times, de-
havior of many BitTorrent clients (seeding the last object scribed below.
downloaded), is far less than optimal, and that a simple
change in seeding strategy can yield tremendous perfor- We simulate the dynamics of this system, with peers
mance improvement. coming on- and offline, making requests, and retrieving
objects. We drive the simulation with a time series of request to the system (governed by the request model).
requests from the peers. Aside from the general struc- The client will remain available as it downloads the ob-
ture of the system described above, we require three key ject. After it has obtained the full copy of the object, it
inputs: will remain available for some period of time, which we
call the “seed time” and which is the single parameter for
1. A model of requests. We use this to develop the the availability model.
time-series pattern of requests from the clients to Two studies of BitTorrent systems [6, 4] note that
the object population. For this, we will utilize an the vast majority of clients follow the pattern described
artificial stream generated by a previously published above, with seed times on the order of hours. This model
model based on traces of existing P2P systems. also agrees with anecdotal evidence of how users inter-
2. A model of peer availability. This governs when each act with BitTorrent objects. Since the download is not a
peer is offline, online and downloading an object, real-time stream, users will often “fire and forget” allow-
or online without actively downloading. We rely ing the download to proceed and checking back later that
on a simplified model based on standard usage of it has finished. Torrent sites also often encourage users
BitTorrent systems. to seed after their download has finished. In our experi-
ments, we vary the average seed time between 3 and 15
3. A model of efficient delivery of objects. This governs hours after each download.
how we use the resources of the content provider
and the peers to distribute individual objects. We 2.3 Model of Object Delivery
assume an idealized version of BitTorrent based on We assume an idealized BitTorrent model of object
published studies of its performance. delivery, with additional unicast delivery of objects to
In the next three sections, we discuss the details of fill each peer’s download capacity. Performance analy-
each of these models separately. ses of BitTorrent [7, 1] have shown that it achieves a
near-optimal efficient use of peer upload capacities. For
2.1 Model of Object Requests the purpose of a single provider distributing an object,
this means that up to a particular upload rate (equal
We utilize the model first proposed in [3], and extended to the average upload bandwidth of the clients), each
by [2]. This model was developed to mimic the proper- peer (regardless of the number of peers) will receive that
ties of request streams seen in measurements of various download rate, making delivery to more than one peer
P2P file-sharing systems. The model takes as input a essentially “free”
per-peer request rate, peer and object population size, In a world with asymmetric bandwidths and content
and a rate of introduction of new objects, and produces providers with excess bandwidth, however, we may do
request streams of arbitrary duration. The generated re- better by having the content provider use less-efficient
quest streams exhibit patterns of requests with appropri- unicast delivery to fully fill the excess download capacities
ate distribution of those requests across objects, across of users. Based on our assumptions earlier, we assume our
peers and, for each object, across time. content provider provides distributed delivery up to the
Several properties of these distributions are key to our peer upload rate, and unicast delivery beyond that until
results. First, requests are distributed across objects fol- all peers are downloading at capacity.
lowing a power-law (or Zipf-like) distribution, in which a To achieve the above effect, all peers downloading an
few objects receive a large portion of the requests, but un- object must also devote their upload bandwidth to that
popular objects as a whole also receive a large portion of object (this condition is implicit in the analyses cited
requests. Requests across time to particular objects ex- above). Therefore, we assume that while a peer is down-
hibit a peak of popularity when an object is introduced loading, it is seeding that object, but that during the seed
into the system, waning as the object ages. Also, new ob- time (no active download), it is free to seed any object
jects tend to start as popular objects, displacing existing it has previously downloaded. If we assume N peers are
popular objects. downloading an object, M peers (above the N download-
For the simulations that we show results for in the next ing) are seeding it, and each peer has download capacity
few sections, we assume a peer population of 100,000, D and upload capacity U , the demand on the content
an initial object population of 70,000, a request rate of provider for that object is then:
40,000 per day (and thus each peer makes a request ev-
ery 2-3 days), and an object arrival rate of 10 per day.
Objects are all around the standard size of movies (700 BW = U + ((D − U) ∗ N) − (M ∗ U) (1)
MB). We simulate using a 100-day long request stream.
(Though our quantitative results reflect these chosen num- To reflect real-world asymmetries in download versus up-
bers, reasonable variations from these values do not qual- load capacity of peers, we set D/U = 3, specifically
itatively change our conclusions.) D = 60KB/s, U = 20KB/s. (As above, changing these
values or their ratio does not quantitatively affect our
2.2 Model of Peer Availability conclusions.)
We adopt a simplified model of peer availability based 2.4 Bringing it Together
on the current perceived usage of BitTorrent. Namely,
a client will become available when it wishes to make a Given the models above for requests, availability, and
delivery method, we can outline the design of the system 350
simulation as a whole. We begin with a population of P
peers, all initially offline. As time progresses, we receive 300
Requested
requests from peers. If a peer p makes a request at time t,

Provider BW (GB/s)
250

it then comes online and begins downloading the object 200


Wasted Peer BW

at its download capacity D. When the object is fully With Seeding


150
downloaded, the peer begins seeding some object that it
has previously downloaded, and will continue to do so 100
Minimum Required
for the seed time S. The peer will then go offline until it 50
makes its next request.
0
Using the notation of Equation 1, the total demand on 3 4 5 6 7 8 9 10 11 12 13 14 15
the content provider (across all objects i) is Bprovider =
P Seed time (hours)

i U + ((D − U ) ∗ ni ) − (mi ∗ U ). Our goal is to mini-


mize Bprovider . We assume that most of the parameters Figure 1. Bandwidth vs. seed time (last-object seed-
in our model are fixed. That is, we have no control over ing). This shows the demand on the central con-
the request pattern, object population, delivery model, tent provider across a variety of peer seed times.
or download and upload bandwidths of peers (and we 1) Requested: total demand, 2) Minimum required:
believe this to be a reasonable real-world assumption). minimum demand possible, 3) With seeding: using
Our remaining control over the system is limited to the a last-downloaded seeding strategy, 4) Wasted Peer
seeding strategy of peers (i.e. which object each peer BW: unused peer capacity using last-downloaded
should seed) and (to a likely far lesser extent) the av- strategy.
erage seed time for peers. Thus our goal in this paper
is to explore the space of seeding strategies, evaluating a seeding strategy employed by most BitTorrent client
which ones most effectively minimize the bandwidth re- applications.
quirement on the content provider.
3.1 Bounds on System Performance
2.5 Experimental Approach
There is clearly a maximum on this requested band-
Over the next few sections, we will evaluate the per- width; at any time, some finite number of peers Pd are
formance (demand on the content provider) of several actively downloading objects. Since we assume all peers
different seeding strategies. We begin by first bracketing download at rate D, the maximum demand on the con-
the achievable performance of any seeding strategy. We tent provider is Pd ∗ D. The line labeled “Requested” in
show the worst-case performance, namely the demand on Figure 1 show this maximum requested bandwidth at a
the content provider when peers contribute no seeding single point in time (day 50) of our generated trace, across
resources. We then show a measure of the best possible a variety of seed times ranging from 3 to 15 hours. We
performance, given the constraints of peer upload capac- see that the value is constant; this is expected, since we
ities and histories of downloaded objects. are considering maximum requested bandwidth, which is
With a minimum and maximum in place, we show unaffected by any bandwidth provided by the peers.
the performance of the existing BitTorrent strategy, in The minimum bandwidth demand is harder to account
which peers seed the object they most recently down- for. Recall that our bandwidth demand is lowered by
loaded. To improve on the performance of this strategy, peers in their seeding phase providing bandwidth to the
we then consider two types of approaches. The first (Sec- downloading peers. A logical conclusion is that if more
tion 4) are object-centered approaches, in which we at- peers are in their seeding phase, more bandwidth will
tempt to move peers around to optimize the performance be offloaded from the content provider, driving its band-
of a single object at a time. The second (Section 5) are width towards zero. Two factors play a role in the effect
peer-centered approaches, in which each peer indepen- that seeding peers have:
dently decides which object to seed. Our results compare
each proposed strategy to the existing strategy and the 1. We can only reduce the bandwidth on the content
minimum and maximum possible performance. provider to the extent that there are seeding peers
in the system. That is, there is a maximum upload
3. Basic Performance of the System capacity that the set of seeding peers can provide,
and we can only increase performance by this value.
We first consider the basic dynamics of the system, and
then examine the performance using a seeding strategy 2. However, even if sufficient absolute bandwidth ex-
based on common usage of BitTorrent. As stated in the ists on the seeding peers, the peers cannot serve ob-
previous section, our measure of performance for our de- jects they do not have. For any particular object, it
livery system is the total bandwidth demand on the con- is possible that the number of peers who have pre-
tent provider, after accounting for bandwidth provided viously downloaded the object and are now in their
by the peers. We first evaluate the minimum and maxi- seeding phase is insufficient to satisfy the demand
mum bandwidth demands we expect to see at the content on that object. Across all the objects, the sum of
provider: these provide boundaries for any seeding strat- these deficits correlates the maximum performance
egy we evaluate. We then evaluate the performance of improvement.
As stated, both these factors independently determine a have a surplus of peers seeding, at the expense of other
minimum demand on the content provider. The maxi- (usually older) objects. To resolve this problem, we re-
mum of these two factors is thus an absolute minimum quire a more intelligent scheme for choosing which objects
of the demand. a particular peer should seed. In this section, we consider
The line labeled “Minimum required” in Figure 1 shows object-centered approaches: that is, we will attempt to
this minimum value, again across a variety of hold times. optimize the performance of particular objects by moving
times. We see that the minimum is far below the max- peers with wasted bandwidth to those objects.
imum requested bandwidth and, as expected, improves Object-centered approaches are appealing because Bit-
with seed time. Note the sharp knee at a seed time of 7 Torrent is an object-based system. The tracker represents
hours. This represents the point at which the two mini- a centralized point of information with regard to each in-
mums trade dominance. At fewer than 7 hours, the first dividual object. Therefore, it is reasonable to assume
minimum dominates, since these low seed times introduce that choices could be made there for optimization of an
very little total peer bandwidth. However, the situation object. We consider two approaches, which use succes-
improves very quickly, and after 7 hours the second min- sively more information to achieve better performance.
imum dominates.
4.1 Poaching
3.2 Performance of a Basic Seeding Strategy
Let us define the “seeding balance” of an object. We
Given a maximum and minimum demand on the con- take the seeding balance as the difference between the
tent provider, we can now evaluate the performance of available peer seeding bandwidth and the demand on the
specific seeding strategies. In this section, we consider object. If for a particular object there are M peers seed-
the current model of BitTorrent seeding, namely, to seed ing, each with upload capacity U , and N clients down-
the last object downloaded. While this strategy is not loading with capacity D, then the seeding balance is
inherent in the design of the BitTorrent protocol, most M ∗ U − N ∗ D). An object with a positive seeding bal-
implementations of BitTorrent clients foster this behav- ance thus wastes bandwidth (too many peers are seed-
ior: ing), while an object with a negative balance forces the
• Several BitTorrent client applications (ex. the canon- provider to expend bandwidth. We will define a neutral
ical BitTorrent client, BitComet) use the concept of balance as balance which is either zero, or positive with
single application instance per torrent file (and ob- a value less than U (i.e. removing a single seeding peer
ject). Once this instance is closed for some reason, from a neutral object will result in that object having a
there is no incentive to re-open that particular file, negative balance).
and thus older objects are unlikely to be seeded. We first consider a method of seed selection we call
poaching. In this method, an object with a negative
• Even in the case of one application instance han- seeding balance can “poach” a peer to act as a seeder
dling several files at once, several applications (ex. for that object. Specifically, whenever an object under-
µTorrent, Azureus) explicitly encourage the seeding goes a change in its balance (e.g. a new request, or a
of recently downloaded files over older files. download finishes), the tracker will iterate over all peers
In our simulation of this strategy, a peer comes up at the that hold a copy of that object. For each of these peers, it
time of a request, fully downloads the object, then seeds will determine if they are currently seeding an object and,
this object for the duration of the seed time. if so, whether that object has a positive seeding balance
The line labeled “With Seeding” in Figure 1 shows (and thus wasted seed bandwidth).
the demand on the content provider when the peers in If so, the peer is tasked to seed the object in question,
our simulation adopt the last-downloaded seeding strat- rather than its current object, simultaneously reducing
egy. As we can see, utilizing client upload bandwidth can the wasted bandwidth and the demand on the central
significantly reduce the demand on the central provider; seeder. The process is repeated until the object in ques-
however, there is also a significant gap between the de- tion obtains a neutral balance, or no peers fit the crite-
mand seen and the minimum possible demand, suggesting ria above. We modified our simulator to implement this
alternate strategies might yield improved performance. strategy (i.e. optimize each object via the above method
Additional analysis reveals that many peers have wasted after all events affecting that object).
bandwidth: that is, many objects have more seeders than Figure 2 shows the bandwidth demand on the content
is necessary to accommodate the demand on those ob- provider when utilizing this new strategy. For compari-
jects. The wasted bandwidth is high enough that it son, we show the bandwidth requirements using the last-
should be possible to reduce the demand on the content downloaded seeding strategy, and the minimum require-
provider to the minimum possible demand. In the next ment, both from Figure 1. The line labeled “Poaching”
two sections, we introduce a variety of seeding strategies represents the bandwidth demand under the poaching
that attempt to do just that. strategy described above. We see that poaching sharply
decreases the demand, to 50–60% of that using the last-
4. Object-centered Approaches downloaded seeding strategy. Further, the total demand
is very close to the minimum possible demand.
As mentioned at the end of the previous section, the Implementing poaching would require that each tracker
key drawback to a last-downloaded approach is that cer- keep a history of all peers who have downloaded the ob-
tain objects (currently or very recently popular objects) ject in the past, as well as a method for the tracker to
250
In an object-centered approach, we focused on individ-
200 ual object, and made decisions about whether to re-task
the potential seeds of that object to increase performance.
Provider BW (GB/s)

Normal Seeding
150 In a peer-centered approach, we instead consider individ-
ual peers, and the decision becomes which object that
100
2-level Poaching peer should seed. Thus each peer independently deter-
Poaching mines which object to seed, regardless of the other peers’
50
Minimum
decisions.
Recall that an implementation issue for the object-
0
3 4 5 6 7 8 9 10 11 12 13 14 15
centered approaches was that each tracker would need
Seed time (hours) to maintain a history of peers that had downloaded the
object, rather than just the current set of peers seed-
De-
Figure 2. Performance of object-centered approaches.
ing or downloading the object. Further, the approaches
mand on the central content provider under a va- required communication between the tracker and (poten-
riety of object-centered approaches. 1) Minimum: tially a great many) other peers. In a peer-centered ap-
minimum demand possible, 2) Normal seeding: us- proach, we need only maintain the list of objects a peer
ing a last-downloaded approach, 3) Poaching: mov- has downloaded (which we presumably would keep any-
ing peers serving objects with positive seeding bal- way). Further, there is no need for communication be-
ances, 4) 2-level poaching: as above, using chains yond querying objects for their seeding balance, and this
of two peers. operation is integral to existing BitTorrent systems (and
trackers are by their nature publicly available). There-
query each peer as to its current seeding status. Main- fore, if peer-centered approaches can provide similar per-
taining the list of previous peers should be trivial; track- formance gains as object-centered approaches, we will
ers already know who is currently downloading, and they tend to prefer the peer-centered approach.
need simply to not forget those peers when they finish.
However, it may be infeasible for the tracker to contact 5.1 Best-object Seeding
peers which, unlike the trackers, may not have public IP
addresses. We first consider a simple change to the current Bit-
Torrent seeding strategy. Currently when a peer finishes
4.2 2-level Poaching downloading an object, it starts seeding that object im-
mediately. We have shown that this results in wasted
While the decrease in demand using a poaching strat-
bandwidth, because very popular objects will have many
egy is significant, there is still some room for improve-
more seeders than necessary. Thus it is likely that a peer
ment, and it is useful to know why the above approach
will start seeding an object with a positive seeding bal-
is not ideal. This is best illustrated by a simple exam-
ance, wasting bandwidth. So a better approach is that
ple. Suppose we have three objects (O1 , O2 , O3 ), and
when a peer finishes downloading an object (and thus en-
two peers (P1 and P2 ). P1 hold objects O1 and O2 , and
ters its seeding phase), it instead iterates over all objects
is currently seeding object O2 . P2 holds objects O2 and
it has downloaded in the past, and seeds one of the ob-
O3 , and is currently seeding O3 . Finally, suppose object
jects it holds that has a negative seeding ratio (if any).
O1 has a negative seeding balance, object O2 has a neu-
We call this approach best-object seeding.
tral seeding balance, and object O3 has a positive balance
Figure 3, like Figure 2, shows the minimum central
and thus wasted bandwidth.
provider demand and the demand of the current BitTor-
Now suppose we wish to optimize object O1 . We can-
rent policy. The line labeled “Best-object” shows the
not poach P1 , since the object it is seeding does not have
effect of the change above. We can see that this ap-
spare capacity. And we cannot poach P2 because it does
proach shows some reduction in bandwidth, mostly at
not hold O1 . However, we could make a double change,
lower seed times. However, there is significant room for
and let P2 seed O2 , which now gives O2 enough spare
improvement when compared to the minimum.
capacity that we can poach P1 to seed O1 .
We modified our simulator to take these possibilities
into account by increasing the number of peers contacted 5.2 Continuous Best-Object Seeding
when optimizing an object, and checking for the above The problem with best-object seeding as described
condition. The line labeled “2-level poaching” (we con- above is that it still retains one of the problems of the cur-
sider switching the objects of two different peers at a rent (last-downloaded) strategy, namely that we are com-
time) in Figure 2 shows the bandwidth demand when we mitting to seeding a single object for a certain amount of
take this into account. We see that this approach es- time. It is quite possible that during that time period,
sentially reaches the minimum possible bandwidth value; the demand on the object will decrease to the point that
the remaining difference is likely due to extensions of the our seeding is simply wasted bandwidth. Poaching in
above scenario (i.e. changing 3 or more peers to achieve some sense overcomes this; if demand shifts such that a
improvement.) particular peer is wasting bandwidth, that peer becomes
eligible to be poached.
5. Peer-centered Approaches Best-object seeding, while an improvement over last-
250
also yields near-ideal performance, but with only small
changes necessary in the BitTorrent client applications,
200 and little communication overhead.
Normal Seeding A full evaluation of these methods is desirable. We
Provider BW (GB/s)

150 simulated performance of the system by idealizing several


Best-object
portions, especially the BitTorrent-like delivery system.
100 An implementation of such a system, and an emulation
Continuous (or measurement of real-world usage) would serve to ver-
50
Minimum
ify these results, though we are confident that our general
conclusions will hold.
0
3 4 5 6 7 8 9 10 11 12 13 14 15
The main lesson of these experiments is that history
Seed time (hours) matters: since popularity of media objects peaks early
in their lifetime and gradually trails off, if we focus only
De-
Figure 3. Performance of peer-centered approaches.
on the currently popular objects (which last-downloaded
mand on the central content provider under a vari- seeding does) we end up wasting bandwidth with too
ety of peer-centered approaches. 1) Minimum: min- many peers seeding an object which is waning in popu-
imum demand possible, 2) Normal seeding: using larity. This comes at the expense of other objects, which
a last-downloaded approach, 3) Best-object: seeding have too few downloads to generate seeds using a last-
the object with the worst seeding balance, 4) Contin- downloaded strategy, but enough downloads that having
uous: Continuous update of object with worst seed- seeds matters.
ing balance. Though we have proposed a specific approach that
works, in general we argue that a media delivery sys-
downloaded seeding, does not have this property of poach- tem either enforce or encourage clients to retain and seed
ing. However, a simple change is to reconsider the seeding objects they have downloaded in the past. This should
choice at a finer granularity than a single seeding period. not be difficult; it seems natural that clients will cache
If we instead reconsider this decision every, say, 10 min- recently downloaded objects. The potential performance
utes, each peer would notice that it was wasting band- gains from not forgetting past objects are tremendous.
width, and shift to seeding a better object. We call this
approach continuous best-object seeding. 7. References
The line labeled as such in Figure 3 shows the band- [1] A. R. Bharambe, C. Herley, and V. N. Padmanabhan.
width demand when peers adopt this approach. We see Analyzing and improving a BitTorrent network’s performance
that like 2-level poaching, this approach yields almost all mechanisms. In Proceedings of IEEE Infocom 2006,
the benefit possible: the bandwidth demanded is very Barcelona, Spain.
close to the minimum required. This result, combined [2] R. J. Dunn. Improving P2P Distribution of a Media Workload.
with the simplicity of this approach, implies that this
PhD thesis, University of Washington, December 2006.
technique is an obvious best choice for the seeding strat-
egy of any BitTorrent client. [3] K. P. Gummadi, R. J. Dunn, S. Saroiu, S. D. Gribble, H. M.
Levy, and J. Zahorjan. Measurement, modeling, and analysis
of a peer-to-peer file-sharing workload. In Proceedings of the
6. Conclusions 19th ACM Symposium on Operating Systems Principles
(SOSP), Lake George, NY, USA, October 2003.
In this paper, we considered a specific P2P-based sys-
tem design: assuming a central source of objects, we [4] M. Izal, G. Urvoy-Kellera, E. Biersack, P. Felber, A. A.
wish to minimize the demand on that source by utilizing Hamra, and L. Garcés-Erice. Dissecting BitTorrent: Five
the upload capacities of peers downloading those objects. months in a torrent’s lifetime. In Proceedings of the 2004
Each peer uploads the object it is downloading until com- Passive and Active Measurement Workshop (PAM), Antibes
plete, and then donates a period of time in which is seeds Juan-les-Pins, France, April 2004.
some object it has previously downloaded. [5] S. McBride. Warner Bros. to try file sharing of films, TV
We showed that the approach taken by most BitTor- shows in Germany. Wall Street Journal. January 30, 2006.
rent client of seeding the last downloaded object yields a [6] J. Pouwelse, P. Garbacki, D. Epema, and H. Sips. The
significant reduction in demand on the source, but with BitTorrent P2P file-sharing system: Measurement and
significant room for improvement. Two approaches to op- analysis. In Proceedings of the 4th International Workshop on
timization are to focus on objects (attempting to move Peer-to-Peer Systems (IPTPS 2005), Ithaca, NY, USA,
peers to improve the performance of a particular objects) February 2005.
and on peers (each peer decides which object to seed
[7] D. Qiu and R. Srikant. Modeling and performance analysis of
based on its performance). We showed that the best of
BitTorrent-like peer-to-peer networks. In Proceedings of ACM
the object-centered approaches could yield near-ideal per-
formance improvements, but only a great cost in terms SIGCOMM, Portland, OR, USA, August/September 2004.
of communication. [8] G. Sandoval. BitTorrent inks licensing deal with studios.
The best approach is peer-based, where each peer seeds CNET News.com. July 10, 2006.
any object in need of seeders, re-evaluating its choice reg- [9] G. Sandoval. BitTorrent inks studio distribution deal. CNET
ularly to minimize wasted bandwidth. This approach News.com. May 8, 2006.

You might also like