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.

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 the configuration mode for the specified interface or port channel.

Step 3

(Optional) 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.

Example

The following 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

The following 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 an 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 host interfaces. Type qos policies are not supported on Fabric Extender fabric interfaces or Fabric Extender fabric EtherChannel interfaces.


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 the configuration mode for the specified interface.

Note 

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

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.

Example

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 the configuration mode for the specified interface.

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.

Example

The following 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)#

The following example shows how to attach an input qos 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 qos input my_input_qos_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.

Step 3

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

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

Example

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 

You need to define the corresponding classes for the QoS groups in the applied network-qos policy. Otherwise, the statistics for different QoS groups are not displayed when you run the show queuing interface command.

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.

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.