ppt - Electrical Engineering

Download Report

Transcript ppt - Electrical Engineering

Optimizing the Quality of Scalable
Raj Kumar Rajendran
Video Streams in P2P Networks
Dan Rubenstein
Dept of Electrical Engineering
Columbia University
•
Video time-sliced
fixed-bytesize
epochs
•
Epoch 1
•
– Minimizes waste and variability
– Maximizes smoothness
Time
– In practice: future bandwidth availability not known
• We develop on-line algorithms that allocates current
bandwidth to download current or future parts of the video
Bandwidth
Time
Solution
Naïve Solutions
Same-Index (Greedy)
– Allocate all currently available bandwidth to
nearest future epoch
•
video displayed
•
Smallest-Bin (Conservative)
– Allocate all current bandwidths to future
epoch with fewest layers
–Waste: the amount of unused
available bandwidth
–Smoothness: the average change
in video quality
–Variability: the standard deviation
Bandwidth from
a single Epoch
Largest Hill: Allocate to earliest epoch maintaining slope
Our Solution: Constrained
Allocators
– Problem: Large variation in the quality of
•Formulate measures of video
quality
We identify an off-line algorithm when future bandwidth
availability is known
We prove optimality:
Video bitrate
Buffering
•
Novel Prefetching Approach:
Epoch 5
•
How do we use
available bandwidth
chunks of current
epoch?
Approach
•
•
Attempt to maximize
utilization, given smoothness
constraints
Bound the downhill slope of
allocations
Three variants
Mean Hill: Most empty epoch smaller than mean, maintaining slope
Wide Hill: Earliest epoch smaller than mean maintaining slope
– Problem: Wastes bandwidth
Video Quality of Constrained Allocators
–
0
0.57 1.04 1.51 1.91 2.28 2.62 2.94
•
3.9
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
3.5
3.3
3.1
2.9
2.7
2.5
0.57 1.04 1.51 1.91 2.28 2.62 2.94
Std. Dev (chunks/period)
–
–
Mean-hill and wide hill allocators
perform close to the bound
Largest hill performs a little
worse
Naïve Allocators perform poorly
64
1.
73
1.
92
1.
08
2.
32
2.
67
2.
86
97
64
4
Results
–
3.7
0
1.
–
0.1
73
0.5
0.2
1.
1
0.3
92
1.5
0.4
1.
–
–
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
0.5
08
2
0.6
2.
2.5
0.7
32
0.57 1.04 1.51 1.91 2.28 2.62 2.94
Input: bandwidth traces obtained
while downloading video from a
P2P network
Tested on DSL and T1
Video downloaded from multiple
peers
Waste, smoothness, Variabilty
measured with increasing epoch
lengths
2.
–
0
2.
Constrained Allocators
vastly outperform naïve
allocators and are close
to the bound
The naïve allocators
perform well on one of
the measures but poorly
overall
Experiment
67
–
•
2.
Results
2
97
•
4
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
2.
–
6
Bandwidth Trace
Experiments:
Smoothness
–
Input bandwidth
simulated
Increasing variance,
constant mean
Waste,smoothness,
variability measured
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
8
Variability
–
Waste%
Experiment
Smoothness
• Viewing scalably encoded videos in P2P systems
without smart prefecthing strategies yields a poor
viewing experience
• We provide an off-line algorithm that provides the
optimal performance given bandwidth constraints
• We provide on-line algorithms that perform close to
the optimum and vastly outperform naïve algorithms
•
10
Variability
Impact
Simulation Results
Waste%
12
10
9
8
7
6
5
4
3
2
1
0
2.
Experimental Verification
86
•How do we maximize
video quality timevarying bandwidth?
Bitrate
2.
• Challenge: what should
• Video streaming in P2P
available bandwidth be
systems is a potential
killer app
used to prefetch?
– Downloading all layers of
• Bandwidth availability to
current portion can create
a client fluctuates
unpleasant variation in
unpredictably and rapidly
video quality as bandwidth
with time
availability changes
• Solution: use scalable
– Prefetching one layer at a
coding (FGS) to break
time unnecessarily forces
viewing of initial portion of
up video into M layers
video at lowest quality
• Viewing more layers =
higher fidelity viewing
Discretized Model:
Best
SameIndex
SmallestBin
LargeHill
WideHill
MeanHill
3.8
3.6
3.4
3.2
3
2.
97
2.
86
2.
67
2.
32
2.
08
1.
92
1.
73
1.
64
The Problem
Method
Std. Dev (chunks/period)