Supported Platforms
Related Documentation
- QFabric System, QFX Series standalone switches
- Overview of Junos OS CoS for the QFX Series and EX4600 Switch
- Understanding Junos CoS Components
- Understanding Default CoS Scheduling and Classification
- Understanding CoS Classifiers
- Understanding Applying CoS Classifiers and Rewrite Rules to Interfaces
- Understanding CoS Code-Point Aliases
- Understanding CoS Forwarding Classes
- Understanding CoS Rewrite Rules
- Understanding CoS Output Queue Schedulers
- Understanding CoS WRED Drop Profiles
Understanding Default CoS Settings
If you do not configure CoS settings, Junos OS performs some CoS functions to ensure that traffic and protocol packets are forwarded with minimum delay when the network experiences congestion. Some default mappings are automatically applied to each logical interface that you configure.
You can display default CoS settings by issuing the show class-of-service operational mode command.
This topic describes the default configurations for the following CoS components:
Default Forwarding Classes and Queue Mapping
Table 1 shows the default mapping of the default forwarding classes to queues and packet drop attribute.
Table 1: Default Forwarding Classes and Queue Mapping
Default Forwarding Class | Description | Default Queue Mapping | Packet Drop Attribute |
---|---|---|---|
best-effort (be) | Best-effort traffic class (priority 0, IEEE 802.1p code point 000) | 0 | drop |
fcoe | Guaranteed delivery for FCoE traffic (priority 3, IEEE 802.1p code point 011) | 3 | no-loss |
no-loss | Guaranteed delivery for TCP no-loss traffic (priority 4, IEEE 802.1p code point 100) | 4 | no-loss |
network-control (nc) | Network control traffic (priority 7, IEEE 802.1p code point 111) | 7 | drop |
mcast | Multidestination traffic | 8 | drop Note: You cannot configure multidestination forwarding classes as no-loss (lossless) traffic classes. |
Default Forwarding Class Sets (Priority Groups)
If you do not explicitly configure forwarding class sets, the system automatically creates a default forwarding class set that contains all of the forwarding classes on the switch. The system assigns 100 percent of the port output bandwidth to the default forwarding class set.
Ingress traffic is classified based on the default classifier settings. The forwarding classes (queues) in the default forwarding class set receive bandwidth based on the default scheduler settings. Forwarding classes that are not part of the default scheduler receive no bandwidth.
The default forwarding class set is transparent. It does not appear in the configuration and is used for Data Center Bridging Capability Exchange (DCBX) protocol advertisement.
Default Code-Point Aliases
Table 2 shows the default mapping of code-point aliases to IEEE code points.
Table 2: Default IEEE 802.1 Code-Point Aliases
CoS Value Types | Mapping |
---|---|
be | 000 |
be1 | 001 |
ef | 010 |
ef1 | 011 |
af11 | 100 |
af12 | 101 |
nc1 | 110 |
nc2 | 111 |
Table 3 shows the default mapping of code-point aliases to DSCP and DSCP IPv6 code points.
Table 3: Default DSCP and DCSP IPv6 Code-Point Aliases
CoS Value Types | Mapping |
---|---|
ef | 101110 |
af11 | 001010 |
af12 | 001100 |
af13 | 001110 |
af21 | 010010 |
af22 | 010100 |
af23 | 010110 |
af31 | 011010 |
af32 | 011100 |
af33 | 011110 |
af41 | 100010 |
af42 | 100100 |
af43 | 100110 |
be | 000000 |
cs1 | 001000 |
cs2 | 010000 |
cs3 | 011000 |
cs4 | 100000 |
cs5 | 101000 |
nc1 | 110000 |
nc2 | 111000 |
Default Classifiers
The switch applies default unicast IEEE 802.1, unicast DSCP, 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 for ports that are in trunk mode or tagged-access mode, and an untrusted classifier for ports that are in access mode.
Table 4 shows the default mapping of IEEE 802.1 code-point values to unicast forwarding classes and loss priorities for ports in trunk mode or tagged-access mode.
Table 4: Default IEEE 802.1 Unicast Classifiers for Ports in Trunk Mode or Tagged Access Mode (Trusted Classifier)
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 5 shows the default mapping of IEEE 802.1p code-point values to unicast forwarding classes and loss priorities for ports in access mode (all incoming traffic is mapped to best-effort forwarding classes).
Table 5: Default IEEE 802.1 Unicast Classifiers for Ports in Access Mode (Untrusted Classifier)
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 6 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 6: 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 |
Table 7 shows the default mapping of DSCP code-point values to unicast forwarding classes and loss priorities for DSCP IP and DCSP IPv6.
Table 7: Default DSCP IP and IPv6 Unicast Classifiers
Code Point | Forwarding Class | Loss Priority |
---|---|---|
ef (101110) | best-effort | low |
af11 (001010) | best-effort | low |
af12 (001100) | best-effort | low |
af13 (001110) | best-effort | low |
af21 (010010) | best-effort | low |
af22 (010100) | best-effort | low |
af23 (010110) | best-effort | low |
af31 (011010) | best-effort | low |
af32 (011100) | best-effort | low |
af33 (011110) | best-effort | low |
af41 (100010) | best-effort | low |
af42 (100100) | best-effort | low |
af43 (100110) | best-effort | low |
be (000000) | best-effort | low |
cs1 (001000) | best-effort | low |
cs2 (010000) | best-effort | low |
cs3 (011000) | best-effort | low |
cs4 (100000) | best-effort | low |
cs5 (101000) | best-effort | low |
nc1 (110000) | network-control | low |
nc2 (111000) | network-control | low |
![]() | Note: There are no default DSCP IP or IPv6 classifiers for multidestination traffic. DSCP IPv6 classifiers are not supported for multidestination traffic. |
Default Rewrite Rules
There are no default rewrite rules. If you do not explicitly configure rewrite rules, the switch does not reclassify egress traffic.
Default Drop Profile
Table 8 shows the default drop profile configuration.
Table 8: Default Drop Profile
Fill Level | Drop Probability |
---|---|
100 | 100 |
Default Schedulers
Table 9 shows the default scheduler configuration.
Table 9: Default Schedulers
Default Scheduler and Queue Number | Transmit Rate (Guaranteed Minimum Bandwidth) | Shaping Rate (Maximum Bandwidth) | Excess Bandwidth Sharing | Priority | Buffer Size |
---|---|---|---|---|---|
Best-effort scheduler (queue 0) | 5% | None | 5% | low | 5% |
FCoE scheduler (queue 3) | 35% | None | 35% | low | 35% |
No-loss scheduler (queue 4) | 35% | None | 35% | low | 35% |
Network-control scheduler (queue 7) | 5% | None | 5% | low | 5% |
Multidestination scheduler (queue 8) | 20% | None | 20% | low | 20% |
![]() | Note: The minimum guaranteed bandwidth (transmit rate) also determines the amount of excess (extra) bandwidth that the queue can share. Extra bandwidth is allocated to queues in proportion to the transmit rate of each queue. |
By default, only the five default schedulers shown in Table 9 have traffic mapped to them. Only the queues associated with the default schedulers receive default bandwidth, based on the default scheduler transmit rate. (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), queue 3 (fcoe forwarding class), queue 4 (no-loss forwarding class), and queue 7 (network-control 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 4 receives a default scheduling weight of 35 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. 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 Scheduler Maps
Table 10 shows the default mapping of forwarding classes to schedulers.
Table 10: Default Scheduler Maps
Forwarding Class | Scheduler |
---|---|
best-effort | Default BE scheduler |
fcoe | Default FCoE scheduler |
no-loss | No-loss scheduler |
network-control | Default network-control scheduler |
mcast-be | Default multidestination scheduler |
Default Shared Buffer Configuration
Table Table 11 and Table 12 show the default shared buffer allocations:
Total Shared Ingress Buffer | Lossless Buffer | Lossless-Headroom Buffer | Lossy Buffer |
---|---|---|---|
100% | 9% | 45% | 46% |
Total Shared Egress Buffer | Lossless Buffer | Lossy Buffer | Multicast Buffer |
---|---|---|---|
100% | 50% | 31% | 19% |
Related Documentation
- QFabric System, QFX Series standalone switches
- Overview of Junos OS CoS for the QFX Series and EX4600 Switch
- Understanding Junos CoS Components
- Understanding Default CoS Scheduling and Classification
- Understanding CoS Classifiers
- Understanding Applying CoS Classifiers and Rewrite Rules to Interfaces
- Understanding CoS Code-Point Aliases
- Understanding CoS Forwarding Classes
- Understanding CoS Rewrite Rules
- Understanding CoS Output Queue Schedulers
- Understanding CoS WRED Drop Profiles
Published: 2014-07-23
Supported Platforms
Related Documentation
- QFabric System, QFX Series standalone switches
- Overview of Junos OS CoS for the QFX Series and EX4600 Switch
- Understanding Junos CoS Components
- Understanding Default CoS Scheduling and Classification
- Understanding CoS Classifiers
- Understanding Applying CoS Classifiers and Rewrite Rules to Interfaces
- Understanding CoS Code-Point Aliases
- Understanding CoS Forwarding Classes
- Understanding CoS Rewrite Rules
- Understanding CoS Output Queue Schedulers
- Understanding CoS WRED Drop Profiles