14
Understanding Mesh- based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Understanding Mesh-based Peer-to-Peer Streaming

Nazanin Magharei

Reza Rejaie

Page 2: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Motivation & Related works

P2P overlays support one-to-many multimedia streaming applications without any special network support

P2P streaming mechanism goals are: Maximizing delivered quality Achieving scalability Accommodating heterogeneity and asymmetry of peers’

bandwidth Providing resiliency despite peers’ dynamic

Common approach is tree-based overlay construction with push-based content delivery Delivered quality is limited to each peer Leaf peers’ bandwidth can not be utilized

Page 3: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Mesh-based streaming

Mesh-based overlay construction with pull-based content delivery Inspired by file-swarming mechanisms (e.g.

BitTorrent( Distribute pieces of a file among different peers Most peers contribute their outgoing bandwidth Scalable Resilient to peers’ dynamic

Page 4: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Challenges &Goals

Problem: Incorporating swarm-like content delivery mechanism to support live media streaming to a large number of dynamic peers

Challenges: In-time requirement of content delivery Limited availability of future content

Goals: Effectively utilizing outgoing bandwidth of all participating peers Maximizing delivered quality to each peers Minimizing buffer (playback delay from source)

In this paper we try to answer these fundamental questions: How do the key properties of the overlay (e.g. degree) affect the delivered

quality to individual peers? What is the global flow pattern of content over mesh-based overlay to

achieve system goals?

Page 5: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Mesh-based P2P StreamingOverview

Two key components: Overlay Construction

Randomly connected and directed mesh Each peer has multiple parents and multiple

children Simple Resilient to churn

Content Delivery Push reporting by parents Periodically pull requesting

by child peers New segment of length generated by source

every sec. Peers delay their playout time by at least

behind source MDC stream to deliver maximum quality to

each peer based on its available bandwidth

2

1

3

6

7

5

4

12

139

10

118

Source

Page 6: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Performance Bottleneck

To separate causes of low quality, define two performance bottlenecks:

Bandwidth Bottleneck Avg. BW for a connection between parent p and child c:

MIN (outbwp/outdegp, inbwc/indegc) If these two ratios are not equal, one of them causes

BW bottleneck. Condition : outbwp/outdegp = inbwc/indegc = bwpf All connections in the overlay must have roughly the same

bandwidth. Content Bottleneck

Useful content among some parents of a given peer is not sufficient to fully utilize its available bandwidth

c

poutdeg

p

indegc

Page 7: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

21 3

6 754

[t0,t0+ ][t0t0+2 ][t0t0+3 ]

Content Bottleneck cont, Data units = bwpf * (interval) Each parent peer should have at

least one useful data unit per Interval for each of its child peer

Unique data units of each segment must be delivered to peers within intervals after its generation time by source

Bufferdelay Goal is to:

minimize content bottleneck maximize quality

minimize minimize playback delay

To achieve these goals content delivery should have two phases: Diffusion swarm

[t0]

Page 8: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Organized view of the overlay mesh

Peers organized into levels, based on their shortest distance from source

Each peer with degree deg in level n has one parent in level n-1 (diffusion parent) and deg-1 parents in the same or lower level (swarming parents) Peer 13 in level 3 has one parent 7 in level 2 the rest in level 3

Population of levels increases by going down into levels :

pop(n) <= degsrc * deg(n-1)

Level 1

Level 2

Level 3

21 3

6 754

12 13910

118

Source

Page 9: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Content Delivery: Diffusion

Diffusion phase Fastest time for pulling all data

units of a segment from source to the lowest level = depthsec

All connections from diffusion parents should be exclusively used for diffusion of new data units Each subtree rooted at level 1

peers receives the same data unit which we called diffusion subtree

After depth intervals each peer has one data units of the segment

21 3

6 754

12 13910

118

Source

Page 10: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Content Delivery: Swarm Swarming phase

Pulling the missing data units of the segment from swarming parents Only a swarming parent in a

different diffusion subtree can rapidly provide a new useful data units Swarming parent 11 for child

12 are at the same diffusion subtree ! Even larger for parent

8 to child 1, 3 swarming intervals Swarming phase for a segment

may take more than 1 interval depends on the location of swarming parents.

Kmin = minimum number of swarming intervals for which 90% of peers quality > 90%

Kmin = min – depth

21 3

6 754

12 13910

118

Source

Page 11: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Key overlay property

Goal : maximizing quality while minimizing delay Increasing degree can help to achieve goals by :

reducing depth and increasing diversity of swarm connections

But increases observed loss rate thus decreases throughput of each connection

Limited degree range for a bandwidth? What is a good degree for a peer with certain

bandwidth? That is what is a good bwpf ?

Page 12: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Evaluation

Kmin is fixed =3 Very low degree, decrease in diversity of swarm parents increase in

swarming interval Very high degree, increase in loss rate increase in swarming interval Higher bw scenario, higher bwpf ratio There is a sweet range of bwpf values

Page 13: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Results

• Depth gradually increases • Swarming interval Kmin does not change with peer population as number of diffusion Subtrees are fixed so the diversity is fixed

scales well

Increasing degree, increases transmission rate

Page 14: Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie

Conclusionsfuture works

We presented a global pattern of content delivery that is able to effectively utilize outgoing bw of peers while maximizing delivered quality with minimum buffer requirement

There is a sweet range of peer degree (bwpf) that maximizes delivered quality to individual peers with minimum buffer.

Future work: Conducting a comprehensive evaluation of P2P mesh-based streaming protocol. Heterogeneity in peer properties (e.g. access link bandwidth) Peer behavior (e.g. packet scheduling strategy) Churn