Contents

Introduction

Prerequisites

Requirements

Components Used

Background Information

Overview for the Difference Between 3750 MLS QoS and 3850 MQC QoS

3750 QoS Model

3850 QoS Model

Feature Detail Comparison Table

Ingress

Egress

Common QoS Show Commands

3750

3850

3750 to 3850 QoS Conversion Sample

Example 1: QoS Disabled

3750

3850

Example 2 : QoS Enabled Trust COS

3750

3850

Example 3: QoS Enabled Trust DSCP

3750

3850

Example 4: QoS Enabled with an Interface that Has a Set Policy

3750

3850

Example 5: QoS Enabled with No MLS QoS Trust on Interface

3750

3850

Example 6: QoS Enabled with Change CoS/DSCP Queue Mapping

3750

3850

Example 7: MLS Enabled with DSCP Mutation

3750

3850

Example 8: MLS QoS Enabled with Aggregate Policing

3750

3850

Example 9: MLS Enabled with Policing Mark Down

3750

3850

Example 10: MLS QoS Enabled with Queue-Limit Configuration

3750

3850

Example 11: MLS QoS Enabled with Queue-Buffer Configuration

3750

3850

Example 12: MLS QoS Enabled with Bandwidth Configuration

3750

3850

Example 13: MLS QoS Enabled with Priority

3750

3850

Example 14: MLS QoS Enabled with Shaper Configuration

3750

3850

Example 15 : MLS QoS Enabled with Bandwith

3750

3850

Example 16: HQoS

3750

3850

Related Information

Introduction

This document describes the difference between 3750 Multilayer Switching (MLS) Quality of Service (QoS) and 3850 Switches with Modular QoS CLI (MQC).

Prerequisites

Requirements

Cisco recommends that you have knowledge of these topics:

- Cisco IOS® Software

- 3750 Multilayer Switching (MLS)

- Switches Modular QoS CLI (MQC)

Components Used

This document is not restricted to specific software and hardware versions.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.

Background Information

This document also describes detailed information about conversion through sample configurations. This document only applies to the Wired QoS. This document is for networking professionals who are responsible for the design, implementation, or administration of a network that includes a standalone Cisco Catalyst 3850 Switch or a Cisco Catalyst 3850 Switch stack, referred to as the switch.

Overview for the Difference Between 3750 MLS QoS and 3850 MQC QoS

The configuration of QoS in the 3850 line has been improved due to its implementation of MQC (universal QoS configuration model) configuration instead of the old MLS QoS (platform-dependent QoS configuration) commands from the 3750 and 3560 lines of switches.

The main differences are highlighted in this table:

Switch Type

3750

3850

Basic structure

MLS

MQC

QoS default

Disabled

Enabled

Global config

Support MLS QoS

Support some of MQC at ingress

Does not support MLS QoS

Support MQC [class-map, policy-map]

Interface config

Support MLS QoS config and some of MQC CLI at ingress

Attach the policy to the interface

Port trust default

Disabled

Enabled

Port Ingress

Classification/Policing/Marking/

Queuing

Classification/Policing/marking

[NO Ingress Queuing !]

Port Egress

Queuing

Classification/Policing/marking/queuing

Switch Virtual Interface (SVI) Ingress

Classification/Policing/Marking

Classification/Marking

SVI Egress

None

Classification/Marking

It is important to recognize the main fundamental change in the QoS approach.

On the 3750, by default the QoS is disabled whereas on the 3850, it is enabled. Also in order to preserve Layer 2 (L2)/Layer 3 (L3) QoS marking on the 3750 platform, a trust configuration must be applied.

In the case of the 3850, all packets by default are trusted (the L2/L3 QoS marking is preserved), unless you change it with an application of a specific policy map on the ingress or egress interface.

3750 QoS Model

3850 QoS Model

Feature Detail Comparison Table

Ingress

Feature

3750

3850

Classification

Class-map match Differentiated Services Code Point (DSCP), Precedence (Prec), Access Control List (ACL)

Supports both match-all and match-any

Class-map Class of Service (CoS), Prec, DSCP, ACL

And VLAN

Supports match-any only

Marking

[unconditional set]

Set DSCP and Prec

Set CoS, Prec, DSCP and QoS-group

Marking

[conditional marking]

DSCP mutation

Class-default table-map

Policing

1r2c

1r2c and 2r3c

Policing markdown

Policing exceeds mark-down

[Only supports DSCP]

Policing exceeds and violates mark-down

[Supports CoS, DSCP, Prec ]

Aggregate Policing

