OcNOS SP : Multi-Protocol Label Switching Guide : Layer 3 Virtual Private network Configuration : DSCP Preserve
DSCP Preserve
Overview
Layer 3 VPN services use the DSCP field in the IP header to convey QoS information, determining packet priority and treatment (e.g., DSCP 46 for high-priority voice traffic). When L3 VPN traffic enters the MPLS domain, QoS is managed by the EXP field in the MPLS label, typically derived from the DSCP value. In Qumran-based systems, the EXP field is updated based on the remarked DSCP value. By default, remarking the DSCP at the access interface affects both the IP header DSCP field and the MPLS EXP field. Service managers need control over whether to remark the DSCP or not while configuring EXP field updates.
Network operator can control preserving DSCP in the edge routers at gobal level or per VRF level or combination of both. To provide more control, the following DSCP preservation settings are available:
DSCP Preserve Global - When DSCP preserve is enabled globally, it applies to all VRFs, preserving the DSCP value even if remarking is configured.
DSCP Preserve Per-VRF - Per-VRF configuration allows DSCP preservation only for specific VPN services, offering more granular control for network administrators.
DSCP Preserve Behavior: Below table shows the way DSCP preserve global and per VRF configuration impact the DSCP value of the traffic received on the VRF of interest when dscp-to-queue profile is updated with remark DSCP option.
Table 5-15:  
DSCP-preserve
per-vrf not configured
per-vrf enabled
per-vrf disabled
Global enable
preserved
preserved
not preserved
Global disable
not preserved
preserved
not preserved
Network administrators can further refine control using global or custom DSCP-to-queue profiles and policy-map configurations to remark DSCP values based on specific match criteria. This provides flexible and tailored QoS management across different VPN services.
DSCP Preserve Characteristics
QoS information mapping ensures that the QoS information carried in the DSCP field of the IP header is correctly mapped to the MPLS EXP field.
DSCP remarking controls whether the DSCP value in the IP header is remarked at the access interface, affecting both customer traffic and the MPLS domain.
In hardware like Qumran, the EXP field update is based on the remarked DSCP value, requiring configuration to manage how and if DSCP values are modified.
Ingress configuration requirement introduces the need for ingress-side configuration to properly align the DSCP and EXP field values, ensuring correct QoS handling.
DSCP preserve provides service managers with control over whether DSCP values are modified or preserved during the process of mapping to MPLS headers.
DSCP Preserve Global
This method of configuration allows Network operator to enable or disable DSCP preserve for all the services in an edge router.
Prerequisites
The L3VPN service will operate seamlessly from end to end without any packet loss, using either OSPF or IS-IS as the IGP, with traffic profiles configured based on user-defined DSCP values.
Globally enable dscp-preserve using the mpls lsp-encap-dscp-preserve command.
Global level configuration for PE1:
config t
qos enable
!
qos profile dscp-to-queue profile1
dscp 24 queue 3 dscp 32
interface level configuration for PE1:
interface xe3
qos map-profile dscp-to-queue profile1
!
Configuration for DSCP Preserve Global
Topology
The topology above illustrates the DSCP Preserve Global feature, with PE1 and PE2 serving as the edge routers for L3VPN services, and the P node acting as a transit router between them. Traffic received on PE1 with a user-defined DSCP value, which can be preserved or modified depending on the configuration applied to the ingress PE router.
DSCP Preserve Global
Configure DSCP Preserve and L3VPN Services on PE1 Router
1. Enable QoS Globally: This command enables global QoS functionality, allowing configuration of any QoS-related settings. It is mandatory to enable this feature for any QoS configurations to be effective.
PE1(config)#qos enable
PE1(config)#commit
2. Configure DSCP Preserve Globally: This command enables preserving the customer's DSCP values across the network.
PE1(config)#mpls lsp-encap-dscp-preserve
3. Configure QoS profiles or class-map profiles for remarking the incoming customer defined DSCP value to customized DSCP value.
Method 1: QoS Profile (dscp-to-queue): Use a QoS profile to remap the incoming DSCP value to a user-defined queue and DSCP value.
PE1(config)#qos profile dscp-to-queue dscp_profile1
PE1(config-ingress-dscp-map)#dscp 24 queue 3 dscp 32
PE1(config-ingress-dscp-map)#commit
PE1(config-ingress-dscp-map)#exit
PE1(config)#Interface xe0.100
PE1(config-if)#qos map-profile dscp-to-queue dscp_profile1
PE1(config-if)#commit
PE1(config-if)#exit
Method 2: Class-Map and Policy-Map: Use class-map and policy-map to match the incoming DSCP value and set a new DSCP value.
PE1(config)#class-map type qos match-any class1
PE1(config-qos-match-any)#match dscp 24
PE1(config-qos-match-any)#commit
PE1(config-qos-match-any)#exit
 
PE1(config)#policy-map type qos pmap1
PE1(config-pmap-qos)#class type qos class1
PE1(config-pmap-qos)#set dscp 32
PE1(config-pmap-qos)#commit
PE1(config-pmap-qos)#exit
 
PE1(config)#Interface xe0.100
PE1(config-if)#service-policy type qos input pmap1
PE1(config-if)#commit
4. Configure EXP Encapsulation on the Egress Interface: Modify the incoming EXP value to a user-defined EXP value for MPLS traffic.
Example config on Qumran 1:
PE1(config)#qos profile exp-encap exp_profile1
PE1(config-egress-exp-encap-map)#l3 dscp 32 exp 5
PE1(config-egress-exp-encap-map)#commit
PE1(config-egress-exp-encap-map)#exit
PE1(config)#interface ce46/3
PE1(config-if)#label-switching
PE1(config-if)#qos map-profile exp-encap exp_profile1
PE1(config-if)#commit
PE1(config-if)#exit
Example config on Qumran 2:
PE1(config)#qos profile queue-to-exp exp_profile1
PE1(config-egress-queue-exp-map)#queue 3 color all exp 5
PE1(config-egress-queue-exp-map)#commit
PE1(config-egress-queue-exp-map)#exit
PE1(config)#interface ce46/3
PE1(config-if)#label-switching
PE1(config-if)#qos map-profile queue-to-exp exp_profile1
5. Define an IP VRF: Create a VRF with Route Distinguisher (RD) and Route Target (RT) to isolate customer routing information.
PE1(config)# ip vrf vrf100
PE1(config-vrf)# rd 1.1.1.1:100
PE1(config-vrf)# route-target both 100:100
PE1(config-vrf)#commit
6. Associate Interfaces with VRF: Bind interfaces to the VRF to ensure that the VRF receives the necessary routes.
PE1(config)#interface xe0
PE1(config-if)#ip vrf forwarding vrf100
PE1(config-if)#ip address 100.100.100.1/24
PE1(config-if)#exit
PE1(config)#commit
7. Configure CE Neighbor for VPN with BGP: Establish a BGP session between the PE router and the CE device, and configure it to advertise routes within the VRF.
PE1(config)#router bgp 100
PE1(config-router)# bgp router-id 1.1.1.1
PE1(config-router)#neighbor 3.3.3.3 remote-as 100
PE1(config-router)#neighbor 3.3.3.3 update-source lo
PE1(config-router)#neighbor 3.3.3.3 advertisement-interval 0
PE1(config-router)#address-family ipv4 unicast
PE1(config-router-af)# network 1.1.1.1/32
PE1(config-router-af)#exit-address-family
 
