Download presentation
Presentation is loading. Please wait.
Published byChase Hawken Modified over 10 years ago
1
Optimal Scheduling in Peer-to-Peer Networks Lee Center Workshop 5/19/06 Mortada Mehyar (with Prof. Steven Low, Netlab)
2
Outline Brief description of p2p file sharing and Bittorrent protocol Our model for Bittorrent-like file sharing Efficiency of scheduling algorithms with respect to different optimality criteria.
3
About Bittorrent A p2p protocol started ~ 2002 The most popular p2p system. It accounts for 35% of all Internet traffic! (according to British Web analysis firm CacheLogic) Warner Brothers to distribute films through Bittorrent (May 2006)
4
Bittorrent Basics Divide file into small pieces (256KB). Utilize all peers upload capacities server client Problem: large file (~GB) and large demand (10s, 1000s or more clients.) It is not feasible to set up infrastructure for traditional client-server download.
5
Bittorrent schematic Seed (peer with entire file) peer new peer (with torrent file) tracker
6
Bittorrent algorithms: who to upload to? Tit-for-tat: upload to peers from which most data downloaded in last 30 seconds (4 peers by default.) Therefore: incentive to upload in order to be chosen by other peers!
7
Bittorrent Algorithms: What piece to send? Rarest-first: upload the piece that is rarest among your neighbors first 1 1 2 2 1 1 1 1 2 2 3 3
8
The Broadcasting Model t = 0 1 1 t = 1 1 1 t = 2 1 1 1 1 1 1 1 1 1 1 1 1 t = 3 M = 1, N = 7, all upload capacities are 1 piece per unit time
9
Example: M = 2, N = 3 t = 0 t = 1 1 1 t = 2 1 1 1 1 1 1 2 2 t = 3 2 2 1 1 2 2 1 1 1 1 2 2 2 2 2 2 1 1 (rarest first!) 2 2 2 2 t = 4
10
Equal capacities, general M, N Theorem 1: There exists a schedule for a server to broadcast M messages to N nodes in M+logN time [Bar-Noy et al, 2000] However, it is very difficult to extend the result to networks of different capacities
11
Uplink Sharing Model 1 server, N peers with possibly different capacities. Suppose upload capacities are the only bottleneck. Suppose M >> 1 F F
12
Optimal Last Finish Time Theorem 2: the minimal time for all N peers to obtain a file F (optimal last finish time) from a server is where F is the file size and Cs, C1, …,CN are the upload capacities. There always exists a schedule S 0 such that the finish time vector is
13
Example (Zero Peer Capacities) Suppose all peers have 0 capacity, consider the following two strategies Divide capacity equally among peers: Upload to peers one by one: The last finish time is the same, but the latter is obviously better! In fact, the latter can be shown to be average finish time optimal.
14
Optimal Average Finish Time (N=3) t1 t2 t3 finish time
15
Conclusion and Ongoing Work Simple model with rich structure for understanding efficiency of p2p file sharing It captures many issues Bittorrent addresses (e.g. favoring fast peers, rarest first policy) Lots of questions remain open: understanding fairness-efficiency tradeoff other kinds of optimality criteria
16
Netlab s other research projects http://netlab.caltech.edu More details about this work morr@caltech.edu
17
Thank You!
18
Backup slides start here
19
Another way to look at Ts
20
Previous Bittorrent Modeling Work Qiu & Srikant [Sigcomm 04] Predator-prey-like fluid models Assumes equal capacities among peers Assumes rates of peer joins/leaves and studies equilibrium and stability
21
Proof of Theorem 2 First notice that the two terms have to be lower bounds of the optimal last finish time So it remains to show that the equality is achievable. Here s a strategy for that:
22
Proof of Theorem 2 When the server allocates to peer i: Each peer therefore receives:
23
Proof of Theorem 2 When the server allocates to peer i: Each peer therefore receives:
24
Bittorrent Basics Torrent file: Meta data about the file: filename, size, author, etc. Hash info for each file piece to verify integrity Link to centralized tracker Published on the Web Tracker: Keeps track of the IPs of peers Bootstraps new peers Centralized, but does not coordinate data transfer among peers
25
P2P systems Napster (centralized directory) Kazza (semi-decentralized system with super peers) Gnutella (e.g. Limewire, Bearshare, decentralized) Bittorrent (most popular and successful for distribution of large files)
26
Another way to look at T L
27
Non-Zero Peer Capacities If the peer capacities are not all 0, then the upload one by one strategy can be shown to result in these finish times: However … this is not average finish time optimal!
28
Comparing finish time vectors Definition: a finish time vector v1 is strictly better than another finish time vector v2 if no component of v1 is larger, and some component of v1 is smaller than the corresponding component of v2 - (2, 3, 3) strictly better than (3, 3, 3) - (1, 2, 3) (2, 2, 2) cannot be compared with respect to this
29
The Broadcasting Model' Assume discrete-time, synchronous system where N nodes have equal upload capacity of 1 message per unit time Objective: find a schedule such that every node receives all M messages in minimal time
30
Assumptions reasonable for p2p Size of file pieces (256KB for BT) is usually much smaller than total size of file (~GB). Namely, the number of pieces M >> 1. Upload links are usually much slower (e.g. DSL lines), so assume upload capacities are the only bottleneck.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.