Supports

Agg-policing [one type of  HQoS]

Ingress Queuing

Supports only on 3750 but does not support on 3750x

Does not support

Hierarchical QoS (HQoS)

VLAN based HQoS only

Port-based Agg-policing and Per-VLAN (PV)

Egress

Feature

3750

3850

Classification support for none queuing action

Does not support

CoS, Prec, DSCP, QoS-group, ACL

and VLAN

Classification support for queuing action

CoS and DSCP

CoS, Prec, DSCP and QoS-group

Marking

Does not support

Set CoS, Prec, and DSCP

Policing

Does not support

1r2c , 2r3c with exceed/violate mark down through table-map

Max number of queues and queue types

1P3Q3T [ 4 queues]

Expedite queue-> Priority queue

2P6Q3T [ up to 8 queues ]

Egress Queuing

Share mode, shape mode, queue-limit, priority and queue-buffer

Bandwidth, bandwidth remaining, shaping, queue-limit, priority and queue-buffer

HQoS

Does not support

HQoS: Agg-policing, PV, Port-shaper and Parent user shaper with child non-queuing action

Common QoS Show Commands

3750

Input show commands:

show run class-map [name_of_class-map]

show run policy-map [name of policy-map]

show policy-map interface [interface_name]

General show commands:

show mls qos maps

show mls qos maps <options>

show mls qos queue-set

show mls qos interface [interface_name] queuing

show platform port-asic stats drop [interface_name] statistics

show mls qos aggregate-policer

3850

show run class-map [name_of_class-map]

show run policy-map [name of policy-map]

show table-map [name_of_table-map]

show run policy-map [name_of_policy-map]

show policy-map interface [interface_name]

show platform qos policies port sw [sw#]

show platform qos queue config interface_type [interface_name]

show platform qos queue stats interface_type [interface_name]

3750 to 3850 QoS Conversion Sample

QoS Config

3750

[Global]

3750

[Interface]

3850 *

Sample Link

QoS disable

No MLS QoS

Two queues

Control-> queue (2)

Data   -> queue (4)

Egress with no policy

Control -> queue(1)

Data -> queue(2)

Trust or set at ingress and egress

Queuing action based on the ingress

Trust or set

MLS QoS

a)

MLS QoS trust CoS

Egress queuing policy classify on CoS [ ingress need config trust CoS]

b)

MLS QoS trust DSCP

egress queuing policy classify on DSCP

c)

Input policy with set action to mark the DSCP value

Egress queuing policy classify on DSCP

d)

No MLS QoS trust config [both CoS/DSCP can be set zero]

Input policy with class-default

Set CoS/DSCP 0

CoS/DSCP queue mapping

MLS QoS Shared Round Robin (SRR)-queue output [CoS-map/ DSCP-map]

A, b, c and d can use the corresponding new mapping

Output explicit classification [CoS/DSCP] with queuing action

DSCP mutation

MLS QoS DSCP mutation

Interface need configuration

MLS QoS trust DSCP

MLS QoS DSCP-mutation [name]

Interface input policy with table-map

Agg-policing

MLS QoS aggregatepolicing

Need interface-level configuration

Agg-policing [one type of HQoS]

Police-markdown

MLS QoS map policed-DSCP [10] [11] to [63]

Policing policy attaching to interface, exceed not drop, the global policed-DSCP can take effect

[Input]

One table-map for exceed and one table-map forviolate action of policing

[Input and output]

Queue-limit

MLS QoS queue-set output [1] threshold [1] [100] [100] [50] [200]

1-> queue-set 1

<1-> queue 1

Threshold 1

Threshold 2

Reserved buffer

Max threshold

Config queue-set [2]

[Default queue-set 1]

Egress queuing policy with queuing action and queue-limit configuration

Queue-buffers

MLS QoS queue-set output [1] buffers

[15] [25] [40] [20]

Interface config queue-set

Policy-map with queuing action and queue-buffers ratio [0-100]

Share/bandwidth

MLS QoS

Interface level config

“SRR-queue bandwidth share 1 30 35 5” [Share mode]

Bandwidth in policy-map

priority queue

[Expedite queue]

MLS QoS

Interface level config “priority-queue out”, this can make corresponding queue-set’s 1st queue as priority queue

Priority level 1 in the policy-map

Shaper

MLS QoS

SRR-queue bandwidth shape [shape mode]

Shape average in policy-map

Port-shaper

MLS QoS

SRR-queue bandwidth limit

Port-shaper

HQoS

MLS QoS

