[c-nsp] 3560 buffering

Peter Rathlev peter at rathlev.dk
Tue Mar 16 07:10:47 EDT 2010


On Tue, 2010-03-16 at 20:34 +1000, mb at adv.gcomm.com.au wrote:
> Wondering if you could share you current setup for buffers/queues etc
> (We are currently running "default")

Sure, I've pasted our default template below.

Keep in mind that it was developed in a "trial and error" (or maybe
rather "try all and err"!) fashion, without any real knowledge about
exactly how the hardware platform works.

It's a very very simple QoS configuration. We only do voice
policing/priority and no "real" QoS. We previously tried a more complex
service policy, but kept getting these messages:

 %QOSMGR-4-HARDWARE_NOT_SUPPORTED  Hardware limitation has reached for policymap ACCESS-INGRESS

This configuration only attempts to allocate as much buffer as possible
for data traffic.

I hope the configuration doesn't make me the laughingstock of c-nsp.
Comments about inappropriate configuration are more than welcome. :-)


* Start of generic template *

!;Configuration template for RM client access switches
! Quality of Service MLS configuration
! This template does not include interface related configuration
! Last update: 2009-11-15, peter.rathlev at stab.rm.dk
!
! Reset "mls qos" settings
no mls qos map cos-dscp
no mls qos map policed-dscp
no mls qos srr-queue input threshold 1
no mls qos srr-queue input threshold 2
no mls qos srr-queue input priority-queue 1
no mls qos srr-queue input dscp-map
no mls qos srr-queue input cos-map
no mls qos srr-queue input bandwidth
no mls qos srr-queue input buffers
no mls qos queue-set output 1 threshold
no mls qos queue-set output 1 buffers
no mls qos queue-set output 2 threshold
no mls qos queue-set output 2 buffers
no mls qos srr-queue output dscp-map
no mls qos srr-queue output cos-map
!
! Standard CoS-DSCP-map, i.e. DSCP = CoS * 8 except CoS 5 which is mapped to EF (46).
mls qos map cos-dscp 0 8 16 24 32 46 48 56
! Excess EF traffic down-classed to AF41
mls qos map policed-dscp 46 to 34
!
!
! ***** Definition of input-queues *****
!
mls qos srr-queue input threshold 1 90 100
mls qos srr-queue input threshold 2 90 95
! Input queue 2 is is priority with 5% bandwidth guarantee
mls qos srr-queue input priority-queue 2 bandwidth 5
! DSCP-mapping
mls qos srr-queue input dscp-map queue 1 threshold 3  0  1  2  3  4  5  6  7
mls qos srr-queue input dscp-map queue 1 threshold 1  8  9 10 11 12 13 14 15
mls qos srr-queue input dscp-map queue 1 threshold 3 16 17 18 19 20 21 22 23
mls qos srr-queue input dscp-map queue 1 threshold 3 24 25 26 27 28 29 30 31
mls qos srr-queue input dscp-map queue 1 threshold 3 32 33 34 35 36 37 38 39
mls qos srr-queue input dscp-map queue 2 threshold 2 40 41 42 43 44 45 46 47
mls qos srr-queue input dscp-map queue 2 threshold 3 48 49 50 51 52 53 54 55
mls qos srr-queue input dscp-map queue 2 threshold 3 56 57 58 59 60 61 62 63
! CoS-translation of above
mls qos srr-queue input cos-map queue 1 threshold 1   1
mls qos srr-queue input cos-map queue 1 threshold 3 0   2 3 4
mls qos srr-queue input cos-map queue 2 threshold 2           5
mls qos srr-queue input cos-map queue 2 threshold 3             6 7
!
! Input bandwidth, 90% for queue 1, 10% for queue 2
mls qos srr-queue input bandwidth 9 1
! Input buffer depth, 95% for queue 1, 5% for queue 2 (which is non-bursty)
mls qos srr-queue input buffers 95 5
!
!
! ***** Definition of output-queues *****
!
! Generally speaking:
!   Queue 1 is "priority", 5% bandwidth and 5% buffers
!   Queue 2 is "other", 95% bandwidth and 95% buffers
!
! Q1: Voice traffic, control traffic
! Q2: Other traffic
! Q3: Unused
! Q4: Unused
!
mls qos queue-set output 1 buffers 5 95 0 0
! WTD: Queue 1 is priority, WTD set to 100% for all levels.
mls qos queue-set output 1 threshold 1 100 100 100 100
! WTD: Queue 2 is "other"
mls qos queue-set output 1 threshold 2 3100 3100 100 3200
!
! Egress mapping
! Priority            => queue 1, threshold 3 (40-63)
! Scavenger           => queue 2, threshold 1 (8-15)
! Other               => queue 2, threshold 3 (0-7,16-39)
mls qos srr-queue output dscp-map queue 2 threshold 3  0  1  2  3  4  5  6  7
mls qos srr-queue output dscp-map queue 2 threshold 1  8  9 10 11 12 13 14 15
mls qos srr-queue output dscp-map queue 2 threshold 3 16 17 18 19 20 21 22 23
mls qos srr-queue output dscp-map queue 2 threshold 3 24 25 26 27 28 29 30 31
mls qos srr-queue output dscp-map queue 2 threshold 3 32 33 34 35 36 37 38 39
mls qos srr-queue output dscp-map queue 1 threshold 3 40 41 42 43 44 45 46 47
mls qos srr-queue output dscp-map queue 1 threshold 3 48 49 50 51 52 53 54 55
mls qos srr-queue output dscp-map queue 1 threshold 3 56 57 58 59 60 61 62 63
!
mls qos srr-queue output cos-map queue 2 threshold 1   1
mls qos srr-queue output cos-map queue 2 threshold 3 0   2 3 4
mls qos srr-queue output cos-map queue 1 threshold 3           5 6 7
!
mls qos
!
end

