cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
802
Views
0
Helpful
3
Replies

Classification based on MPLS EXP on egress

j.hoffmann
Level 1
Level 1

Hi,

 

I have a problem in my small PBB-EVPN lab installation.

Two PE routers (ASR9904) are directly connected via a 100GE link. On these two routers, a full and correct operating PBB-EVPN configuration is implemented.

The ingress ports on the access side receive 802.1q- or Q-in-Q-tagged ethernet frames with 802.1p CoS marking in 5 different classes.

Class-maps are defined as follows (example CoS 4):

 

class-map match-any COS4
match cos 4
match mpls experimental topmost 4
match qos-group 4
end-class-map

 

The ingress policy:

policy-map UNI-N_INGRESS
class COS6
set mpls experimental imposition 6
!
class COS5
set mpls experimental imposition 5
!
class COS4
set mpls experimental imposition 4
!
class COS2
set mpls experimental imposition 2
!
class COS1
set mpls experimental imposition 1
!
class COS0
set mpls experimental imposition 0
!
class class-default
!
end-policy-map

 

This policy reflects the default behaviour (mapping CoS to MPLS EXP), but I have configured this for better readability of the configuration.

On the NNI interface (the link to the other PE), an egress policy is configured for class-based queuing.

On the other PE I've configured an ingress "test policy" to check the correct MPLS EXP marking. 

All is ok at this point. The classification counters in all classes showing the right bandwidth usages (like sent from the tester) in each class.

But the classification counter on the egress interface of this router (facing the non-MPLS access device) shows the whole traffic in the class-default because there are no matches in the different classes.

What may be wrong in my installation?

Two check some possibilities, I've configured explicit-null label to preserve the MPLS shim header with the EXP bits inside.

But there is no difference. Or I have configured qos-groups on the ingress policy for each class. But also the qos-group didn't match on the egress policy.

It would be great if I could get some helpful advice to break the loop in my mind  :-)

 

Regards,

Jens

 

 

3 Replies 3

j.hoffmann
Level 1
Level 1

A little supplement to be more precise:

 

The ingress policy receiving MPLS labeled packets indicates the correct labeled traffic in each class.

The classification counters  increases and the bandwidth usage in each class is correct, and the configured action "set qos-group [x]" must be performed correct in my opinion.

But in the PE egress policy there are matches only in the class-default instead to match on the qos-groups in the more specific classes.

Hello Jens,

can you post the configuration of your lab ?

All the relevant parts are enough.

Can 802.1Q Vlan tagged traffic from L2 CE1 reach L2 CE2 ?

if so can you check with a policy-map what are the settings of 802.1p CoS on received frames on L2 CE2?

I wonder if you have a real issue or it is a limitation on features on the PE node on egress policy to the L2 CE2 node.

 

Hope to help

Giuseppe

 

Hello Giuseppe,

in the current configuration, all incoming VLAN-tags are popped off on ingress. 

 

Ingress-PE:
#########################################################################

Ingress-Port
============
interface TenGigE0/0/0/5
cdp
service-policy input UNI-N_INGRESS
service-policy output UNI-N_EGRESS
!
interface TenGigE0/0/0/5.21 l2transport
encapsulation dot1q 21
rewrite ingress tag pop 1 symmetric
!
interface TenGigE0/0/0/5.199 l2transport
encapsulation dot1q 199
rewrite ingress tag pop 1 symmetric
!

 

policy-map UNI-N_INGRESS
class COS6
set mpls experimental imposition 6
!
class COS5
set mpls experimental imposition 5
!
class COS4
set mpls experimental imposition 4
!
class COS2
set mpls experimental imposition 2
!
class COS1
set mpls experimental imposition 1
!
class class-default
!
end-policy-map
!


Egress-Port
============
interface Bundle-Ether100
description "100Gbps_to_R1"
bfd address-family ipv4 timers nbr-unconfig 3600
bfd address-family ipv4 multiplier 3
bfd address-family ipv4 destination 192.168.12.0
bfd address-family ipv4 fast-detect
bfd address-family ipv4 minimum-interval 15
mtu 9192
service-policy output NNI-N_EGRESS
ipv4 address 192.168.12.1 255.255.255.254
load-interval 30


