Title: Quality of Service
1Quality of Service Traffic Engineering (QoS
TE)Khaled MohamedCredit some of the sides are
from Cisco Systems
2Agenda
- QOS and TE in IP Network
- The QoS and TE Architectures
- QOS and TE Service Types
- The Technical Scenarios Reasons
- The Applications and Their Needs
- QA
3QoS in IP Networks
- Thus far making the best of best effort
- Future next-generation Internet with QoS
guarantees - Differentiated Services differential guarantees
- Integrated Services firm guarantees
- Example guarantees an audio application 1Mbps
the remaining to 0.5Mbps to Web transfer
4Principles for QoS Guarantees
packet classification router can distinguish
between different classes
5Principles for QoS Guarantees
- prevents applications from misbehaving (e.g.,
multimedia app. sends higher than declared rate)
scheduling and policing provide protection
(isolation)
6Principles for QoS Guarantees
- Allocating fixed (non-sharable) bandwidth to
flow inefficient use of bandwidth if flows
doesnt use its allocation
high utilization while providing isolation, it
is desirable to use resources as efficiently as
possible
7Principles for QoS Guarantees
- Basic fact of life cannot support traffic
demands beyond link capacity
call admission flow declares its needs, network
may block call (e.g., busy signal) if it cannot
meet needs
8Summary of QoS Principles
9Traffic Specification
- Three common-used criteria
- (Long term) Average Rate how many pkts can be
sent per unit time (in the long run) - crucial question what is the interval length
100 packets per sec or 6000 packets per min have
same average! - Peak Rate e.g., 6000 pkts per min. (ppm) avg.
1500 ppm peak rate - (Max.) Burst Size max. number of pkts sent
consecutively (with no intervening idle)
10Traffic Specification
- Token Bucket limit input to specified Burst Size
and Average Rate. - bucket can hold b tokens
- tokens generated at rate r token/sec unless
bucket full - over interval of length t number of packets
admitted less than or equal to (r t b).
11Scheduling Mechanisms
- scheduling choose next packet to send on link
- FIFO (first in first out) scheduling send in
order of arrival to queue - discard policy if packet arrives to full queue
who to discard? - tail drop drop arriving packet
- priority drop/remove on priority basis
- random drop/remove randomly
12Scheduling Policies more
- Priority scheduling transmit highest priority
queued packet - multiple classes, with different priorities
- class may depend on marking or other header info,
e.g. IP source/dest, port numbers, etc..
13Scheduling Policies still more
- round robin scheduling
- multiple classes
- cyclically scan class queues, serving one from
each class (if available)
14Scheduling Policies still more
- Weighted Fair Queuing
- generalized Round Robin
- each class gets weighted amount of service in
each cycle
.
15Delay Guarantees
- token bucket, WFQ combine to guarantee upper
bound on delay, i.e., QoS guarantee!
16QOS Type of Services
- Integrated services
- Differentiated services
17IETF IntServ Services
- Architecture for providing QoS guarantees in IP
networks for individual application sessions - Assumptions
- use a common infrastructure for both real-time
and non-real-time communications - resource must be explicitly managed in order to
meet the requirements of real-time applications - resource reservation routers maintain state info
(a la VC) of allocated resources, QoS reqs
18Intserv QoS Service Models rfc2211, rfc 2212
- Guaranteed service
- worst case traffic arrival leaky-bucket-policed
source - simple (mathematically provable) bound on delay
Parekh 1992, Cruz 1988
- Controlled load service
- "a quality of service closely approximating the
QoS that same flow would receive from an unloaded
network element."
- Controlled link sharing
- Sharing link among different classes
19Reference Architecture
Routing
Routing Messages
RSVP
RSVP messages
Control Plane
Admission Control
Data Plane
Forwarding Table
Per Flow QoS Table
Data In
Scheduler
Classifier
Route Lookup
Data Out
20A Closer Look at the Data Path
Per-flow State
flow 1
flow 2
Scheduler
Classifier
flow n
Buffer management
21Intserv QoS Guarantee Scenario
- Resource reservation
- call setup, signaling (RSVP)
- traffic, QoS declaration
- per-element admission control
request/ reply
22RSVP Protocol
- A flow needs performance guarantee must
- declare its QoS requirement
- R-spec defines the QoS being requested
- characterize traffic it will send into network
- T-spec defines traffic characteristics
- signaling protocol needed to carry R-spec and
T-spec to routers (where reservation is required) - RSVP
23RSVP Soft-state Receiver-initiatedEnd-to-End
Reservation
- Sender periodically sends PATH messages to
receiver R, each router updates the PATH message
by increasing hop count and adding its
propagation delay - When receiver R gets the PATH message, it knows
- Traffic characteristics (tspec) (r,b,R)
- Number of hops, propagation delay introduced by
the routers - Receiver R sends back this information required
worst-case delay in RESV - Each router along path provides a per-hop delay
guarantee and forwards RESV with updated info - In the simplest case, the routers can just split
the delay - State timed out if not refreshed
R
R2
S
R1
R3
RESV
PATH
24Implementing IntServ
- Use WFQ to implement controlled link sharing
among different organizations - WFQ provides guaranteed service
- Controlled-load and best-effort flows are
separated by priority
WFQ
CS department gets 50
WFQ
30
10
priority
guaranteed flow n
guaranteed flow 1
best effort flows
controlled flows
25IETF Differentiated Services
- Concerns with Intserv
- Scalability signaling, maintaining per-flow
router state difficult with large number of flows
- Flexible Service Models Intserv has only two
classes. Also want qualitative service classes - behaves like a wire
- relative service distinction Platinum, Gold,
Silver - Diffserv approach
- simple functions in network core, relatively
complex functions at edge routers (or hosts) - Dont define service classes, provide functional
components to build service classes
26The DiffServ Traffic Conditioner Block (TCB)
- Classifier Identifies packets for assignment to
Classes - Meter Checks compliance to traffic parameters
(Token Bucket) and passes result to Marker and
Shaper/Dropper to trigger particular action for
in/out-of-profile packets - Marker Writes/rewrites the DSCP value
- Shaper Delays some packets for them to be
compliant with the profile - Dropper Drops packets that exceed the profile
(Bc or Be)
27DiffServ Architecture
Edge router - per-flow traffic management -
marks packets as in-profile and out-profile
Core router - per class traffic management -
buffering and scheduling based on marking at
edge - preference given to in-profile packets -
Assured Forwarding
28Edge-router Packet Marking
- profile pre-negotiated rate A, bucket size B
- packet marking at edge based on per-flow profile
User packets
Possible usage of marking
- class-based marking packets of different classes
marked differently - intra-class marking conforming portion of flow
marked differently than non-conforming one
29Classification and Conditioning
- Packet is marked in the Type of Service (TOS) in
IPv4, and Traffic Class in IPv6 - 6 bits used for Differentiated Service Code Point
(DSCP) and determine PHB that the packet will
receive - 2 bits are currently unused
30Classification and Conditioning
- may be desirable to limit traffic injection
rate of some class - user declares traffic profile (eg, rate, burst
size) - traffic metered, shaped if non-conforming
31Forwarding (PHB)
- PHB result in a different observable (measurable)
forwarding performance behavior - PHB does not specify what mechanisms to use to
ensure required PHB performance behavior - Examples
- Class A gets x of outgoing link bandwidth over
time intervals of a specified length - Class A packets leave first before packets from
class B
32Forwarding (PHB)
- PHBs being developed
- Expedited Forwarding pkt departure rate of a
class equals or exceeds specified rate - logical link with a minimum guaranteed rate
- Assured Forwarding 4 classes of traffic
- each guaranteed minimum amount of bandwidth
- each with three drop preference partitions
33Why QoS?Congestion Scenario 1Speed Mismatch
- The 1 Reason for Congestion!
- Possibly Persistent when going from LAN to WAN
- Usually Transient when going from LAN to LAN!
34Why QoS?Congestion Scenario 2Aggregation
- Transient Congestion fairly typical!
35Why QoS?? Congestion Scenario 3Confluence
Net-1
Core1
Core2
STM-64/OC-192c
Net-2
STM-16/OC-48c
Net-n
- Always need mechanisms to provide guarantees!
- Transient Congestion occurs!
36Typical ApplicationQoS Requirements
ERP andMission-Critical
Voice
FTP
Low toModerate
Moderateto High
Bandwidth
Low
ModerateTo High
Random Drop Sensitive
Low
High
Low toModerate
Delay Sensitive
High
Low
Jitter Sensitive
High
Low
Moderate
37