1 © 2001, Cisco Systems. MPLS-QoS Jay Kumarasamy jayk@cisco.com.
Post on 27-Dec-2015
217 Views
Preview:
Transcript
1© 2001, Cisco Systems.
MPLS-QoSMPLS-QoS
Jay Kumarasamyjayk@cisco.comJay Kumarasamyjayk@cisco.com
22001 Cisco Systems, Inc.
www.cisco.com
AgendaAgenda
• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS QoS
• Sample Examples
32001 Cisco Systems, Inc.
www.cisco.com
QoS ModelsQoS Models
• Integrated Services (IntServ)
• Differentiated Services (Diffserv)
42001 Cisco Systems, Inc.
www.cisco.com
No state
Best Effort
Per-flow state
IntServ / RSVP
Aggregatedstate
D iffServ
1. T he orig inal IP service
2. F irst efforts at IP Q oS
3. Seeking simplic ity and scale
4. Bandw idth O ptim ization & e2e SLAs((IntServ +DiffServ+ T raffic Engineering))
Time
The QoS PendulumThe QoS Pendulum
52001 Cisco Systems, Inc.
www.cisco.com
Integrated ModelIntegrated Model
• Application requests a specific kind of QoS service, through explicit signaling.
• Resource Reservation Protocol (RSVP) is used by applications to signal their QoS requirements to the router.
• Complex to use.
• Difficult to support with a large number of RSVP connections, due to:
the amount of state information required for every flow.
the amount of control traffic
• Fine grain, providing strict QoS.
62001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Differentiated Model
• Qos is provided by differential treatment to each packet or class of packets.
• No explicit signaling from the application.
• This model is appropriate for aggregate flows.
• Coarse grain, not strict QoS (no guarantees).
72001 Cisco Systems, Inc.
www.cisco.com
Differentiated IP Services
Guaranteed: Latency and Delivery
Best Effort Delivery
Guaranteed Delivery
Voice
E-mail, WebBrowsing
E-Commerce
Application Traffic
Platinum Class Low Latency
Silver
Bronze
Gold
VoiceVoice
TrafficClassification
TrafficClassification
Differentiated Model Divide Traffic into ClassesDifferentiated Model
Divide Traffic into Classes
82001 Cisco Systems, Inc.
www.cisco.com
SwitchingFabric
rx queue tx queue
tx hwrecv hw
Differentiated ModelDifferentiated Model
Classification/Marking policy
Droppolicy
Schedulingpolicy
92001 Cisco Systems, Inc.
www.cisco.com
AgendaAgenda
• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS QoS
• Sample Examples
102001 Cisco Systems, Inc.
www.cisco.com
Differential Model FeaturesDifferential Model Features
• Classification
• Marking
• Policing and Shaping
• Congestion Avoidance
• Congestion Management
112001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Features Classification
Differentiated Model Features Classification
Most fundamental QoS building block
The component of a QoS feature that recognizes and distinguishes between different traffic streams
Without classification, all packets are treated the same
122001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Features Marking
Differentiated Model Features Marking
VersionVersionLengthLength LenLen
Layer 3IPV4
Layer 3IPV4
IDID OffsetOffset TTLTTL ProtoProto FCSFCS IP-SAIP-SA IP-DAIP-DA DataDataToSToS
1 Byte1 Byte
07 123456
IP Precedence
DSCP
Unused Bits;
0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Label | EXP |S| TTL |
132001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Features Policing and Shaping
Differentiated Model Features Policing and Shaping
• Policing is the QoS component that limits incoming traffic flow to a configured bit rate
• Shaping is the QoS feature component that regulates outgoing traffic flow to a configured bit rate
142001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Features Congestion Avoidance
Differentiated Model Features Congestion Avoidance
Drop Policy
• Tail Drop
• Random Early Detection (RED)
• Weighted Random Early Detection (WRED)
152001 Cisco Systems, Inc.
www.cisco.com
Differentiated Model Features Congestion Management
Differentiated Model Features Congestion Management
Scheduling Policy
• FIFO
• Fair Queuing
• Weighted Fair Queuing (WFQ)
• Class Based Weighted Fair Queuing (CBWFQ)
• Low Latency Queuing (LLQ)
162001 Cisco Systems, Inc.
www.cisco.com
AgendaAgenda
• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS QoS
• Sample Examples
172001 Cisco Systems, Inc.
www.cisco.com
Modular QoS CLIModular QoS CLI
Modular QoS CLI (MQC)
Command syntax introduced in 12.0(5)T
Reduces configuration steps and time
Uniform CLI across all main Cisco IOS-based platforms
Uniform CLI structure for all QoS features
182001 Cisco Systems, Inc.
www.cisco.com
Basic MQC CommandsBasic MQC Commands
class-map [match-any | match-all] class-name
router(config)#
• 1. Create Class Map - a traffic class ( match access list, input interface, IP Prec, DSCP, protocol (NBAR) src/dst MAC address, mpls
exp).
policy-map policy-map-name
router(config)#
• 2. Create Policy Map (Service Policy) - Associate a
class map with one or more QoS policies (bandwidth, police, queue-
limit, random detect, shape, set prec, set DSCP, set mpls exp).
service-policy {input | output} policy-map-name
router(config-if)#
• 3. Attach Service Policy - Associate the policy map with an input or output interface.
192001 Cisco Systems, Inc.
www.cisco.com
• 1. Create Class Map
Router(config)# class-map class1Router(config-cmap)# match ip precedence 5Router(config-cmap)# exit
Router(config)# policy-map policy1Router(config-pmap)# class class1Router(config-pmap-c)# set mpls experimental 5Router(config-pmap-c)# bandwidth 3000 Router(config-pmap-c)# queue-limit 30Router(config-pmap)# exit
Router(config)# interface e1/1Router(config-if)# service-policy output policy1 Router(config-if)# exit
• 2. Create Policy Map
• 3. Attach Service Policy
Basic MQC CommandsBasic MQC Commands
202001 Cisco Systems, Inc.
www.cisco.com
AgendaAgenda
• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS Quality of Service
• Sample Examples
212001 Cisco Systems, Inc.
www.cisco.com
ConventionalRouter
Label EdgeRouters
ATM-LSR
Label SwitchingRouter (LSR)
• Note: End to end service is IP; therefore, IP class of service is what MPLS must support
MPLS QoSMPLS QoS
222001 Cisco Systems, Inc.
www.cisco.com
ISP Customer
MPLS
3) Invoke QoS Policy Action Based on EdgeClassification (based on MPLS EXP), e.g. LLQ,CBWFQ, Drop PolicyLow Priority via WRED if rate limit exceeded
1) Packet Classificationthrough IP Prec/DSCP
2) Match IP Prec/DSCP; Set MPLS EXP.Rate-limit/Police and apply drop policy
Core
MPLS QoSMPLS QoS
232001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSMPLS QoS
• ‘Differentiated Model’ approach: Set IP precedence or MPLS Exp bit at the edge of the network
• WRED by MPLS Exp, and WFQ by class in the core
• Because MPLS is there primarily to transport IP, MPLS’s primary QoS goal is to support existing IP QoS models
• Because MPLS is there to support very large scale operations, MPLS should also be capable of supporting Diff-Serv in the future
242001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSMPLS QoS
• Copy of IP Precedence into MPLS EXP
• Mapping of IP Precedence into MPLS EXP
Prec: xyz
IPv4 Packet MPLS Hdr
Prec: xyzMPLS EXP: xyz
Non-MPLS Domain
MPLS Domain
0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Label | EXP |S| TTL |
252001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSDiff-Serv : Jargon
MPLS QoSDiff-Serv : Jargon
• PHB = Per Hop BehaviorThe Diff-Serv treatment (scheduling/dropping) applied by a Router to all the packets which are to experience the same Diff-Serv service
• DSCP = Differentiated Services Code PointThe value in the IP Header indicating which PHB is to be applied to the packet
• BA = Behavior AggregateThe set of all the packets which have the same DSCP (and thus that will receive the same PHB)
• OA = Ordered AggregateThe set of BAs which have an ordering constraint (“must go into the same queue”)
• PSC = PHB Scheduling ClassThe set of PHBs applied to an OA (the set of PHBs using the same queue”)
262001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSDiff-Serv : DSCP
MPLS QoSDiff-Serv : DSCP
1 0 1 1 1 0DSCPDSCP
CUCUEFEF
x x x y y 0DSCPDSCP
CUCUAFxyAFxy
ClassClass DropDrop
PrecedencePrecedence
AF Class = 1, 2, 3, 4AF Class = 1, 2, 3, 4 Drop Precedence = 2, 4, 6Drop Precedence = 2, 4, 6
272001 Cisco Systems, Inc.
www.cisco.com
MPLS QoS Diff-Serv over MPLS
MPLS QoS Diff-Serv over MPLS
• Two methods:
E-LSP
“Queue” inferred from Label and EXP field
“drop priority” inferred from label and EXP field
L-LSP
“Queue” inferred exclusively from Label
“drop priority” inferred from EXP field
<draft-ietf-mpls-diff-ext-03.txt>, by Francious Le Faucheur, et al
282001 Cisco Systems, Inc.
www.cisco.com
MPLS QoS E-LSP Example
MPLS QoS E-LSP Example
• E-LSPs can be established by various label binding protocols (LDP or RSVP)
• Example above illustrates support of EF and AF1 on single E-LSP
Note: EF and AF1 packets travel on single LSP (single label) but are enqueued in different queues (different EXP values)
• Queue is selected based on EXP
E-LSP
LSRLDP/RSVP LDP/RSVP
EFAF1
292001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSL-LSP Example
MPLS QoSL-LSP Example
• L-LSPs can be established by various label binding protocols (LDP or RSVP)
• Example above illustrates support of EF and AF1 on separate L-LSPs
EF and AF1 packets travel on separate LSPs and are enqueued in different queues (different label values)
• Queue is selected based on label, Discard is based on ESP
L-LSPs
LSR
LDP/RSVP LDP/RSVP
302001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSEdge DiffServ LSR with L-LSP
MPLS QoSEdge DiffServ LSR with L-LSP
0 1 2 30 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+| Label | EXP |S| TTL |
IPv4 Packet MPLS Header
Non-MPLS Diff-Serv Domain
MPLS Diff-Serv Domain
DSCP
Edge LSR
1) identify incoming packet’s BA looking at incoming DSCP2) pick the LSP/label which supports the right FEC and the right BA3) mark the EXP field to reflect the packet’s BA
DSCP
312001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSSignaling
MPLS QoSSignaling
• E-LSPs can be set up with existing (non-DS-aware) signalling
LDP, RSVP etc.
EXP -> PHB mapping is configured on every router as per Diffserv
• L-LSPs require signalling extension to bind “queue” to a label
New DIFFSERV object/TLV added to RSVP/LDP to signal the “queue” in which to enqueue the label
Meaning of EXP bits is well-known (ie standardised for each PSC)
322001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSE-LSP & L-LSP Applicability
MPLS QoSE-LSP & L-LSP Applicability
• MPLS over PPP and LAN:
both E-LSPs and L-LSPs are applicable
• MPLS over ATM:
only L-LSPs possible (EXP is not seen by ATM LSR)
332001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSMPLS QoS
• On non-ATM LSRs, MPLS-QoS is simple
• Copy or Map IP precedence to MPLS exp field
• Exact same mechanism as IP-QoS
• Net result is end-to-end QoS indistinguishable from non-MPLS (IP) network
342001 Cisco Systems, Inc.
www.cisco.com
MPLS QoSMPLS QoS
MPLS QoS on ATM-LSRs
Two Challenges: No WRED in switches
No EXP field in header
Solution Modes: ATM Forum PVC
Multi VC (LSP)
352001 Cisco Systems, Inc.
www.cisco.com
MPLS QoS ATM Forum PVC Mode
MPLS QoS ATM Forum PVC Mode
• Looks like packet interface to MPLS QoS
• BW and other parameters configured on the PVC
• Requires significant amount of configuration
ATM-LSR
PVC
362001 Cisco Systems, Inc.
www.cisco.com
MPLS QoS Multi VC Mode
MPLS QoS Multi VC Mode
ATM-LSRMPLS LVCs
• MPLS ATM core provides MPLS QoS at each link
• Configure each non-ATM LSR to support a number
of classes (2-4)
• Parallel LVCs automatically established
• Assign weight to each class
372001 Cisco Systems, Inc.
www.cisco.com
MPLS QoS Multi VC Mode
MPLS QoS Multi VC Mode
• Queuing is done through CBWFQ (eg. Premium gets 80% of link, standard gets 20%)
• Unused bandwidth available to other classes
• No per-router-pair configuration required, as in ATM Forum PVC
382001 Cisco Systems, Inc.
www.cisco.com
AgendaAgenda
• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS Class of Service
• Examples
392001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
PE 2
Pos 1/0
PE 3
MPLS Network
PE 1
PE 4
CE 4
CE 2
PE 5
CE 1
CE 3Pos 1/1
Pos 5/0
Pos 4/0
Pos 2/0
P 3
402001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
! Matching voice traffic from customer 1Pe1(config)# class-map match-all cus1_voicePe1(config-cmap)# match interface POS1/0Pe1(config-cmap)# match ip precedence 4Pe1(config-cmap)# end ! Matching voice traffic from customer 2Pe1(config)# class-map match-all cus2_voicePe1(config-cmap)# match interface POS1/1Pe1(config-cmap)# match ip precedence 5Pe1(config-cmap)# end ! Matching any e2e trafficPe1(config)# class-map erpPe1(config-cmap)# match ip precedence 2Pe1(config-cmap)# end
412001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
Pe1(config)# class-map isp_voicePe1(config-cmap)# match mpls experimental 4Pe1(config-cmap)# end Pe1(config)# class-map isp_erpPe1(config-cmap)# match mpls experimental 2Pe1(config-cmap)# end Pe1(config)# class-map isp_routinePe1(config-cmap)# match mpls experimental 1Pe1(config-cmap)# end
422001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
! Input Policy for setting experimental 4, 2, 1
Pe1(config)# policy-map pe1_inputPe1(config-pmap)# class cus1_voicePe1(config-pmap-c)# set mpls experimental 4Pe1(config-pmap-c)# exitPe1(config-pmap)# class cus2_voicePe1(config-pmap-c)# set mpls experimental 4Pe1(config-pmap-c)# exitPe1(config-pmap)# class erpPe1(config-pmap-c)# set mpls experimental 2Pe1(config-pmap-c)# exitPe1(config-pmap)# class class-defaultPe1(config-pmap-c)# set mpls experimental 1Pe1(config-pmap)# exit
432001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
! Output Policy for configuring bandwidth, queue…
Pe1(config)# policy-map policy pe1_outputPe1(config-pmap)# class isp_voicePe1(config-pmap-c)# priority 100Pe1(config-pmap-c)# exitPe1(config-pmap)# class isp_erpPe1(config-pmap-c)# bandwidth 50Pe1(config-pmap-c)# queue-limit 30Pe1(config-pmap-c)# exitPe1(config-pmap)# class class-defaultPe1(config-pmap-c)# bandwidth 20Pe1(config-pmap-c)# queue-limit 100Pe1(config-pmap-c)# exitPe1(config-pmap)# exit
442001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
Pe1(config)# interface POS1/0Pe1(config-if)# service-policy input pe1_input Pe1(config)# interface POS1/1Pe1(config-if)# service-policy input pe1_input Pe1(config)# interface POS2/0Pe1(config-if)# service-policy output pe1_output
452001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
PE 2
Pos 1/0
PE 3
MPLS Network
LC-ATM
PE 4
CE 4
CE 2
PE 5
CE 1
CE 3
Pos 1/1
Pos 5/0
Pos 4/0
ATM Core
PE 1LSC1
462001 Cisco Systems, Inc.
www.cisco.com
Pe1(config)# ATM1/0Pe1(config-if)# no ip addressPe1(config-if)# atm clock INTERNALPe1(config-if)# no atm ilmi-keepalivePe1(config-if)# exit Pe1(config)# interface ATM1/0.1 tag-switchingPe1(config-if)# ip unnumbered loopback0Pe1(config-if)# tag-switching multi-vcPe1(config-if)# tag-switching atm vpi 2-5Pe1(config-if)# tag-switching ip ! Sets up 3 LVCs.Pe1(config)# cos-map 1 ! 3 - standardPe1(config-mpls-cos-map)# class 3 standard ! 2 - premiumPe1(config-mpls-cos-map)# exit ! 1 - standard ! 0 – availablePe1(config)# mpls prefix-map 1 access-list 1 cos-map 1
ExamplesExamples
472001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
! Matching voice traffic from customer 1Pe1(config)# class-map match-all cus1_voicePe1(config-cmap)# match interface POS1/0Pe1(config-cmap)# match ip precedence 4Pe1(config-cmap)# end ! Matching voice traffic from customer 2Pe1(config)# class-map match-all cus2_voicePe1(config-cmap)# match interface POS1/1Pe1(config-cmap)# match ip precedence 5Pe1(config-cmap)# end ! Matching any e2e trafficPe1(config)# class-map erpPe1(config-cmap)# match ip precedence 2Pe1(config-cmap)# end
482001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
P! Input Policy for setting experimental 2, 1, 0e1(config)# policy-map pe1_inputPe1(config-pmap)# class cus1_voicePe1(config-pmap-c)# set mpls experimental 2 ! Voice for customer 1Pe1(config-pmap-c)# exitPe1(config-pmap)# class cus2_voicePe1(config-pmap-c)# set mpls experimental 2 ! Voice for customer 2Pe1(config-pmap-c)# exitPe1(config-pmap)# class erpPe1(config-pmap-c)# set mpls experimental 1 ! ERP dataPe1(config-pmap-c)# exitPe1(config-pmap)# class class-defaultPe1(config-pmap-c)# set mpls experimental 0 ! All other trafficPe1(config-pmap)# exit Pe1(config)# class-map isp_voicePe1(config-cmap)# match mpls experimental 2Pe1(config-cmap)# end
492001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
Pe1(config)# class-map isp_erpPe1(config-cmap)# match mpls experimental 1Pe1(config-cmap)# end Pe1(config)# class-map isp_availablePe1(config-cmap)# match mpls experimental 0Pe1(config-cmap)# end ! Output Policy for configuring bandwidth, queue…Pe1(config)# policy-map policy pe1_outputPe1(config-pmap)# class isp_voicePe1(config-pmap-c)# priority 100
502001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
Pe1(config-pmap-c)# exitPe1(config-pmap)# class isp_erpPe1(config-pmap-c)# bandwidth 50Pe1(config-pmap-c)# queue-limit 30Pe1(config-pmap-c)# exitPe1(config-pmap)# class isp_availablePe1(config-pmap-c)# bandwidth 20Pe1(config-pmap-c)# queue-limit 100Pe1(config-pmap-c)# exitPe1(config-pmap)# exit
512001 Cisco Systems, Inc.
www.cisco.com
ExamplesExamples
LSC1
Interface XTagATM11 extended-port ATM3/0 bpx 1.1 tag-switching atm vpi 2-15 tag-switching atm cos available 20 tag-switching atm cos standard 30 tag-switching atm cos premium 50 tag-switching ip Interface XTagATM12 extended-port ATM3/0 bpx 1.2 tag-switching atm vpi 2-15 tag-switching atm cos available 20 tag-switching atm cos standard 30 tag-switching atm cos premium 50 tag-switching ip
522001 Cisco Systems, Inc.
www.cisco.com
Thank You!Thank You!
top related