distributed multimedia systems david immordino. introduction 4 a multimedia application is a...
TRANSCRIPT
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 rate size
Telephone speech 64 kbps 8 bits 8000/secCD-quality sound 1.4 Mbps 16 bits 44,000/secStandard TV video(uncompressed)
120 Mbps up to 640 x 480pixels x 16 bits
24/sec
Standard TV video (MPEG-1 compressed)
1.5 Mbps variable 24/sec
HDTV video(uncompressed)
1000–3000 Mbps up to 1920 x 1080pixels x 24 bits
24–60/sec
HDTV videoMPEG-2 compressed)
10–30 Mbps variable 24–60/sec
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
Application components specify their QoS requirements to QoS manager
Yes No
Yes No
Flow spec.
Resource contract
Admission control QoS negotiation
QoS manager evaluates new requirementsagainst the available resources.
Sufficient?
Reserve the requested resources
Allow application to proceed
Application runs with resources as per resource contract
Negotiate reduced resource provision with application.Agreement?
Do not allow application to proceed
Application notifies 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
Token generator
(a) Leaky bucket (b) Token bucket
Flow Specifications (RFC 1363)
Protocol version
Maximum transmission unit
Token bucket rate
Token bucket size
Maximum transmission rate
Minimum delay noticed
Maximum delay variation
Loss sensitivity
Burst loss sensitivity
Loss interval
Quality of guarantee
Bandwidth:
Delay:
Loss:
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.