Cisco Nexus 6000 Series NX-OS Quality of Service Configuration Guide, Release 6.x
Configuring QoS on Interfaces
Downloads: This chapterpdf (PDF - 1.17MB) The complete bookPDF (PDF - 2.66MB) | The complete bookePub (ePub - 283.0KB) | Feedback

Configuring QoS on Interfaces

Configuring QoS on Interfaces

This chapter contains the following sections:

Information About Interface QoS

Trust Boundaries

The trust boundary is enforced by the incoming interface as follows:

  • All Fibre Channel and virtual Fibre Channel interfaces are automatically classified into the FCoE system class.
  • By default, all Ethernet interfaces are trusted interfaces.The 802.1p CoS and DSCP are preserved unless the marking is configured. There is no default CoS to queue and DSCP to queue mapping. You can define and apply a policy to create these mappings. By default, without a user defined policy, all traffic is assigned to the default queue.
  • Any packet that is not tagged with an 802.1p CoS value is classified into the default drop system class. If the untagged packet is sent over a trunk, it is tagged with the default untagged CoS value, which is zero.
  • You can override the default untagged CoS value for an Ethernet interface or port channel.
  • You can override the default untagged CoS value for an Ethernet interface or a port channel interface using the untagged cos cos-value command.
  • You can override the default untagged Cos value for an Ethernet or a Layer 3 interface or a port channel interface using the untagged cos cos-value command.

After the system applies the untagged CoS value, QoS functions the same as for a packet that entered the system tagged with the CoS value.

Policy for Fibre Channel Interfaces

The egress queues are not configurable for native Fibre Channel interfaces. Two queues are available as follows:

  • A strict priority queue to serve high-priority control traffic.
  • A queue to serve all data traffic and low-priority control traffic.

QoS for Multicast Traffic

Cisco Nexus devices have 128 multicast ingress queue per interface. For each switch, one queue is allocated for each system class.

By default, all multicast Ethernet traffic is classified into the default drop system class. This traffic is serviced by one multicast queue.

Optimized multicasting allows use of the unused multicast queues to achieve better throughput for multicast frames. If optimized multicast is enabled for the default drop system class, the system will use all six queues to service the multicast traffic. When optimized multicast is enabled for the default drop system class, all six queues are given equal priority.

If you define a new system class, a dedicated multicast queue is assigned to that class. This queue is removed from the set of queues available for the optimized multicast class.

The system provides two predefined class maps for matching broadcast or multicast traffic. These class maps are convenient for creating separate policy maps for unicast and multicast traffic.

The predefined class maps are as follows:

class-all-flood

The class-all-flood class map matches all broadcast, multicast, and unknown unicast traffic (across all CoS values). If you configure a policy map with the class-all-flood class map, the system automatically uses all available multicast queues for this traffic.

class-ip-multicast

The class-ip-multicast class map matches all IP multicast traffic. Policy options configured in this class map apply to traffic across all Ethernet CoS values. For example, if you enable optimized multicast for this class, the IP multicast traffic for all CoS values is optimized.


Note


If you configure either of these predefined class maps as a no-drop class, the priority flow control capability is applied across all Ethernet CoS values. In this configuration, pause will be applied to unicast and multicast traffic.


Configuring Interface QoS

Configuring Untagged CoS

Any incoming packet not tagged with an 802.1p CoS value is assigned the default untagged CoS value of zero (which maps to the default Ethernet drop system class). You can override the default untagged CoS value for an Ethernet or EtherChannel interface.

You can configure flow control on a Layer 2 or Layer 3 interface. Use the no switchport command to configure a Layer 3 interface

On a Cisco Nexus device, you can configure a type qos policy map and untagged CoS on the same interface.