PE1(config-router)#address-family vpnv4 unicast
PE1(config-router-af)# neighbor 3.3.3.3 activate
PE1(config-router-af)#exit-address-family
 
PE1(config-router)#address-family ipv4 vrf vrf100
PE1(config-router-af)#redistribute connected
PE1(config-router-af)#neighbor 100.100.100.2 remote-as 100
PE1(config-router-af)#neighbor 100.100.100.2 activate
PE1(config-router-af)#exit-address-family
PE1(config-router)#commit
Running Configuration on PE1 Router is as follows:
PE1#show running-config
!
! Software version: UFI_S9600-56DX-OcNOS-SP-PLUS-6.5.3.80-Alpha 10/07/2024 14:38:44
!
! Last configuration change at 02:55:39 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile filter qos-ext enable
hardware-profile statistics voq-full-color enable
hardware-profile statistics cfm-ccm disable
hardware-profile port-config mode3
!
qos enable
!
qos profile dscp-to-queue dscp_profile1
dscp 24 queue 3 dscp 32
qos profile queue-to-exp exp_profile1
queue 3 color all exp 5
!
mpls lsp-encap-dscp-preserve
!
hostname PE1
port ce46 breakout 4X10g
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
ip vrf vrf100
rd 1.1.1.1:100
route-target both 100:100
!
router ldp
targeted-peer ipv4 3.3.3.3
exit-targeted-peer-mode
transport-address ipv4 1.1.1.1
!
router rsvp
!
interface ce46/3
load-interval 30
ip address 10.10.10.1/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 1.1.1.1/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
exit
!
router ospf 100
ospf router-id 1.1.1.1
network 1.1.1.1/32 area 0.0.0.0
network 10.10.10.0/24 area 0.0.0.0
!
router bgp 100
bgp router-id 1.1.1.1
neighbor 3.3.3.3 remote-as 100
neighbor 3.3.3.3 update-source lo
neighbor 3.3.3.3 advertisement-interval 0
!
address-family ipv4 unicast
network 1.1.1.1/32
exit-address-family
!
address-family vpnv4 unicast
neighbor 3.3.3.3 activate
exit-address-family
!
address-family ipv4 vrf vrf100
redistribute connected
neighbor 100.100.100.2 remote-as 100
neighbor 100.100.100.2 activate
exit-address-family
!
exit
!
line console 0
exec-timeout 0
!
!
end
 
PE1#
Running Configuration on P Router is as follows:
P#show running-config
!
! Software version: EC_AS5912-54X-OcNOS-SP-MPLS-6.6.0.104-Alpha 10/13/2024 21:38:49
!
! Last configuration change at 02:00:52 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile statistics ingress-acl enable
!
qos enable
!
hostname P
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
router ldp
transport-address ipv4 2.2.2.2
!
router rsvp
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 2.2.2.2/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe1
load-interval 30
ip address 10.10.10.2/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
interface xe9
load-interval 30
ip address 20.20.20.2/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
exit
!
router ospf 100
ospf router-id 2.2.2.2
network 2.2.2.2/32 area 0.0.0.0
network 10.10.10.0/24 area 0.0.0.0
network 20.20.20.0/24 area 0.0.0.0
!
line console 0
exec-timeout 0
!
!
end
 
P#
Running Configuration on PE2 Router is as follows:
PE2#show running-config
!
! Software version: EC_AS7316-26XB-OcNOS-CSR-6.5.3.81-Alpha 10/08/2024 14:39:39
!
! Last configuration change at 07:33:31 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile statistics ingress-acl enable
!
qos enable
!
hostname PE2
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
ip vrf vrf100
rd 3.3.3.3:100
route-target both 100:100
!
router ldp
!
router rsvp
!
interface ce0
!
interface ce1
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 3.3.3.3/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe4.100
encapsulation dot1q 100
load-interval 30
ip vrf forwarding vrf100
ip address 200.200.200.1/24
mtu 9216
!
interface xe9
load-interval 30
ip address 20.20.20.1/24
mtu 9216
label-switching
enable-ldp ipv4
!
exit
!
router ospf 100
ospf router-id 3.3.3.3
network 3.3.3.3/32 area 0.0.0.0
network 20.20.20.0/24 area 0.0.0.0
!
router bgp 100
bgp router-id 3.3.3.3
neighbor 1.1.1.1 remote-as 100
neighbor 1.1.1.1 update-source lo
neighbor 1.1.1.1 advertisement-interval 0
!
address-family ipv4 unicast
network 3.3.3.3/32
exit-address-family
!
address-family vpnv4 unicast
neighbor 1.1.1.1 activate
exit-address-family
!
address-family ipv4 vrf vrf100
redistribute connected
neighbor 200.200.200.2 remote-as 100
neighbor 200.200.200.2 activate
exit-address-family
!
exit
!
line console 0
exec-timeout 0
!
!
end
PE2#
Validation
Below show command gives us the output of ospf neighborship with transit node.
PE1#show ip ospf neighbor
Total number of full neighbors: 1
OSPF process 100 VRF(default):
Neighbor ID Pri State Dead Time Address Interface Instance ID
2.2.2.2 1 Full/DR 00:00:37 10.10.10.2 ce46/3 0
PE1#
 
 
PE1#sh ip vrf
VRF management, VRF ID: 1, FIB ID 1
MPLS DSCP Preserve Enabled (global)
Router ID: 10.12.96.29 (automatic)
Interfaces:
eth0
lo.management
!
VRF vrf100, VRF ID: 2, FIB ID 2
MPLS DSCP Preserve Enabled (global)
Router ID: 100.100.100.1 (automatic)
Interfaces:
lo.vrf100
xe0.100
!
Total Number of configured IP VRF's: 2
Total Number of all VRF's: 3
 
Name Default RD
management not set
vrf100 1.1.1.1:100
PE1#
 
 
 
PE1#show ip bgp summary
BGP router identifier 100.100.100.1, local AS number 100
BGP VRF vrf100 Route Distinguisher: 1.1.1.1:100
BGP table version is 5
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
100.100.100.2 4 100 116 131 5 0 0 00:01:06 10
 
Total number of neighbors 1
 
Total number of Established sessions 1
PE1#
 
 
 
 
PE1#show ip bgp vpnv4 all summary
BGP router identifier 1.1.1.1, local AS number 100
BGP table version is 3
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
3.3.3.3 4 100 139 141 2 0 0 00:00:28 1
 
Total number of neighbors 1
 
Total number of Established sessions 1
 
BGP VRF vrf100 Route Distinguisher: 1.1.1.1:100
BGP table version is 5
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
100.100.100.2 4 100 116 131 5 0 0 00:01:12 10
 
Total number of neighbors 1
 
Total number of Established sessions 1
PE1#
 
Below show commands gives us the traffic statistics. Xe0.100 is ingress interface and ce46/3 is the egress interface.
 
PE1#show interface counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
ce46/3 0.00 0 10.36 9810
xe0 10.21 9969 0.00 0
xe0.100 10.25 10007 0.00 0
PE1#
 
 
Below show command gives us the queue-stats on the egress interface of the ingress node. From the configuration made, the traffic is expected to flow in queue 3 as shown below.
 