SVI [attach policy to SVI] and interface needs configuration “MLS QoS VLAN_based’

PV policy

And attach policy to the port at input direction

Example 1: QoS Disabled

3750 (Global config)

3750 (interface)

3850

No MLS QoS

Two queue [control one queue 2, data one queue 4]

Egress with no policy

[Control pkts in queue 1 and data packets in queue 2]

3750

3750#show mls qos

QoS is disabled <- disable

QoS ip packet dscp rewrite is enabled

3750#show mls qos interface gig1/0/1 statistics | b  output queues enqueued

output queues enqueued:

queue:    threshold1   threshold2   threshold3

-----------------------------------------------

queue 0:           4           0           0

queue 1:           0           0           0 <- control

queue 2:           0           0           0

queue 3:           0           0           0 <- data

output queues dropped:

queue:    threshold1   threshold2   threshold3

-----------------------------------------------

queue 0:           0           0           0

queue 1:           0           0           0  <- control

queue 2:           0           0           0

queue 3:           0           0           0  <- data

Policer: Inprofile:            0 OutofProfile:            0

3850

3850#show run interface gig1/0/1

interface GigabitEthernet1/0/1

end

3850#show platform qos queue config gigabitEthernet 1/0/1 sw 1

DATA Port:21 GPN:1 AFD:Disabled QoSMap:0 HW Queues: 168 - 175

DrainFast:Disabled PortSoftStart:1 - 600

----------------------------------------------------------

DTS Hardmax   Softmax  PortSMin GlblSMin  PortStEnd

--- --------  -------- -------- --------- ---------

0   1  5   120  6   480  0     0   0     0   0   800 <- control

1   1  4     0  7   720  2   480   2   180   2   800 <- data

2   1  4     0  5     0  0     0   0     0   0   800

3   1  4     0  5     0  0     0   0     0   0   800

4   1  4     0  5     0  0     0   0     0   0   800

5   1  4     0  5     0  0     0   0     0   0   800

6   1  4     0  5     0  0     0   0     0   0   800

7   1  4     0  5     0  0     0   0     0   0   800

Priority   Shaped/shared   weight  shaping_step

--------   ------------   ------  ------------

0      0     Shared            50           0

1      0     Shared            75           0

2      0     Shared         10000         179

3      0     Shared         10000           0

4      0     Shared         10000           0

5      0     Shared         10000           0

6      0     Shared         10000         192

7      0     Shared         10000           0

Weight0 Max_Th0 Min_Th0 Weigth1 Max_Th1 Min_Th1 Weight2 Max_Th2 Min_Th2

------- -------  ------  ------  ------  ------  ------  ------ ------

0      0     478       0       0     534       0       0     600       0

1      0     573       0       0     641       0       0     720       0

2      0       0       0       0       0       0       0       0       0

3      0       0       0       0       0       0       0       0       0

4      0       0       0       0       0       0       0       0       0

5      0       0       0       0       0       0       0       0       0

6      0       0       0       0       0       0       0       0       0

7      0       0       0       0       0       0       0       0       0

Example 2 : QoS Enabled Trust COS

3750 (Global)

3750 (interface)

3850

MLS QoS

Interface “MLS QoS trust CoS” (based on the default CoS-mapping to the queue-set 1 )

Egress queuing policy based on CoS ( ingress need config trust CoS)

3750

Global config:

3750(config)#mls qos

Interface config:

interface GigabitEthernet1/0/1

mls qos trust cos

Related show cli:

3750#show mls qos

QoS is enabled

QoS ip packet dscp rewrite is enabled

3750#show mls qos interface gig1/0/1

GigabitEthernet1/0/1

trust state: trust cos

trust mode: trust cos

trust enabled flag: ena

COS override: dis

default COS: 0

DSCP Mutation Map: Default DSCP Mutation Map

Trust device: none

qos mode: port-based

3750 #show mls qos maps cos-output-q

Cos-outputq-threshold map:

cos:              0   1   2   3   4   6     7

------------------------------------------------------------

queue-threshold: 2-1 2-1 3-1 3-1 4-1 1-1 4-1 4-1

Note: cos value 0 maps to 2-1 [queue-set1 : queue2 threshold 1]

3850

Ingress: apply policy-map trust-cos

Egress: create class based on cos and have queuing action for each class

Ingress policy:

3850#show run policy-map trust-cos

class class-default

set cos cos table default

3850#show table-map default

Table Map default

default copy

Egress policy:

3850#show run policy-map example2

class cos5

bandwidth percent 15

class cos0_1

bandwidth percent 25