Procedure
      Command or Action Purpose
    Step 1 switch# configure terminal 

    Enters global configuration mode.

     
    Step 2 switch(config)# interface {ethernet [chassis/]slot/port | port-channel channel-number}
     

    Enters configuration mode for the specified interface or port channel.

    Note   

    If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

     
    Step 3 switch(config-if)# no switchport
     
    (Optional)

    Selects a Layer 3 interface.

     
    Step 4 switch(config-if)# untagged cos cos-value
     

    Configures the untagged CoS value. Values can be from 1 to 7.

     

    This example shows how to set the CoS value to 4 for untagged frames received on an interface:

    switch# configure terminal
    switch(config)# interface ethernet 1/2
    switch(config-if)# untagged cos 4

    This example shows how to set the CoS value to 3 for untagged frames received on a Layer 3 interface:

    switch# configure terminal
    switch(config)# interface ethernet 1/5
    switch(config-if)# no switchport
    switch(config-if)# untagged cos 3
    switch(config-if)#

    Configuring Interface Service Policy

    An input qos policy is a service policy applied to incoming traffic on an Ethernet interface for classification. For type queuing, the output policy is applied to all outgoing traffic that matches the specified class. When you configure an input queuing policy on an interface or EtherChannel, the switch sends the configuration data to the adapter using the DCBX protocol.


    Note


    Type qos policies can be activated only on Cisco Nexus device interfaces and Cisco Nexus Fabric Extender interfaces. Type qos policies on Fabric Extender fabric interfaces or Fabric Extender fabric EtherChannel interfaces are ineffective, though the Cisco NX-OS CLI does not reject the configuration.

    We recommend that you do not configure type qos policy-maps on Fabric Extender fabric interfaces or Fabric Extender fabric EtherChannel interfaces to avoid wasting hardware resources.


    Procedure
        Command or Action Purpose
      Step 1 switch# configure terminal
       

      Enters configuration mode.

       
      Step 2 switch(config)# interface {ethernet [chassis/]slot/port | port-channel channel-number}
       

      Enters configuration mode for the specified interface.

      Note   

      The service policy on a port channel applies to all member interfaces.

      Note   

      If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

       
      Step 3 switch(config-if)# service-policy [type {qos | queuing}] [input | output]policy-name
       

      Specifies the policy map to use as the service policy for the system. There are two policy-map configuration modes:

      • qos—Classification mode; this is the default mode.
      • queuing—Queuing mode.
      Note   

      The input keyword specifies that this policy map should be applied to traffic received on an interface. The output keyword specifies that this policy map should be applied to traffic transmitted from an interface. You can only apply input to a qos policy; you can only apply both input and output to a queuing policy.

       
      Step 4 switch(config-if)# service-policy input policy-name
       

      Applies the policy map to the interface.

      Note   

      There is a restriction that system type qos policy cannot be the same as any the type qos policy applied to an interface or EtherChannel.

       

      This example shows how to apply a policy to an Ethernet interface:

      switch# configure terminal
      switch(config)# interface ethernet 1/1
      switch(config-if)# service-policy type qos input policy1

      Configuring a Service Policy for a Layer 3 Interface

      You can configure a service policy for a Layer 3 interface.

      Procedure
          Command or Action Purpose
        Step 1 switch# configure terminal 

        Enters global configuration mode.

         
        Step 2 switch(config)# interface ethernet slot/port
         

        Enters configuration mode for the specified interface.

        Note   

        If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

         
        Step 3 switch(config-if)# no switchport
         

        Selects the Layer 3 interface.

         
        Step 4 switch(config-if)# service-policy [type {qos | queuing} [input | output]policy-name
         

        Specifies the policy map to use as the service policy for the Layer 3 interface. There are two policy-map configuration modes:

        • qos—Classification mode (this is the default mode).
        • queuing—Queuing mode.
        Note   

        The input keyword specifies that this policy map should be applied to traffic received on an interface. The output keyword specifies that this policy map should be applied to traffic transmitted from an interface. You can only apply input to a qos policy; you can apply both input and output to a queuing policy.

         

        This example shows how to attach a queuing policy map to a Layer 3 interface:

        switch# configure terminal
        switch(config)# interface ethernet 1/5
        switch(config-if)# no switchport
        switch(config-if)# service-policy type queuing output my_output_q_policy
        switch(config-if)#

        Changing the Bandwidth Allocated to Unicast and Multicast Traffic

        You can change the bandwidth allocated to unicast and multicast traffic by assigning weighted round robin (WRR) weights as a percentage of the interface data rate to the egress queues.

        Procedure
            Command or Action Purpose
          Step 1 switch# configure terminal 

          Enters global configuration mode.

           
          Step 2 switch(config)# interface ethernet slot/port
           

          Enters configuration mode for the specified interface.

          Note   

          If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

           
          Step 3 switch(config-if)# wrr unicast-bandwidth percentage-value
           

          Changes the bandwidth allocated to unicast and multicast traffic on traffic congestion. The percent bandwidth value ranges from 0 to 100 percent.

           

          This example shows how to attach a queuing policy map to a Layer 3 interface:

          switch# configure terminal
          switch(config)# interface ethernet 1/5
          switch(config-if)# wrr unicast-bandwidth 75
          switch(config-if)#
          

          Verifying the Interface QoS Configuration

          Use one of the following commands to verify the configuration:

          Command

          Purpose

          show class-map

          Displays the class maps defined on the switch.

          show policy-map [name]

          Displays the policy maps defined on the switch. Optionally, you can display the named policy only.

          show policy-map interface [interface number]

          Displays the policy map settings for an interface or all interfaces.

          show queuing interface [interface slot/\port]

          Displays the queue configuration and statistics.

          Note   

          If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

          show interface flowcontrol [module numbef ]

          Displays the detailed listing of the flow control settings on all interfaces.

          show interface [interface slot/port] priority-flow-control [module number]

          Displays the priority flow control details for a specified interface.

          Note   

          If this is a 10G breakout port, the slot/port syntax is slot/QSFP-module/port.

          show interface untagged-cos [module number]

          Displays the untagged CoS values for all interfaces.

          running-config ipqos

          Displays information about the running configuration for QoS.

          startup-config ipqos

          Displays information about the startup configuration for QoS.