Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Understanding Default CoS Scheduling and Classification

 

If you do not explicitly configure classifiers and apply them to interfaces, the switch uses the default classifier for ingress traffic. If you do not configure hierarchical scheduling (also known as enhanced transmission selection (ETS)) on an interface, the switch uses the default schedulers for egress traffic. Default classification maps all traffic into default forwarding classes (best-effort, fcoe, no-loss, network-control, and mcast).

Hierarchical scheduling groups IEEE 802.1p priorities (IEEE 802.1p code points, which classifiers map to forwarding classes, which in turn are mapped to output queues) into priority groups (forwarding class sets). If you use only the default traffic scheduling and classification, the switch automatically creates a default priority group that contains all of the priorities (which are mapped to forwarding classes and output queues), and assigns 100 percent of the port output bandwidth to that priority group. The forwarding classes (queues) in the default forwarding class set receive bandwidth based on the default classifier settings. The default priority group is transparent. It does not appear in the configuration (it is used for Data Center Bridging Capability Exchange (DCBX) protocol advertisement on QFX Series switches).

Note

If you explicitly configure one or more priority groups on an interface, any forwarding class that is not assigned to a priority group on that interface receives no bandwidth. This means that if you configure hierarchical scheduling on an interface, every forwarding class (priority) that you want to forward traffic on that interface must belong to a forwarding class set (priority group).

The following sections describe:

Default Classification

The default classifiers assign unicast and multicast best-effort and network-control ingress traffic to forwarding classes and loss priorities. The switch applies default unicast DSCP, unicast IEEE 802.1, and multidestination classifiers to each interface that does not have explicitly configured classifiers. If you explicitly configure one type of classifier but not other types of classifiers, the system uses only the configured classifier and does not use default classifiers for other types of traffic. There are two different default unicast IEEE 802.1 classifiers, a trusted classifier and an untrusted classifier. On QFX Series switches, the trusted classifier is the default IEEE classifier.

Table 1 shows the default mapping of DSCP code-point values to unicast forwarding classes and loss priorities for DSCP IP and DCSP IPv6.

Table 1: Default DSCP IP and IPv6 Unicast Classifiers

Code Point

Forwarding Class

Loss Priority

000000 (be)

best-effort

low

000001

best-effort

low

000010

best-effort

low

000011

best-effort

low

000100

best-effort

low

000101

best-effort

low

000110

best-effort

low

000111

best-effort

low

001000 (cs1)

best-effort

low

001001

best-effort

low

001010 (af11)

best-effort

low

001011

best-effort

low

001100 (af12)

best-effort

low

001101

best-effort

low

001110 (af13)

best-effort

low

001111

best-effort

low

010000 (cs2)

best-effort

low

010001

best-effort

low

010010 (af21)

best-effort

low

010011

best-effort

low

010100 (af22)

best-effort

low

010101

best-effort

low

010110 (af23)

best-effort

low

010111

best-effort

low

011000 (cs3)

best-effort

low

011001

best-effort

low

011010 (af31)

best-effort

low

011011

best-effort

low

011100 (af32)

best-effort

low

011101

best-effort

low

011110 (af33)

best-effort

low

011111

best-effort

low

100000 (cs4)

best-effort

low

100001

best-effort

low

100010 (af41)

best-effort

low

100011

best-effort

low

100100 (af42)

best-effort

low

100101

best-effort

low

100110 (af43)

best-effort

low

100111

best-effort

low

101000 (cs5)

best-effort

low

101001

best-effort

low

101011

best-effort

low

101100

best-effort

low

101101

best-effort

low

101110 (ef)

best-effort

low

101111

best-effort

low

110000 (nc1)

network-control

low

110001

network-control

low

110010

network-control

low

110011

network-control

low

110100

network-control

low

110101

network-control

low

110110

network-control

low

110111

network-control

low

111000 (nc2)

network-control

low

111001

network-control

low

111010

network-control

low

111011

network-control

low

111100

network-control

low

111101

network-control

low

111110

network-control

low

111111

network-control

low

Note

There are no default DSCP IP or IPv6 multidestination classifiers for multidestination traffic. DSCP IPv6 multidestination classifiers are not supported for multidestination traffic.

Table 2 shows the default trusted classifier mapping of IEEE 802.1 code-point values to unicast forwarding classes and loss priorities .

Table 2: Default IEEE 802.1 Unicast Classifiers (Trusted)

