Distributed Multimedia Systems

advertisement
Distributed Multimedia Systems
David Immordino
Introduction
 A multimedia application is a real-time system responsible
for the delivering and receiving audio and video data.
 Real-time because the audio and video streams must be
consumed at the same rate as they are generated.
 QOS (Quality of Service) - The ability for a system to
perform according to a strict schedule.
 QOS Management - “The planned allocation and
scheduling of resources to meet the needs of multimedia
and other applications.”
Some Key Points
 Multimedia systems usually co-exist with many other systems.
 High competition with other systems for local and network
resources.
 Dynamic resource requirements. The amount of data received
may vary significantly.
– Dynamic number and quality of video/audio streams.
 Local activities can occur while system is in use, also draining
local resources.
 Incorporation of all this and then allocating resources and
prioritizing events is the duty of a QOS management system.
When QOS Management?
 Some systems can get away with little QOS Management.
– Web-Based Multimedia that does not have to be synchronized.
Buffering is used to hide jitter, or changes in latency.
– Audio conferences do not send much data, however this is
interactive, therefore timing is crucial.
– Video on demand systems meet requirements when client and
server are dedicated, and client buffering is in place.
 Interactive systems need significant QOS Management
– Video conferencing transmits significant data (audio/video) and
needs to be synchronized.
– An online music rehersal where participants are in separate
locations. Timing is very crucial.
Requirements for interactive Apps.
 Low latency so interaction appears synchronous.
 Synchronous distributed state - if one user stops a
video on a certain frame all others should see the
same.
 Media synchronization - Audio and Video should
be in sync.
 External Synchronization - Visual aids should be
in sync with narrative in conference apps.
Window of Scarcity
 Window of scarcity - The quality and
quantity of audio/video a system can handle
before resources are insufficient.
 Higher performance machines have a bigger
window of scarcity.
Characteristics of Multimedia Data
 Continuous
– User views data as continuous.
– System sees as continuous because the media is
represented as sequential values corresponding with
time.
 Time-based
– The data must be encoded and decoded according to a
time coefficient.
– Without proper timing on both ends, the data has no
meaning.
Compression
 Necessary to reduce bandwidth usage.
 Heavy usage of resources so special purpose hardware is used.
 Video and audio codecs (Coders/decoders) are software containing the
logic to perform these operations.
Data rate
(approximate)
Sample or frame
size
rate
Telephone speech
64 kbps
8 bits
8000/sec
CD-quality sound
1.4 Mbps
16 bits 44,000/sec
Standard TV video
120 Mbps
up to 640 x 480
24/sec
(uncompressed)
pixels x 16 bits
Standard TV video
1.5 Mbps
variable
24/sec
(MPEG-1 compressed)
HDTV video
1000–3000 Mbps up to 1920 x 1080 24–60/sec
(uncompressed)
pixels x 24 bits
HDTV video
10–30 Mbps
variable 24–60/sec
MPEG-2 compressed)
QOS Management
 Needs to guarantee accurate processing of
multimedia data.
 If the data is retrieved late, it is useless to
the user.
 In order to accomplish this, the QOS
Management system needs to properly
allocate resources.
QOS Subtasks
 Quality of service negotiation
– Application states requirements.
– QOS Manager evaluates requirements and responds
with positive or negative.
– If negative, the application needs to lower requirements
 Admission Control
– If negotiation is positive, QOS system reserves
resources for the app.
– App may change requirements. If more resources are
needed they must negotiate again, otherwise the
resources not needed are released.
Flow Chart
Admissi on control
QoS neg otiation
Applic ation c omponents specify their QoS
requirements to QoS manager
Flow spec.
QoS manager eval uates new requirements
agains t the avai lable resources.
Suffic ient?
Yes
Res erve the reques ted resources
Resource contract
Allow applic ationto proc eed
Applic ation runs with res ourc es as
per res ourc e contrac t
No
Negotiate reduced resource provis ion with applic ation.
Agreement?
Yes
No
Do not allow applic ationto proc eed
Applic ationnoti fies QoS manager of
increased resource requirements
QOS Negotiation Parameters
 Negotiation is based on three parameters
