This action might not be possible to undo. Are you sure you want to continue?

Welcome to Scribd! Start your free trial and access books, documents and more.Find out more

David Arthur, Rina Panigrahy Stanford University

What is BitTorrent?

**File sharing protocol
**

Scalable way of downloading one file

Break file into multiple data blocks After downloading a data block, clients help upload it to other clients

**Accounts for one third of all Web traffic
**

Many legitimate uses (eg Unix distributions)

Is BitTorrent efficient?

mpirically: Yes.

Even if clients join simultaneously (³flash crowd´) Bharambe et al. (2005), Izal et al. (2004)

Theoretically: Why?

Qiu and Srikant (2004), Yang and de Veciana (2004) explain it as a stochastic process

Ignore individual data blocks Cannot model: ³How often is useful data available?´

Our Model

Part 1/2

**Graph G with n vertices sharing b data blocks
**

One vertex (a ³seed´) starts with all data blocks

**Discrete time steps:
**

Each vertex proposes a neighbor to upload to

Which neighbor? We focus on random

Each vertex accepts up to one proposal, and downloads up to one block

Which block? We focus on arbitrary

Our Model

Part 2/2

**T time steps until every vertex has every block GOAL: Analyze T Simplifications:
**

Dynamic graph? Varied bandwidth? Tit-for-tat? Discussed further in paper

Example

Data Block Seed Vertex Connection

Extremal bounds

Best case: T =

(b + log n)

For one vertex to get all blocks: (b) For one block to reach all vertices: (log n)

Worst case: T = O(bn)

At least one download happens each time step Can happen:

Must choose a good graph

The BitTorrent Graph

**BitTorrent uses special graphs:
**

Vertices added sequentially Each vertex connects to C random preexisting vertices

Properties

Max degree D = O(Clog n) whp Diameter d = O(log n) whp Qualitatively: Sparse and tree-like

A General Result for Sparse Graphs

T = O(D(b+d))

On BitTorrent graphs, this is about O(bClog n) Tight in D, b, d

**Under very idealized settings:
**

Take random D-regular graph Each vertex ignores all but 3 neighbors and proceeds randomly Result implies T is optimal: O(b + log n)

Method of Proof

Part 1/2

Consider a path between two vertices

With probability 1/D, vertex uploads one block to next vertex if possible Need to show all blocks reach last vertex in O(D(d+m)) time whp

Method of Proof

Part 2/2

**It only slows things down to
**

a) Introduce blocks to first vertex one at a time with probability p < 1/D each time step b) Add O(d) dummy blocks at other clients that interfere with routing

**Puts system in equilibrium
**

Now analyze the equilibrium

Simplifies download rate of final vertex

A Tighter Result

**Assume graph has a tree-like structure with min degree D0
**

Less general, but allows for tighter analysis

**In this case, T = O(D/D0 (b + dlog n))
**

See paper for proof On BitTorrent graphs, this is about O(blog n)

Previous result: O(bClog n)

An Application

Part 1/2

**Recall BitTorrent¶s graph:
**

Clients arrive in order Each client connects to C random existing clients

A modified graph:

Clients arrive in order Each client picks 2Clog n random existing clients and connects to the Clog n most recent ones

An Application

Part 2/2

**Same results on this graph: T = O(b + log2 n)
**

Optimal is O(b + log n) Practical ± very similar to BitTorrent

Conclusions

**Still work to be done
**

Eg. A better general result for dense graphs?

O(D(b+d)) = O(nb) on a complete graph!

Thanks for listening!

Presentation on bot torrent

Presentation on bot torrent

- null
- A2 7.2 Solutions
- A2 6.3 Pt. 2 Solutions
- A2 5.7 Solutions
- A2 6.4 Solutions
- A2 4.2 Solutions
- A2 8.3 Pt. 1 Solutions
- A2 8.6 Solutions
- A2 7.4 Pt.1 Solutions
- GATE2014 Material List CSE
- A2 6.5 Solutions
- A2 5.2 Part 2 Solutions
- Solutions to 2012 Post Prelim Paper
- A2 7.1 Solutions
- International Mathematical Olympiad 1997 Sortlisted Problems With Solutions
- 150 Ch 4 #1-10 a Solutions
- Films on Disk
- lecture 4 CAPM
- ItemsEquipmentDigitsFM+
- Fear
- LECRAE LYRICS "Fear"
- GTA San Andreas Cheats
- Daikin Errors
- Daikin Error Codes
- Secondary Principals Meeting - Feb 3
- Strategic Analysis Framework
- Umbrella
- Outline Appraisal Book
- The Canonical a Probabilistic Model for Temporal or Sequential Data is What
- December Update

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

We've moved you to where you read on your other device.

Get the full title to continue

Get the full title to continue reading from where you left off, or restart the preview.

scribd