policy-map NNI-N_EGRESS
class EXP6
bandwidth remaining percent 1
!
class EXP5
priority level 1
police rate percent 10
exceed-action drop
!
!
class EXP4
bandwidth remaining percent 40
!
class EXP2
bandwidth remaining percent 30
!
class EXP1
bandwidth remaining percent 20
!
class class-default
!
end-policy-map
!

=================================================

Egress-PE:
#########################################################################

Ingress-Port
============
interface Bundle-Ether100
description R2 BE100
bfd address-family ipv4 timers nbr-unconfig 3600
bfd address-family ipv4 multiplier 3
bfd address-family ipv4 destination 192.168.12.1
bfd address-family ipv4 fast-detect
bfd address-family ipv4 minimum-interval 15
mtu 9192
service-policy input NNI-N_INGRESS
service-policy output NNI-N_EGRESS
ipv4 address 192.168.12.0 255.255.255.254
load-interval 30


policy-map NNI-N_INGRESS
class EXP6
set qos-group 6
!
class EXP5
set qos-group 5
!
class EXP4
set qos-group 4
!
class EXP2
set qos-group 2
!
class EXP1
set qos-group 1
!
class class-default
!
end-policy-map
!

On this port, the Ingress Policy indicates incoming traffic in different Traffic classes like injected on
the ingress PE.

 

RP/0/RSP0/CPU0:R1#sh policy-map interface bundle-ether 100 input
Fri Aug 23 13:52:36.397 CET

Bundle-Ether100 input: NNI-N_INGRESS

Class EXP6
Classification statistics (packets/bytes) (rate - kbps)
Matched : 180/15153 0
Transmitted : N/A
Total Dropped : N/A
Class EXP5
Classification statistics (packets/bytes) (rate - kbps)
Matched : 747166/410941300 42077
Transmitted : N/A
Total Dropped : N/A
Class EXP4
Classification statistics (packets/bytes) (rate - kbps)
Matched : 2910192/1600605600 165447
Transmitted : N/A
Total Dropped : N/A
Class EXP2
Classification statistics (packets/bytes) (rate - kbps)
Matched : 2183748/1201061400 124084
Transmitted : N/A
Total Dropped : N/A
Class EXP1
Classification statistics (packets/bytes) (rate - kbps)
Matched : 1457278/801502900 82723
Transmitted : N/A
Total Dropped : N/A
Class class-default
Classification statistics (packets/bytes) (rate - kbps)
Matched : 0/0 0
Transmitted : N/A
Total Dropped : N/A

But the "set qos-group" command doesn't seem to operate correctly, because the egress policy on the egress port of the PE
shows no matches in different classes. Instead, all the traffic is assigned to class-default.

 

Egress-Port (to Satellite ASR9000v, but the problem occurs also on "legacy" ports)
============
interface GigabitEthernet100/0/0/2
description UNI-N R5 gig 0/0/1 ASR920 
cdp
mtu 9022
service-policy output UNI-N_EGRESS
negotiation auto
load-interval 30
ethernet oam
link-monitor
monitoring
!
!
!
interface GigabitEthernet100/0/0/2.199 l2transport
encapsulation dot1q 199
rewrite ingress tag pop 1 symmetric
!
interface GigabitEthernet100/0/0/2.206 l2transport
encapsulation dot1q 206
rewrite ingress tag pop 1 symmetric


policy-map UNI-N_EGRESS
class QOS5
priority level 1
police rate percent 15
exceed-action drop
!
!
class QOS6
bandwidth remaining ratio 1
set cos 6
!
class QOS4
bandwidth remaining ratio 4
set cos 4
!
class QOS2
bandwidth remaining ratio 3
set cos 2
!
class QOS1
bandwidth remaining ratio 2
set cos 1
!
class class-default
!
end-policy-map
!

 

It would be great if you can give me any helpful advice to solve my problem.

 

Regards,

Jens