* End of generic template *

Then there's the service-policy defintion:

* Start of service-policy template *

!;Configuration template for RM client access switches
! Quality of Service ACL, class-map and policy-map configuration
! This template does not include interface related configuration
! Last update: 2009-11-15, peter.rathlev at stab.rm.dk
!
no policy-map ACCESS-INGRESS
no class-map Match-QoS-Priority
no class-map Match-QoS-EF
no ip access-list extended QoS-Priority
!
! --- QoS
! ACL for identifying VoIP traffic
ip access-list extended QoS-Priority
 remark --- VoIP devices
 permit ip <voice access net + wilcard mask> any
 permit ip any <voice access net + wildcard mask>
 remark --- Callmanagers et al
 permit ip <voice services net + wildcard mask> any
 permit ip any <voice services net + wildcard mask>
 exit
!
! Definition of class-map for above ACL:
class-map Match-QoS-Priority
 match access-group name QoS-Priority
 exit
!
class-map Match-QoS-EF
 match ip dscp ef
 exit
!
! Definition of policy-map for standard access interface
policy-map ACCESS-INGRESS
 class Match-QoS-Priority
  trust dscp
  police 10000000 96000 exceed-action policed-dscp-transmit
  exit
 !
 ! Remark EF traffic not belonging to Match-QoS-Priority
 class Match-QoS-EF
  set ip dscp af41
  exit
 !
 class class-default
  set ip dscp af43
  exit
 !
 exit
!
end

* End of service-policy template *

The interface configuration for a 3560-24 would then be:

* Start of interface specific template for WS-C3560-24PS *

! Cisco 3560, 24 FE-TX + 2 SFP
interface range FastEthernet0/1 - 24
 ! Downlink
 no auto qos voip
 queue-set 1
 srr-queue bandwidth shape 0 0 0 0
 srr-queue bandwidth share 5 95 1 1
 priority-queue out
 service-policy input ACCESS-INGRESS
 exit
!
interface range GigabitEthernet0/1 - 2
 ! Uplink
 no auto qos voip
 queue-set 1
 srr-queue bandwidth shape 0 0 0 0
 srr-queue bandwidth share 5 95 1 1
 priority-queue out
 mls qos trust dscp
 exit
!
end

* End of interface specific template for WS-C3560-24PS *

-- 
Peter




More information about the cisco-nsp mailing list