IntServ and DiffServ
Download
Report
Transcript IntServ and DiffServ
IntServ and DiffServ
School of Electronics and Information
Kyung Hee University.
Choong Seon HONG
<[email protected]>
Kyung Hee University
Quality of Service (QoS)
A major driving force in Internet evolution
Not simply defined - means many things to
many people
Has sense of predictable network behaviour
Central idea is provision of network
resources that an application requires to
perform adequately
Kyung Hee University
Quality of Service (QoS)
What is Quality-of-Service?
• Quality of service (QoS) is a concept by which
applications may indicate and even negotiate their
specific service requirements to the network
Why is this an issue?
• The default service in many packet networks is to
give all applications the same service, and not
consider any service requirements to the network.
This is called a best-effort service.
Kyung Hee University
Quality of Service (QoS)
Who needs Quality-of-Service?
– Video and audio conferencing bounded delay and
loss rate
– Video and audio streaming bounded packet loss rate
– Time-critical applications (real-time control)
bounded delays
– “valuable applications” better service than less
valuable applications
Kyung Hee University
Quality of Service (QoS)
How are Quality-of-Service requirements
specified?
• QoS parameters are
– Delay
– Delay Variation (Jitter)
– Throughput
– Error Rate
Kyung Hee University
Quality of Service (QoS)
What is the granularity of QoS?
– Per-flow QoS
Guarantees are specified and enforced for single
end-to-end data flow
– Aggregate QoS
Guarantees are specified and enforced for groups of
flows
Kyung Hee University
Types of QoS guarantees
Deterministic QoS
– Service guarantees are enforced for all traffic
For example, deterministic delay guarantees have the form:
Delay of a packet from flow X ≤ D
(D is called a delay bound)
Statistical QoS
Allows a certain fraction of traffic to violate the service
guarantees
Prob [Delay of a packet from flow X ≤ D ] ≥1 - ε
Where e is a small number (e.g., ε = 10-6)ε
Kyung Hee University
Classification and Scheduling
Routers need to be able to
1. classify arriving packets according to their QoS
requirements
Packet Classification
2. isolate traffic flows and provide requested QoS
Packet Scheduling
Kyung Hee University
QoS is Generating a Confusing Array of Acronyms
QoS
CoS
Intserv
RSVP
Diffserv
MPLS
GMPLS
Kyung Hee University
Why Do We Need Such a Revolutionary Change?
Current ‘best effort’ technology is essentially a quarter
of a century old
Two factors driving the development of a new
generation of multimedia applications
commercialisation of the Internet
Increasing availability and decreasing cost of bandwidth
No evidence of ‘free bandwidth’ scenario emerging
rejected in RFC1633 (1994) - still true
demand always rises to meet supply
Kyung Hee University
QoS is Not New
Telephone network has QoS
economics and technology based on a single application
highly developed engineering
but one size fits all
BISDN - an attempt by telephony world to generalise
network to encompass diverse applications
ATM technology - first full exploration of QoS on
demand concepts
Kyung Hee University
Quality of Service and Resource Management
Fundamental resource is output link rate
Access managed via scheduling discipline
Bursty input traffic held in buffers
adds delay and jitter
overflow causes packet loss
These factors determine QoS at network level
Optimise via buffer management and scheduler
parameter setting
Kyung Hee University
QoS in the Internet
Internet Engineering Task Force (IETF) is
evolving QoS support mechanisms for the Internet
- two approaches
The Integrated Services Internet
• QoS for individual microflows
• perhaps too complex for large networks - won’t scale easily
Differentiated Services - more scaleable
• lose sight of individual microflows - Behaviour Aggregates
Kyung Hee University
Integrated Services (Intserv)
QoS approached via end to end services
best effort - current performance standard
controlled load - lightly loaded network performance ‘soft’ delay bound
Guaranteed - ‘hard’ bandwidth and delay bounds
Traffic conformance to agreed form expected
‘token bucket’ model - policing if nonconforming
Resources reserved in routers - RSVP
more complex set of functions than ATM
Kyung Hee University
RSVP is Dead!
Earlier reports of RSVP’s death were somewhat
exaggerated
Nevertheless there is a major problem with
Intserv- fatal in the eyes of some
Management of router resources requires each
router to maintain per flow ‘state’
Creates ‘state explosion’ in the interior routers of
core networks - perhaps confine to edges
Kyung Hee University
Differentiated Services (Diffserv)
Driving philosophy of the Internet has been to
minimise complexity in the core network - push
complexity and intelligence to the edge nodes.
Differentiated Services concept strives to maintain
this philosophy while recognising the need to
provide some levels of Quality of Service
First widely deployed QoS mechanism
Kyung Hee University
Differentiated Services
Kyung Hee University
Content
Intserv/RSVP
Differentiated Service Paradigm
Per-Hop Behavior & Codepoint
Premium Service
Assured Forwarding PHB Group
Resource Manager : Bandwidth Broker(BB)
Boundary Mechanisms
Diffserv WG
Kyung Hee University
Internet Integrated Service Model
Guaranteed Quality of Service
Motivation
for applications intolerant of late data
hard real time requirements
End-to-End behavior
an assured level of bandwidth
a delay-bounded service with no queueing loss
firm maximum on end-to-end delay
not control the minimal or average delay
no jitter control
Kyung Hee University
Internet Integrated Service Model
In order for a router to invoke Guaranteed Service for a
specific data flow it needs to be informed of the traffic
characteristics of the flow, Tspec, along with the
reservation characteristics, Rspec
Tspec parameters
•
•
•
•
•
p ; peak rate of flow (bytes/second)
b ; bucket depth (bytes)
r ; token bucket rate (byes/second)
m ; minimum policed unit (bytes)
M ; maximum datagram size (bytes)
Rspec parameters
• R ; bandwidth, i.e. service rate (bytes/second)
• S ; Slack Term (ms)
Kyung Hee University
Internet Integrated Service Model
Controlled - Load Service
Motivation
for adaptive real-time applications (today’s internet)
work well on unloaded nets but degrade quickly under overload conditions
--> mimics unloaded nets
If the flow is accepted for Controlled-Load Service then the router makes
a commitment to offer the flow a service equivalent to that seen by a besteffort flow on a lightly loaded network
Kyung Hee University
Internet Integrated Service Model
Controlled - Load Service (cont’d)
End-to-End behavior
Tightly approximates the behavior visible to applications receiving besteffort service under unloaded conditions
A very high percentage of packets delivered successfully
Controlled Load has some fairly simple implementations, in terms of the
queuing systems in routers
It is not suited to applications that require very low latency (e.g.
distributed VR systems and so forth).
Kyung Hee University
RSVP
RSVP Design Principles
Receiver-Initiated Reservation
a receiver
• choose the level of reservation
• initiate/keep reservation
more flexible and scaleable than source-initiated reservation
• heterogeneous receivers
• dynamic membership change
Separating reservation from packet filtering
reservation
• amount of resources reserved for an entity
packet filtering
• dynamically select packets that can use the resources
Kyung Hee University
RSVP
Design Principles (cont’d)
Maintain “Soft-state”
dynamic status change (membership change)
soft-state in switches and maintained by end users
state in switches
• path state -- periodic path message from the source
• reservation state -- periodic reserv. msg from the receivers
timeout driven deletion
• Reservations timeout if not refreshed periodically
adaptability and robustness
Protocol overhead
reduce refreshing frequency
merging path/reservation messages
Kyung Hee University
RSVP
Comparison of RSVP and ATM signaling
RSVP
ATM
Receiver generates reservation Sender generates connection request
Soft state ( refresh / timeout )
Hard state ( explicit delete )
Separate from route
establishment
Concurrent with route establishment
QoS can change dynamically
QoS is static for life of connection
Receiver heterogeneity
Uniform QoS to all receivers
Kyung Hee University
RSVP Message Types
1. Path_msg
S1
2. forwarding Path_msg
R1
R2
D1
S2
R3
3-1.Resv_msg
4. forwarding Resv_msg
D2
3-2. Resv_msg
Kyung Hee University
Internet Integrated Service Model
Integrated Services over Specific Link
Layers(ISSLL WG)
•
RSVP designed to work with any protocol
- Protocol must provide QoS support
- Examples: ATM, IP with Integrated Services
• IP integrated services with RSVP over ATM
– VC management ( traffic flow-VC)
• Data VC, RSVP signaling VC
– QoS translation
• mapping a QoS from the IIS model to a proper ATM QoS
• IIS over POTS
• IIS over LAN
Kyung Hee University
Intserv / RSVP QoS Approach
Service
Parameters
- Token bucket rule
- Guaranteed Service - Token bucket size
- Control Load Service - Packet rate
- Best-Effort Service
- Minimal policed unit
- Maximum packet size
Traffic
Management
- RSVP
- Admission Control
- QoS Routing
- Control of Traffic
Parameters
Scalability problem
• Have to maintain forwarding state between receiver and transmitter
Kyung Hee University
Integrated Services Model
Flow specification
Routing
Admission control
Policy control
Resource reservation
Packet scheduling
Kyung Hee University
RSVP Functional Diagram
Host
Router
RSVPD
RSVPD
Routing
Process
Application
D
A
T
A
Packet
Classifier
Policy
Control
Policy
Control
Admissions
Control
Admissions
Control
Packet
Scheduler
DATA
Packet
Classifier
Kyung Hee University
Packet
Scheduler
DATA
What is a flow?
Equivalent packets by some classification
RSVP: Set of packets traversing a network element that
are all covered by the same QoS request
Packet classifier determines which packets belong
to which flows
IPv6 includes a flow label to ease classification
ISP usage (UUNET)
Microflow: TCP or similar bandwidth connection
Macroflow: Large aggregates of packets flowing
between two superhubs
Kyung Hee University
Describing and Identifying a Flow
Flowspec defines traffic parameters
Traffic parameters: bandwidth, buffering requirements
Uses token bucket specification
Filterspec identifies packets in flow
Simplest filter: Source, Dest address/port pair
Data filter: classifies packets according to contents
Kyung Hee University
Resource Reservation
Senders advertise using PATH message
Receivers reserve using RESV message
Flowspec + filterspec + policy data
Travels upstream in reverse direction of Path message
Merging of reservations
Sender/receiver notified of changes
Kyung Hee University
RSVP UDP Reservation (1)
Kyung Hee University
RSVP UDP Reservation (2)
Kyung Hee University
Client Traffic Shaping
Issue: Need traffic shaping to meet allocated
resources
Source promises that data traffic will conform to a
particular shape
Why describe and shape traffic?
Network knows what to expect, can manage traffic better
Better admission control decisions
Network can police flows
Bursty traffic is costly to router, network
Kyung Hee University
Traffic Shaping Example
Data Queue
Flow 1
Flow 2
Data Queue
Kyung Hee University
Traffic Shapers
Simple leaky bucket
Isosynchronous flow: regular intervals between packets
Token bucket
Bursty flow
Kyung Hee University
Simple Leaky Bucket
Data
b
b = bucket size
r = rate data is sent onto network
r
Sends data at fixed intervals onto network
Bursts bigger than b are discarded
Traffic never injected faster than r
Can be used with cells or datagrams
Kyung Hee University
Token Bucket
r
b
b = bucket size in tokens
r = rate tokens are added to bucket
Data Queue
Data
Sends bursty traffic onto network
Bucket filled with tokens at rate r
Data transmitted when enough tokens exist
Allows bursts, but enforces upper bound
Kyung Hee University
Restrictions on Reservations
Admissions
Is bandwidth available?
Policy
Service guarantees give preferential access to network
bandwidth
Permissions
Pricing issues
What are the policies of nodes on the path?
Policy data represents a scaling and security issue
Kyung Hee University
Resource Reservation Model
Senders advertise using flowspecs
RSVP daemons forward advertisements to
receivers, update available bandwidth, minimum
delay
Receivers reservations use flowspec, filterspec
combination (flow descriptor)
Sender/receiver notified of changes
Reservations are merged in multicast case
Kyung Hee University
Reservation Styles
Wildcard Filter (WF)
Shared reservation, select all upstream senders
Traffic from upstream senders shares a single pipe
Appropriate for audio
Shared Explicit (SE)
Shared reservation, explicit sender selection
Appropriate for audio
Fixed Filter (FF)
District reservations, explicit sender selection
Appropriate for video
Kyung Hee University
RSVP Flowspecs
Sender TSpec, Controlled Load Flowspec
...
Token Bucket Rate [r]
Token Bucket Size [b]
Peak Data Rate [p]
Minimum Policed Unit [m]
Maximum Policed Unit [M]
Guaranteed Flowspec
...
Token Bucket Rate [r]
Token Bucket Size [b]
Peak Data Rate [p]
Minimum Policed Unit [m]
Maximum Policed Unit [M]
Rate [R]
Slack Term [S]
Kyung Hee University
Packet Scheduling
Implemented in hosts/routers to control link
allocation
Queuing algorithms
Weighted Fair Queuing (WFQ)
Class Based Queuing (CBQ)
Queue management
Random Early Detection (RED)
Kyung Hee University
Packet Scheduling
Fair Queueing
Attempts to implement a scheduler that serves all flows
with a backlog at the same rate
Emulates a bitwise Round Robin scheduling algorithm
Not completely trivial to implement Fair Queuing in a packet
network
Kyung Hee University
Weighted Fair Queuing (WFQ)
Traffic placed into queues according to flow
specification, flow filter
Fair queuing
Implements fairness of bit by bit scheduling on a per
packet basis
Gives queues a fair share of total bandwidth
Weighted
Queue are not weighted evenly for scheduling
Proven: adequate for Guaranteed Service
Kyung Hee University
Class Based Queuing (CBQ)
Combines scheduling and link sharing
Hierarchical link sharing
Hierarchical queues
Enables protocol, organization isolation
Scheduling
Does not define a particular scheduling algorithm
General scheduler for low latency when no congestion
Link-sharing policing scheduler when congested
Scheduling per hierarchy
Kyung Hee University
CBQ Example
LINK
60%
40%
Company A
Company B
30%
RealTime
HTTP
FTP
telnet
IP
DECnet
20%
10%
20%
20%
Video
Audio
20%
10%
Kyung Hee University
Random Early Detection (RED)
Random Early Detection (RED)
Queue management algorithm for congestion control
Random packet drops as average queue length increases
Can use Explicit Congestion Notification bit instead of
dropping packet
Works well for TCP
Useful for congested Controlled Load service
Kyung Hee University
Reservation Merging
(3) 50Kbs (7) 100 Kbs
R1
Reservations merge
as they travel up tree.
(6) 100 Kbs
R3
(2) 50Kbs
(9) 60Kbs
R4
(1) 50Kbs
Receiver
#1
R6
(8) 60Kbs
Receiver
#2
Kyung Hee University
(5) 100 Kbs
R7
(4) 100 Kbs
Receiver
#3
TSpecs, AdSpecs, and RSpecs
Traffic source sends TSpec (Traffic Specification)
Consists of FlowSpec and AdSpec
AdSpec updated to reflect network capabilities
Routers update minimum delay and maximum
bandwidth
Termed One Pass With Advertisement (OPSA)
RSpec
Receiver uses Controlled Load or Guaranteed FlowSpec
to reserve network resources
Kyung Hee University
Problems with Merging Reservations
Issue: who pays for service, how much?
Merging different types of flows
Flow 1: Low delay, low bandwidth
Flow 2: High delay, high bandwidth
Flow with low delay, high bandwidth satisfies Flows 1
and 2, but it may cost much more than Flow 1 or 2.
Only certain flows can be easily merged given
price constraints
Kyung Hee University
Reservation Merging and Price
Merged Reservation:
High Bandwidth,
Low Latency
Reservation 2:
High Bandwidth,
High Latency
Reservation 1:
Low Bandwidth,
Low Latency
Price: Darker = More Costly
Latency
Kyung Hee University
RSVP Routing Problems
Routing is separated from admission control
If route changes, reservation must be made along
new route
New reservation takes time to setup
New reservation might fail
Old route could still be working fine
Route pinning
Always use the route where reservation is in place
Kyung Hee University
Routing Problems (cont’d)
Reservation failure
Primary route has inadequate bandwidth although
secondary has enough
Telephone system has a crankback feature
Allows secondary routes to be considered if reservation
on primary route fails
ATM
Routing combined with admission control
Kyung Hee University
Usage and Implementation
RSVP is not widely available
Best effort delivery across links with no RSVP services
Reservation flag to specify that traffic traveled over a
non-RSVP link
Some links will have guaranteed performance for
some traffic, but not all
Policy issues at boundaries of networks
Kyung Hee University
Differentiated Service Paradigm
Complicated operation moves to edge, and stateless in
network interior
“ push all the state to the edges, and force all perconversation work (e.g., shaping, policing) to the edges”
Setting a specific part in an edge node and administrative
boundaries
DS(differentiated service) field
How to forward according to a specific field of input
packet
Per-Hop Behavior
According to service rule that is previously promised
Traffic Conditioning
Kyung Hee University
Traffic Conditioning
Traffic conditioning mechanisms at the network
boundary need to enforce that traffic from a flow
adheres to its specification
Policing
Drop traffic that violates the specification
Shaping
Buffer traffic at network entrance that violates
specification
Marking
Mark packets with a lower priority or as best effort, if
the traffic specification is violated
Kyung Hee University
Traffic Conditioning
The most popular traffic conditioning algorithm is the leaky
bucket
Kyung Hee University
Per-Hop Behavior & Codepoint
IPv4 Header (first 32bits)
4-bit
version
4-bit
header
length
8-bit type of
service (TOS)
6-bit DSCP for
Per-Hop Behavior
16-bit total length (in byte)
2-bit
CU
Currently
Unused
-- DS field in IPv4--
Kyung Hee University
Per-Hop Behavior & Codepoint
Default PHB
Current best effort forwarding
codepoint : 000000
Class Selector PHB
for backward compatibility (IP precedence field)
codepoint : xxx000
relative service quality
Kyung Hee University
Premium Service
Providing resources according to Peak capacity
Profile
Static allocations on peak rate with no statistical
sharing
Small percentage of the total network capacity allocate
for Premium service
Much higher cost (First class in aircraft)
Commercial applications for Premium service
Video broadcasts, voice-over-IP, VPNs, etc.
Kyung Hee University
Premium Service
Company A
Internal
Router
Premium packet flow
restricted to r rate
per sec
Host
First-Hop
Router
Unmarked
packet flow
Border
Router
Packet in premium
flows have bit set
ISP
Border
Router
-- Premium traffic flow from end-host to organization’s
ISP -Kyung Hee University
Premium Service
Forwarding Path Primitives
General Classifier
• A transport-level signature matching based on a tuple in the
packet header
Bit-pattern Classifier
• A simple two-way decision based on whether a particular bitpattern in the IP header is set or not
– Ex) ‘P’ bit
Bit setter
• Sets the appropriate bits of the IP header to a configured bitpattern would be the most general
Kyung Hee University
Premium Service
Priority queues
(At least) Two levels of simple priority queuing
• The high priority queue for Premium traffic
Shaping token bucket
Forward an arriving packet if there is a token present in
the bucket, otherwise the packet is enqueued until the
bucket contains tokens sufficient to send it
• Used in Leaf router
Policing token bucket
Never hold arriving packets, but check token
availability
• Used in Border router
Kyung Hee University
Assured Forwarding PHB Group
N AF classes
M drop precedence level
at this point
4 classes, 3 drop precedence in each class
Example Service : Olympic service
Kyung Hee University
Olympic Service
Gold Service Class
Silver Service Class
Bronze Service Class
Packets assigned to Gold service class experience lighter load than
packets assigned to the silver class
Packets within each class may be further separated by the drop
precedence
Drop precedence level by using a dual leaky bucket traffic policer :
committed burst, excess burst
Kyung Hee University
Resource manager
: Bandwidth Broker (BB)
A logical entity residing in each administrative
domain
Managing internal demands & resources according to
the policy database (who can do what when)
setting up & maintaining bilateral agreement with
neighbor domains
• bookkeeping how much traffic entering which border router &
going out which border router
Today’s BB : network administrators & operators
would like to automate over time
Kyung Hee University
Bandwidth Broker (BB)
Dynamic bandwidth allocation and TCA
management
Kyung Hee University
Choices for implementation
Adequate provisioning
Manual configuration
not that different from static routing
Using some setup protocols
inter-domain : BB-to-BB
intra-domain : RSVP as a ready candidate
Kyung Hee University
The TCA
One per customer - two parts
Constraint TCA
protects the provider’s resources
DS field : metering profile : disposition of n/c traffic
quantitative service levels will also include destination
address
Fine grain TCA
specifies the fine grain traffic conditioning requested by
the customer
mf class. Criteria : mark : shaping profile : disposition
of n/c traffic
Kyung Hee University
Constraints
Resources implied by fine grain TCA are
constrained by those permitted in the
constraint TCA
Sum of shaping profiles for each mark must be
less than metering profile for corresponding DS
Kyung Hee University
Inter-domain DS
A Service Level Agreement (SLA) includes a Traffic
Conditioning Agreement (TCA)
Simplest way: an administrative issue
Kyung Hee University
Configuring Routers
TCA (Traffic Conditioning Agreement)
constraint
fine grain
PHB information
Miscellaneous
interface configuration
routing configuration
etc.
Kyung Hee University
Configuring the Constraint TCA
Specifies agreement between provider and
customer
Relatively static
Configuration via SNMP, CLI, COPS, etc.
Dynamic
Configuration via COPS or alternate ‘BB’ protocol
Could be triggered by high/low water marks
Kyung Hee University
QoS Policy Control
Kyung Hee University
Configuring the fine Grain TCA
Ability to make frequent changes desirable
No need to negotiate with provider
Potentially error prone process
Therefore - use a signaling protocol to do this
whenever possible : RSVP
It will still be necessary to provision certain fine
grain entries
for these, use COPS, SNMP or CLI
Kyung Hee University
Signaled vs. Provisioned
TCA Entries
Quantitative QoS apps use quantitative services
TCA entries configured by RSVP signaling or
provisioned
TCA entries specify egress points
Qualitative QoS apps use qualitative services
provisioned only
Should use separate marks (DS-field)
Kyung Hee University
Admission Control
a/c necessary to prevent over-subscription
sum of qualitative entry shaping profiles leq than
metering profile for qualitative DS fields
• enforced at provisioning time(SNMP, CLI or COPS)
sum of quantitative entry shaping profiles leq than
metering profile for quantitative DS fields
• enforced by rejection or acceptance of RSVP signaling
messages
• if quantitative resources are provisioned, a/c must be enforced
both at provisioning and signaling times
• difficult to manage
Kyung Hee University
Diffserv WG status
Closed
RFC 2474, Definition of the Differentiated
Services Field (DS Field) in the IPv4 and IPv6
Headers
RFC 2475, An Architecture for Differentiated
Service
---
Kyung Hee University
Diffserv / MPLS
Diffserv
BA (Behavior Aggregate)
• BAS (BA Selector) ; forwarding queue behavior
• BM (Behavior Modifier) ; Dropping behavior
PHP
MPLS
Single LSP
• Same BAS
• BM Carried as part of label encapsulation header
Kyung Hee University
Diffserv / RSVP
Policy Server
PDP : Policy Decision Point
PDP
PEP
PEP
PEP : Policy Enforcement Point
Diffserv Network
PEP
PEP
PEP
RSVP
RSVP
Diffserv / PHP / Codepoint
Kyung Hee University
PEP