ON THIS PAGE
Understanding CoS MPLS EXP Classifiers and Rewrite Rules
You can use class of service (CoS) within MPLS networks to prioritize certain types of traffic
during periods of congestion by applying packet classifiers and rewrite
rules to the MPLS traffic. MPLS classifiers are global and apply to
all interfaces configured as family mpls
interfaces.
When a packet enters a customer-edge interface on the ingress provider edge (PE) switch, the switch associates the packet with a particular CoS servicing level before placing the packet onto the label-switched path (LSP). The switches within the LSP utilize the CoS value set at the ingress PE switch to determine the CoS service level. The CoS value embedded in the classifier is translated and encoded in the MPLS header by means of the experimental (EXP) bits.
EXP classifiers map incoming MPLS packets to a forwarding class and a loss priority, and assign MPLS packets to output queues based on the forwarding class mapping. EXP classifiers are behavior aggregate (BA) classifiers.
EXP rewrite rules change (rewrite) the CoS value of the EXP bits in outgoing packets on the egress queues of the switch so that the new (rewritten) value matches the policies of a targeted peer. Policy matching allows the downstream routing platform or switch in a neighboring network to classify each packet into the appropriate service group.
On QFX5200, QFX5100, QFX3500, QF3600, and EX4600 switches,
and on QFabric systems, there is no default EXP classifier. If you
want to classify incoming MPLS packets using the EXP bits, you must
configure a global EXP classifier. The global EXP classifier applies
to all MPLS traffic on interfaces configured as family mpls
.
On QFX10000 switches, there is a no default EXP classifier.
If you want to classify incoming MPLS packets using the EXP bits,
you must configure EXP classifiers and apply them to logical interfaces
configured as family mpls
. (You cannot apply classifiers
to physical interfaces.). You can configure up to 64 EXP classifiers.
There is no default EXP rewrite rule. If you want to rewrite the EXP bit value at the egress interface, you must configure EXP rewrite rules and apply them to logical interfaces.
EXP classifiers and rewrite rules are applied only to interfaces
that are configured as family mpls
(for example, set
interfaces xe-0/0/35 unit 0 family mpls
.)
This topic includes:
EXP Classifiers
On QFX5200, QFX5100, EX4600, QFX3500, and QFX3600 switches,
and on QFabric systems, unlike DSCP and IEEE 802.1p BA classifiers,
EXP classifiers are global to the switch and apply to all switch interfaces
that are configured as family mpls
. On QFX10000 switches,
you apply EXP classifiers to individual logical interfaces, and different
interfaces can use different EXP classifiers.
When you configure and apply an EXP classifier, MPLS traffic
on all family mpls
interfaces uses the EXP classifier,
even on interfaces that also have a fixed classifier. If an interface
has both an EXP classifier and a fixed classifier, the EXP classifier
is applied to MPLS traffic and the fixed classifier is applied to
all other traffic.
Also unlike DSCP and IEEE 802.1p BA classifiers, there is no default EXP classifier. If you want to classify MPLS traffic based on the EXP bits, you must explicitly configure an EXP classifier and apply it to the switch interfaces. Each EXP classifier has eight entries that correspond to the eight EXP CoS values (0 through 7, which correspond to CoS bits 000 through 111).
You can configure up to 64 EXP classifiers.
However, on QFX5200, QFX5100, EX4600, and legacy CLI switches,
the switch uses only one MPLS EXP classifier as a global classifier
on all interfaces. After you configure an MPLS EXP classifier, you
can configure that classifier as the global EXP classifier by including
the EXP classifier in the [edit class-of-service system-defaults
classifiers exp]
hierarchy level. All switch interfaces configured
as family mpls
use the global EXP classifier to classify
MPLS traffic.
On these switches, only one EXP classifier can be configured as the global EXP classifier at any time. If you want to change the global EXP classifier, delete the global EXP classifier configuration (use the user@switch# delete class-of-service system-defaults classifiers exp configuration statement), then configure the new global EXP classifier.
QFX5130 switch does not support MPLS CoS.
QFX10000 switches do not support global EXP classifiers. You can configure one EXP classifier and apply it to multiple logical interfaces, or configure multiple EXP classifiers and apply different EXP classifiers to different logical interfaces.
If an EXP classifier is not configured, then if a fixed classifier is applied to the interface, the MPLS traffic uses the fixed classifier. (Switches that have a default EXP classifier use the default classifier.) If no EXP classifier and no fixed classifier are applied to the interface, MPLS traffic is treated as best-effort traffic using the 802.1 default untrusted classifier. DSCP classifiers are not applied to MPLS traffic.
On QFX5200, QFX5100, EX4600, and legacy CLI switches, because the EXP classifier is global, you cannot configure some ports to use a fixed IEEE 802.1p classifier for MPLS traffic on some interfaces and the global EXP classifier for MPLS traffic on other interfaces. When you configure a global EXP classifier, all MPLS traffic on all interfaces uses the EXP classifier.
The switch uses only the outermost label of incoming EXP packets for classification.
MPLS packets with 802.1Q tags are not supported.
On QFX5220 switch, you can use class of service (CoS) within MPLS networks to prioritize certain types of traffic during periods of congestion by applying packet classifiers and rewrite rules to the MPLS traffic. We have also added the MPLS EXP rewrite support.
- Default CoS on the Provider (P) and Provider Edge (PE) routers for MPLS
interfaces – The MPLS traffic uses the default EXP classifier. MPLS traffic
is treated as best-effort traffic using the 802.1 default untrusted
classifier. The default EXP classifier applies to all MPLS traffic on
interfaces configured as
family mpls
. DSCP classifiers are not applied to MPLS traffic. - Default CoS on PE routers for Layer 3 interfaces – By default, all L3VPN logical interfaces are bound to default Differentiated Services Code Point (DSCP) classifiers.
If you apply an EXP classifier on a penultimate hop popping (PHP) node, then by default, the IP header time-to-live (TTL) value is overwritten by the MPLS header TLL value, and the IP header DSCP bits are over written by a zero (0), which signifies uniform mode. On Junos OS Evolved, to use pipe mode, where IP header TTL and IP header DSCP bits are not overwritten, you should configure the following command:
set protocols mpls no-propagate-ttl
However, on Junos OS, you can configure MPLS CoS without the set protocols mpls no-propagate-ttl command.
The DSCP of IP in MPLS packets can’t be remarked either at PE or P routers.
EXP Rewrite Rules
As MPLS packets enter or exit a network, edge switches might
be required to alter the class-of-service (CoS) settings of the packets.
EXP rewrite rules set the value of
the EXP CoS bits within the header of the outgoing MPLS packet on family mpls
interfaces. Each rewrite rule reads the current
forwarding class and loss priority associated with the packet, locates
the chosen CoS value from a table, and writes that CoS value into
the packet header, replacing the old CoS value. EXP rewrite rules
apply only to MPLS traffic.
EXP rewrite rules apply only to logical interfaces. You cannot apply EXP rewrite rules to physical interfaces.
There are no default EXP rewrite rules. If you want to rewrite the EXP value in MPLS packets, you must configure EXP rewrite rules and apply them to logical interfaces. If no rewrite rules are applied, all MPLS labels that are pushed have a value of zero (0). The EXP value remains unchanged on MPLS labels that are swapped.
You can configure up to 64 EXP rewrite rules, but you can only apply 16 EXP rewrite rules at any time on the switch. On a given logical interface, all pushed MPLS labels have the same EXP rewrite rule applied to them. You can apply different EXP rewrite rules to different logical interfaces on the same physical interface.
You can apply an EXP rewrite rule to an interface that has a DSCP, DSCP IPv6, or IEEE 802.1p rewrite rule. Only MPLS traffic uses the EXP rewrite rule. MPLS traffic does not use DSCP or DSCP IPv6 rewrite rules.
If the switch is performing penultimate hop popping (PHP), EXP rewrite rules do not take effect. If both an EXP classifier and an EXP rewrite rule are configured on the switch, then the EXP value from the last popped label is copied into the inner label. If either an EXP classifier or an EXP rewrite rule (but not both) is configured on the switch, then the inner label EXP value is sent unchanged.
On each physical interface, either all forwarding classes that are being used on the interface must have rewrite rules configured or no forwarding classes that are being used on the interface can have rewrite rules configured. On any physical port, do not mix forwarding classes with rewrite rules and forwarding classes without rewrite rules.
Schedulers
The schedulers for using CoS with MPLS are the same as for the other CoS configurations on the switch. Default schedulers are provided only for the best-effort, fcoe, no-loss, and network-control default forwarding classes. If you configure a custom forwarding class for MPLS traffic, you need to configure a scheduler to support that forwarding class and provide bandwidth to that forwarding class.