Friday, May 15, 2026

Complete MPLS QoS Configuration Lab Part 2 | MPLS EXP Bits, QoS Groups, Uniform Mode & Traffic Policing

Complete MPLS QoS Configuration Lab Part 2 | MPLS EXP QoS Cisco IOS

Complete MPLS QoS Configuration Lab Part 2

In Part 1 we built the complete MPLS Layer 3 VPN backbone using:

  • OSPF
  • MPLS
  • LDP
  • MP-BGP
  • VRFs
  • PE-CE BGP Routing

Now in Part 2 we will implement MPLS QoS policies across the Service Provider backbone.

๐ŸŽฏ What You Will Learn

  • QoS marking using IP Precedence
  • MPLS EXP bit marking
  • Priority Queuing
  • Traffic Policing
  • MPLS EXP propagation
  • Pipe Mode vs Uniform Mode
  • QoS Group usage
  • PHP QoS handling
  • MPLS QoS verification

1. MPLS QoS Introduction

QoS stands for Quality of Service.

QoS allows network engineers to prioritize important traffic and limit low-priority traffic.

Inside MPLS networks, QoS decisions are usually based on:

  • IP Precedence
  • DSCP
  • MPLS EXP bits
  • QoS Groups

MPLS QoS Formula

$$ QoS = Classification + Marking + Queuing + Policing $$

MPLS labels contain 3 EXP bits which are commonly used for QoS marking.

EXP Bit Capacity

$$ 2^3 = 8 $$

Therefore MPLS EXP bits support values:

$$ 0-7 $$

2. Customer SLA Requirements

๐Ÿ“Œ Customer & Service Provider Agreement

  • Traffic with IP Precedence 5 must receive priority treatment
  • Priority bandwidth = 1 Mbps
  • Traffic with IP Precedence 3 must be policied to 256 kbps
  • SP Core internally uses EXP 4 and EXP 7

Bandwidth Calculation

$$ 1Mbps = 1000kbps $$

Priority bandwidth percentage:

$$ Priority = \frac{1Mbps}{10Mbps} \times 100 $$ $$ Priority = 10\% $$

3. Task 1 - Configure CE QoS Marking on R5

The CE router marks customer traffic before entering the MPLS cloud.

We classify:

  • Telnet Traffic
  • ICMP Traffic

QoS Classification Logic

$$ Traffic\\ Match \rightarrow QoS\\ Class $$

R5 QoS Configuration

R5

access-list 101 permit tcp any any eq 23
access-list 102 permit icmp any any

class-map CM-TELNET
 match access-group 101

class-map CM-ICMP
 match access-group 102

policy-map PM-QOS

 class CM-TELNET
  priority percent 10
  set ip precedence 5

 class CM-ICMP
  police 256000
  set ip precedence 3

interface E0/0
 service-policy output PM-QOS
Detailed Explanation

ACL 101 identifies Telnet traffic using TCP port 23.

ACL 102 identifies ICMP traffic.

The policy-map performs:

  • Priority Queuing for Telnet
  • Traffic policing for ICMP
  • IP Precedence marking
Expected QoS Output
R5#show policy-map interface e0/0

Class-map: CM-TELNET
 Priority: 10%

Class-map: CM-ICMP
 police 256000 bps

4. Task 2 - Copy CE Markings into MPLS EXP Bits

The PE router copies IP precedence into MPLS EXP bits.

MPLS EXP Imposition Formula

$$ IP\\ Precedence \rightarrow MPLS\\ EXP $$

R1 MPLS EXP Configuration

R1

class-map IP-PREC-3
 match ip precedence 3

class-map IP-PREC-5
 match ip precedence 5

policy-map SET-MPLS-EXP

 class IP-PREC-3
  set mpls experimental imposition 3

 class IP-PREC-5
  set mpls experimental imposition 5

interface E0/3
 service-policy input SET-MPLS-EXP
Why MPLS EXP Bits?

Inside the MPLS cloud:

  • Routers do not inspect IP headers
  • QoS decisions are based on labels
  • EXP bits carry QoS information

5. Task 3 - PE QoS Enforcement

R1 now uses EXP bits for QoS treatment.

R1 QoS Policy

R1

class-map MPLS-PREC-3
 match mpls experimental topmost 3

class-map MPLS-PREC-5
 match mpls experimental topmost 5

policy-map QOS-TO-R2

 class MPLS-PREC-3
  police 256000

 class MPLS-PREC-5
  priority percent 10

interface E0/0
 service-policy output QOS-TO-R2

Traffic Policing Formula

$$ If\\ Traffic > CIR $$

Then:

$$ Excess\\ Traffic = Dropped $$

Where:

$$ CIR = 256kbps $$

6. Task 4 - SP Core QoS Remarking

The Service Provider uses different internal EXP values:

  • EXP 4 = Policed Traffic
  • EXP 7 = Priority Traffic

R2 performs QoS remarking.

R2 EXP Remarking Configuration

R2

class-map MPLS-PREC-3
 match mpls experimental topmost 3

class-map MPLS-PREC-5
 match mpls experimental topmost 5

policy-map SET-MPLS-EXP

 class MPLS-PREC-3
  set mpls experimental topmost 4

 class MPLS-PREC-5
  set mpls experimental topmost 7

interface E0/0
 service-policy input SET-MPLS-EXP
Why Remark Traffic?

Service Providers often maintain:

  • Internal QoS standards
  • Core QoS consistency
  • Traffic engineering policies

7. Task 5 - Core QoS Enforcement on R2

Now the core router applies QoS treatment using new EXP values.

R2

class-map MPLS-PREC-4
 match mpls experimental topmost 4