Code Point

Forwarding Class

Loss Priority

be (000)

best-effort

low

be1 (001)

best-effort

low

ef (010)

best-effort

low

ef1 (011)

fcoe

low

af11 (100)

no-loss

low

af12 (101)

best-effort

low

nc1 (110)

network-control

low

nc2 (111)

network-control

low

Table 3 shows the default untrusted mapping of IEEE 802.1p code-point values to unicast forwarding classes and loss priorities.

Table 3: Default IEEE 802.1 Unicast Classifiers (Untrusted)

Code Point

Forwarding Class

Loss Priority

000

best-effort

low

001

best-effort

low

010

best-effort

low

011

best-effort

low

100

best-effort

low

101

best-effort

low

110

best-effort

low

111

best-effort

low

Table 4 shows the default mapping of IEEE 802.1 code-point values to multidestination (multicast, broadcast, and destination lookup fail traffic) forwarding classes and loss priorities.

Table 4: Default IEEE 802.1 Multidestination Classifiers

Code Point

Forwarding Class

Loss Priority

be (000)

mcast

low

be1 (001)

mcast

low

ef (010)

mcast

low

ef1 (011)

mcast

low

af11 (100)

mcast

low

af12 (101)

mcast

low

nc1 (110)

mcast

low

nc2 (111)

mcast

low

Default Scheduling

The default schedulers allocate egress bandwidth resources to unicast and multicast egress traffic as shown in Table 5:

Table 5: Default Scheduler Configuration

Default Scheduler and Queue Number

Transmit Rate (Minimum Guaranteed Bandwidth)

Shaping Rate (Maximum Bandwidth)

Excess Bandwidth Sharing

Priority

Buffer Size

best-effort forwarding class scheduler (queue 0)

5%

None

5%

low

5%

fcoe forwarding class scheduler (queue 3)

Note: Do not map traffic to the default fcoe forwarding class. The default fcoe forwarding class carries the no-loss packet drop attribute, which is not supported on OCX Series switches. Other switches use the fcoe forwarding class for Fibre Channel over Ethernet (FCoE) lossless Layer 2 transport, but OCX Series switches do not support FCoE or lossless Layer 2 transport.

If you want to use queue 3, configure a new forwarding class without the no-loss packet drop attribute and map it to queue 3.

35%

None

35%

low

35%

no-loss forwarding class scheduler (queue 4)

Note: Do not map traffic to the default no-loss forwarding class. The default no-loss forwarding class carries the no-loss packet drop attribute, which is not supported on OCX Series switches. Other switches use the no-loss forwarding class for lossless Layer 2 transport, but OCX Series switches do not support lossless Layer 2 transport.

If you want to use queue 4, configure a new forwarding class without the no-loss packet drop attribute and map it to queue 4.

35%

None

35%

low

35%

network-control forwarding class scheduler (queue 7)

5%

None

5%

low

5%

mcast forwarding class scheduler (queue 8)

20%

None

20%

low

20%

Note

The minimum guaranteed bandwidth rate also determines the amount of excess (extra) bandwidth that the queue can share. Extra bandwidth is allocated to queues in proportion to the minimum guaranteed bandwidth (transmit rate) of each queue.

The default DSCP classifier maps traffic only to the best-effort (queue 0), network-control (queue 7), and mcast (queue 8) forwarding classes. Only the five default schedulers shown in Table 5 have port resources (for example, bandwidth) mapped to them by default, but only the queues that are forwarding traffic use port resources. So even though 35 percent of port bandwidth is allocated to the fcoe and no-loss schedulers, that bandwidth is available to the best-effort, network-control, and mcast schedulers because no traffic is mapped by default to the fcoe and no-loss forwarding classes. The amount of default bandwidth each forwarding class receives on a port is proportional to the default scheduler transmit rate. Unused bandwidth is shared among queues that need more bandwidth. (You can configure schedulers and forwarding classes to allocate bandwidth to other queues or to change the default bandwidth of a default queue.) In addition, multidestination queue 11 receives enough bandwidth from the default multidestination scheduler to handle CPU-generated multidestination traffic.

Default hierarchical scheduling divides the total port bandwidth between two groups of traffic: unicast traffic and multidestination traffic. By default, unicast traffic consists of queue 0 (best-effort forwarding class) and queue 7 (network-control forwarding class) because no traffic is mapped by default to queue 3 (fcoe forwarding class) or queue 4 (no-loss forwarding class). Unicast traffic receives and shares a total of 80 percent of the port bandwidth. By default, multidestination traffic (mcast queue 8) receives a total of 20 percent of the port bandwidth. So on a 10-Gigabit port, unicast traffic receives 8-Gbps of bandwidth and multidestination traffic receives 2-Gbps of bandwidth.

Note

Multidestination queue 11 also receives a small amount of default bandwidth from the multidestination scheduler. CPU-generated multidestination traffic uses queue 11, so you might see a small number of packets egress from queue 11. In addition, in the unlikely case that firewall filter match conditions map multidestination traffic to a unicast forwarding class, that traffic uses queue 11.

Default scheduling uses weighted round-robin (WRR) scheduling. Each queue receives a portion (weight) of the total available interface bandwidth. The scheduling weight is based on the transmit rate of the default scheduler for that queue. For example, queue 7 receives a default scheduling weight of 5 percent of the available bandwidth, and queue 8 receives a default scheduling weight of 20 percent of the available bandwidth. Queues are mapped to forwarding classes, so forwarding classes receive the default bandwidth for the queues to which they are mapped.

You should explicitly map traffic to non-default (unconfigured) queues and create schedulers to allocate bandwidth to those queues if you want to use them to forward traffic. By default, unicast queues 1, 2, 5, and 6 are unconfigured, and multidestination queues 9, 10, and 11 are unconfigured.

Note

If you want to map traffic to queue 3 or to queue 4 by configuring a DSCP classifier and mapping DSCP code points to forwarding classes , then you must explicitly configure forwarding classes that do not have the no-loss packet attribute and map them to those queues. Do not map traffic to the default fcoe forwarding class (queue 3) or to the default no-loss forwarding class (queue 4). If you map traffic to queue 3 or queue 4, unless you configure a scheduler, that traffic uses the default scheduler and receives 35 percent of the port bandwidth by default.

Unconfigured queues have a default scheduling weight of 1 so that they can receive a small amount of bandwidth in case they need to forward traffic. (However, queue 11 can use more of the default multidestination scheduler bandwidth if necessary to handle CPU-generated multidestination traffic.)

Note

All four multidestination queues have a scheduling weight of 1. Because by default multidestination traffic goes to queue 8, queue 8 receives almost all of the multidestination bandwidth. (There is no traffic on queue 9 and queue 10, and very little traffic on queue 11, so there is almost no competition for multidestination bandwidth.)

However, if you explicitly configure queue 9, 10, or 11 (by mapping code points to the unconfigured multidestination forwarding classes using the multidestination classifier), the explicitly configured queues share the multidestination scheduler bandwidth equally with default queue 8, because all of the queues have the same scheduling weight (1). To ensure that multidestination bandwidth is allocated to each queue properly and that the bandwidth allocation to the default queue (8) is not reduced too much, we strongly recommend that you configure a scheduler if you explicitly classify traffic into queue 9, 10, or 11.

If you map traffic to an unconfigured queue, the queue receives only the amount of group bandwidth proportional to its default weight (1). The actual amount of bandwidth an unconfigured queue receives depends on how much bandwidth the other queues in the group are using.

If the other unicast queues use less than their allocated amount of bandwidth, the unconfigured queues can share the unused bandwidth. Sharing unused bandwidth is one of the key advantages of hierarchical port scheduling. Configured queues have higher priority for bandwidth than unconfigured queues, so if a configured queue needs more bandwidth, then less bandwidth is available for unconfigured queues. Unconfigured queues always receive a minimum amount of bandwidth based on their scheduling weight (1). If you map traffic to an unconfigured queue, to allocate bandwidth to that queue, configure a scheduler for the forwarding class that is mapped to the queue.

Default Scheduling and Classification Summary

If you do not configure hierarchical scheduling on an interface:

  • Default classifiers classify ingress traffic. The default DSCP classifier classifies unicast traffic into two queues, queue 0 (best-effort) and queue 7 (network-control). By default, multidestination traffic is classified into queue 8 (mcast).

  • Default schedulers schedule egress traffic.

  • A single default priority group (fc-set) receives 100 percent of the port bandwidth. All priorities (forwarding classes) are assigned to the default priority group and receive bandwidth based on their default schedulers. The default priority group is generated automatically and is not user-configurable.