class cos2_3

bandwidth percent 40

class cos4_6_7

bandwidth percent 20

3850#show run class-map cos5

class-map match-any cos5

match cos  5

3850#show run class-map cos0_1

class-map match-any cos0_1

match cos  0

match cos  1

3850#show run class-map cos2_3

class-map match-any cos2_3

match cos  2

match cos  3

3850#show run class-map cos4_6_7

class-map match-any cos4_6_7

match cos  4

match cos  6

match cos  7

Example 3: QoS Enabled Trust DSCP

3750 (Global)

3750 (interface)

3850

MLS QoS

Interface “MLS QoS trust DSCP” [based on the default DSCP-mapping to the queue-set 1]

Input default trust DSCP

Egress queuing policy based on DSCP

3750

config

3750(config)#mls qos  <- Global

interface GigabitEthernet1/0/1 <- Interface

mls qos trust dscp

3750#sh mls qos interface gig1/0/1

GigabitEthernet1/0/1

trust state: trust dscp

trust mode: trust dscp

trust enabled flag: ena

COS override: dis

default COS: 0

DSCP Mutation Map: Default DSCP Mutation Map

Trust device: none

qos mode: port-based

3750#show mls qos maps dscp-output-q

Dscp-outputq-threshold map:

d1 :d2 0    1     2     3     4     5     6     7     8     9

---------------------------------------------------------------

0 : 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01

1 : 02-01 02-01 02-01 02-01 02-01 02-01 03-01 03-01 03-01 03-01

2 : 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01

3 : 03-01 03-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

4 : 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 04-01 04-01

5 : 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01

6 : 04-01 04-01 04-01 04-01

3850

Ingress: default trust dscp, no policy needed

Egress: use dscp as classification and add queuing action based on customer need

One Sample config:

Plolicy-map:

3850#show run policy-map dscp-shape

class dscp56

shape average percent 10

class dscp48

shape average percent 11

class dscp40

shape average percent 12

class dscp32

shape average percent 13

Class-map:

3850#show run class-map dscp56

class-map match-any dscp56

match  dscp cs7

3850#show run class-map dscp48

class-map match-any dscp48

match  dscp cs6

3850#show run class-map dscp40

class-map match-any dscp40

match  dscp cs5

3850#show run class-map dscp32

class-map match-any dscp32

match  dscp cs4

Example 4: QoS Enabled with an Interface that Has a Set Policy

3750 (global)

3750 (interface)

3850

MLS QoS

Interface input policy with set action to mark the CoS/DSCP value

[Marked value is used for egress mapping]

Need explicit egress policy to do queuing mapping

3750

3750#show run class-map dscp-1

class-map match-any dscp-1

match ip dscp 1

c3750#show run policy-map set-dscp-63

class dscp-1

set dscp 63

3750#show run interface f7/0/2

interface FastEthernet7/0/2

mls qos trust dscp

service-policy input set-dscp-63

3750#show policy-map interface f7/0/2

FastEthernet7/0/2

Service-policy input: set-dscp-63

Class-map: dscp-1 (match-any)

0 packets, 0 bytes

5 minute offered rate 0 bps, drop rate 0 bps

Match: ip dscp 1

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

0 packets, 0 bytes

5 minute offered rate 0 bps, drop rate 0 bps

Match: any

0 packets, 0 bytes

5 minute rate 0 bps

Note: Pkts come in interface fa7/0/2, dscp1 can be marked to dscp63 which mapping

based on the existing mapping table, other pkts can retain original dscp value

mapping accordingly

3850

Input can be same as 3750 config

Egress: can add queuing action under class dscp-63

One sample config:

3850#show run policy-map  dscp63-queuing

class dscp63

bandwidth percent 50

3850#show class-map dscp63

Class Map match-any dscp63

Match   dscp 63

Example 5: QoS Enabled with No MLS QoS Trust on Interface

3750 (global )

3750 (interface)

3850

MLS QoS

Interface not config MLS QoS trust CoS/DSCP

[CoS/DSCP can be set to 0]

Interface input policy with class-default

Set DSCP 0, output policy with class DSCP0 with queuing action

3750

Global:

c3750(config)#mls qos

Interface:

interface GigabitEthernet2/0/45

!

3850

Input policy:

c3850#show run policy-map example5-input

class class-default

set dscp default

Output policy:

c3850#show run policy-map example5-output

class dscp0

shape average percent 10 <- queuing action based on customer need

Attach to the ingress port:

c3850#show run interface gig1/0/1

interface GigabitEthernet1/0/1

