Title: Quality of Service
1Quality of Service
Renata Teixeira
2Outline
- Motivation
- Network QoS
- Integrated Services
- Differentiated Services
- Operating System QoS
- Dynamic Soft Real Time
- QoS on Globus
- Final Remarks
3Motivation
- Quality of Service (QoS)
- Guarantee of minimum service from resources
- QoS on the Grid
- High performance
- Large amount of network communication
- Shared resources ? variation of service provided
4Resources
- CPU
- Network
- Bandwidth, delay and jitter, loss
- Disk
- Memory
- Processors
5QoS Phases
- QoS contract
- Discovery and selection
- Allocation
- Monitoring
6QoS Contract
- Client
- Specification of usage characteristics
- Network traffic, CPU utilization, amount of disk
and memory - Specification depends on resources
- Service provider
- Service guarantee for that usage
- What should happen if the client exceed the
contract?
7How to specify the QoS needed?
- Tradeoff cost X service received
- Difficult to specify the QoS
- Dynamic requirements
- Minimum allocation
- Immediate or advance
8Outline
- Motivation
- Network QoS
- Integrated Services
- Differentiated Services
- Operating System QoS
- Dynamic Soft Real Time
- QoS on Globus
- Final Remarks
9Network QoS
- Current Internet
- Best-effort service
- New proposals - IETF
- Integrated Service (IntServ)
- Differentiated Services (DiffServ)
- Multiprotocol label switching (MPLS)
- Constraint-based routing
10Integrated Services
- Traffic characterization and specification
- RSpec - QoS requested
- TSpec - sender traffic
- Signaling for call setup
- RSVP
- Call admission per router
Router
3-Reply
1-Request
2-Check reserved resources
11Traffic Specification (TSpec)
- Token bucket
- Bucket depth (b)
- Rate (r)
- Peak rate
- Minimum policed unit (m)
- Maximum datagram size (M)
12Leaky Bucket
r tokens/sec
Bucket holds up to b tokens
Remove token
packets
network
token wait
13Classes of Services
- Guaranteed
- Guaranteed delay and bandwidth
- Controlled-load
- Provision of a QoS close to the one received from
an unloaded network element - Admission control assures that this service is
received even when the network element is
overloaded
14Signaling - RSVP
- Responsible for signaling reservations
- Actual reservation done by routers
- Reservations in a multicast tree
- Receiver-oriented
- Receivers issue reservation messages
- Soft state in routers and hosts
- Support for dynamic changes
15RSVP
- Reservation maintenance through soft-states
- Demand periodical refreshes
- Allow reservation adjustments
- Heterogeneous receivers
- Messages
- PATH ? create a multicast tree
- RESV ? reserve resources on routers
16Style of Reservations
Reservation
Sender Selection
Distinct
Shared
Fixed-Filter (FF) Style
Shared-Explicit (SE) Style
Explicit
Wildcard-Filter (WF) Style
Wildcard
(None defined)
17RSVP - An Example
Receiver 1 20 kbps
RC
Receiver 2 100 kbps
RA
RB
Source
RD
Receiver 3 3 Mbps
PATH
Receiver 4 3 Mbps
RESV
18Router Scheduling
- Inside each router
- Responsible to provide the reserved bandwidth
pre-defined queues
classifier
network
...
packets
scheduler
19Scheduling Mechanisms
- Weighted Fair Queuing (WFQ)
- Classify according to class
- Queue weights determine the percentage of
bandwidth for each class - Priority Queuing
- Priority classes ? queues
- Transmit a packet from the highest priority class
that has a non-empty queue
20Disadvantages of Integrated Services
- Not scalable
- Routers process reservations per flow
- Not flexible
- Only a small number of pre-defined classes
- Host RSVP signaling
21Differentiated Services
- Aggregation of flows in classes
- Scalability
- Two main functions
- Edge functions
- Packet classification
- Traffic conditioning
- Core function
- Forwarding
22Differentiated Service
ingress router
H2
DS domain
H1
D
A
C
B
E
egress router
interior nodes - forward based on classes
boundary nodes - individual information of flows
23Service Specification
- Service Level Agreement (SLA)
- Established between customer and provider
- Static or dynamic (via RSVP)
- Specification of forwarding service
- Including traffic condition rules
- Traffic Condition Agreement (TCA)
- Classifier rules
- Traffic profile (similar to TSpec)
- Metering, marking, discarding, shaping rules
24Traffic Classification and Conditioning
- Marking packets
- DS field
- Type of Service (TOS) in IPv4 or Traffic Class in
IPv6 - Non-conformant packets
- Marked differently
- Shaped
- Dropped
Meter
forward
Shaper/ Dropper
Classifier
Marker
packets
drop
25Per-Hop Behavior (PHB)
- Observable forwarding behavior
- Selection based on DS field
- DS codepoint ? PHB mapping
- Implementation
- Buffer management and packet scheduling
26Standardized PHBs
- Expedited Forwarding (EF)
- Departure rate of a class of traffic from a
router must equal or exceed a configured rate - Implements Premium service
- Assured Forwarding (AF)
- Each AF class is guaranteed to be provided with
some minimum amount of bandwidth and buffering - Implements Olympic service
- One class is heavy loaded ? priority inversion
27Comparison of Paradigms
Granularity
Best-effort
DiffServ
IntServ
No isolation No guarantee No signaling
Aggregated isolation Aggregated
guarantee Long-term signaling inside a domain
Per flow isolation Per flow guarantee End-to-end
signaling per flow
28Outline
- Motivation
- Network QoS
- Integrated Services
- Differentiated Services
- Operating System QoS
- Dynamic Soft Real Time
- QoS on Globus
- Final Remarks
29Operating System QoS
- Current Unix
- Time-sharing ? no time guarantee scheduling
-
- Dynamic Soft Real Time (DSRT)
- User-level scheduler
- Soft real-time applications in more predictable
fashion
30DSRT
- Reservation
- Description of process usage pattern
- Adaptation of reservation
- Specified by user process
- Reservation re-negotiation
- Scheduler monitor
31CPU Service Classes
Class
Parameters
Periodic Constant Processing Time
period, peakProcessingTime
Periodic Constrained Constant PT
period, peakProcessingTime
Periodic Variable Processing Time
period, peakProcessingTime, sustainableProcessingT
ime, burstTolerance
Aperiodic Constant PT
peakProcessingUtil
Event
period, peakProcessingTime
32CPU Server Architecture
request
dispatch
Clients
Broker
Dispatcher
write
read
Dispatch table
slot number
time(ms)
Process ID
0
0 - 10
721
1
10 - 20
773/774/775
2
20 - 30
721
3
30 - 40
free
33CPU Reservation Example
Run sample (one compute() call per iteration)
for 10 iterations with reservation (CPU_RT_PCPT
service class, period1000ms, peakProcessingTime
200ms) sample -reserve CPU_RT_PCPT
1000 200 -do compute 1 10
34Outline
- Motivation
- Network QoS
- Integrated Services
- Differentiated Services
- Operating System QoS
- Dynamic Soft Real Time
- QoS on Globus
- Final Remarks
35Quality of Service on Globus
- General-purpose Architecture for Reservation and
Allocation (GARA) - Resource discovery
- Network, computers, disk
- Advance reservations
- Security control of reservations
- Monitoring of reservations
36GARA Components
Resource Manager
Client GARA API
Resource
Uniform reservations Create/Modify
Cancel Monitor
Admission control Control of resource Monitoring
of resource
37An Example Reservation
- In advance, make a reservation
- Input specify reservation
- (reservation_typenetwork)
- (start_time954728413) (duration3600)
- (endpoint_a128.135.11.4)
- (endpoint_b128.135.11.1)
- (bandwidth1000)(protocoltcp)
- Output handle ? opaque string H1
- At run-time, claim the reservation
- Bind(H1,portA, portB)
38Resource Manager
- The core of GARA
- Network
- Differentiated Services
- CPU
- DSRT
- Processors
39Final Remarks
- QoS is difficult to specify
- Tradeoff cost X service obtained
- Reject of requests
- Network QoS
- Differentiated Services
- CPU QoS
- DSRT