cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
334
Views
1
Helpful
7
Replies

QoS on IOS-XE 17.12 Max of One Set action inside policy-map

j.a.m.e.s
Level 4
Level 4

I'm trying to classify incoming traffic into a QoS-Group and Mark the DSCP at the same time in IOS-XE. We've been doing this for many years on NXOS, but annoyingly it looks like this isn't possible with IOS-XE:

class-map match-any CM-QOS-VIDEO
 match dscp af41 cs4
exit
[...]

policy-map PM-QOS-IN
 [...]
 class CM-QOS-VIDEO
  set qos-group 6
  set dscp 34       ! consolidate to af41
  063645: Mar 3 10:00:03.137 EST: Multiple set actions in the same class is not supported
  [...]
exit

Does anyone know if later versions of IOS-XE might support this or any other workarounds? Maybe in the output queueing policy we could mark the new DSCP?

It seems odd that Cisco would introduce features like being able to set a qos-group or traffic-class etc, but limit us to a single set action per policy-map class.

1 Accepted Solution

Accepted Solutions

I ran a quick test on CML to try to config multiple "set" commands under a policy-map's class. I did not attempt to determine if the multiple set commands actually behaved as expected, I only determined whether the config-mode command parser would accept multiple sets.

 

Node Type XE Version Multiple SET Commands Accepted
Catalyst 8000v 17.15.01a Yes
CSR1000v 17.03.08a Yes
IOL 17.15.1 Yes
Catalyst 9000v-Q200 17.15.01 Yes
Catalyst 9000v-UADP 17.15.01 No

It appears to me that not accepting multiple set commands is not an XE PI (platform independent) limitation in CML, but a PD (platform dependent) limitation, specifically with Cat9Kv node that emulates the UADP NPU. On what platform are you seeing this behavior?

Disclaimers: I am long in CSCO. Bad answers are my own fault as they are not AI generated.

View solution in original post

7 Replies 7

Why are you setting the qos-group? That is, are you matching on qos-group in an egress policy?

Also, what XE platform is this?

Disclaimers: I am long in CSCO. Bad answers are my own fault as they are not AI generated.

Yes, exactly that, where a qos-group corresponds to one of the output queues.

Thus implying same DSCP egress marked traffic might have different egress treatment, correct?

If correct, somewhat unusual but not necessarily "bad", if fact, could be very useful.

Yes, that's what we've been doing in NXOS for many years and I thought finally IOSXE might offer the same flexibility, so that we could unify the config, but it seems not.

Also, it makes more logical sense to be marking DSCP on ingress rather than egress.

I ran a quick test on CML to try to config multiple "set" commands under a policy-map's class. I did not attempt to determine if the multiple set commands actually behaved as expected, I only determined whether the config-mode command parser would accept multiple sets.

 

Node Type XE Version Multiple SET Commands Accepted
Catalyst 8000v 17.15.01a Yes
CSR1000v 17.03.08a Yes
IOL 17.15.1 Yes
Catalyst 9000v-Q200 17.15.01 Yes
Catalyst 9000v-UADP 17.15.01 No

It appears to me that not accepting multiple set commands is not an XE PI (platform independent) limitation in CML, but a PD (platform dependent) limitation, specifically with Cat9Kv node that emulates the UADP NPU. On what platform are you seeing this behavior?

Disclaimers: I am long in CSCO. Bad answers are my own fault as they are not AI generated.

What an answer! Thank you so much for checking all this.

I'm using a C9500-32QC, which has a UADPv3 asic.

So basically from your testing it looks like the Q200/SiliconeOne platforms support multiple set commands.

Joseph W. Doherty
Hall of Fame
Hall of Fame

"Maybe in the output queueing policy we could mark the new DSCP?"

That's what I would have suggested.

Review Cisco Networking for a $25 gift card