cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2716
Views
5
Helpful
31
Replies

MPLS QoS with Uniform tunnel mode

ty.chan007
Level 1
Level 1

Hi, I am trying to test all mode of MPLS QoS tunnle mode like uniform,etc.

My diagram is as below:

CE01 --access--> ME4900 --trunk--> PE01 --ldp--> P01 --ldp--> P02 --ldp--> PE02 --access--> CE02

All traffic from CE01 are marked with DSCP AF31 an send to PE01. But PE01 can not see packet with AF31.

On ME4900, i just config access port and trunk port only. Nothing else were config on ME4900.

What should be the problem? or Does ME4900 reset DSCP value to 0 by default? if yes, how to fix it?

31 Replies 31

Hi Varma,

It work now. I can see DSCP AF31 on PE01 and also on CE02 after enable "mls qos trust dscp" on all related switch ports like trunk port connecting to PE and access port connecting to CE. Many thanks.

But without implementing Unform mode (copy EXP to QoS group on Ingress interface of PE02 facing to Core and copy QoS group to IPP on egress interface of PE02 facing to CE), i still can see DSCP is passing from end-to-end. Why??

Regards,

chanty

Hi Chanty

Glad to hear that it works now

As I have said in initial replies the default nature of MPLS VPN is to work in Short PIPE mode in a way such that the DSCP value of the IP Packet arriving at the Ingress Interfcae of Ingress PE (PE01) is preserved all across the MPLS Backbone and the IP Packet is sent out via the Egress PE's (Here PE02) egress interface unchanged..

This is becuase in the MPLS domain QoS is applied based on EXP bits of MPLS Label which by default works as below:

IP2MPLS Transition

The DSCP value of incoming packet is copied to the MPLS EXP

MPLS2MPLS

The Top MPLS Label is swapped preserving the MPLS EXP value

MPLS2IP Transition

The MPLS Lable is popped and the underlying IP Packet with original DSCP is transmitted. The EXP value is not copied down to the IP DSCP..Can be done optionally via QoS groups though during MPLS2IP Transition in Uniform Mode to preserve the PHB of the IP Packet in accordance with the treatement given in the Service Provider's MPLS Backbone.

Hope this helps to answer your query.

Regards

Varma

Hi Varma,

As i read in a Cisco document, Uniform mode is the default operation of MPLS VPN to preserver QoS value and the EXP bit is actually copied to IPP at the far end PE as below flow. Any idea?

Hi Chanty

I don't think Uniform Mode can be the default mode of operation in MPLS_VPN_QoS as explained before duirng MPLS2IP Transition the EXP is not carried down to the IPP. That needs to be done manually via QoS Groups..

You can test the same by setting the EXP of the MPLS Packet during IP2MPLS Transition to anything other than the IPP of the incoming Packet at the ingress and observe at the egress interface that the original IPP is being transmitted irrespective of the fact the the MPLS EXP was altered towards the core.

Regards

Varma

Hi Varma,

I am doing it now and will feed back.

Regards,

chanty

Hi Varma,

I try to change but not allow as below:

policy-map CHANGE_EXP

  class class-default

   set mpls experimental topmost 6

P02(config-if)#service-policy input CHANGE_EXP

set mpls exp topmost cannot be configured on input direction for this interface

Configuration failed!

P02(config-if)#service-policy out CHANGE_EXP 

set mpls exp topmost cannot be configured on output direction for this interface

Configuration failed!

Any idea?

Hi Chanty

Is this the Core-MPLS enabled interface where you are trying to alter the EXP or CE-Facing Interface ?

We need to set the EXP on the CE-Facing Interface in Incoming Direction or set the EXP on the Core-Facing Interface in Outgoing direction.

Regards

Varma

Hi Varma,

Let see the diagram again to better understand:

CE01 --access--> ME4900 --trunk--> PE01 --ldp--> P01 --ldp--> P02 --ldp--> PE02 --access--> CE02

Below policy applied to interface on PE02 facing to P02:

policy-map CHANGE_EXP

class class-default

  set mpls experimental topmost 4

interface GigabitEthernet0/0

desc CONNECT P02

mtu 1600

ip address 111.90.180.106 255.255.255.252

ip mtu 1500

duplex auto

speed auto

media-type rj45

mpls ip

service-policy output CHANGE_EXP

To verify whether EXP was changed by the policy, I did as below on PE01:

policy-map QOSGROUP2IPP

class class-default

  set precedence qos-group

policy-map EXP2QOSGROUP

class class-default

  set qos-group mpls experimental topmost

interface GigabitEthernet0/1

description CONNECT P01

mtu 1600

ip address 111.90.180.93 255.255.255.252

ip mtu 1500

duplex full

speed 1000

media-type sfp

negotiation auto

mpls ip

!

service-policy input EXP2QOSGROUP

interface GigabitEthernet0/3.1414

description CONNECT CE01

encapsulation dot1Q 1414

ip vrf forwarding Customer_A

ip address 10.10.10.1 255.255.255.0

service-policy output QOSGROUP2IPP

end

And then i turn on wireshark on a PC under CE01 to capture the packet. But I still DSCP AF31 which set by CE02.

Am i doing something wrong?

Regards,

