Create Class MapRouterconfig# class-map class1 Routerconfig-cmap# match ip precedence 5 Routerconfig-cmap# exit Routerconfig# policy-map policy1 Routerconfig-pmap# class class1 Routercon
Trang 1Jay Kumarasamy jayk@cisco.com
Jay Kumarasamy jayk@cisco.com
Trang 2• QoS Models
• Differentiated Model Features
• Modular QoS CLI (MQC)
Trang 3QoS Models
• Integrated Services (IntServ)
• Differentiated Services (Diffserv)
Trang 4The QoS Pendulum
Trang 5Integrated 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.
Trang 6Differentiated 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).
Trang 7Differentiated
IP Services
Guaranteed: Latency and Delivery
Guaranteed Delivery Voice
Silver Gold
Voice
Traffic Classification
Traffic Classification
Differentiated Model
Divide Traffic into Classes
Trang 8Switching Fabric
Scheduling policy
Trang 9• Differentiated Model Features
• Modular QoS CLI (MQC)
Trang 10Differential Model Features
Trang 11Differentiated 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
Trang 12Differentiated Model Features
0 1 2 3
0 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 |
Trang 13Differentiated 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
Trang 14Differentiated Model Features
• Random Early Detection (RED)
• Weighted Random Early Detection (WRED)
Trang 15Differentiated Model Features
• Weighted Fair Queuing (WFQ)
• Class Based Weighted Fair Queuing (CBWFQ)
• Low Latency Queuing (LLQ)
Trang 16• Differentiated Model Features
• Modular QoS CLI (MQC)
Trang 17Modular 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
Trang 18router(configif)#
• 3. Attach Service Policy Associate the policy map with an input or output interface.
Trang 19• 1 Create Class Map
Router(config)# class-map class1
Router(config-cmap)# match ip precedence 5
Router(config-cmap)# exit
Router(config)# policy-map policy1
Router(config-pmap)# class class1
Router(config-pmap-c)# set mpls experimental 5
Router(config-pmap-c)# bandwidth 3000
Router(config-pmap-c)# queue-limit 30
Router(config-pmap)# exit
Router(config)# interface e1/1
Router(config-if)# service-policy output policy1
• 2 Create Policy Map
• 3 Attach Service Policy
Basic MQC Commands
Trang 20• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS Quality of Service
Trang 21• Note: End to end service is IP; therefore, IP
class of service is what MPLS must support
MPLS QoS
Trang 22MPLS
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 Classification
through IP Prec/DSCP
2) Match IP Prec/DSCP; Set MPLS EXP
Ratelimit/Police and apply drop policy
Core
MPLS QoS
Trang 23MPLS 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
Trang 24MPLS QoS
• Copy of IP Precedence into MPLS EXP
• Mapping of IP Precedence into MPLS EXP
Prec: xyz
IPv4 Packet MPLS Hdr
Prec: xyz
MPLS EXP: xyz
Non-MPLS Domain
MPLS Domain
0 1 2 3
0 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 |
Trang 25MPLS QoS
Diff-Serv : Jargon
• PHB = Per Hop Behavior
The 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 Point
The value in the IP Header indicating which PHB is to be applied to the packet
Trang 27“Queue” inferred from Label and E XP field
“drop priority” inferred from label and EXP field
L -LSP
“Queue” inferred exclusively from L abel
“drop priority” inferred from EXP field
<draft-ietf-mpls-diff-ext-03.txt>, by
Trang 30MPLS QoS
Edge DiffServ LSR with L-LSP
0 1 2 3
0 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
DSCP
Edge LSR
1) identify incoming packet’s BA looking at incoming DSCP
2) pick the LSP/label which supports the right FEC and the right BA
3) mark the EXP field to reflect the packet’s BA
DSCP
Trang 31MPLS QoS Signaling
MPLS QoS Signaling
New DIFFSERV object/TLV added to RSVP/LDP to
signal the “queue” in which to enqueue the label
Trang 32MPLS QoS
E-LSP & L-LSP Applicability
both E-LSPs and L-LSPs are applicable
only L-LSPs possible (EXP is not seen by ATM LSR)
Trang 33MPLS 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
Trang 35MPLS QoS
ATM Forum PVC Mode
ATM-LSR
PVC
Trang 36of classes (2-4)
Trang 37MPLS QoS
Multi VC Mode
MPLS QoS
Multi VC Mode
• Queuing is done through CBWFQ (eg
Premium gets 80% of link, standard gets
Trang 38• Differentiated Model Features
• Modular QoS CLI (MQC)
• MPLS Class of Service
• Examples
Trang 39P 3
Trang 40! Matching voice traffic from customer 1
Pe1(config)# class-map match-all cus1_voice
Pe1(config-cmap)# match interface POS1/0
Pe1(config-cmap)# match ip precedence 4
Pe1(config-cmap)# end
! Matching voice traffic from customer 2
Pe1(config)# class-map match-all cus2_voice
Pe1(config-cmap)# match interface POS1/1
Pe1(config-cmap)# match ip precedence 5
Pe1(config-cmap)# end
! Matching any e2e traffic
Pe1(config)# class-map erp
Pe1(config-cmap)# match ip precedence 2
Pe1(config-cmap)# end
Trang 41Pe1(config)# class-map isp_voice
Pe1(config-cmap)# match mpls experimental 4
Pe1(config-cmap)# end
Pe1(config)# class-map isp_erp
Pe1(config-cmap)# match mpls experimental 2
Pe1(config-cmap)# end
Pe1(config)# class-map isp_routine
Pe1(config-cmap)# match mpls experimental 1
Pe1(config-cmap)# end
Trang 42! Input Policy for setting experimental 4, 2, 1
Pe1(config)# policy-map pe1_input
Pe1(config-pmap)# class cus1_voice
Pe1(config-pmap-c)# set mpls experimental 4
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class cus2_voice
Pe1(config-pmap-c)# set mpls experimental 4
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class erp
Pe1(config-pmap-c)# set mpls experimental 2
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class class-default
Pe1(config-pmap-c)# set mpls experimental 1
Pe1(config-pmap)# exit
Trang 43! Output Policy for configuring bandwidth, queue…
Pe1(config)# policy-map policy pe1_output
Pe1(config-pmap)# class isp_voice
Trang 44Pe1(config)# interface POS1/0
Pe1(config-if)# service-policy input pe1_input
Pe1(config)# interface POS1/1
Pe1(config-if)# service-policy input pe1_input
Pe1(config)# interface POS2/0
Pe1(config-if)# service-policy output pe1_output
Trang 46
Pe1(config)# ATM1/0
Pe1(config-if)# no ip address
Pe1(config-if)# atm clock INTERNAL
Pe1(config-if)# no atm ilmi-keepalive
Pe1(config-if)# exit
Pe1(config)# interface ATM1/0.1 tag-switching
Pe1(config-if)# ip unnumbered loopback0
Pe1(config-if)# tag-switching multi-vc
Pe1(config-if)# tag-switching atm vpi 2-5
Pe1(config-if)# tag-switching ip
! Sets up 3 LVCs.
Pe1(config)# cos-map 1 ! 3 - standard
Pe1(config-mpls-cos-map)# class 3 standard ! 2 - premium
Pe1(config-mpls-cos-map)# exit ! 1 - standard
! 0 – available
Pe1(config)# mpls prefix-map 1 access-list 1 cos-map 1
Examples
Trang 47! Matching voice traffic from customer 1
Pe1(config)# class-map match-all cus1_voice
Pe1(config-cmap)# match interface POS1/0
Pe1(config-cmap)# match ip precedence 4
Pe1(config-cmap)# end
! Matching voice traffic from customer 2
Pe1(config)# class-map match-all cus2_voice
Pe1(config-cmap)# match interface POS1/1
Pe1(config-cmap)# match ip precedence 5
Pe1(config-cmap)# end
! Matching any e2e traffic
Pe1(config)# class-map erp
Pe1(config-cmap)# match ip precedence 2
Trang 48P! Input Policy for setting experimental 2, 1, 0
e1(config)# policy-map pe1_input
Pe1(config-pmap)# class cus1_voice
Pe1(config-pmap-c)# set mpls experimental 2 ! Voice for customer 1
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class cus2_voice
Pe1(config-pmap-c)# set mpls experimental 2 ! Voice for customer 2
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class erp
Pe1(config-pmap-c)# set mpls experimental 1 ! ERP data
Pe1(config-pmap-c)# exit
Pe1(config-pmap)# class class-default
Pe1(config-pmap-c)# set mpls experimental 0 ! All other traffic
Pe1(config-pmap)# exit
Pe1(config)# class-map isp_voice
Pe1(config-cmap)# match mpls experimental 2
Pe1(config-cmap)# end
Trang 49Pe1(config)# class-map isp_erp
Pe1(config-cmap)# match mpls experimental 1
Pe1(config-cmap)# end
Pe1(config)# class-map isp_available
Pe1(config-cmap)# match mpls experimental 0
Pe1(config-cmap)# end
! Output Policy for configuring bandwidth, queue…
Pe1(config)# policy-map policy pe1_output
Pe1(config-pmap)# class isp_voice
Pe1(config-pmap-c)# priority 100
Trang 51tag-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
Trang 52Thank You!