Macro 32 Ramblings

Mind Archive

CoS on Trio DPC and MPC/MIC Features Overview

CoS on Trio DPC and MPC/MIC Features Overview

This topic covers aspects of Class of Service (CoS) configuration
for the Trio Distributed Port Concentrator (DPC), 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 thee
    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 DPC and MPC/MIC interfaces that should be kept in mind:

  • Input queuing is not supported on the Trio DPC and MPC/MIC
    interfaces.
  • On Trio 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 Trio DPC and MPC/MIC interfaces do not support the q-pic-large-buffer statement at the [edit chassis fpc fpc-number pic pic-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) Trio DPC and MPC/MIC interfaces 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 Trio DPC and MPC/MIC interfaces 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 Trio DPC and MPC/MIC interfaces do not support the excess-bandwidth-sharing statement. You can use the excess-rate statement in scheduler maps and traffic control profiles instead.

The Trio MPC/MIC interfaces 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 tot he configured
values as allowed. For the Trio 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.

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 124) 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:

[edit chassis fpc 0 pic 0]traffic-manager egress-shaping-overhead 12;

In contrast to the Intelligent Queuing Enhanced (IQE)
and Intelligent Queuing 2 Enhanced (IQ2E) PICs, the Trio DPC and MPC/MIC
interfaces 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 Trio DPC and
MPC/MIC interfaces should be kept in mind when configuring CoS:

  • When the Trio DPC and MPC/MIC 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 on the Trio MPC Type 1 3D EQ MIC interfaces,
    you should configure odd- and even-numbered interfaces in the form interfacefpc/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 the Trio MPC Type 2 3D Enhanced Queuing MIC interfaces.