Catalyst 3750 QoS Notes

Refer to the following document for an excellent reference on Catalyst 3750 Qos:
https://www.cisco.com/en/US/products/hw/switches/ps5023/products_tech_note09186a0080883f9e.shtml

Priority Queuing

  • Inbound priority queue: Q2 (of two queues)
  • Outbound priority queue: Q1 (of four queues)

Normal Behavior with “mls qos” Enabled

  • CoS is found in the 802.1p priority bits.  When entering the switch, these incoming incoming frames are marked to CoS 0.
  • CoS 0 is referenced against the cos-to-dscp mappings configured on the switch.  By default, CoS 0 is mapped to DSCP 0.
  • The frame is passed on through the switch with CoS 0 / DSCP 0

Three Options for CoS/DSCP Classification and Marking

  • There are three methods used for classification and marking on Catalyst 3750 switches:
  • Port-based configuration using the “mls qos” interface commands.
  • MQC-based configuration using class-maps and policy-maps.
  • VLAN-based configuration
  • These three methods are mutually exclusive.  Meaning, you can only use one of these options at a time.  Otherwise, the subsequent optioned configured will overwrite the initial option configured.
  • Port-Based Methods

    • Access Port (i.e. no Cisco IP phone connected).  Trust DSCP because there is not dot1q/ISL tag in the frames, which is where the CoS bits are stored.

    interface FastEthernet 1/0/10
    mls qos trust dscp

    • Trust Port (i.e. Cisco phone).  The Cisco phone uses 802.1p frames for voice vlan traffic.  PC traffic is sent untagged, which pass through as DSCP 0 regardless of the trust state.

    interface FastEthernet 1/0/20
    mls qos trust cos

    • Uplink Port (i.e. Router-facing)

    interface FastEthernet 1/0/1
    mls qos trust dscp

    Additional Port-Based Commands

    • “mls qos cos 3 override” – Sets tagged and untagged frames to the value defined.  This overrides any “mls qos trust [cos | dscp]” values.
    • “switchport priority extend cos 0” – Configures the phone to reset PC-egressing traffic to CoS 0
    • “mls qos trust device cisco-phone” – Trusts the CoS markings made by the Cisco IP phone.  It also prevents someone from plugging a PC directly into this switchport (i.e. not daisy-chaining through the phone’’s built-in switch) and receiving any preferential marking.

    MQC-Based Classification and Marking Example

    HQ-3750(config-std-nacl)#ip access-list extended ACL-VOICE-SIGNALING
    HQ-3750(config-ext-nacl)#permit tcp any any eq 1720
    HQ-3750(config-ext-nacl)#permit tcp any any eq 2000
    HQ-3750(config-ext-nacl)#permit tcp any any eq 2428
    HQ-3750(config-ext-nacl)#permit tcp any any eq 5060
    HQ-3750(config-ext-nacl)#permit tcp any any range 11000 11999
    HQ-3750(config-ext-nacl)#permit udp any any eq 1718
    HQ-3750(config-ext-nacl)#permit udp any any eq 1719
    HQ-3750(config-ext-nacl)#permit udp any any eq 2427
    HQ-3750(config-ext-nacl)#permit udp any any eq 2428
    HQ-3750(config-ext-nacl)#permit udp any any eq 5060
    HQ-3750(config-ext-nacl)#exit

    HQ-3750(config-std-nacl)#ip access-list extended ACL-VOICE-MEDIA
    HQ-3750(config-ext-nacl)#permit udp any any range 16385 32767

    HQ-3750(config)#class-map CLASS-VOICE-SIGNALING
    HQ-3750(config-cmap)#match access-group name ACL-VOICE-SIGNALING
    HQ-3750(config-cmap)#exit
    HQ-3750(config)#class-map  CLASS-VOICE-MEDIA
    HQ-3750(config-cmap)#match access-group name ACL-VOICE-MEDIA
    HQ-3750(config-cmap)#exit

    HQ-3750(config)#policy-map POLICY-VOICE
    HQ-3750(config-pmap)#class CLASS-VOICE-SIGNALING
    HQ-3750(config-pmap-c)#trust cos
    HQ-3750(config-pmap-c)#exit
    HQ-3750(config-pmap)#class CLASS-VOICE-MEDIA
    HQ-3750(config-pmap-c)#set dscp af26
    HQ-3750(config-pmap-c)#exit
    HQ-3750(config-pmap)#exit

    HQ-3750(config)#interface gigabitEthernet 1/0/13
    HQ-3750(config-if)#switchport access vlan 10
    HQ-3750(config-if)#switchport mode access
    HQ-3750(config-if)#switchport voice vlan 100
    HQ-3750(config-if)#spanning-tree portfast
    HQ-3750(config-if)#service-policy input POLICY-VOICE
    HQ-3750(config-if)#exit

    Default Scheduler Configuration

    The priority queue is disabled. Both the shaped and shared mode are configured for the SRR. Shaped mode weights override the shared mode value. Therefore, the net result is queue 1 is serviced in shaped mode and queues 2, 3, and 4 are serviced in shared mode. This means queue 1 is serviced with an absolute value that is (1/25) percent, or four percent, of the bandwidth. Queues 2, 3 and 4 are serviced at 25 percent of the bandwidth. If the bandwidth is available, then queues 2, 3 and 4 can be serviced at more than 25 percent of the bandwidth.

    Distribution1#show mls qos int gigabitEthernet 1/0/20 queueing
    GigabitEthernet1/0/20
    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

    3 Responses to “Catalyst 3750 QoS Notes”

    1. Eduardo July 30, 2010 at 2:44 pm #

      Great post!! You have a great page buddy, congratulations!

    2. shingei March 25, 2011 at 8:06 am #

      What an extensive document for Cat3750 QoS.
      Some correction to the policy-map,i think should mark the RTP traffic to DSCP 46 or EF instead of af26,right?
      What is af26?

      Thanks.

    3. Alan May 13, 2011 at 9:48 am #

      Hi, i have Catalyst 3750, which has 50 Meg connection with VZ via one of its FE port.
      and my customers are experiancing latency inssues.
      according to our provider(which is diff company) , VZ is policing to 50 meg, and they are advising us to do shaping.
      any ideas how to implement shaping on a Cat 3750.

      FYI, our end user don’t do any packet marking or classificaion.

    Leave a Reply:

    Gravatar Image

    Don't have a Gravatar? Get one!

    Have you Subscribed via RSS yet? Don't miss a post!