service-policy input example5-input

Attach to the egress port:

c3850#show run interface gig1/0/2

interface GigabitEthernet1/0/2

service-policy output example5-output

Example 6: QoS Enabled with Change CoS/DSCP Queue Mapping

3750 (global)

3750 (interface)

3850

MLS QoS SRR-queue mapping config

(MLS QoS SRR-queue output [CoS-map queue [1] threshold [3] [4 5])

A, b, c and d can use the new mapping table

[CoS 4 and 5 can be map to queue 1 threshold 3]

Egress explicit classification with queuing action

3750

Before config:

3750#show mls qos maps cos-output-q

Cos-outputq-threshold map:

cos:              0   1   2   3   4   5   6   7

------------------------------------------------

queue-threshold: 2-1 2-1 3-1 3-1 4-1 1-1 4-1 4-1

User config mapping:

3750(config)#mls qos srr-queue output cos-map queue 3 threshold 3 0

New mapping table after config

3750#show mls qos maps cos-output-q

Cos-outputq-threshold map:

cos:              0   1   2   3   4   5   6   7

------------------------------------------------

queue-threshold: 3-3 2-1 3-1 3-1 4-1 1-1 4-1 4-1

3850

Input : need apply trust-cos policy:

3850#show run policy-map trust-cos

class class-default

set cos cos table default

3850#show table-map default

Table Map default

default copy

Egress policy:

Before changing mapping:

Sample config:

3850#show run policy-map example2

class cos5

bandwidth percent 15

class cos0_1

bandwidth percent 25

class cos2_3

bandwidth percent 40

class cos4_6_7

bandwidth percent 20

3850#show run class-map cos5

class-map match-any cos5

match cos  5

3850#show run class-map cos0_1

class-map match-any cos0_1

match cos  0

match cos  1

3850#show run class-map cos2_3

class-map match-any cos2_3

match cos  2

match cos  3

3850#show run class-map cos4_6_7

!

class-map match-any cos4_6_7

match cos  4

match cos  6

match cos  7

After mapping changing , corresponding sample config:

3850#show run policy-map example6

class cos5

bandwidth percent 15

class cos1

bandwidth percent 25

class cos0_2_3

bandwidth percent 40

class cos4_6_7

bandwidth percent 20

3850#show class-map cos5

Class Map match-any cos5 (id 25)

Match cos  5

3850#show run class-map cos1

class-map match-any cos1

match cos  1

3850#show run class-map cos0_2_3

class-map match-any cos0_2_3

match cos  0

match cos  2

match cos  3

3850#show run class-map cos4_6_7

class-map match-any cos4_6_7

match cos  4

match cos  6

match cos  7

Example 7: MLS Enabled with DSCP Mutation

3750 (global)

3750 (interface)

3850

MLS QoS DSCP mutation

Interface need config MLS QoS trust DSCP

MLS QoS DSCP-mutation name [name is defined in global]

Interface input policy with table-map mapping different DSCP.

3750

Global config :

3750(config)#mls qos map dscp-mutation dscp-mutation 0 1 to 63

3750(config)#mls qos map dscp-mutation dscp-mutation 2 3 to 62

Global show cli:

c3750#show mls qos maps dscp-mutation

Dscp-dscp mutation map:

dscp-mutation:

d1 : d2 0 1 2 3 4 5 6 7 8 9

---------------------------------------

0 : 63 63 62 62 04 05 06 07 08 09

1 : 10 11 12 13 14 15 16 17 18 19

2 : 20 21 22 23 24 25 26 27 28 29

3 : 30 31 32 33 34 35 36 37 38 39

4 : 40 41 42 43 44 45 46 47 48 49

5 : 50 51 52 53 54 55 56 57 58 59

6 : 60 61 62 63

Dscp-dscp mutation map:

Default DSCP Mutation Map:

d1 : d2 0 1 2 3 4 5 6 7 8 9

---------------------------------------

0 : 00 01 02 03 04 05 06 07 08 09

1 : 10 11 12 13 14 15 16 17 18 19

2 : 20 21 22 23 24 25 26 27 28 29

3 : 30 31 32 33 34 35 36 37 38 39

4 : 40 41 42 43 44 45 46 47 48 49

5 : 50 51 52 53 54 55 56 57 58 59

6 : 60 61 62 63

Interface config:

interface FastEthernet7/0/3

description trust dscp

mls qos trust dscp

mls qos dscp-mutation dscp-mutation

c3750#show mls qos interface f7/0/3

FastEthernet7/0/3

trust state: trust dscp

trust mode: trust dscp

trust enabled flag: ena

COS override: dis

default COS: 0

DSCP Mutation Map: dscp-mutation

Trust device: none

qos mode: port-based

Interface using default dscp-table:

c3750#show mls qos interface g3/0/1

GigabitEthernet3/0/1

trust state: not trusted

trust mode: not trusted

trust enabled flag: ena

COS override: dis

default COS: 0

DSCP Mutation Map: Default DSCP Mutation Map

Trust device: none

qos mode: port-based

3850

Ingress : apply policy with dscp table-map

Egress: classify on new dscp value with queuing action

Ingress:

3850#show table-map dscp-2-dscp

Table Map dscp-2-dscp

from 0 to 63

from 1 to 63

from 2 to 62

from 3 to 62

default copy

3850#show run policy-map example7-input

class class-default

set dscp dscp table dscp-2-dscp

Egress:

3850#show run policy-map example7-output

class dscp63

shape average percent 20 [ queuing action based on the user need]

class dscp62

shape average percent 30 [queuing action based on user need]

Example 8: MLS QoS Enabled with Aggregate Policing

3750 (global)

3750 (interface)

3850

MLS QoS aggregate policing

[All classes use the agg-policing can share the policing rate.]

Need interface level config

Agg-policing (HQoS)

MLS QoS aggregate-policer agg_traffic 8000 8000 exceed-action drop

Interface has policy which has agg_traffic as agg policer name.

3750

Global:

mls qos aggregate-policer agg_traffic 8000 8000 exceed-action drop

Access-list:

access-list 1 permit 192.168.0.0 0.0.0.255

access-list 2 permit 10.0.0.0 0.0.0.255

Class-map:

class-map match-all agg1

match access-group 1

class-map match-all agg2

match access-group 2

Policy-map:

policy-map agg_policer

class agg1

set dscp 40

police aggregate agg_traffic

class agg2

set dscp 55

police aggregate agg_traffic

Note: class agg1 and agg2 can share the same policing rate

3850

policy-map agg_police

class class-default

police cir  8000

service-policy child

policy-map child

class agg1

set dscp 40

class agg2

set dscp 55

Example 9: MLS Enabled with Policing Mark Down

3750 (Global config)

3750 (interface)

3850

MLS QoS map policed-DSCP x to y

As long as interface has policing policy, exceed is transmit, the global CLI can take effect [input only].

One table-map for exceed and one for violate action of policing, input, and output.

3750

Default policed-dscp map:

3750#show mls qos map policed-dscp

Policed-dscp map:

d1 : d2 0 1 2 3 4 5 6 7 8 9

---------------------------------------

0 : 00 01 02 03 04 05 06 07 08 09

1 : 10 11 12 13 14 15 16 17 18 19

2 : 20 21 22 23 24 25 26 27 28 29

3 : 30 31 32 33 34 35 36 37 38 39

4 : 40 41 42 43 44 45 46 47 48 49

5 : 50 51 52 53 54 55 56 57 58 59

6 : 60 61 62 63

User define policed-dscp map:

3750(config)#mls qos map policed-dscp 0 10 18 24 46 to 8

3750#show mls qos map policed-dscp

Policed-dscp map:

d1 : d2 0 1 2 3 4 5 6 7 8 9

---------------------------------------

0 : 08 01 02 03 04 05 06 07 08 09

1 : 08 11 12 13 14 15 16 17 08 19

2 : 20 21 22 23 08 25 26 27 28 29

3 : 30 31 32 33 34 35 36 37 38 39

4 : 40 41 42 43 44 45 08 47 48 49

5 : 50 51 52 53 54 55 56 57 58 59

6 : 60 61 62 63

Policy config:

class-map match-all policed-dscp

match access-group 2

class policed-dscp

police 8000 8000 exceed-action policed-dscp-transmit

Attach the above policy at ingress:

Note : Mark down table can be used by policing and interface policing

as  long as exceed action is transmit

3850

3850(config)#table-map policed-dscp

3850(config-tablemap)#map from 0 to 8

3850(config-tablemap)#map from 10 to 8

3850(config-tablemap)#map from 18 to 8

3850(config-tablemap)#map from 24 to 8

3850(config-tablemap)#map from 46 to 8

3850#show table-map policed-dscp

Table Map policed-dscp

from 0 to 8

from 10 to 8

from 18 to 8

from 24 to 8

from 46 to 8

default copy

3850#show policy-map policed-dscp

Policy Map policed-dscp

Class class-default

police cir percent 10

conform-action transmit

exceed-action set-dscp-transmit dscp table policed-dscp

Example 10: MLS QoS Enabled with Queue-Limit Configuration

3750 (global)

3750 (interface)

3850

MLS QoS queue-set output 1 threshold 1100 100 50 200 (queue-limit)

[1 ->queue-set 1,

1->first queue,

100 ->threshold 1,

100 ->threshold 2,

50 -> reserved buffer,

200 -> max threshold]

Interface config queue-set

[Default is queue-set 1]

Egress queuing policy with queuing action and q-limit config.

3750

Global config:

mls qos srr-queue output cos-map queue 2 threshold 1 2

mls qos srr-queue output cos-map queue 2 threshold 2 3

mls qos srr-queue output cos-map queue 2 threshold 3 6 7

If no interface config, the queue-set 1 can be used:

3750#show mls qos queue-set 1

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      15      25      40      20

threshold1:     100     125     100      60

threshold2:     100     125     100     150

reserved  :      50     100     100      50

maximum   :     200     400     400     200

For interface config queue-set 2 explicitly:

3750#show mls qos queue-set 2

Queueset: 2

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

3850

(multiple class with queue-limit turn on)

3850#show policy-map  q-limit

Policy Map q-limit

Class users-class

Queuing action ( shaper, bandwidth and bandwidth remaining)

queue-limit cos  2 percent 50

queue-limit cos  3 percent 50

queue-limit cos  6 percent 70

queue-limit cos  7 percent 70

Note: using the above config, cos 2 and cos 3 can be dropped earlier then cos 6 and 7

Example 11: MLS QoS Enabled with Queue-Buffer Configuration

3750 (global)

3750 (interface)

3850

MLS QoS queue-set output [1] buffers [15 25 40 20 ]

Interface config queue-set [default queue-set 1]

Policy-map with queuing action and queue-buffers ratio [0-100].

3750

Default queue-buffer :

3750#show mls qos queue-set 1

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      25      25      25      25

threshold1:     100     200     100     100

threshold2:     100     200     100     100

reserved  :      50      50      50      50

maximum   :     400     400     400     400

User define queue-buffer:

mls qos queue-set output 1 buffers 15 25 40 20

3750#show mls qos queue-set 1

Queueset: 1

Queue     :       1       2       3       4

----------------------------------------------

buffers   :      15      25      40      20

threshold1:     100     125     100      60

threshold2:     100     125     100     150

reserved  :      50     100     100      50

maximum   :     200     400     400     200

3850

3850#show policy-map  queue-buffer

Policy Map queue-buffer

Class cos7

bandwidth percent 10

queue-buffers ratio 15

Class cos1

bandwidth percent 30

queue-buffers ratio 25

class-map:

========

3850#show class-map cos7

Class Map match-any cos7 (id 22)

Match cos  7

3850#show class-map cos1

Class Map match-any cos1 (id 28)

Match cos  1

Attach to the interface at egress direction:

Example 12: MLS QoS Enabled with Bandwidth Configuration

3750 (global)

3750 (interface)

3850

MLS QoS (share mode)

Interface level config

SRR-queue bandwidth share 1 30 35 5

Bandwith in policy-map

3750

Default share and shape mode:

3750-3stack#show mls qos interface gig 1/0/1 queueing

GigabitEthernet1/0/1

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  25 0 0 0

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

User config share mode under interface:

interface GigabitEthernet1/0/1

srr-queue bandwidth share 40 30 20 10

srr-queue bandwidth shape 0 0 0 0

3750#show mls qos interface gig1/0/1 queueing

GigabitEthernet1/0/1

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  0 0 0 0

Shared queue weights  :  40 30 20 10

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

3850

3850#show policy-map  bandwidth

Policy Map bandwidth

Class cos1

bandwidth percent 40

Class cos2

bandwidth percent 30

Class cos3

bandwidth percent 20

Class class-default

bandwidth percent 10

3850#show class-map cos1

Class Map match-any cos1

Match cos  1

3850#show class-map cos2

Class Map match-any cos2

Match cos  2

3850#show class-map cos3

Class Map match-any cos3 (id 26)

Match cos  3

3850#show class-map cos4

Class Map match-any cos4 (id 25)

Match cos  4

Example 13: MLS QoS Enabled with Priority

3750 (Global)

3750 (Interface)

3850

MLS QoS [expedite queue]

Note: expedite queue same as priority queue

Interface level config priority-queue out [make corresponding queue-set’s 1st queue as strict priority queue]

Prioriy level 1 in the policy-map

3750

interface GigabitEthernet1/0/2

priority-queue out

end

3750#show mls qos interface gig1/0/2 queueing

GigabitEthernet1/0/2

Egress Priority Queue : enabled

Shaped queue weights (absolute) :  25 0 0 0

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

3850

3850#show run policy-map  priority-queue

class cos7

priority level 1 ? strict priority

class cos1

shape average percent 10

Attach the above policy to interface at egress side:

Example 14: MLS QoS Enabled with Shaper Configuration

3750

Default shape mode:

GigabitEthernet1/0/3

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  25 0 0 0

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

User define shape mode:

interface GigabitEthernet1/0/3

srr-queue bandwidth shape 4 4 4 4

3750-3stack#show mls qos interface gigabitEthernet 1/0/3 queueing

GigabitEthernet1/0/3

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  4 4 4 4

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 100  (Operational Bandwidth:100.0)

The port is mapped to qset : 1

3850

3850#show policy-map shape

Policy Map shape

Class cos1

Average Rate Traffic Shaping

cir 25%

Class cos2

Average Rate Traffic Shaping

cir 25%

Class cos3

Average Rate Traffic Shaping

cir 25%

Class cos4

Average Rate Traffic Shaping

cir 25%

Example 15 : MLS QoS Enabled with Bandwith

3750 (Global)

3750 (Interface)

3850

MLS QoS

SRR-queue bandwidth limit

Speed, bandwidth

3750

interface GigabitEthernet1/0/4

srr-queue bandwidth limit 50

3750-3stack#show mls qos interface g1/0/4 queueing

GigabitEthernet1/0/4

Egress Priority Queue : disabled

Shaped queue weights (absolute) :  25 0 0 0

Shared queue weights  :  25 25 25 25

The port bandwidth limit : 50  (Operational Bandwidth:50.0)

The port is mapped to qset : 1

3850

3850#show policy-map default-shape

Policy Map default-shape

Class class-default

Average Rate Traffic Shaping

cir 50%

service-policy child [ queuing based on customer need]

Example 16: HQoS

3750 (Global configuration)

3750 (Interface)

3850

Class-map,

Policy-map

Attach policy to SVI

Interface needs configuration MLS QoS vlan_based

PV ingress policy

3750

Note:

SVI: Parent [class acl based class-map->policing]

Child  [class interface range class-map->marking]

Child class-map:

3750(config)#class-map cm-interface-1

3750(config-cmap)#match input gigabitethernet3/0/1 - gigabitethernet3/0/2

Child policy-map:

3750(config)#policy-map port-plcmap-1

3750(config-pmap)#class cm-interface-1

3750(config-pmap-c)#police 900000 9000 drop

Parent class-map matching acl:

3750(config)#access-list 101 permit ip any any

Parent class-map:

3750(config)#class-map cm-1

3750(config-cmap)#match access 101

3750(config)#policy-map vlan-plcmap

3750(config-pmap)#class cm-1

3750(config-pmap-c)#set dscp 7

3750(config-pmap-c)#service-policy port-plcmap-1

3750(config-pmap-c)#exit

3750(config-pmap)#class cm-2

3750(config-pmap-c)#service-policy port-plcmap-1

3750(config-pmap-c)#set dscp 10

Attach the policy to the interface:

3750(config)#interface vlan 10

3750(config-if)#service-policy input vlan-plcmap

3850

Note: Due to target change, this can’t be one to one mapping, need config based on

customer requirement.

Target is at port level

Parent classify on vlan

Child: none vlan classification [for example cos/dscp]

3850#show run policy-map PV_parent_marking_child_policing

class vlan10

set dscp 63

service-policy child_class_dscp_policing

class vlan11

set cos 5

service-policy child_class_dscp_policing

class vlan12

set precedence 6

service-policy child_class_dscp_policing

3850#show run policy-map child_class_dscp_policing

class dscp1

police cir percent 12

class dscp2

police cir percent 15

class dscp3

police cir percent 20

class class-default

police cir percent 22

3850#show run class-map vlan10

class-map match-any vlan10

match vlan  10

3850#show run class-map vlan11

class-map match-any vlan11

match vlan  11

3850#show run class-map vlan12

class-map match-any vlan12

match vlan  12

3850#show run class-map dscp1

class-map match-any dscp1

match  dscp 1

3850#show run class-map dscp2

class-map match-any dscp2

match  dscp 2

3850#show run class-map dscp3

class-map match-any dscp3

match  dscp 3

Related Information

- Cisco Technical Support & Downloads