09-26-2010 10:20 AM - edited 03-06-2019 01:11 PM
Hi All,
I have the following topology:
DEVICE X <---- trunk vlan 10,20,30 ----> in.p C4500 out.p <---- trunk vlan 10,20,30,40,50 ----> DEVICE Y
I need to change the cos value for specific vlan (vlan 20) on Catalyst 4500. But only for vlan 20.
Received cos vaule on input port of c4500 for vlan 20 is 0,
output cos value on output port of c4500 for vlan 20 have to be 5.
According documentation i need to set internal dscp, which have to be copied to the cos field on output port.
But it doesn't work as it is expected.
Any idea?
Thanks
BR
jm.,
09-26-2010 10:32 AM
jm
Might help if you can -
1) post config you are currently working with
2) specify IOS and supervisor model
In principle you should be able to match the vlan 20 traffic, mark it as CoS 5. You then need to look at the following maps -
CoS-to-DSCP - this map is used to determine which internal DSCP value is derived from your CoS value
DSCP-to-CoS - this map is used to determine the CoS value used on the outgoing interface and is derived from the internal DCSP value.
How are you verrifying it is not setting the correct value ?
Jon
09-26-2010 10:56 AM
HI,
1, config - pls. see below
2, Sup II+10GE 10GE (X2), 1000BaseX (SFP) WS-X4013+10GE 12.2(31r)SGA 12.2(50)SG3
I'm able to match vlan 20 traffic, but It's not possible to set the cos value, only the dscp or ip prec (on input).
Thanks
jm.,
class-map match-any ANY
match any
!
policy-map P66
class ANY
set ip dscp ef
class class-default
set ip dscp ef
!
interface GigabitEthernet3/15
description c7600, g4/15
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10,20,30
switchport mode trunk
switchport nonegotiate
qos vlan-based
!
interface Vlan20
no ip address
service-policy input P66
!
class-map match-all CS0
match cos 0
class-map match-all CS1
match cos 1
class-map match-all CS2
match cos 2
class-map match-all CS3
match cos 3
class-map match-all CS4
match cos 4
class-map match-all CS5
match cos 5
class-map match-all CS6
match cos 6
class-map match-all CS7
match cos 7
!
policy-map TEST2
class CS0
set dscp default
class CS1
set dscp cs1
class CS2
set dscp cs2
class CS3
set dscp cs3
class CS4
set dscp cs4
class CS5
set dscp cs5
class CS6
set dscp cs6
class CS7
set dscp cs7
class class-default
!
interface GigabitEthernet3/16
description c7600, g4/16
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10,20,30,40,50
switchport mode trunk
switchport nonegotiate
service-policy output TEST2
!
c4500-lab#show policy-map interface vl 20
Vlan20
Service-policy input: P66
Class-map: ANY (match-any)
100 packets
Match: any
100 packets
QoS Set
ip dscp ef
Class-map: class-default (match-any)
0 packets
Match: any
0 packets
QoS Set
ip dscp ef
c4500-lab#
c4500-lab#sh policy-map interface g3/16
GigabitEthernet3/16
Service-policy output: TEST2
Class-map: CS0 (match-all)
0 packets
Match: cos 0
QoS Set
ip dscp default
Class-map: CS1 (match-all)
0 packets
Match: cos 1
QoS Set
ip dscp cs1
Class-map: CS2 (match-all)
0 packets
Match: cos 2
QoS Set
ip dscp cs2
Class-map: CS3 (match-all)
0 packets
Match: cos 3
QoS Set
ip dscp cs3
Class-map: CS4 (match-all)
0 packets
Match: cos 4
QoS Set
ip dscp cs4
Class-map: CS5 (match-all)
0 packets
Match: cos 5
QoS Set
ip dscp cs5
Class-map: CS6 (match-all)
0 packets
Match: cos 6
QoS Set
ip dscp cs6
Class-map: CS7 (match-all)
0 packets
Match: cos 7
QoS Set
ip dscp cs7
Class-map: class-default (match-any)
1686 packets
Match: any
1686 packets
09-26-2010 11:31 AM
I can see what you are doing on the input ie. vlan based QOS for vlan 20 setting to DSCP value to 5. But what are you trying to do on the output interface with your policy map ?
Also -
1) can you post the output of "sh qos maps dscp to cos"
and can you confirm how you know the CoS value is not being set properly on the output queue ?
Jon
09-26-2010 11:36 AM
Hi,
QOS map dscp to cos has default values
c4500-lab#show qos maps dscp cos
DSCP-CoS Mapping Table (dscp = d1d2)
d1 : d2 0 1 2 3 4 5 6 7 8 9
-------------------------------------
0 : 00 00 00 00 00 00 00 00 01 01
1 : 01 01 01 01 01 01 02 02 02 02
2 : 02 02 02 02 03 03 03 03 03 03
3 : 03 03 04 04 04 04 04 04 04 04
4 : 05 05 05 05 05 05 05 05 06 06
5 : 06 06 06 06 06 06 07 07 07 07
6 : 07 07 07 07
I'm checking the policy map on the output intf.
c4500-lab#show policy-map interface g3/16
GigabitEthernet3/16
Service-policy output: TEST2
Class-map: CS0 (match-all)
0 packets
Match: cos 0
QoS Set
ip dscp default
Class-map: CS1 (match-all)
0 packets
Match: cos 1
QoS Set
ip dscp cs1
Class-map: CS2 (match-all)
0 packets
Match: cos 2
QoS Set
ip dscp cs2
Class-map: CS3 (match-all)
0 packets
Match: cos 3
QoS Set
ip dscp cs3
Class-map: CS4 (match-all)
0 packets
Match: cos 4
QoS Set
ip dscp cs4
Class-map: CS5 (match-all)
0 packets
Match: cos 5
QoS Set
ip dscp cs5
Class-map: CS6 (match-all)
0 packets
Match: cos 6
QoS Set
ip dscp cs6
Class-map: CS7 (match-all)
0 packets
Match: cos 7
QoS Set
ip dscp cs7
Class-map: class-default (match-any)
8608 packets
Match: any
8608 packets
JM.,
09-26-2010 11:41 AM
Is there any chance you can run a packet capture tool on device Y and check the CoS value there ?
Jon
09-26-2010 11:44 AM
I can do it, but tomorrow. I'll let You know.
Thanks
BR
jm.,
09-28-2010 01:35 PM
Jon,
it is working as it is expected, cos remarking is done for IP traffic and non-IP traffic too (ARP packets). The only way how to check it was to configure local monitor session on c4500 (with 802.1q support) and to sniff traffic under linux/wireshark.
Thank You
BR
Jm.,
09-29-2010 02:56 PM
Hi All
applied configuration works well when the input port is on the linecard, IP traffic(icmp) and non-IP traffic (ARP) is remarked by cos=5 as it is expected.
But the same configuration is not working if the input port for vlan 20 is on the supervisor (Sup II+10GE), IP traffic is marked by cos=5, but the non-IP traffic has default cos value=0 (as it is received).
Any idea?
Thank You
BR
jm.,
09-30-2010 02:41 AM
Hi All,
by mistake I've omitted the line in the config qos map cos 0 to dscp 46, the result was - wrong conslusion. Finally the conclusion is:
- it's not possible to change COS value (example incomming cos=0, outgoing cos=5) using the configuration above for non-IP trafik (ARP packets)
- the only way how to do it, is to define qos trust cos on the input intf. and change the qos map: qos map cos 0 to dscp 46
jm.,
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide