Output queue scheduling

Each unicast queue and each multicast queue of an egress port is associated with a scheduler node. The mapping of queues to scheduler nodes is platform-dependent and cannot be configured.

On 7250 IXR systems, there are two scheduling nodes per port: one for unicast traffic and one for multicast traffic. The two scheduling nodes have a weighted round robin (WRR) relationship, but the parameters cannot be adjusted. There is one PIR scheduling loop per scheduling node. The scheduling loop serves the strict priority classes first (in descending order of FC), followed by the WRR classes (by weight), limiting each forwarding class to its PIR (expressed as a percentage of the egress port bandwidth). By default, the PIR of each forwarding class is 100%.
Note: Multicast traffic handled by the multicast scheduler node is unscheduled and is not subject to the ingress VOQ buffering that applies to unicast traffic.

On 7220 IXR-D2/D2L and D3/D3L systems, the unicast queue and multicast queue for a particular forwarding class make up a queue pair. Each of the eight possible queue pairs of an egress port are associated with a scheduler node. Each scheduler node is served as strict priority (SP) or WRR. If it is served as WRR, the scheduler node also has an associated weight. The scheduling loop serves the SP nodes first, followed by the WRR nodes by weight. The serving order of SP queues is in descending order of FC: fc7 first, then fc6, then fc5, and so on.

On 7220 IXR-H2, H3, and H4 and 7220 IXR-D4/D5 systems, there is a one-to-one mapping of queues to scheduler nodes. Each scheduler node can be served as SP or WRR. A WRR node has a configurable weight. The scheduling loop serves the SP nodes first, followed by the WRR nodes by weight. The serving order of SP queues is as follows:

  • unicast queue 7 serving forwarding class index 7

  • unicast queue 6 serving forwarding class index 6

  • multicast queue 3 serving forwarding class index 6 and 7

  • unicast queue 5 serving forwarding class index 5

  • unicast queue 4 serving forwarding class index 4

  • multicast queue 2 serving forwarding class index 4 and 5

  • unicast queue 3 serving forwarding class index 3

  • unicast queue 2 serving forwarding class index 2

  • multicast queue 1 serving forwarding class index 2 and 3

  • unicast queue 1 serving forwarding class index 1

  • unicast queue 0 serving forwarding class index 0

  • multicast queue 0 serving forwarding class index 0 and 1

Configuring strict priority (7250 IXR)

When strict priority is set to false, the associated queue or scheduler node is configured as WRR. When strict priority is set to true, any configured weight is ignored.

On the 7250 IXR, to configure strict priority, use the qos output queue scheduling command to set strict-priority to true. The following example configures a queue or scheduler node for strict priority.

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                queue unicast-0 {
                    scheduling {
                        strict-priority true
                    }
                }
            }
        }
    }
Note: To support named queues, the unicast-queue 0 parameter previously included in this example (in R22.6 and earlier) is updated to queue unicast-0 (in R22.11 and later).

Configuring strict priority (7220 IXR)

When strict priority is set to false, the associated queue or scheduler node is configured as WRR. When strict priority is set to true, any configured weight is ignored.

On the 7220 IXR, to configure strict priority, use the qos output scheduler command to set strict-priority to true. The following example configures a queue or scheduler node for strict priority on the 7220 IXR-D2/D2L, D3/D3L, D4, and D5 or the 7220 IXR-H2, H3, and H4.

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                scheduler {
                    tier 1 {
                        node 0 {
                            strict-priority true
                        }
                    }
                }
            }
        }
    }

Configuring WRR (7250 IXR)

On the 7250 IXR, to configure WRR, use the qos output queue scheduling command to set strict-priority to false and use the weight parameter to define the WRR weight.

The following example configures a queue or scheduler-node for WRR. Queues or scheduler nodes that you do not configure with a specific weight have a weight of 1.

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                queue unicast-0 {
                    scheduling {
                        strict-priority false {
                            weight 20
                        }
                    }
                }
            }
        }
    }
Note: To support named queues, the unicast-queue 0 parameter previously included in this example (in R22.6 and earlier) is updated to queue unicast-0 (in R22.11 and later).

Configuring WRR (7220 IXR)

On the 7220 IXR, to configure WRR, use the qos output queue scheduler tier node command to set strict-priority to false and use the weight parameter to define the WRR weight.

The following example configures a queue or scheduler node for WRR on the 7220 IXR-D2/D2L, D3/D3L, D4, and D5 or the 7220 IXR-H2, H3, and H4. Queues or scheduler nodes that you do not configure with a specific weight have a weight of 1.

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                scheduler {
                    tier 1 {
                        node 0 {
                            strict-priority false
                            weight 20
                        }
                    }
                }
            }
        }
    }

Configuring forwarding class peak rate

To configure the forwarding class peak rate, you must set the scheduling peak-rate-percent value using the qos output unicast-queue (7220 IXR) or qos output queue (7250 IXR) commands.

The following examples set the maximum percentage of port bandwidth that is available to traffic of a particular FC. By default, traffic belonging to any FC can use up to 100% of the port bandwidth.

Configure forwarding class peak rate (7220 IXR)

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                unicast-queue 0 {
                    scheduling {
                        peak-rate-percent 75
                    }
                }
            }
        }
    }

Configure forwarding class peak rate (7250 IXR)

--{ candidate shared default }--[  ]--
# info interface ethernet-1/1
    interface ethernet-1/1 {
        qos {
            output {
                queue unicast-0 {
                    scheduling {
                        peak-rate-percent 75
                    }
                }
            }
        }
    }
Note: To support named queues, the unicast-queue 0 parameter in this example is updated to queue unicast-0 (in R22.11 and later).