PE1#show interface ce46/3 counters queue-stats
E - Egress, I - Ingress, Q-Size is in bytes
+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
| Queue/Class-map | Q-Size | Tx pkts | Tx bytes | Dropped pkts | Dropped bytes |
+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
q0 (E) 12499968 0 0 0 0
q1 (E) 12499968 0 0 0 0
q2 (E) 12499968 0 0 0 0
q3 (E) 12499968 7931421 872455900 0 0
q4 (E) 12499968 0 0 0 0
q5 (E) 12499968 0 0 0 0
q6 (E) 12499968 377 30275 0 0
q7 (E) 12499968 252 14180 0 0
 
PE1#
 
Once the end to end traffic is verified, capture the packet on egress interface of the ingress node. Below is the example packet capture.
Below snapshot is the decoded output of the packet capture. Here we can see that EXP bit is 4 and preserved DSCP value is 24.
 
PE1#show qos-profile type dscp-to-queue dscp_profile1
profile name: dscp_profile1
profile type: dscp-to-queue
profile attached to 1 instances
configured mapping:
dscp 24 queue 3 dscp 32
Detailed mapping:
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP
| | | (TC) | | | | (TC) | | | | (TC) | | | | (TC)
-------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+-----------
0 0 green 0 (0) | 16 2 green 16 (2) | 32 4 green 32 (4) | 48 6 green 48 (6)
1 0 green 1 (0) | 17 2 green 17 (2) | 33 4 green 33 (4) | 49 6 green 49 (6)
2 0 green 2 (0) | 18 2 green 18 (2) | 34 4 green 34 (4) | 50 6 green 50 (6)
3 0 green 3 (0) | 19 2 green 19 (2) | 35 4 green 35 (4) | 51 6 green 51 (6)
4 0 green 4 (0) | 20 2 yellow 20 (2) | 36 4 yellow 36 (4) | 52 6 green 52 (6)
5 0 green 5 (0) | 21 2 green 21 (2) | 37 4 green 37 (4) | 53 6 green 53 (6)
6 0 green 6 (0) | 22 2 yellow 22 (2) | 38 4 yellow 38 (4) | 54 6 green 54 (6)
7 0 green 7 (0) | 23 2 green 23 (2) | 39 4 green 39 (4) | 55 6 green 55 (6)
8 1 green 8 (1) | 24 3 green 32 (4) | 40 5 green 40 (5) | 56 7 green 56 (7)
9 1 green 9 (1) | 25 3 green 25 (3) | 41 5 green 41 (5) | 57 7 green 57 (7)
10 1 green 10 (1) | 26 3 green 26 (3) | 42 5 green 42 (5) | 58 7 green 58 (7)
11 1 green 11 (1) | 27 3 green 27 (3) | 43 5 green 43 (5) | 59 7 green 59 (7)
12 1 yellow 12 (1) | 28 3 yellow 28 (3) | 44 5 green 44 (5) | 60 7 green 60 (7)
13 1 green 13 (1) | 29 3 green 29 (3) | 45 5 green 45 (5) | 61 7 green 61 (7)
14 1 yellow 14 (1) | 30 3 yellow 30 (3) | 46 5 green 46 (5) | 62 7 green 62 (7)
15 1 green 15 (1) | 31 3 green 31 (3) | 47 5 green 47 (5) | 63 7 green 63 (7)
 
PE1#
 
 
 
 
PE1#show qos-profile interface ce46/3
profile name: default
profile type: dscp-to-queue (Ingress)
mapping:
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP
| | | (TC) | | | | (TC) | | | | (TC) | | | | (TC)
-------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+-----------
0 0 green 0 (0) | 16 2 green 16 (2) | 32 4 green 32 (4) | 48 6 green 48 (6)
1 0 green 1 (0) | 17 2 green 17 (2) | 33 4 green 33 (4) | 49 6 green 49 (6)
2 0 green 2 (0) | 18 2 green 18 (2) | 34 4 green 34 (4) | 50 6 green 50 (6)
3 0 green 3 (0) | 19 2 green 19 (2) | 35 4 green 35 (4) | 51 6 green 51 (6)
4 0 green 4 (0) | 20 2 yellow 20 (2) | 36 4 yellow 36 (4) | 52 6 green 52 (6)
5 0 green 5 (0) | 21 2 green 21 (2) | 37 4 green 37 (4) | 53 6 green 53 (6)
6 0 green 6 (0) | 22 2 yellow 22 (2) | 38 4 yellow 38 (4) | 54 6 green 54 (6)
7 0 green 7 (0) | 23 2 green 23 (2) | 39 4 green 39 (4) | 55 6 green 55 (6)
8 1 green 8 (1) | 24 3 green 24 (3) | 40 5 green 40 (5) | 56 7 green 56 (7)
9 1 green 9 (1) | 25 3 green 25 (3) | 41 5 green 41 (5) | 57 7 green 57 (7)
10 1 green 10 (1) | 26 3 green 26 (3) | 42 5 green 42 (5) | 58 7 green 58 (7)
11 1 green 11 (1) | 27 3 green 27 (3) | 43 5 green 43 (5) | 59 7 green 59 (7)
12 1 yellow 12 (1) | 28 3 yellow 28 (3) | 44 5 green 44 (5) | 60 7 green 60 (7)
13 1 green 13 (1) | 29 3 green 29 (3) | 45 5 green 45 (5) | 61 7 green 61 (7)
14 1 yellow 14 (1) | 30 3 yellow 30 (3) | 46 5 green 46 (5) | 62 7 green 62 (7)
15 1 green 15 (1) | 31 3 green 31 (3) | 47 5 green 47 (5) | 63 7 green 63 (7)
 