– Bandwidth - The rate at which data flows.
– Latency - The time it takes for a bit to travel from one end of a
system to another. A variation in latency is termed jitter.
– Loss Rate - Percentage of data packets that are dropped or lost due
to heavy network volume. This rate needs to be minimized so the
user cannot notice the missing data.
 The parameters are said to be interdependent (A
change in one effects another).
Specification of Parameters
 Parameters specified in ranges
 Bandwidth:
– Compression ratio is dynamic, therefore required bandwidth
fluctuates.
– Also burstiness changes bandwidth specs. (Different streams of
data fluctuating quantities of data being transmitted).
– A burst parameter may be specified. A buffer may be set aside,
equivalent to the size of the burst parameter, in order to avoid loss
of frames.
– LBAP (Linear-Bounded Arrival Processes) model states:
• during any time interval t the maximum number of messages in a
stream is Rt + B where R is the rate and B is the max burst size.
Specification of Parameters (cont.)
 Latency:
– If frames do not get processed quick enough, the buffer
will overflow and backlogging will occur. This will
increase latency.
– Video conference software may set a maximum only.
– Jitter is another factor. Usually taken care of by
buffering. This is difficult in the case of video
conferencing.
Specification of Parameters (cont.)
 Loss Rate:
– Usually calculated through probabilities of overflowing
buffers and delays.
– Loss Rate calculations need to include time intervals to
expect the losses.
Traffic Shaping
 When buffering is used to control the speed at
which data is transmitted.
 This is an attempt to match the transmission
pattern with the description provided by the
application.
 Leaky Bucket:
– An algorithm buffering the output data and making sure
it is not sent faster than the specified rate.
– Bursts are completely eliminated (not necessary).
Traffic Shaping (cont.)
 Token Bucket Algorithm:
– Implementation of LBAP (Linear-Bounded Arrival
Processes).
– Avoids eliminating bursts. If a stream has been idle for
a certain amount of time, it allows a burst of
information to be transmitted.
– Data is generated at rate R and stored in a buffer of size
B. Data can be sent according to specification as long
as the desired amount of data is in the buffer.
– This will ensure that data is not sent faster than the
LBAP equation Rt + B
Traffic Shaping Algorithms
(a) Leaky bucket
(b) Token bucket
Token g ener ator
Flow Specifications (RFC 1363)
Protocol version
Maximum transmission unit
Bandwidth:
Token bucket rate
Token bucket size
Maximum transmission rate
Delay:
Minimum delay noticed
Maximum delay variation
Loss sensitivity
Loss:
Burst loss sensitivity
Loss interval
Quality of guarantee
General Negotiation Procedures
 A QOS manager exists at each node of the system.
 A source node sends out a Flow Spec. to its QOS
manager which checks to see if it can be met.
 The flow spec. is forwarded to all the necessary
nodes in the system.
 When the spec reaches the final destination, the
source is notified if the system can meet the specs.
Admission Control
 Controls resource access.
– Preventing resource overload
– Refuse resource requests when QOS guarantees are
violated.
 May allocate resources based on minimum and
maximum values like the parameter specs.
Bandwidth Reservation
 Reservation is usually made for the maximum
bandwidth of a stream.
 This idea is simple in terms of network usage,
because network capacity is easily calculated.
 However, calculations such as CPU capacity
contain too many unknown variables and the
margin of error is high.
 Problem: Often times the max bandwidth is not
used resulting in unused resources that may be
needed by other applications.
Statistical Multiplexing
 Uses an overbooking strategy (allocates too many




resources).
This avoids the under-utilization of resources by providing
these “soft” guarantees.
Provides better resource utilization because it is mainly
based on average case.
When there are little or no resources left the system may
lose quality.
The idea behind this is the total bandwidth stays consistent
even as the different media streams vary in usage.
Download