quality of service karrie karahalios spring 2007
TRANSCRIPT
Quality of Service
Karrie KarahaliosSpring 2007
Announcements
• Midterm
• Final Projects
Distributed Multimedia System
Disk
Network CPUNetwork
Application
Server Client
Process
Device
Steps:
Resources:
Guarantees:
Consider End-to-End Behavior
NetworkMemoryDisk CPU
Apps
Operating System
Network MemoryDisk CPU
Operating System
MM apps Apps MM apps
Meta-scheduler attempts to reserve resourcesto guarantee end-to-end behavior
Basic Challenges
• Identification
• Negotiation
• Translation
• Specification
• Enforcement
Preliminaries
• Real-time systems
• Resources
• Management
• Reservation
• Allocation
Real Time (RT) Process
• Delivers results in predictable time– not necessarily fast– requests deterministic or stochastic
• Correctness means– errorless computation– meeting deadlines
Deadlines
• Hard deadlines– cannot be violated (if so, system fault)– cost money or human life
• Soft deadlines– misses can be tolerated if– not too many and not missed by much
• Examples
Characteristics of RT Systems
• Predictable response times to time-critical events
• Accurate system clocks and timing
• Able to schedule almost all resources
• Stability under overload
RT & Multimedia
• To meet demands of multimedia, use RT techniques along entire data path
• Relative to RT– relaxes deadline requirements and allows
some deadlines to be missed entirely– periodic requests ease scheduling– continuous data allows adaptive allocation
Resource
• Required by tasks for manipulating data– CPU, disk, memory, network, etc.
• A resource has a capacity– space, utilization, bandwidth
• A resource can be:– active or passive– exclusive or shared
Resource Management
• Maps multimedia requirements onto respective capacities of the system
• Specified through a QOS model– parameters + relaxation procedures
• Carried out by a resource manager– ensure adherence to QoS specification
Resource Management
Time
Audio
Mpeg-1
Mpeg-2
InteractiveVideo
Abundant
Sufficient, b
ut stre
ssed
Insuff
icien
t
Res
ou
rce
Nee
ds
Resource Reservation
• Test schedulability– determine if enough remaining capacity
• Negotiate QOS parameters– If not, determine how close it can come and when – application decides if this is acceptable
• Reserve resources– allocates resources to meet negotiated QoS
• Schedule resources– compute appropriate schedule for each resource– algorithm affects previous steps
Resource Allocation
• Pessimistic– reserve for the worst case– worse utilization, but more guarantees
• Optimistic– reserve for average or minimum needs– better utilization, but less guarantees
Quality of Service (QoS)
• Refers to how good provided services are– the more applications demand, the more
difficult it is to meet those demands
• Resource management realizes QoS– better management allow better QoS
• Examples
Layers of QoS
User
Application
System
MM devices Network
user QoS
application QoS
system QoS
network QoSdevice QoS
Layers of QoS
What are the right metrics?
How to specify them?
How to negotiate them?
User
Application
System
MM devices Network
user QoS
application QoS
system QoS
network QoSdevice QoS
How to enforce them?
How to translate among them?
User and Application QoS
• Startup time
• Sample rate
• Bits per sample
• Frame rate
• Resolution
• Skew relationships
• Response time for interaction
System QoS
Quantitative
• Bit rate
• Error rate
• Processing time
• Buffer sizes
• Throughput
Qualitative
• Ordered delivery
• Error recovery
• Scheduling options
Network QoS
• Network load – [min, avg, max] arrival times
• Packet/cell size
• Packet loss rate
• End-to-end delay (latency)
• Variability in delay (jitter)
Types of Services
• Guaranteed– threshold or range– deterministic or statistical
• Predictive– match current to historical performance
• Best Effort– none or only minimal guarantees
Linear Bounded Arrival Process
• Divides end-to-end system view into a pipeline of discrete sessions– one session corresponds to a single resource
• Defines parameterization of workload– arrival of messages at a particular interface
• A message is one unit of work– typically blocks of CM data (bytes or time)
Anderson, D. Metascheduling for Continuous Media, ACM TOCS, 11(3): 226-252
LBAP
• Models message arrival at a resource (I)– M - max message size (bytes)– R - max message rate (messages/second)– W – workload limit (max. messages that may
arrive ahead of schedule)
• Such that for all t0 < t1
NI(t0, t1) < R|t1 – t0| + W
Workload
• Workload W(t) of an LBAP at time t isw(t) = max{0, NI(t0, t) - R|t – t0| }
• Property 1:w(t) < W for all t
• Property 2:for all t1 < t2; NI(t1, t2) < w(t2) – w(t1) + R|t2 – t1|
Graph of w(t)
Logical Arrival Time (L)
• Let m0…mn denote sequence of messages and let a0…an be their arrival times
L(m0) = a0
L(mi+1)=max{ai+1, L(mi) + 1/R}
Logical Delay Between Interfaces
• Logical delay d(m) of message m between two interfaces is
d(m) = L2(m) - L1(m), where Li(m) isarrival time of m at interface i.
• Actual delay of message m may be> L(m), if m arrives ahead of schedule at I1
< L(m), if m completed ahead of schedule at I2
Resources and Sessions
• A resource handles incoming messages– arrive at input interface, delivered to output interface
• Clients must reserve resource– M (max message size)– R (max message rate)– Win = input max message burst (messages)– Wout = output max message burst (messages)– D = max logical delay (seconds),– A = min actual delay (seconds),– U = min unbuffered time (seconds)
• Arrival process at input interface specified by M, R, Win• Arrival process at output interface specified by M, R, Wout
Compound Session
• S is a sequence of sessions S1…SN
– input of S is that of S1; output is that of SN
– output of Si is input to Si+1
Delay and Buffer Size
• d(m) = LSN(m) – LS1
(m) < sum(di)
• Maximum shared buffer size for SW + R(D – U), D = sum(di); W = w(t) for S1
– realized when there is group of W messages followed by one message every 1/R and each resource uses its full delay for each message
QoS Specification
• Request S with given workload parameters and smallest delay bound
• If system can accept session– return minimum delay, reserves resources
• Otherwise– increase delay bound based on cost function– repeat request for S until allocated (or not)
Take Home Exercise
• Discuss tradeoffs of allowing people to pay for different qualities of service