profile name: default
profile type: dscp-to-dscp (Egress)
Status: Inactive
mapping:
-----------------------+---------- | -----------------------+---------- | -----------------------+----------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-----------------------+---------- | -----------------------+---------- | -----------------------+----------
Remark DSCP | Color | Out DSCP | Remark DSCP | Color | Out DSCP | Remark DSCP | Color | Out DSCP
(TC) | | | (TC) | | | (TC) | |
-------------+---------+---------- | -------------+---------+---------- | -------------+---------+----------
0 (0) green 0 | 0 (0) yellow 0 | 0 (0) red 0
1 (0) green 1 | 1 (0) yellow 1 | 1 (0) red 1
2 (0) green 2 | 2 (0) yellow 2 | 2 (0) red 2
3 (0) green 3 | 3 (0) yellow 3 | 3 (0) red 3
4 (0) green 4 | 4 (0) yellow 4 | 4 (0) red 4
5 (0) green 5 | 5 (0) yellow 5 | 5 (0) red 5
6 (0) green 6 | 6 (0) yellow 6 | 6 (0) red 6
7 (0) green 7 | 7 (0) yellow 7 | 7 (0) red 7
8 (1) green 8 | 8 (1) yellow 8 | 8 (1) red 8
9 (1) green 9 | 9 (1) yellow 9 | 9 (1) red 9
10 (1) green 10 | 10 (1) yellow 12 | 10 (1) red 14
11 (1) green 11 | 11 (1) yellow 11 | 11 (1) red 11
12 (1) green 12 | 12 (1) yellow 12 | 12 (1) red 14
13 (1) green 13 | 13 (1) yellow 13 | 13 (1) red 13
14 (1) green 14 | 14 (1) yellow 14 | 14 (1) red 14
15 (1) green 15 | 15 (1) yellow 15 | 15 (1) red 15
16 (2) green 16 | 16 (2) yellow 16 | 16 (2) red 16
17 (2) green 17 | 17 (2) yellow 17 | 17 (2) red 17
18 (2) green 18 | 18 (2) yellow 20 | 18 (2) red 22
19 (2) green 19 | 19 (2) yellow 19 | 19 (2) red 19
20 (2) green 20 | 20 (2) yellow 20 | 20 (2) red 22
21 (2) green 21 | 21 (2) yellow 21 | 21 (2) red 21
22 (2) green 22 | 22 (2) yellow 22 | 22 (2) red 22
23 (2) green 23 | 23 (2) yellow 23 | 23 (2) red 23
24 (3) green 24 | 24 (3) yellow 24 | 24 (3) red 24
25 (3) green 25 | 25 (3) yellow 25 | 25 (3) red 25
26 (3) green 26 | 26 (3) yellow 28 | 26 (3) red 30
27 (3) green 27 | 27 (3) yellow 27 | 27 (3) red 27
28 (3) green 28 | 28 (3) yellow 28 | 28 (3) red 30
29 (3) green 29 | 29 (3) yellow 29 | 29 (3) red 29
30 (3) green 30 | 30 (3) yellow 30 | 30 (3) red 30
31 (3) green 31 | 31 (3) yellow 31 | 31 (3) red 31
32 (4) green 32 | 32 (4) yellow 32 | 32 (4) red 32
33 (4) green 33 | 33 (4) yellow 33 | 33 (4) red 33
34 (4) green 34 | 34 (4) yellow 36 | 34 (4) red 38
35 (4) green 35 | 35 (4) yellow 35 | 35 (4) red 35
36 (4) green 36 | 36 (4) yellow 36 | 36 (4) red 38
37 (4) green 37 | 37 (4) yellow 37 | 37 (4) red 37
38 (4) green 38 | 38 (4) yellow 38 | 38 (4) red 38
39 (4) green 39 | 39 (4) yellow 39 | 39 (4) red 39
40 (5) green 40 | 40 (5) yellow 40 | 40 (5) red 40
41 (5) green 41 | 41 (5) yellow 41 | 41 (5) red 41
42 (5) green 42 | 42 (5) yellow 42 | 42 (5) red 42
43 (5) green 43 | 43 (5) yellow 43 | 43 (5) red 43
44 (5) green 44 | 44 (5) yellow 44 | 44 (5) red 44
45 (5) green 45 | 45 (5) yellow 45 | 45 (5) red 45
46 (5) green 46 | 46 (5) yellow 46 | 46 (5) red 46
47 (5) green 47 | 47 (5) yellow 47 | 47 (5) red 47
48 (6) green 48 | 48 (6) yellow 48 | 48 (6) red 48
49 (6) green 49 | 49 (6) yellow 49 | 49 (6) red 49
50 (6) green 50 | 50 (6) yellow 50 | 50 (6) red 50
51 (6) green 51 | 51 (6) yellow 51 | 51 (6) red 51
52 (6) green 52 | 52 (6) yellow 52 | 52 (6) red 52
53 (6) green 53 | 53 (6) yellow 53 | 53 (6) red 53
54 (6) green 54 | 54 (6) yellow 54 | 54 (6) red 54
55 (6) green 55 | 55 (6) yellow 55 | 55 (6) red 55
56 (7) green 56 | 56 (7) yellow 56 | 56 (7) red 56
57 (7) green 57 | 57 (7) yellow 57 | 57 (7) red 57
58 (7) green 58 | 58 (7) yellow 58 | 58 (7) red 58
59 (7) green 59 | 59 (7) yellow 59 | 59 (7) red 59
60 (7) green 60 | 60 (7) yellow 60 | 60 (7) red 60
61 (7) green 61 | 61 (7) yellow 61 | 61 (7) red 61
62 (7) green 62 | 62 (7) yellow 62 | 62 (7) red 62
63 (7) green 63 | 63 (7) yellow 63 | 63 (7) red 63
 
PE1#
CLI Commands
The DSCP preserve introduces the following configuration commands.
mpls lsp-encap-dscp-preserve
Use this command to preserve DSCP for IP packets encapsulated into MPLS headers when dscp is remarked on access interface. By default, DSCP is not preserved for IP packets encapsulated into MPLS headers.
Use the no parameter with this to unconfigure DSCP preserve.
Note: In Qumran1 devices, DSCP preserve feature is not supported when the transport is Segment Routing.
Command Syntax
mpls lsp-encap-dscp-preserve
no mpls lsp-encap-dscp-preserve
Default
By default, mpls local packet handling is disabled
Parameters
None
Command Mode
Configure mode
Applicability
This command was introduced in OcNOS version 6.5.2 for Qumran 1. Extended the support for Qumran 2 in OcNOS version 6.5.3.
Examples
#configure terminal
(config)#mpls lsp-encap-dscp-preserve
(config)#commit
 
#configure terminal
(config)#no mpls lsp-encap-dscp-preserve
(config)#commit
DSCP Preserve Per-VRF
This method of configuration allows Network operator to enable or disable DSCP preserve for specific L3 VPN services in an edge router.
DSCP Preserve Per-VRF Characteristics
The MPLS cloud connects edge routers that provision L3 VPN services for multiple customers. Each edge router can support multiple VPN services, with different QoS (DSCP) remarking needs. Some customers may want to retain the DSCP field in the IP header, while others may need to update it as traffic enters the MPLS network. By default, the DSCP field in customer packets is not preserved when remarking occurs.
Prerequisites
The L3VPN service will operate seamlessly from end to end without any packet loss, using either OSPF or IS-IS as the IGP, with traffic profiles configured based on user-defined DSCP values.
Global level configuration for PE1:
config t
qos enable
!
qos profile dscp-to-queue profile1
dscp 24 queue 3 dscp 32
interface level configuration for PE1:
interface xe3
qos map-profile dscp-to-queue profile1
!
Configuration for DSCP Preserve Per-VRF
Topology
The topology illustrates the DSCP preserve feature, with PE1 and PE2 as the edge routers running L3VPN services, and the P router functioning as a transit router between them. PE1 receiving L3VPN and 6PE traffic with user-defined DSCP values, which can be either preserved or modified depending on the configurations applied at the ingress PE router. Multiple VRFs will be configured, each representing a different customer, where DSCP-preserve can be enabled or disabled at the per-VRF level.
Per- VRF DSCP Preserve
Configure DSCP Preserve and L3VPN Services on PE1 Router
1. Enable QoS Globally: This command is mandatory to configure any QoS-related settings. Without it, QoS configurations will not function.
PE1(config)# qos enable
PE1(config)# commit
2. (Optional) Configure DSCP Preserve globally for L3VPN and 6PE Traffic: This command provides control over remarking user-defined DSCP values. Enabling this will preserve the DSCP value throughout the network. If DSCP preserve to be enabled only for specific L3 VPN services, then this command need not to be configured.
PE1(config)#mpls lsp-encap-dscp-preserve
 
