Bandwidth Consumption Control for Video Streaming

Preview:

DESCRIPTION

Can Basaran ,Kyoung-Don Kang, and Mehmet H. Suzer Department of Computer Science State University of New York Binghamton, USA. Bandwidth Consumption Control for Video Streaming. Need for Bandwidth Control [Competing Applications]. - PowerPoint PPT Presentation

Citation preview

Bandwidth Consumption Control for Video Streaming

Can Basaran ,Kyoung-Don Kang, and Mehmet H. Suzer

Department of Computer ScienceState University of New York

Binghamton, USA

Need for Bandwidth Control[Competing Applications]

Excessive, uncontrolled bandwidth consumptions for real-time streaming may starve applications competing for networking medium in a ubiquitous environment Audio streaming Web surfing Instant messaging File transfer

Need for Bandwidth Control[Competing Streams]

A streaming system may have active streams of different priorities Live streams from the baby room Streams from security cameras

may have time varying priorities Movies, sport events…

Available bandwidth should be distributed based on priorities of active streams

Need for Bandwidth Control[Mission Critical Systems]

QoS support is even more crucial for mission critical applications

Wireless Sensor Networks Video streaming Still images All can benefit from differentiated services

for providing high QoS for hot regions

Impact on streams

Large delay and jitter significantly impair user perceived QoS Important for mission critical applications

as well as entertainment systems

Bandwidth limits and priority differentiation should not cause jitter and delay even for the lowest priority streams

Provided QoS Support

Control network bandwidth consumptions Fuzzy control and layered encoding to ensure no more

than the specified bandwidth is consumed

Differentiate service to efficiently utilize the limited bandwidth Prioritization algorithm The higher the priority, the better the quality

Avoid large delays and jitters via real-time scheduling Deadlines associated with frames EDF (earliest deadline first) algorithm

Stream behaviour [Why Fuzzy Logic?]

The bandwidth consumption of even a single stream is unpredictable

Hard to come up with a mathematical model

Even the optimal modelwould not be able topredict bursts, resulting in overshoots

Video is encoded in frames of hierarchical layers

Upper enhancement layers can be discarded resulting in a lower quality frame, consuming less bandwidth

Base layer

Scalable Video (SPEG) [Qstream]

Enh. layer 0Enh. layer 1

Enh. layer 3

Prioritization of layers [QStream] Priorities are assigned to layers based on

the frame type I, P, B Number of dependent frames Contribution to overall quality

QStream assigns one of 16 priority levels to each encoding layer, resulting in priority layers

Scalable Video [Qstream]

Layers of same priority are grouped together and sent in chunks

To control the bandwidth consumption controller decides on the streaming quality in terms of priority levels

Server Structure

Admission Controller accepts or rejects client requests based on base-layer size

Controller Regulates bandwidth

consumption Gracefully minimizes

overshoots

Bursts are handled by the Chopper Differentiator distributes bandwidth to

streams based on their priorities

Controller vs. Chopper

Chopper is priority blind Continuously monitors outgoing traffic and

drops packets if it detects an overshoot without looking at which stream they belong to

Can guarantee “no overshoots”

Controller tries to minimize the number of chopper interventions to provide differentiated, smooth streams

The Controller

Controller Inputs Error: e(k) = US - r(k)/RS = 1 - r(k)/RS Change of error: ∆e(k) = e(k) – e(k-1)

Controller Output: change in quality (∆b(k))

The Controller…

Fuzzification: from crisp values to fuzzy linguistic values

Inference: Linguistic output based on table lookup

e(k) = 0.25∆ e(k) = 0.0625

µPS = 1

µZE = 0.75 µPS = 0.25

µ(PS,PS) = min{1,0.25} = 0.25

µ(PS,ZE) = min{1,0.75} = 0.75∆ b(k)

∆ b(k)

Network Propagation

In a multi-hop deployment controller signals generated by nodes are propagated to stream sources (servers)

Bottle-neck nodes immediately react via local controller and chopper

Servers adapt to new constraints as they receive control signals from remote clients

Network Structure

Propagation of QoS adaptation requests

Experiments

2Mbps bound for video streaming

4 streams with different priorities

13 minutes

~500Kb base layer size

Streams require a total of 8Mbps for full quality

Wired departmental network

Total Bandwidth Consumption 2Mbps bound is not exceeded despite transient

bandwidth usage variations due to varying frame sizes Chopper prevented less than 10 overshoots

Service Differentiation

Transient distribution of enhancement layers

Differentiator successfully distributes allocated bandwidth according to priorities

Lowest Priority

Highest Priority

Service Differentiation…

Number of transmitted enhancement layers is not proportional to stream priorities

Controller indirectly controls bandwidth by controlling the stream quality

Sizes of enhancement layers are different

There are limited number of enhancement layers

Service Differentiation…

Average number of transmitted enhancement layers for different priority streams

Video Streaming Quality

Although quality of streams are reduced to fit the allocated bandwidth limit, server can still maintain acceptable quality even for the lowest priority stream

Video Streaming Quality…

Future Work

Extending SPEG encoding to increase the available priority levels, allowing finer grain control over bandwidth consumption

Adaptive streaming in wireless networks where physical constraints are more strict

Scalable sensor data streaming in wireless sensor networks

Questions...

Thank You!

Recommended