Supported Platforms
CoS on MIC and MPC Features Overview
This topic covers aspects of Class of Service (CoS) configuration for the Modular Port Concentrator (MPC) and Modular Interface Card (MIC), with the emphasis on differences between the Trio interface family and other families of interface types. The CoS characteristics of the Trio queuing model are optimized compared to the CoS characteristics of the standard queuing model. The Trio queuing model also supports four levels of hierarchical scheduling, with scheduling node levels corresponding to the physical interface to the queue itself. For more information on hierarchical schedulers in general, see Configuring Hierarchical Schedulers for CoS.
Key aspects of the Trio queuing model are:
- The model separates the guaranteed bandwidth concept from the weight of a interface node. Although often used interchangeably, guaranteed bandwidth is the bandwidth a node can use when it wants to, independently of what is happening at the other nodes of the scheduling hierarchy. On the other hand, the weight of a node is a quantity that determines how the excess bandwidth is used. The weight is important when the siblings of a node (that is, other nodes at the same level) use less than the sum of the their guaranteed bandwidths. In some applications, such as constant bit rate voice where there is little concern about excess bandwidth, the guaranteed bandwidth dominates the node; whereas in others, such as bursty data, where a well-defined bandwidth is not always possible, the concept of weight dominates the node.
- The model allows multiple levels of priority to be combined with guaranteed bandwidth in a general and useful way. There is a set of priorities for guaranteed levels and a set of priorities for excess levels that are at a lower absolute level. For each guaranteed level, there is only one excess level paired with it. There are three guaranteed priorities and two excess priorities. You can configure one guaranteed priority and one excess priority. For example, you can configure a queue for guaranteed low (GL) as the guaranteed priority and configure excess high (EH) as the excess priority.
- However, for an excess level, there can be any number of guaranteed priority levels, including none. Nodes maintain their guaranteed priority level (for example, guaranteed high, GH) as long as they do not exceed their guaranteed bandwidth. If the queue bandwidth exceeds the guaranteed rate, then the priority drops to the excess priority (for example, excess high, EH). Because excess level priorities are lower than their guaranteed counterparts, the bandwidth guarantees for each of the other levels can be maintained.
There are a number of other general points about the Trio queuing model interfaces that should be kept in mind:
- On MPCs, you can configure up to 32 DCSP or Internet or EXP rewrite rules, and 32 IEEE rewrite rules. However, if you configure all 32 allowed rewrite rules, the class-of-service process intermittently fails and generates syslog entries.
- The MPC and MIC interfaces do not support the q-pic-large-buffer statement at the [edit chassis fpc mpc-number pic mic-number] hierarchy level. By default, 500 ms worth of buffer is supported when the delay buffer rate is less than 1 Gbps. By default, 100 ms worth of buffer is supported when the delay buffer rate is 1 Gbps or more. The maximum supported value for the delay buffer is 256 MB and the minimum value is 4 KB. However, due to the limited number of drop profiles supported and the large range of supported speeds, there can be differences between the user-configured value and the observed hardware value. The enhanced queuing (EQ) interfaces on MICs and MPCs support up to 255 drop profiles, and up to 128 tail-drop priorities for guaranteed low (GL) priorities and 64 each for guaranteed high and medium priorities.
- All tunnel interfaces have 100 ms buffers. The huge-buffer-temporal statement is not supported.
- The interfaces on MICs and MPCs take all Layer 1 and Layer 2 overhead bytes into account for all levels of the hierarchy, including preamble, interpacket gaps, frame check sequence, and cyclical redundancy check. Queue statistics also take these overheads into account when displaying byte statistics.
- The interfaces on MICs and MPCs do not support the excess-bandwidth-sharing statement. You can use the excess-rate statement in scheduler maps and traffic control profiles instead.
- To rewrite service VLAN tag COS bits on MIC and MPC interfaces for VPLS or bridge domains, configure the rewrite rules on the core-facing interface.
The interfaces on MICs and MPCs have a certain granularity in the application of configured shaping and delay buffer parameters. In other words, the values used are not necessarily precisely the values configured. Nevertheless, the derived values are as close to the configured values as allowed. For the MPC, the shaping rate granularity is 250 kbps for coarse-grained queuing on the basic hardware and 24 kbps for fine-grained queuing on the enhanced queuing devices.
MPC shaping granularities are listed in Table 1
Table 1: MPC Interfaces Shaping Granularities
Enhanced Queuing MPCs | ||
---|---|---|
Port Speed | Queues/Port Level | Logical Interface/Interface Set Level |
10 Gbps | 6 Kbps | 24 Kbps |
1 Gbps | 1.5 Kbps | 6 Kbps |
Queuing MPCs | ||
Port Speed | Queues/Port Level | Logical Interface/Interface Set Level |
10 Gbps | 9.6 Kbps | 38 Kbps |
1 Gbps | 2.4 Kbps | 9.5 Kbps |
Non-queuing MPCs | ||
Port Speed | Queues/Port Level | Logical Interface/Interface Set Level |
1 Gbps/10 Gbps | 250 Kbps | n/a |
For delay buffers, the coarse-grained devices support 100 ms of transit rate by default, which can be changed by configuring an explicit buffer size. For fine-grained queuing on enhanced queuing devices, 500 ms of transmit rate is available by default, which can be changed by configuring an explicit buffer size. When this value is changed, there are 256 points available and the closest point is chosen. High-priority and medium-priority queues use 64 points, and the low-priority queues uses 128.
Another useful feature is the ability to control how much overhead to count with the traffic-manager statement and options. By default, overhead of 24 bytes (20 bytes for the header, plus 4 bytes of cyclical redundancy check [CRC]), is added to egress shaping statistics. You can configure the system to adjust the number of bytes to add to a packet to determine shaped session packet length by adding more bytes (up to 192) of overhead. You can also subtract bytes for egress shaping overhead (up to minus 63 bytes).
This example adds 12 more bytes of overhead to the egress shaping statistics:
In contrast to the Intelligent Queuing Enhanced (IQE) and Intelligent Queuing 2 Enhanced (IQ2E) PICs, the interfaces on MPCs and MICs set the guaranteed rate to zero in oversubscribed PIR mode for the per-unit scheduler. Also, the configured rate is scaled down to fit the oversubscribed value. For example, if there are two logical interface units with a shaping rate of 1 Gbps each on a 1-Gbps port (which is, therefore, oversubscribed 2 to 1), then the guaranteed rate on each unit is scaled down to 500 Mbps (scaled down by 2).
With hierarchical schedulers in oversubscribed PIR mode, the guaranteed rate for every logical interface unit is set to zero. This means that the queue transmit rates are always oversubscribed.
Because in oversubscribed PIR mode the queue transmit rates are always oversubscribed, the following are true:
- If the queue transmit rate is set as a percentage, then the guaranteed rate of the queue is set to zero; but the excess rate (weight) of the queue is set correctly.
- If the queue transmit rate is set as an absolute value and if the queue has guaranteed high or medium priority, then traffic up to the queue’s transmit rate is sent at that priority level. However, for guaranteed low traffic, that traffic is demoted to the excess low region. This means that best-effort traffic well within the queue’s transmit rate gets a lower priority than out-of-profile excess high traffic. This differs from the IQE and IQ2E PICs.
Several other aspects of the interfaces on MPCs and MICs should be kept in mind when configuring CoS:
- When the interface’s delay buffers are oversubscribed by configuration (that is, the user has configured more delay-buffer memory than the system can support), then the configured weighted random early detection (WRED) profiles are implicitly scaled down to drop packets more aggressively from the relatively full queues. This creates buffer space for packets in the relatively empty queues and provides a sense of fairness among the delay buffers. There is no configuration needed for this feature.
- When load balancing EQ MIC interfaces installed in Type 1 MPCs, you should configure odd- and even-numbered interfaces in the form interface-fpc/odd | even/ports. For example, if one link is xe-1/0/0, the other should be xe-1/1/0. If you do not configure odd and even load balancing, the system RED-drops packets when sending at line rate. This limitation does not apply to interfaces on EQ MICs installed in Type 2 MPCs.
- When you configure a behavior aggregate (BA) classifier that does not include a specific rewrite rule for MPLS packets, we highly recommend that you include the rewrite-rules exp default statement at the [edit class-of-service interfaces interface-name unit logical-unit-number] hierarchy level. Doing so ensures that MPLS exp value is rewritten according to the BA classifier rules configured for forwarding or packet loss priority.