chanty


Hi Chanty

The config seems all correct..What is the EXP value showing on PE01 int Gi0/1 coming from Core Side

What is the IPP value on the egress interface of PE01 towards CE01 int Gi0/3.1414

show policy-map int gi0/1

show policy-map int gi0/3/1414

Regards

Varma

Hi Varma,

Below is the result:

PE01#sh policy-map interface g0/1

GigabitEthernet0/1

  Service-policy input: EXP2QOSGROUP

    Class-map: class-default (match-any)

      7823573 packets, 5157126670 bytes

      5 minute offered rate 11345000 bps, drop rate 0 bps

      Match: any

      QoS Set

        qos-group mpls experimental topmost

          Packets marked 2235494

PE01#sh policy-map interface g0/3.1414

GigabitEthernet0/3.1414

  Service-policy output: QOSGROUP2IPP

    Class-map: class-default (match-any)

      3200 packets, 1589971 bytes

      5 minute offered rate 1000 bps, drop rate 0 bps

      Match: any

      QoS Set

        precedence qos-group

          Packets marked 2886

How to check for below questions:

1. What is the EXP value showing on PE01 int Gi0/1 coming from Core Side

2. What is the IPP value on the egress interface of PE01 towards CE01 int Gi0/3.1414

Regards,

chanty

Hi Chanty

Can you try using simple policy-maps without using QoS_Groups on the PE02 Ingress Interface and PE01 Egress Interface ie

On PE02 CE02-Facing Interface just set the mpls exp to 4 . On PE02 towards Core-Facing Interface apply Policy-Map to match EXP4 using Class Map EXP4. On PE01 use Policy-Map outwards towards CE01 to match IPP4 and IPP3 and see whether now you see IPP4 or IPP3 outwards towards CE01..

PE02

class-map match-all EXP4

match mpls experimental topmost 4

!

policy-map CHANGE_EXP

class class-default

  set mpls experimental topmost 4

!

policy-map MATCH_EXP

class EXP4

  !

interface GigabitEthernetX/Y

desc CONNECT CE02

service-policy input CHANGE_EXP

!

interface GigabitEthernet0/0

desc CONNECT P02

service-policy output MATCH_EXP

PE01

class-map match-all IPP3

match ip dscp af31

class-map match-all IPP4

match ip dscp af41

!

policy-map MATCH_IPP

class IPP4

class IPP3

!

interface GigabitEthernet0/3.1414

description CONNECT CE01

service-policy output MATCH_IPP

Then on PE02 take snapshot for

show policy-map interface Gi0/0

show policy-map intercae "CE02_Interface"

Then on PE01 take snapshot for

show policy-map interface Gi0/3.1414

Regards

Varma

Hi Varma,

Traceroute from PE02 to the PC shows that EXP is set but is changed after it reachs PE01. It looks like topmost label was popped by PHP on P01. I think to resolve the issue i need to "mpls ldp explicit-null" on PE01. any idea?

Regards,

chanty

Hi Chanty

Disabling PHP on PE01 will not change the default behaviour of MPLS2IP Transition ( ie EXP being not carried down to IPP)

UHP is  being used in scenarios whereby we need to determine the PHB of the Egress Interface as derived from the changes made in the MPLS EXP bit within MPLS Core..e.g Carrer Supporting Carrer Scenarios.

Regards

Varma

Hi Varma,

Below are the result on PE02 (G0/0 facing to Core, G0/1 facing to CE02).

PE02#sh policy-map interface g0/0

GigabitEthernet0/0

  Service-policy output: MATCH_EXP

    Class-map: EXP4 (match-all)

      0 packets, 0 bytes

      5 minute offered rate 0 bps

      Match: mpls experimental topmost 4

    Class-map: class-default (match-any)

      5287 packets, 1906540 bytes

      5 minute offered rate 8000 bps, drop rate 0 bps

      Match: any

PE02#sh policy-map int g0/1

GigabitEthernet0/1

  Service-policy input: CHANGE_EXP

    Class-map: class-default (match-any)

      2921 packets, 1447278 bytes

      5 minute offered rate 4000 bps, drop rate 0 bps

      Match: any

      QoS Set

        mpls experimental topmost 4

          Packets marked 0

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

Below is the result on PE01

PE01#sh policy-map interface g0/3.1414

GigabitEthernet0/3.1414

  Service-policy output: MATCH_IPP

    Class-map: IPP4 (match-all)

      0 packets, 0 bytes

      5 minute offered rate 0 bps

      Match: ip dscp af41 (34)

    Class-map: IPP3 (match-all)

      2194 packets, 1197924 bytes

      5 minute offered rate 4000 bps

      Match: ip dscp af31 (26)

    Class-map: class-default (match-any)

      237 packets, 18395 bytes

      5 minute offered rate 0 bps, drop rate 0 bps

      Match: any

Regards,

chanty

Hi Chanty

I see that we are unable to set the MPLS EXP to 4 at the PE02 router ..Now I realize that we are setting the mpls experimental topmost which is not working as label is being imposed here.

Can you change the CHANGE_EXP policy map as below and check

PE02

policy-map CHANGE_EXP

class class-default

  set mpls experimental imposition 4

Regards

Varma