3. Configure DSCP Preserve globally for 6PE Traffic: This command provides control over remarking user-defined DSCP values. Enabling this will preserve the DSCP value throughout the network.
PE1(config)# mpls 6pe lsp-encap-dscp-preserve (enable | disable)
4. Configure QoS Profiles or Class-Map Profiles for remarking incoming DSCP values as follows:
Method 1: QoS Profile: Use the “dscp-to-queue” profile to remark the incoming DSCP value via a user-defined queue.
PE1(config)# qos profile dscp-to-queue dscp_profile1
PE1(config-ingress-dscp-map)# dscp 24 queue 3 dscp 32
PE1(config-ingress-dscp-map)# commit
PE1(config-ingress-dscp-map)# exit
PE1(config)# interface xe0.100
PE1(config-if)# qos map-profile dscp-to-queue dscp_profile1
PE1(config-if)# commit
PE1(config-if)# exit
Method 2: Class-Map/Policy-Map: Use the “match” criteria to remark the incoming DSCP value to a user-defined DSCP value.
PE1(config)# class-map type qos match-any class1
PE1(config-qos-match-any)# match dscp 24
PE1(config-qos-match-any)# commit
PE1(config-qos-match-any)# exit
PE1(config)# policy-map type qos pmap1
PE1(config-pmap-qos)# class type qos class1
PE1(config-pmap-qos)# set dscp 32
PE1(config-pmap-qos)# commit
PE1(config-pmap-qos)# exit
PE1(config)# interface xe0.100
PE1(config-if)# service-policy type qos input pmap1
PE1(config-if)# commit
5. Configure EXP Encapsulation on the Egress Interface: This profile modifies the incoming EXP value to the user-defined EXP value, which is then reflected in the MPLS EXP bit.
Example Config on Qumran 1:
PE1(config)# qos profile exp-encap exp_profile1
PE1(config-egress-exp-encap-map)# l3 dscp 32 exp 5
PE1(config-egress-exp-encap-map)# commit
PE1(config-egress-exp-encap-map)# exit
PE1(config)# interface ce46/3
PE1(config-if)# label-switching
PE1(config-if)# qos map-profile exp-encap exp_profile1
PE1(config-if)# commit
PE1(config-if)# exit
Example Config on Qumran 2:
PE1(config)# qos profile queue-to-exp exp_profile1
PE1(config-egress-queue-exp-map)# queue 3 color all exp 5
PE1(config-egress-queue-exp-map)# commit
PE1(config-egress-queue-exp-map)# exit
PE1(config)# interface ce46/3
PE1(config-if)# label-switching
PE1(config-if)# qos map-profile queue-to-exp exp_profile1
6. Define Multiple IP VRFs: Configure VRFs with appropriate Route Distinguisher (RD) and Route Target (RT) values to isolate IP address routing for multiple customers.
PE1(config)# ip vrf vrf100
PE1(config-vrf)# rd 1.1.1.1:100
PE1(config-vrf)# route-target both 100:100
PE1(config-vrf)# commit
 
PE1(config)# ip vrf vrf101
PE1(config-vrf)# rd 1.1.1.1:101
PE1(config-vrf)# route-target both 101:101
PE1(config-vrf)# commit
 
PE1(config)# ip vrf vrf102
PE1(config-vrf)# rd 1.1.1.1:102
PE1(config-vrf)# route-target both 102:102
PE1(config-vrf)# commit
7. Associate Interfaces to VRFs: After defining the VRFs, assign interfaces to them to allow the PE router to recognize which interfaces belong to each VRF.
PE1(config)# interface xe0.100
PE1(config-if)# encapsulation dot1q 100
PE1(config-if)# ip vrf forwarding vrf100
PE1(config-if)# ip address 100.100.100.1/24
PE1(config-if)# exit
PE1(config)# commit
 
PE1(config)# interface xe0.101
PE1(config-if)# encapsulation dot1q 101
PE1(config-if)# ip vrf forwarding vrf101
PE1(config-if)# ip address 100.100.101.1/24
PE1(config-if)# exit
PE1(config)# commit
 
PE1(config)# interface xe0.102
PE1(config-if)# encapsulation dot1q 102
PE1(config-if)# ip vrf forwarding vrf102
PE1(config-if)# ip address 100.100.102.1/24
PE1(config-if)# exit
PE1(config)# commit
 
PE1(config)# interface xe0.103
PE1(config-if)# encapsulation dot1q 103
PE1(config-if)# ipv6 address 1001::2/64
PE1(config-if)# exit
PE1(config)# commit
8. Configure CE Neighbor for VPN Using BGP: To provide a VPN service, configure the PE router to associate any routing information learned from a VPN customer interface with a particular VRF.
PE1(config)# router bgp 100
PE1(config)# bgp router-id 1.1.1.1
PE1(config)# neighbor 3.3.3.3 remote-as 100
PE1(config)# neighbor 3.3.3.3 update-source lo
PE1(config)# neighbor 3.3.3.3 advertisement-interval 0
PE1(config)# neighbor 1001::2 remote-as 100
PE1(config-router)# address-family ipv4 unicast
PE1(config-router-af)# redistribute connected
PE1(config-router-af)# exit-address-family
PE1(config-router)# address-family ipv4 vrf vrf100
PE1(config-router)# neighbor 100.100.100.2 remote-as 100
PE1(config-router-af)# neighbor 100.100.100.2 activate
PE1(config-router-af)# exit-address-family
PE1(config-router)# address-family ipv4 vrf vrf101
PE1(config-router)# neighbor 100.100.101.2 remote-as 100
PE1(config-router-af)# neighbor 100.100.101.2 activate
PE1(config-router-af)# exit-address-family
PE1(config-router)# address-family ipv4 vrf vrf102
PE1(config-router)# neighbor 100.100.102.2 remote-as 100
PE1(config-router-af)# neighbor 100.100.102.2 activate
PE1(config-router-af)# exit-address-family
PE1(config-router)# address-family ipv6 unicast
PE1(config-router-af)# neighbor 1001::2 activate
PE1(config-router-af)# exit-address-family
PE1(config-router)# commit
9. Now enable or disable dscp-preserve based on requirement globally and per-vrf level for L3VPN and 6PE traffic.
PE1(config)#ip vrf vrf100
PE1(config-vrf)#mpls lsp-encap-dscp-preserve enable
PE1(config)#ip vrf vrf101
PE1(config-vrf)#mpls lsp-encap-dscp-preserve disable
PE1(config)#ip vrf vrf102
PE1(config-vrf)#mpls lsp-encap-dscp-preserve enable
Running Configuration on PE1 Router is as follows:
PE1#show running-config
!
! Software version: UFI_S9600-56DX-OcNOS-SP-PLUS-6.5.3.80-Alpha 10/07/2024 14:38:44
!
! Last configuration change at 02:55:39 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile filter qos-ext enable
hardware-profile statistics voq-full-color enable
hardware-profile statistics cfm-ccm disable
hardware-profile port-config mode3
!
qos enable
qos profile dscp-to-queue dscp_profile1
dscp 24 queue 3 dscp 32
qos profile queue-to-exp exp_profile1
queue 3 color all exp 5
!
mpls lsp-encap-dscp-preserve
!
hostname PE1
port ce46 breakout 4X10g
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
ip vrf vrf100
rd 1.1.1.1:100
route-target both 100:100
!
router ldp
targeted-peer ipv4 3.3.3.3
exit-targeted-peer-mode
transport-address ipv4 1.1.1.1
!
router rsvp
!
interface ce46/3
load-interval 30
ip address 10.10.10.1/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 1.1.1.1/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
exit
!
router ospf 100
ospf router-id 1.1.1.1
network 1.1.1.1/32 area 0.0.0.0
network 10.10.10.0/24 area 0.0.0.0
!
router bgp 100
bgp router-id 1.1.1.1
neighbor 3.3.3.3 remote-as 100
neighbor 3.3.3.3 update-source lo
neighbor 3.3.3.3 advertisement-interval 0
!
address-family ipv4 unicast
network 1.1.1.1/32
exit-address-family
!
address-family vpnv4 unicast
neighbor 3.3.3.3 activate
exit-address-family
!
address-family ipv4 vrf vrf100
redistribute connected
neighbor 100.100.100.2 remote-as 100
neighbor 100.100.100.2 activate
exit-address-family
!
exit
!
line console 0
exec-timeout 0
!
!
end
 
