The Importance of History in A Media Delivery System: Richard J. Dunn, Steven D. Gribble, Henry M. Levy, John Zahorjan
The Importance of History in A Media Delivery System: Richard J. Dunn, Steven D. Gribble, Henry M. Levy, John Zahorjan
The Importance of History in A Media Delivery System: Richard J. Dunn, Steven D. Gribble, Henry M. Levy, John Zahorjan
Provider BW (GB/s)
250
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)