QoS and Traffic Eng (TE)

Download Report

Transcript QoS and Traffic Eng (TE)

CSIS
Quality of Service &
Traffic Engineering
(QoS & TE)
Khaled Mohamed
Credit: some of the sides are from Cisco Systems
TAC-TOI-01
CSIS
Agenda
•
•
•
•
•
•
TAC-TOI-01
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
Q&A
CSIS
QoS 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
TAC-TOI-01
CSIS
Principles for QoS Guarantees
packet classification: router can distinguish
between different classes
TAC-TOI-01
CSIS
Principles for QoS Guarantees
• prevents applications from misbehaving (e.g.,
multimedia app. sends higher than declared
rate)
scheduling and policing: provide protection (isolation)
TAC-TOI-01
CSIS
Principles for QoS Guarantees
• Allocating fixed (non-sharable) bandwidth to
flow: inefficient use of bandwidth if flows
doesn’t use its allocation
high utilization: while providing isolation, it is
desirable to use resources as efficiently as possible
TAC-TOI-01
CSIS
Principles 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
TAC-TOI-01
CSIS
Summary of QoS Principles
TAC-TOI-01
CSIS
Traffic 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)
TAC-TOI-01
CSIS
Traffic 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).
TAC-TOI-01
CSIS
Scheduling 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
TAC-TOI-01
CSIS
Scheduling 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..
TAC-TOI-01
CSIS
Scheduling Policies: still more
round robin scheduling:
• multiple classes
• cyclically scan class queues, serving one
from each class (if available)
TAC-TOI-01
CSIS
Scheduling Policies: still more
Weighted Fair Queuing:
• generalized Round Robin
• each class gets weighted amount of service
in each cycle
.
TAC-TOI-01
CSIS
Delay Guarantees
• token bucket, WFQ combine to guarantee
upper bound on delay, i.e., QoS guarantee!
arriving
traffic
token rate, r
bucket size, b
WFQ
assigned
flow rate, R
D = b/R
max
TAC-TOI-01
CSIS
QOS Type of Services
Integrated services
• Differentiated services
TAC-TOI-01
CSIS
IETF 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 req’s
TAC-TOI-01
CSIS
Intserv QoS: Service Models [rfc2211, rfc 2212]
Guaranteed service:
Controlled load service:
• worst case traffic arrival:
leaky-bucket-policed source
• simple (mathematically
provable) bound on delay
[Parekh 1992, Cruz 1988]
• "a quality of service closely
approximating the QoS that
same flow would receive
from an unloaded network
element."
arriving
traffic
token rate, r
bucket size, b
WFQ
Controlled link sharing:
• Sharing link among
different classes
per-flow
rate, R
D = b/R
max
TAC-TOI-01
CSIS
Reference Architecture
RSVP
Admission
Control
Forwarding Table
Data In
TAC-TOI-01
Route Lookup
Per Flow QoS Table
Classifier
Scheduler
Control Plane
Routing
RSVP
messages
Data Plane
Routing
Messages
Data Out
CSIS
A Closer Look at the Data Path
Per-flow State
…
flow 1
flow 2
Classifier
Scheduler
flow n
Buffer
management
TAC-TOI-01
CSIS
Intserv: QoS Guarantee Scenario
• Resource reservation
– call setup, signaling (RSVP)
– traffic, QoS declaration
– per-element admission control
request/
reply
– QoS-sensitive scheduling
(e.g., WFQ)
TAC-TOI-01
CSIS
RSVP 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
TAC-TOI-01
CSIS
RSVP: Soft-state Receiver-initiated
End-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
R2
R
S
R1
RESV
PATH
TAC-TOI-01
R3
delay budget
CSIS
Implementing 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
TAC-TOI-01
WFQ
CS department
gets 50%
WFQ
10%
guaranteed
flow 1
guaranteed
flow n
30%
priority
controlled
flows
best effort
flows
CSIS
IETF 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)
• Don’t define service classes, provide functional
components to build service classes
TAC-TOI-01
CSIS
The 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)
TAC-TOI-01
r
DiffServ 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
TAC-TOI-01
b
marking
CSIS
scheduling
..
.
CSIS
Edge-router Packet Marking
• profile: pre-negotiated rate A, bucket size B
• packet marking at edge based on per-flow profile
Rate A
B
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
TAC-TOI-01
CSIS
Classification 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
TAC-TOI-01
CSIS
Classification 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
TAC-TOI-01
CSIS
Forwarding (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
TAC-TOI-01
CSIS
Forwarding (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
TAC-TOI-01
CSIS
Why QoS?
Congestion Scenario #1—Speed Mismatch
100Mbps
2Mbps
WAN
1000Mbps
100Mbps
Direction of Data-Flow
• The #1 Reason for Congestion!
• Possibly Persistent when going from LAN to WAN
• Usually Transient when going from LAN to LAN!
TAC-TOI-01
CSIS
Why QoS?
Congestion Scenario #2—Aggregation
HQ
2Mbps
Hubi
512Kbps
FR/ATM
N*56Kbps
Choke
Points
1000Mbps
S1
S2
1000Mbps
Choke
Point
Direction of Data-Flow
•
TAC-TOI-01
Transient Congestion fairly typical!
Remote
CSIS
Why QoS??
Congestion Scenario #3—Confluence
Net-1
Core1
Net-2
Core2
STM-64/OC-192c
STM-16/OC-48c
Net-n
• Always need mechanisms to provide guarantees!
• Transient Congestion occurs!
TAC-TOI-01
CSIS
Typical Application
QoS Requirements
Voice
FTP
ERP and
Mission-Critical
Low to
Moderate
Moderate
to High
Low
Random Drop Sensitive
Low
High
Moderate
To High
Delay Sensitive
High
Low
Low to
Moderate
Jitter Sensitive
High
Low
Moderate
Bandwidth
TAC-TOI-01
CSIS
Q&A
Thank You
TAC-TOI-01