PE1#
Running Configuration on P Router is as follows:
P#show running-config
!
! Software version: EC_AS5912-54X-OcNOS-SP-MPLS-6.6.0.104-Alpha 10/13/2024 21:38:49
!
! Last configuration change at 02:00:52 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile statistics ingress-acl enable
!
qos enable
!
hostname P
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
router ldp
transport-address ipv4 2.2.2.2
!
router rsvp
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 2.2.2.2/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe1
load-interval 30
ip address 10.10.10.2/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
interface xe9
load-interval 30
ip address 20.20.20.2/24
mtu 9216
label-switching
enable-ldp ipv4
enable-rsvp
!
exit
!
router ospf 100
ospf router-id 2.2.2.2
network 2.2.2.2/32 area 0.0.0.0
network 10.10.10.0/24 area 0.0.0.0
network 20.20.20.0/24 area 0.0.0.0
!
line console 0
exec-timeout 0
!
!
end
 
P#
Running Configuration on PE2 Router is as follows:
PE2#show running-config
!
! Software version: EC_AS7316-26XB-OcNOS-CSR-6.5.3.81-Alpha 10/08/2024 14:39:39
!
! Last configuration change at 07:33:31 UTC Tue Oct 15 2024 by root
!
feature netconf-ssh vrf management
feature netconf-tls vrf management
no feature netconf-ssh
no feature netconf-tls
service password-encryption
!
snmp-server enable traps link linkDown
snmp-server enable traps link linkUp
!
hardware-profile statistics ingress-acl enable
!
qos enable
!
hostname PE2
no ip domain-lookup
ip domain-lookup vrf management
tfo Disable
errdisable cause stp-bpdu-guard
no feature telnet vrf management
no feature telnet
feature ssh vrf management
no feature ssh
feature dns relay
ip dns relay
ipv6 dns relay
feature ntp vrf management
ntp enable vrf management
!
ip vrf management
!
ip vrf vrf100
rd 3.3.3.3:100
route-target both 100:100
!
router ldp
!
router rsvp
!
interface ce0
!
interface ce1
!
interface eth0
ip vrf forwarding management
ip address dhcp
!
interface lo
ip address 127.0.0.1/8
ip address 3.3.3.3/32 secondary
ipv6 address ::1/128
!
interface lo.management
ip vrf forwarding management
ip address 127.0.0.1/8
ipv6 address ::1/128
!
interface xe4.100
encapsulation dot1q 100
load-interval 30
ip vrf forwarding vrf100
ip address 200.200.200.1/24
mtu 9216
!
interface xe9
load-interval 30
ip address 20.20.20.1/24
mtu 9216
label-switching
enable-ldp ipv4
!
exit
!
router ospf 100
ospf router-id 3.3.3.3
network 3.3.3.3/32 area 0.0.0.0
network 20.20.20.0/24 area 0.0.0.0
!
router bgp 100
bgp router-id 3.3.3.3
neighbor 1.1.1.1 remote-as 100
neighbor 1.1.1.1 update-source lo
neighbor 1.1.1.1 advertisement-interval 0
!
address-family ipv4 unicast
network 1.1.1.1/32
exit-address-family
!
address-family vpnv4 unicast
neighbor 1.1.1.1 activate
exit-address-family
!
address-family ipv4 vrf vrf100
redistribute connected
neighbor 200.200.200.2 remote-as 100
neighbor 200.200.200.2 activate
exit-address-family
!
exit
!
line console 0
exec-timeout 0
!
!
end
PE2#
 
Validation
PE1#show ip ospf neighbor
Total number of full neighbors: 1
OSPF process 100 VRF(default):
Neighbor ID Pri State Dead Time Address Interface Instance ID
2.2.2.2 1 Full/DR 00:00:37 10.10.10.2 ce46/3 0
PE1#
 
 
PE1#sh ip vrf
VRF management, VRF ID: 1, FIB ID 1
MPLS DSCP Preserve Enabled (global)
Router ID: 10.12.96.29 (automatic)
Interfaces:
eth0
lo.management
!
VRF vrf100, VRF ID: 2, FIB ID 2
MPLS DSCP Preserve Enabled (global)
Router ID: 100.100.100.1 (automatic)
Interfaces:
lo.vrf100
xe0.100
!
Total Number of configured IP VRF's: 2
Total Number of all VRF's: 3
 
Name Default RD
management not set
vrf100 1.1.1.1:100
PE1#
 
PE1#show ip bgp summary
BGP router identifier 100.100.100.1, local AS number 100
BGP VRF vrf100 Route Distinguisher: 1.1.1.1:100
BGP table version is 5
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
100.100.100.2 4 100 116 131 5 0 0 00:01:06 10
 
Total number of neighbors 1
 
Total number of Established sessions 1
PE1#
 
 
PE1#show ip bgp vpnv4 all summary
BGP router identifier 1.1.1.1, local AS number 100
BGP table version is 3
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
3.3.3.3 4 100 139 141 2 0 0 00:00:28 1
 
Total number of neighbors 1
 
Total number of Established sessions 1
 
BGP VRF vrf100 Route Distinguisher: 1.1.1.1:100
BGP table version is 5
1 BGP AS-PATH entries
0 BGP community entries
 
Neighbor V AS MsgRcv MsgSen TblVer InQ OutQ Up/Down State/PfxRcd Desc
100.100.100.2 4 100 116 131 5 0 0 00:01:12 10
 
Total number of neighbors 1
 
Total number of Established sessions 1
PE1#
 
PE1#show interface counters rate mbps
+-------------------+--------------+-------------+--------------+-------------+
| Interface | Rx mbps | Rx pps | Tx mbps | Tx pps |
+-------------------+--------------+-------------+--------------+-------------+
ce46/3 0.00 0 10.36 9810
xe0 10.21 9969 0.00 0
xe0.100 10.25 10007 0.00 0
PE1#
 
PE1#show interface ce46/3 counters queue-stats
E - Egress, I - Ingress, Q-Size is in bytes
+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
| Queue/Class-map | Q-Size | Tx pkts | Tx bytes | Dropped pkts | Dropped bytes |
+--------------------+--------+-----------------+-------------------+-----------------+-------------------+
q0 (E) 12499968 0 0 0 0
q1 (E) 12499968 0 0 0 0
q2 (E) 12499968 0 0 0 0
q3 (E) 12499968 7931421 872455900 0 0
q4 (E) 12499968 0 0 0 0
q5 (E) 12499968 0 0 0 0
q6 (E) 12499968 377 30275 0 0
q7 (E) 12499968 252 14180 0 0
 
