QoS; I don't understand Internal DSCP and "show mls qos

From: Fabrice Paz (fabrice.paz@googlemail.com)
Date: Fri Jan 12 2007 - 09:41:44 ART


Hi all,

Hope that someone will be able to help and not fall asleep before reaching
the end of my email...

I have some trouble understanding Internal DSCP and in order to understand I
have done the following testing;

I have plugged a laptop generating traffic to port GigabitEthernet1/0/35 of
a Catalyst 3750G (IOS 12.2(25)SEB4).

interface GigabitEthernet1/0/35
description Laptop connexion
switchport access vlan 415
switchport mode access
service-policy input marking
end

and configured a simple policy to mark all the traffic coming from the
laptop as cs3

ip access-list extended Testing
permit ip any any

class-map match-all testing
  match access-group name Testing

policy-map marking
  class testing
   set dscp cs3

All the traffic is leaving the switch via trunk interface
GigabitEthernet1/0/1

interface GigabitEthernet1/0/1
description Trunk
switchport trunk encapsulation dot1q
switchport mode trunk
mls qos trust dscp

Here the problem (or the bit that I don't understand), when I issue the
command "show mls qos interface gigabitEthernet 1/0/1 statistics" in order
to see if all the packets leaving the switch (only one laptop is plugged)
are marked as cs3 (value 30) I have the following.

dscp: outgoing
-------------------------------
 0 - 4 : 0 0 0 0 0
 5 - 9 : 0 0 0 0 0
10 - 14 : 0 0 0 0 0
15 - 19 : 0 0 0 0 0
20 - 24 : 0 0 0 0 397
25 - 29 : 0 0 0 0 0
30 - 34 : 0 0 0 0 0
35 - 39 : 0 0 0 0 0
40 - 44 : 0 0 0 0 0
45 - 49 : 0 0 0 0 0
50 - 54 : 0 0 0 0 0
55 - 59 : 0 0 0 0 0
60 - 64 : 0 0 0 0

  cos: outgoing
-------------------------------
  0 - 4 : 0 0 0 397 0
  5 - 7 : 0 0 0

You can see that packet are marked with DSCP 24 and COS 3. Since my policy
is marking the traffic effectively (otherwise it would be DSCP 0 and COS 0
by default) the IOS should not use COS-DSCP default map to set the internal
DSCP.

TestSwitch#show mls qos map

      Dscp-cos map:

     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

   Cos-dscp map:

        cos: 0 1 2 3 4 5 6 7
     --------------------------------
       dscp: 0 8 16 24 32 40 48 56

As I was becoming crazy I decided to use a packet sniffer to later realize
that all packets where marked correctly as cs3 (011 000)

Why all the packets leaving the switch are showing as DSCP 24 when using
show mls qos stat command?

Is that command related to what Cisco call Internal DSCP which seems to be
different that the real IPv4 DSCP?

Do you know a way to see what really is the final IPv4 DSCP marked by the
policy?

Thanks

Fabrice



This archive was generated by hypermail 2.1.4 : Thu Feb 08 2007 - 23:46:56 ART