P2P streaming today uses constant bitrate video, primarily because it is easier to cut such video into fixed-throughput substreams and deliver it via multiple peers. This approach suffers from low reliability of end-to-end throughput which can cause playback freezes. It also suffers from extreme variation in throughput across peers. This paper proposes a variable-bitrate method for P2P streaming which solves these problems. The proposed method is designed for scalability as well as spontaneous network organization because of its low demand on resources.
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
A Method for Extremely Scalable and Low Demand Live P2P Streaming based on Variable Bitrate
1.
2. .
.
P2P Streaming: Models and Problems
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
2 /25
2/25
3. .
.
P2P Streaming Models
1.
◦ many software products
-- all based on default
BitTorrent
…
Share
BitTorrent model 11 ,
aka the pull paradigm
2.
Content
Provider
(origin)
P2P Network
substream model 10 ,
aka the push paradigm
◦ several existing services
07 08 09
◦ not limited to P2P
networks, also work in
clouds 03
03 myself+0 "Multi-Source Stream Aggregation in the Cloud" Wiley Book on Advanced Content Delivery ... Clouds (2013)
08 K.Park+4 "An Analysis of User Dynamics in P2P Live Streaming Services" ICC (2010)
09 C.Wu+2 "Diagnosing Network-wide P2P Live Streaming Inefficiencies" IEEE INFOCOM (2009)
10 Z.Li+4 "Towards Low-Redundancy Push-Pull P2P Live Streaming" QShine (2008)
11 C.Stais+1 "Realistic Media Streaming over BitTorrent" Future Network and Mobile Summit (2012)
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
3 /25
3/25
4. .
.
P2P Substream Method
….
P2P Connection
shake
hands than
use continuously
• basic idea:
….
….
M.Zhanikeev -- maratishe@gmail.com --
….
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
4 /25
4/25
5. .
.
Problems and Solutions
•
quality management
1.
2.
•
overhead
1.
2.
•
BitTorrent: RTT per piece
substream: switching time at re-election
optimization
1.
2.
•
BitTorrent: nothing
substream: parent/child re-election
BitTorrent: nothing, but some selection algorithms
substream: multihop optimization is possible -- scheduling and flow problems
the biggest problem: data unit has constant size!
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
5 /25
5/25
6. .
.
P2P Streaming: Social Features
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
6 /25
6/25
7. .
.
P2P Streaming: Social Features
Scale
Traffic
flow
•
note: P2P delivery network is not really
a tree
• reality shows that your remote peers are
power-law distributed in throughput
◦ gets harder to find good peers with longer
lists
…
…
…
…
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
7 /25
7/25
8. .
.
Bitrate: CBR, VBR, SVC
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
8 /25
8/25
9. .
.
CBR, VBR, SVC
• VBR and SVC are both part of
ITU-T H264 12
VBR: really extreme variation in throughput
• SVC: smoother distribution 13 , with some control over smoothness 14
•
why: SVC is based on hierarchy of layers which can be moved around within GOP
Block
GOP
CBR
Time
Block
GOP
Frame size
Frame size
GOP
Frame size
◦
VBR
Time
Block
SVC
Time
12 "Advanced video coding for generic audiovisual services" ITU-T Recommendation H.264 (2012)
13 R.Kusching+2 "An Evaluation of TCP-based Rate-Control ... Streaming of H.264/SVC" ACM SIGMM MMsys) (2010)
14 M.Fidler+3 -M.Zhanikeev -- maratishe@gmail.com "Efficient Smoothing of Robust VBR ... LiveTraffic ... Slice-Based..." CCNC (2007)
Extremely Scalable Video P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
9 /25
9/25
10. .
.
Bitrate Models and Distributions
Frame size (kb)
•
real traces from 15
VBR versus single-layer SVC
SVC
12
12
Frame size (kb)
•
8
4
0
0
20
40
60
80
Time sequence
100
VBR
8
4
0
0
20
40
60
80 100
Distribution sequence
15 P.Seeling+2 "Network Performance Evaluation with Frame Size and Quality Traces ..." IEEE Comm. Surveys... (2004)
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
10 /25
10/25
11. .
.
The Proposal: VBR Subtreams
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
11 /25
11/25
12. .
.
Recap: The Objectives
.
The Main Objective is...
.
... to build a method which can
.
adapt to to any peer distribution in realtime
• VBR is fixed, no control parameter
• SVC can be controlled by switching between encoders
ultimately: raw manipulation by shifting SVC blocks around the GOP
• ideal success: distribution of throughput in peers = distribution of
•
framesize in GOP
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
12 /25
12/25
13. .
.
Proposal: Substream Design
•
simple:
pick a
frame position in GOP and assign it to one peer
◦ positions: 1st, 2nd, ....
•
expected outcome:
since 1st frame is normally the largest in GOP, that peer
should be able to support high throughput
◦ by extension, most other peers carry much lower load
◦ size of GOP = number of peers, by design
GOP
CBR
Time
M.Zhanikeev -- maratishe@gmail.com --
Block
GOP
Frame size
Block
Frame size
Frame size
GOP
VBR
Time
Block
SVC
Time
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
13 /25
13/25
14. .
.
Proposal: Dynamics
Parent A
Client
Bigger frames
(GOP pos x)
Failed to
receive
Re -order
parents
Close
connection
Pick a
better
candidate
Parent B
Bigger frames
(GOP pos x)
Smaller frames
(GOP pos y)
M.Zhanikeev -- maratishe@gmail.com --
traditional substream:
find a new peer for a substream
• proposed: swap frame
positions between two peers
Only for changed
frames/parents/GOP pos
Connection
close detected
•
Periodic
check/update
◦ peers are initially selected
close to the expected
distribution, so no new
peers are necessary
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
14 /25
14/25
16. .
.
Simulation: Models and Parameters
CBR
SVC
VBR
1
Value
0.8
1. pick VBR I-Frame size as
set it to 1
0.6
2. pick I-Frame size of SVC as a
0.4
3. pick frame size of SBR as a
fraction of 1
fraction of 1
0.2
4. use these fractions as
parameters
0
0
10
M.Zhanikeev -- maratishe@gmail.com --
20
30
Distribution sequence
40
50
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
16 /25
16/25
17. .
.
Simulation: E2E Throughput Model
drops in throughput
longer paths experience more drops (not deeper!, more in number)
a parameter defines the range of drop probabilities for sampling one's peers
• throughput variation is modeled as
•
•
Throughput
Time slot
100%
Simulation
parameters
parameter
M.Zhanikeev -- maratishe@gmail.com --
0%
Time
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
17 /25
17/25
18. .
.
Ratio of VBR/CBR and SVC/CBR (freeze time)
Results : Freeze Time
SVC to CBR
VBR to CBR
7
6
x=0.05
5
x=0.2
•
x=1
4
3
simple lesson:
framesize
distributions are good, as long
as they are not extreme
• CBR can outperform VBR/SVC
below frame size of
0.2 -- 1/5th of VBR I-Frame)
only
y=1
2
1
0
0
0.3
M.Zhanikeev -- maratishe@gmail.com --
0.6
0.9
CBR level
1.2
1.5
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
18 /25
18/25
19. .
.
Throughput gain (higher / lower) (kbps)
Results : Gain (social)
1.9
•
1.7
SVC substream design?
Slow peers
1.5
viewpoint: how much can a
user benefit from a VBR/
• test various peer distributions
and find out
1.3
•
1.1
gain: best SVC/VBR
throughput divided by the
number of CBR
0.9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Normalized lower throughput
M.Zhanikeev -- maratishe@gmail.com --
0.9
1
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
19 /25
19/25
20. .
.
Wrapup
•
VBR/SVC substream design create a socially
adequate method
◦ after all, is it your fault that your 3G shapes your throughput?
• VBR/SVC substream design has to be a
clean slate -- frame position
assignment is proposed
• results show that
is smoother
SVC is preferred because its framesize distribution
◦ even more becuase the distribution can, in theory, be controlled
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
20 /25
20/25
21. .
.
That’s all, thank you ...
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
21 /25
21/25
22. .
.
The PUSH vs PULL Argument
• mathematical argument in
[03]
Client
Server
Client
Server
Pull
M.Zhanikeev -- maratishe@gmail.com --
overhead =
RTT for each piece
• overhead can be overcome
only by drastically
increasing the number of
remote peers --
Push
……
•
……
swarming
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
22 /25
22/25
23. .
.
Reference: Average Throughput
Ratio of average throughput (-log(1/y) for y < 1)
SVC/CBR
VBR/CBR
3
1
unit I-Frame size is
50kb
known fact: VBR/SVC can
support the same quality
0.5
at 1/2 of CBR's throughput 15
2.5
•
CBR < VBR
2
VBR < CBR
1.5
•
VBR < 0.5 * CBR
0
• 1/2 of CBR's throughput is at
about 20kb
framesize
-0.5
-1
of CBR
-1.5
0
10
20
30
40
50
CBR Frame Size (kb)
60
70
15 P.Seeling+2 "Network Performance Evaluation with Frame Size and Quality Traces ..." IEEE Comm. Surveys... (2004)
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
23 /25
23/25
24. .
.
Features: Taxonomy
• is your
data unit regular?
Content
BLOCK
GOP
FRAME
Fixed
Regular
M.Zhanikeev -- maratishe@gmail.com --
adaptive in realtime?
GOP
BLOCK
FRE
and can it be
FIR
Fixed
Irregular
FRAME
Adaptive
Irregular
AIR
This
method
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
24 /25
24/25
25. .
.
SVC in P2P: Disclaimer
• SVC is considered for P2P in literature
1. BitTorrent with variable-size pieces 04
2. BitTorrent pieces as multiples of GOP 05
3. optimization for SVC layer repacking in small scale streaming tool called SPPM
(Stanford)
◦ assignment by frame size positions is still the unique contributions
◦ socially, the proposed method will scale while SPPM will not
04 N.Capovilla+4 "...Distributing Scalable Content over P2P Networks" MMEDIA (2010)
05 P.Baccichet+3 "Low-delay Peer-to-Peer Streaming using Scalable Video Coding" Packet Video (2007)
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
25 /25
25/25
26. .
.
[01] R.Buyya+3 (2008)
Content Delivery Networks
Springer LNEE, vol.9
[03] myself+0 (2013)
Multi-Source Stream Aggregation in the Cloud
Wiley Book on Advanced Content Delivery ... Clouds
[04] N.Capovilla+4 (2010)
...Distributing Scalable Content over P2P Networks
MMEDIA
[05] P.Baccichet+3 (2007)
Low-delay Peer-to-Peer Streaming using Scalable Video Coding
Packet Video
[06] C.Gurler+2 (2012)
Variable chunk size ... and ... window for P2P streaming of scalable video
ICIP
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
25 /25
25/25
27. .
.
[07] B.Li+5 (2008)
Inside the New Coolstreaming: Principles, Measurements and Performance
Implications
IEEE INFOCOM
[08] K.Park+4 (2010)
An Analysis of User Dynamics in P2P Live Streaming Services
ICC
[09] C.Wu+2 (2009)
Diagnosing Network-wide P2P Live Streaming Inefficiencies
IEEE INFOCOM
[10] Z.Li+4 (2008)
Towards Low-Redundancy Push-Pull P2P Live Streaming
QShine
[11] C.Stais+1 (2012)
Realistic Media Streaming over BitTorrent
Future Network and Mobile Summit
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
25 /25
25/25
28. .
.
[12]
(2012)
Advanced video coding for generic audiovisual services
ITU-T Recommendation H.264
[13] R.Kusching+2 (2010)
An Evaluation of TCP-based Rate-Control ... Streaming of H.264/SVC
ACM SIGMM MMsys)
[14] M.Fidler+3 (2007)
Efficient Smoothing of Robust VBR Video Traffic ... Slice-Based...
CCNC
[15] P.Seeling+2 (2004)
Network Performance Evaluation with Frame Size and Quality Traces ...
IEEE Comm. Surveys...
[16] J.Surowiecki (2004)
The Wisdom of Crowds
Doubleday
M.Zhanikeev -- maratishe@gmail.com --
Extremely Scalable ... Live P2P Streaming based on Variable Bitrate -- http://tinyurl.com/marat131205 ---
25 /25
25/25