PE1#
 
 
Once the end to end traffic is verified, capture the packet on egress interface of the ingress node. Below is the example packet capture.
Below snapshot is the decoded output of the packet capture. Here we can see that EXP bit is 4 and preserved DSCP value is 24.
 
PE1#show qos-profile type dscp-to-queue dscp_profile1
profile name: dscp_profile1
profile type: dscp-to-queue
profile attached to 1 instances
configured mapping:
dscp 24 queue 3 dscp 32
Detailed mapping:
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP
| | | (TC) | | | | (TC) | | | | (TC) | | | | (TC)
-------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+-----------
0 0 green 0 (0) | 16 2 green 16 (2) | 32 4 green 32 (4) | 48 6 green 48 (6)
1 0 green 1 (0) | 17 2 green 17 (2) | 33 4 green 33 (4) | 49 6 green 49 (6)
2 0 green 2 (0) | 18 2 green 18 (2) | 34 4 green 34 (4) | 50 6 green 50 (6)
3 0 green 3 (0) | 19 2 green 19 (2) | 35 4 green 35 (4) | 51 6 green 51 (6)
4 0 green 4 (0) | 20 2 yellow 20 (2) | 36 4 yellow 36 (4) | 52 6 green 52 (6)
5 0 green 5 (0) | 21 2 green 21 (2) | 37 4 green 37 (4) | 53 6 green 53 (6)
6 0 green 6 (0) | 22 2 yellow 22 (2) | 38 4 yellow 38 (4) | 54 6 green 54 (6)
7 0 green 7 (0) | 23 2 green 23 (2) | 39 4 green 39 (4) | 55 6 green 55 (6)
8 1 green 8 (1) | 24 3 green 32 (4) | 40 5 green 40 (5) | 56 7 green 56 (7)
9 1 green 9 (1) | 25 3 green 25 (3) | 41 5 green 41 (5) | 57 7 green 57 (7)
10 1 green 10 (1) | 26 3 green 26 (3) | 42 5 green 42 (5) | 58 7 green 58 (7)
11 1 green 11 (1) | 27 3 green 27 (3) | 43 5 green 43 (5) | 59 7 green 59 (7)
12 1 yellow 12 (1) | 28 3 yellow 28 (3) | 44 5 green 44 (5) | 60 7 green 60 (7)
13 1 green 13 (1) | 29 3 green 29 (3) | 45 5 green 45 (5) | 61 7 green 61 (7)
14 1 yellow 14 (1) | 30 3 yellow 30 (3) | 46 5 green 46 (5) | 62 7 green 62 (7)
15 1 green 15 (1) | 31 3 green 31 (3) | 47 5 green 47 (5) | 63 7 green 63 (7)
 
PE1#
 
 
 
 
PE1#show qos-profile interface ce46/3
profile name: default
profile type: dscp-to-queue (Ingress)
mapping:
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-------+--------------------------- | -------+--------------------------- | -------+--------------------------- | -------+----------------------------
DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP| DSCP | TC | Color |remark DSCP
| | | (TC) | | | | (TC) | | | | (TC) | | | | (TC)
-------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+---------- | -------+-------+--------+-----------
0 0 green 0 (0) | 16 2 green 16 (2) | 32 4 green 32 (4) | 48 6 green 48 (6)
1 0 green 1 (0) | 17 2 green 17 (2) | 33 4 green 33 (4) | 49 6 green 49 (6)
2 0 green 2 (0) | 18 2 green 18 (2) | 34 4 green 34 (4) | 50 6 green 50 (6)
3 0 green 3 (0) | 19 2 green 19 (2) | 35 4 green 35 (4) | 51 6 green 51 (6)
4 0 green 4 (0) | 20 2 yellow 20 (2) | 36 4 yellow 36 (4) | 52 6 green 52 (6)
5 0 green 5 (0) | 21 2 green 21 (2) | 37 4 green 37 (4) | 53 6 green 53 (6)
6 0 green 6 (0) | 22 2 yellow 22 (2) | 38 4 yellow 38 (4) | 54 6 green 54 (6)
7 0 green 7 (0) | 23 2 green 23 (2) | 39 4 green 39 (4) | 55 6 green 55 (6)
8 1 green 8 (1) | 24 3 green 24 (3) | 40 5 green 40 (5) | 56 7 green 56 (7)
9 1 green 9 (1) | 25 3 green 25 (3) | 41 5 green 41 (5) | 57 7 green 57 (7)
10 1 green 10 (1) | 26 3 green 26 (3) | 42 5 green 42 (5) | 58 7 green 58 (7)
11 1 green 11 (1) | 27 3 green 27 (3) | 43 5 green 43 (5) | 59 7 green 59 (7)
12 1 yellow 12 (1) | 28 3 yellow 28 (3) | 44 5 green 44 (5) | 60 7 green 60 (7)
13 1 green 13 (1) | 29 3 green 29 (3) | 45 5 green 45 (5) | 61 7 green 61 (7)
14 1 yellow 14 (1) | 30 3 yellow 30 (3) | 46 5 green 46 (5) | 62 7 green 62 (7)
15 1 green 15 (1) | 31 3 green 31 (3) | 47 5 green 47 (5) | 63 7 green 63 (7)
 