class-map MPLS-PREC-7
 match mpls experimental topmost 7

policy-map QOS-TO-R3

 class MPLS-PREC-4
  police 256000

 class MPLS-PREC-7
  priority percent 10

interface E0/1
 service-policy output QOS-TO-R3

Priority Queue Formula

$$ Priority\\ Traffic < Reserved\\ Bandwidth $$

Ensures:

  • Low latency
  • Reduced jitter
  • Fast forwarding

8. Task 6 - PHP QoS Handling on R3

R3 performs Penultimate Hop Popping (PHP).

PHP Formula

$$ Top\\ Label = Removed $$

Since the top label disappears, QoS information must be preserved.

R3 QoS Group Configuration

R3

class-map MPLS-PREC-4
 match mpls experimental topmost 4

class-map MPLS-PREC-7
 match mpls experimental topmost 7

policy-map SET-QOS-GROUP

 class MPLS-PREC-4
  set qos-group mpls experimental topmost

 class MPLS-PREC-7
  set qos-group mpls experimental topmost

interface E0/0
 service-policy input SET-QOS-GROUP
What is QoS Group?

QoS Group is an internal Cisco marking.

It preserves QoS information after MPLS labels are removed.

9. Task 7 - QoS Group Propagation

R3 now reapplies QoS information to outgoing MPLS labels.

R3

class-map QOS-PREC-4
 match qos-group 4

class-map QOS-PREC-7
 match qos-group 7

policy-map USE-QOS-GROUP

 class QOS-PREC-4
  police 256000
  set mpls experimental topmost qos-group

 class QOS-PREC-7
  priority percent 10
  set mpls experimental topmost qos-group

interface E0/1
 service-policy output USE-QOS-GROUP

QoS Group Propagation Formula

$$ QoS\\ Group \rightarrow MPLS\\ EXP $$

10. Task 8 - MPLS Uniform Mode on R4

Uniform Mode copies MPLS QoS markings back into the customer packet.

Uniform Mode Formula

$$ MPLS\\ EXP \rightarrow IP\\ Precedence $$

Step 1 - Copy EXP Bits to QoS Group

R4

class-map MPLS-PREC-4
 match mpls experimental topmost 4

class-map MPLS-PREC-7
 match mpls experimental topmost 7

policy-map SET-QOS-GROUP

 class MPLS-PREC-4
  set qos-group mpls experimental topmost

 class MPLS-PREC-7
  set qos-group mpls experimental topmost

interface E0/0
 service-policy input SET-QOS-GROUP

Step 2 - Push QoS Group into Customer Packet

R4

class-map QOS-PREC-4
 match qos-group 4

class-map QOS-PREC-7
 match qos-group 7

policy-map USE-QOS-GROUP

 class QOS-PREC-4
  police 128000
  set precedence qos-group

 class QOS-PREC-7
  priority percent 10
  set precedence qos-group

interface E0/3
 service-policy output USE-QOS-GROUP
Pipe Mode vs Uniform Mode
Mode Description
Pipe Mode Customer markings hidden from customer
Uniform Mode SP QoS markings copied back to customer packets

11. Verification Commands

Verify Policy Maps

show policy-map interface

Verify MPLS Labels

show mpls forwarding-table

Verify QoS Groups

show policy-map interface e0/0

Verify MPLS EXP Values

show mpls interfaces detail
Sample QoS Verification Output
R2#show policy-map interface e0/1

Class-map: MPLS-PREC-7
 Priority: 10%

Class-map: MPLS-PREC-4
 police 256000 bps

12. MPLS QoS Mathematics

Traffic Rate Formula

$$ Rate = \frac{Bits}{Seconds} $$

Policing Calculation

$$ Allowed\\ Traffic = 256000bps $$

Packets exceeding CIR:

$$ Dropped = Incoming - CIR $$

Bandwidth Reservation

$$ Reserved\\ Bandwidth = \frac{Priority\\ Percent}{100} \times Link\\ Bandwidth $$

EXP Bit Representation

$$ EXP = 3\\ Bits $$ $$ 000 - 111 $$

13. Troubleshooting MPLS QoS

Issue Cause Solution
No QoS Matching ACL mismatch Verify access-lists
EXP bits not set Policy missing Apply service-policy
No priority traffic Wrong class-map Verify EXP matching
QoS lost after PHP No qos-group Configure qos-group copy
Customer markings incorrect Uniform mode issue Verify precedence rewrite

๐Ÿ’ก Key Takeaways

  • MPLS uses EXP bits for QoS
  • QoS classification occurs at network edges
  • Service Providers can remark traffic internally
  • PHP can remove QoS information
  • QoS Groups preserve markings
  • Uniform Mode copies markings back to customer traffic
  • Priority Queuing reduces latency
  • Policing controls bandwidth usage

Final Conclusion

This MPLS QoS Configuration Lab Part 2 demonstrated how QoS policies are implemented across an MPLS Service Provider backbone.

We configured:

  • IP Precedence marking
  • MPLS EXP marking
  • Traffic policing
  • Priority Queuing
  • QoS Groups
  • Uniform Mode QoS
  • PHP QoS handling

Understanding MPLS QoS is essential for enterprise WAN engineering and service provider deployments because modern applications require guaranteed bandwidth, low latency, and controlled traffic handling.

This concludes Part 2 of the MPLS VPN and MPLS QoS lab series.

No comments:

Post a Comment

Featured Post

How HMT Watches Lost the Time: A Deep Dive into Disruptive Innovation Blindness in Indian Manufacturing

The Rise and Fall of HMT Watches: A Story of Brand Dominance and Disruptive Innovation Blindness The Rise and Fal...

Popular Posts