Cisco UCS uses Data Center Ethernet (DCE) to handle all traffic inside a Cisco UCS instance. This industry standard enhancement to Ethernet divides the bandwidth of the Ethernet pipe into eight virtual lanes. Two virtual lanes are reserved for internal system and management traffic. You can configure quality of service for the other six virtual lanes. System classes determine how the DCE bandwidth in these six virtual lanes is allocated across the entire Cisco UCS instance.
Each system class reserves a specific segment of the bandwidth for a specific type of traffic. This provides a level of traffic management, even in an oversubscribed system. For example, you can configure the Fibre Channel Priority system class to determine the percentage of DCE bandwidth allocated to FCoE traffic.
The following table describes the system classes that you can configure:
Table 1 System Classes
System Class
Description
Platinum
Gold
Silver
Bronze
A configurable set of system classes that you can include in the QoS policy for a service profile. Each system class manages one lane of traffic.
All properties of these system classes are available for you to assign custom settings and policies.
Best Effort
A system class that sets the quality of service for the lane reserved for Basic Ethernet traffic.
Some properties of this system class are preset and cannot be modified. For example, this class has a drop policy that allows it to drop data packets if required. You cannot disable this system class.
Fibre Channel
A system class that sets the quality of service for the lane reserved for Fibre Channel over Ethernet traffic.
Some properties of this system class are preset and cannot be modified. For example, this class has a no-drop policy that ensures it never drops data packets. You cannot disable this system class.
Quality of Service Policies
QoS policies assign a system class to the outgoing traffic for a vNIC or vHBA. This system class determines the quality of service for that traffic.
You must include a QoS policy in a vNIC policy or vHBA policy and then include that policy in a service profile to configure the vNIC or vHBA.
Flow Control Policy
Flow control policies determine whether the uplink Ethernet ports in a Cisco UCS instance send and receive IEEE 802.3x pause frames when the receive buffer for a port fills. These pause frames request that the transmitting port stop sending data for a few milliseconds until the buffer clears.
For flow control to work between a LAN port and an uplink Ethernet port, you must enable the corresponding receive and send flow control parameters for both
ports. For Cisco UCS, the flow control policies configure these parameters.
When you enable the send function, the uplink Ethernet port sends a pause request to the network port if the incoming packet rate becomes too high. The pause remains in effect for a few milliseconds before traffic is reset to normal levels. If you enable the receive function, the uplink Ethernet port honors all pause requests from the network port. All traffic is halted on that uplink port until the network port cancels the pause request.
Because you assign the flow control policy to the port, changes to the policy have an immediate effect on how the port reacts to a pause frame or a full receive buffer.
Configuring a System Class
The type of adapter in a server impacts the maximum MTU supported. Network MTU above the maximums may cause the packet to be dropped for the following adapters:
The Cisco UCS CNA M71KR adapter supports a maximum MTU of 9216.
The Cisco UCS 82598KR-CI adapter supports a maximum MTU of 14000.
Enters Ethernet server QoS Ethernet classified mode for the specified system class.
Step 4
UCS-A /eth-server/qos/eth-classified # enable
Enables the specified system class.
Step 5
UCS-A /eth-server/qos/eth-classified # set coscos-value
Specifies the class of service for the specified system class. Valid class of service values are 0 to 6; higher values indicate more important traffic.
Step 6
UCS-A /eth-server/qos/eth-classified # set drop{drop | no-drop}
Specifies whether the channel can drop packets or not.
Note
Only one system class can use the no-drop option.
Step 7
UCS-A /eth-server/qos/eth-classified # set mtu{mtu-value | fc | normal}
Specifies the maximum transmission unit (MTU) for the specified system class. Valid MTU values are 1538 to 9216.
Step 8
UCS-A /eth-server/qos/eth-classified # set multicast-optimize
{no | yes}
Specifies whether the class is optimized to for sending multicast packets.
Step 9
UCS-A /eth-server/qos/eth-classified # set weight{weight-value | best-effort | none}
Specifies the relative weight for the specified system class. Valid weight values are 0 to 10.
Commits the transaction to the system configuration.
The following example enables the platinum system class, allows the channel to drop packets, sets the class of service to 6, sets the MTU to normal, optimizes the class for sending multicast packets, sets the relative weight to 5, and commits the transaction:
UCS-A# scope eth-server
UCS-A /eth-server # scope qos
UCS-A /eth-server/qos # scope eth-classified platinum
UCS-A /eth-server/qos/eth-classified # enable
UCS-A /eth-server/qos/eth-classified* # set drop drop
UCS-A /eth-server/qos/eth-classified* # set cos 6
UCS-A /eth-server/qos/eth-classified* # set mtu normal
UCS-A /eth-server/qos/eth-classified* # set multicast-optimize yes
UCS-A /eth-server/qos/eth-classified* # set weight 5
UCS-A /eth-server/qos/eth-classified* # commit-buffer
UCS-A /eth-server/qos/eth-classified #
Disabling a System Class
If you disable a system class that is used in a QoS policy, Cisco UCS Manager uses the system class configured with CoS 0 for traffic on servers which are configured with the QoS policy. If no system class is configured as CoS 0, the Best Effort system class is used. You cannot disable the Best Effort or Fibre Channel system classes.
Enters org mode for the specified organization. To enter the default org mode, type / as the org-name.
Step 2
Switch-A /org # create qos-policypolicy-name
Creates the specified QoS policy, and enters org QoS policy mode.
Step 3
Switch-A /org/qos-policy # create egress-policy
Creates the egress policy (for both vNICs and vHBAs) to be used by the QoS policy, and enters org QoS policy egress policy mode.
Step 4
Switch-A /org/qos-policy/egress-policy # set host-cos-control
{full | none}
Specifies whether the host or Cisco UCS Manager controls the class of service (CoS).
Use the full keyword to have the host control the CoS. If the packet has a valid CoS value, the host uses that value. Otherwise, it uses the CoS value associated with the specified class priority. Use the none keyword to have Cisco UCS Manager use the CoS value associated with the specified priority.
Step 5
Switch-A /org/qos-policy/egress-policy # set priosys-class-name
Specifies the system class to be used for the egress policy. The sys-class-name argument can be one of the following class keywords:
best-effort—Do not use this priority. It is reserved for the Basic Ethernet traffic lane. If you assign this priority to a QoS policy and configure another system class as CoS 0, Cisco UCS Manager does not default to this system class. It defaults to the priority with CoS 0 for that traffic.
bronze—Use this priority for QoS policies that control vNIC traffic only.
fc—Use this priority for QoS policies that control vHBA traffic only
gold—Use this priority for QoS policies that control vNIC traffic only.
platinum—Use this priority for QoS policies that control vNIC traffic only.
silver—Use this priority for QoS policies that control vNIC traffic only.
Step 6
Switch-A /org/qos-policy/egress-policy # set rate
{line-rate | Kbps}
burstbytes
Specifies the rate limit for egress traffic by defining the average traffic rate and burst size. The line-rate keyword sets the rate limit to the physical line rate.
The following example creates a QoS policy for vNIC traffic, assigns the platinum system class and sets the rate limit (traffic rate and burst size) for the egress policy, and commits the transaction:
The following example creates a QoS policy for vHBA traffic, assigns the fc (Fibre Channel) system class and sets the rate limit (traffic rate and burst size) for the egress policy, and commits the transaction:
Switch-A# scope org /
Switch-A /org # create qos-policy VhbaPolicy12
Switch-A /org/qos-policy* # create egress-policy
Switch-A /org/qos-policy/egress-policy* # set prio fc
Switch-A /org/qos-policy/egress-policy* # set rate 5000000 burst 65000
Switch-A /org/qos-policy/egress-policy* # set commit-buffer
Switch-A /org/qos-policy/egress-policy #
What to Do Next
Include the QoS policy in a vNIC or vHBA template.
Deleting a QoS Policy
If you delete a QoS policy that is in
use or you disable a system class that is used in a QoS policy, any vNIC or vHBA which uses
that QoS policy is assigned to the Best Effort system class or to the system class with a CoS of 0. In a
system that implements multi-tenancy,
Cisco UCS Manager first attempts to find a matching QoS policy in the
organization hierarchy.
Procedure
Command or Action
Purpose
Step 1
UCS-A# scope orgorg-name
Enters organization mode for the specified organization. To enter the root organization mode, type / as the org-name.
Step 2
UCS-A /org # delete qos-policypolicy-name
Deletes the specified QoS policy.
Step 3
UCS-A /org # commit-buffer
Commits the transaction to the system configuration.
The following deletes the QoS policy named QosPolicy34 and commits the transaction:
Configure the network port with the
corresponding setting for the flow control that you need. For example, if you
enable the send setting for flow-control pause frames in the policy, make sure
that the receive parameter in the network port is set to on or desired. If you
want the
Cisco UCS port to receive flow-control frames, make sure that the network
port has a send parameter set to on or desired. If you do not want to use flow
control, you can set the send and receive parameters on the network port to
off.
UCS-A /eth-uplink/flow-control/policy #
set prioprio-option
Specifies one of the following flow control priority options:
auto—The Cisco UCS system and the network
negotiate whether PPP will be used on this fabric interconnect.
on—PPP is enabled on this fabric
interconnect.
Step 5
UCS-A /eth-uplink/flow-control/policy #
set receivereceive-option
Specifies one of the following flow control receive options:
off—Pause requests from the network are
ignored and traffic flow continues as normal.
on—Pause requests are honored and all
traffic is halted on that uplink port until the network cancels the pause
request.
Step 6
UCS-A /eth-uplink/flow-control/policy #
set sendsend-option
Specifies one of the following flow control send options:
off—Traffic on the port flows normally
regardless of the packet load.
on—The Cisco UCS system sends a pause
request to the network if the incoming packet rate becomes too high. The pause
remains in effect for a few milliseconds before traffic is reset to normal
levels.