profile name: default
profile type: dscp-to-dscp (Egress)
Status: Inactive
mapping:
-----------------------+---------- | -----------------------+---------- | -----------------------+----------
INPUT | OUTPUT | INPUT | OUTPUT | INPUT | OUTPUT
-----------------------+---------- | -----------------------+---------- | -----------------------+----------
Remark DSCP | Color | Out DSCP | Remark DSCP | Color | Out DSCP | Remark DSCP | Color | Out DSCP
(TC) | | | (TC) | | | (TC) | |
-------------+---------+---------- | -------------+---------+---------- | -------------+---------+----------
0 (0) green 0 | 0 (0) yellow 0 | 0 (0) red 0
1 (0) green 1 | 1 (0) yellow 1 | 1 (0) red 1
2 (0) green 2 | 2 (0) yellow 2 | 2 (0) red 2
3 (0) green 3 | 3 (0) yellow 3 | 3 (0) red 3
4 (0) green 4 | 4 (0) yellow 4 | 4 (0) red 4
5 (0) green 5 | 5 (0) yellow 5 | 5 (0) red 5
6 (0) green 6 | 6 (0) yellow 6 | 6 (0) red 6
7 (0) green 7 | 7 (0) yellow 7 | 7 (0) red 7
8 (1) green 8 | 8 (1) yellow 8 | 8 (1) red 8
9 (1) green 9 | 9 (1) yellow 9 | 9 (1) red 9
10 (1) green 10 | 10 (1) yellow 12 | 10 (1) red 14
11 (1) green 11 | 11 (1) yellow 11 | 11 (1) red 11
12 (1) green 12 | 12 (1) yellow 12 | 12 (1) red 14
13 (1) green 13 | 13 (1) yellow 13 | 13 (1) red 13
14 (1) green 14 | 14 (1) yellow 14 | 14 (1) red 14
15 (1) green 15 | 15 (1) yellow 15 | 15 (1) red 15
16 (2) green 16 | 16 (2) yellow 16 | 16 (2) red 16
17 (2) green 17 | 17 (2) yellow 17 | 17 (2) red 17
18 (2) green 18 | 18 (2) yellow 20 | 18 (2) red 22
19 (2) green 19 | 19 (2) yellow 19 | 19 (2) red 19
20 (2) green 20 | 20 (2) yellow 20 | 20 (2) red 22
21 (2) green 21 | 21 (2) yellow 21 | 21 (2) red 21
22 (2) green 22 | 22 (2) yellow 22 | 22 (2) red 22
23 (2) green 23 | 23 (2) yellow 23 | 23 (2) red 23
24 (3) green 24 | 24 (3) yellow 24 | 24 (3) red 24
25 (3) green 25 | 25 (3) yellow 25 | 25 (3) red 25
26 (3) green 26 | 26 (3) yellow 28 | 26 (3) red 30
27 (3) green 27 | 27 (3) yellow 27 | 27 (3) red 27
28 (3) green 28 | 28 (3) yellow 28 | 28 (3) red 30
29 (3) green 29 | 29 (3) yellow 29 | 29 (3) red 29
30 (3) green 30 | 30 (3) yellow 30 | 30 (3) red 30
31 (3) green 31 | 31 (3) yellow 31 | 31 (3) red 31
32 (4) green 32 | 32 (4) yellow 32 | 32 (4) red 32
33 (4) green 33 | 33 (4) yellow 33 | 33 (4) red 33
34 (4) green 34 | 34 (4) yellow 36 | 34 (4) red 38
35 (4) green 35 | 35 (4) yellow 35 | 35 (4) red 35
36 (4) green 36 | 36 (4) yellow 36 | 36 (4) red 38
37 (4) green 37 | 37 (4) yellow 37 | 37 (4) red 37
38 (4) green 38 | 38 (4) yellow 38 | 38 (4) red 38
39 (4) green 39 | 39 (4) yellow 39 | 39 (4) red 39
40 (5) green 40 | 40 (5) yellow 40 | 40 (5) red 40
41 (5) green 41 | 41 (5) yellow 41 | 41 (5) red 41
42 (5) green 42 | 42 (5) yellow 42 | 42 (5) red 42
43 (5) green 43 | 43 (5) yellow 43 | 43 (5) red 43
44 (5) green 44 | 44 (5) yellow 44 | 44 (5) red 44
45 (5) green 45 | 45 (5) yellow 45 | 45 (5) red 45
46 (5) green 46 | 46 (5) yellow 46 | 46 (5) red 46
47 (5) green 47 | 47 (5) yellow 47 | 47 (5) red 47
48 (6) green 48 | 48 (6) yellow 48 | 48 (6) red 48
49 (6) green 49 | 49 (6) yellow 49 | 49 (6) red 49
50 (6) green 50 | 50 (6) yellow 50 | 50 (6) red 50
51 (6) green 51 | 51 (6) yellow 51 | 51 (6) red 51
52 (6) green 52 | 52 (6) yellow 52 | 52 (6) red 52
53 (6) green 53 | 53 (6) yellow 53 | 53 (6) red 53
54 (6) green 54 | 54 (6) yellow 54 | 54 (6) red 54
55 (6) green 55 | 55 (6) yellow 55 | 55 (6) red 55
56 (7) green 56 | 56 (7) yellow 56 | 56 (7) red 56
57 (7) green 57 | 57 (7) yellow 57 | 57 (7) red 57
58 (7) green 58 | 58 (7) yellow 58 | 58 (7) red 58
59 (7) green 59 | 59 (7) yellow 59 | 59 (7) red 59
60 (7) green 60 | 60 (7) yellow 60 | 60 (7) red 60
61 (7) green 61 | 61 (7) yellow 61 | 61 (7) red 61
62 (7) green 62 | 62 (7) yellow 62 | 62 (7) red 62
63 (7) green 63 | 63 (7) yellow 63 | 63 (7) red 63
 
PE1#
CLI Commands
The Per-VRF DSCP preserve introduces the following configuration commands.
mpls lsp-encap-dscp-preserve
Use this command to preserve DSCP for IP packets encapsulated into MPLS headers when DSCP is remarked on access interface. By default, DSCP is not preserved for IP packets encapsulated into MPLS headers.
Use the no parameter with this to unconfigure DSCP preserve.
Note: In Qumran1 devices, DSCP preserve feature is not supported when the transport is Segment Routing.
Command Syntax
mpls lsp-encap-dscp-preserve (enable | disable)
no mpls lsp-encap-dscp-preserve
Parameters
 
Default
disable
Command Mode
VRF mode
Applicability
Introduced in OcNOS version 6.5.3.
Example
Example for enabling or disabling DSCP preserve based on requirement per-vrf level:
#configure terminal
(config)#ip vrf vrf100
(config-vrf)#mpls lsp-encap-dscp-preserve (enable | disable)
(config-vrf)#commit
(config-vrf)#exit
Example for unconfiguring DSCP preserve:
#configure terminal
(config)#ip vrf vrf100
(config-vrf)#no mpls lsp-encap-dscp-preserve
(config-vrf)#commit
(config-vrf)#exit
mpls 6pe lsp-encap-dscp-preserve
Use this command to preserve DSCP for IP packets encapsulated into MPLS headers when DSCP is remarked on access interface. By default, DSCP is not preserved for IP packets encapsulated into MPLS headers.
Use the no parameter with this to unconfigure DSCP preserve.
Note: In Qumran1 devices, DSCP preserve feature is not supported when the transport is Segment Routing.
Command Syntax
mpls 6pe lsp-encap-dscp-preserve (enable | disable)
no mpls 6pe lsp-encap-dscp-preserve
Parameters
 
Default
disable
Command Mode
Config mode
Applicability
Introduced in OcNOS version 6.5.3.
Example
Example for enabling or disabling DSCP preserve for 6PE services:
#configure terminal
(config)#mpls 6pe lsp-encap-dscp-preserve (enable | disable)
(config)#commit
(config)#exit
Example for unconfiguring DSCP preserve for 6PE services:
#configure terminal
(config)#no mpls 6pe lsp-encap-dscp-preserve
(config)#commit
(config)#exit
Glossary
The following provides definitions for key terms or abbreviations and their meanings used throughout this document:
 
Key Terms/Acronym
Description
DSCP
Differentiated Services Code Point (DSCP) is a 6-bit value used to classify the priority of Layer-3 packets upon entry
into a network. DSCP values range from 0 to 63, 63 being the highest priority, 0 being best-effort traffic.
IS-IS
Intermediate System to Intermediate System (IS-IS)
An Interior Gateway Protocol (IGP) that floods link state information throughout a network of routers. Each IS-IS router independently builds a database of the network's topology, aggregating the flooded network information. A Routing Information Base (RIB) is calculated from the database by constructing a shortest path tree (SPT).
MPLS
Multi-Protocol Label Switching (MPLS)
A method for forwarding packets through a network. MPLS operates between the traditional definitions of Layer 2 (L2) and Layer 3 (L3).
QoS
Quality of Service (QoS)
The ability to guarantee the delivery, control the bandwidth, set priorities for specific network traffic, and provide an appropriate level of security. QoS provides a level of predictability and control beyond the best effort delivery that a device provides by default.