Understanding Scheduling on PTX Series Routers

 

This topic covers the following information about strict-priority scheduling for interfaces on PTX Series routers:

Output Queue Priorities Supported by the Junos OS CLI on PTX Series Routers

Output queues on the PTX Series interface hardware support these values for the queue priority—high, medium, low, and excess. The Junos OS supports five queue priority levels: strict-high, high, medium-high, medium-low, and low.

Note

If a strict-high-priority queue is constantly loaded to 100 percent of traffic capacity, other queues are starved. Queue starvation can cause the interface hardware to generate critical interrupts (see PR849914).

Table 1 shows how the output queue priority values in the Junos OS map to the output queue priorities supported by physical interfaces on PTX Series routers, and the scheduling action taken. Starting in Junos OS Release 17.4, the table shows differences for shared scheduling when strict-high is not configured, and for strict-priority scheduling.

Table 1: Mapping of Configured CoS Queue Priorities to Hardware-Based Queue Priorities and Strict-Priority Scheduling Actions on PTX Series Routers

CLI-Configurable

Queue Priority

Hardware-Based

Queue Priority

(Shared Scheduling)

Shared Scheduling

Hardware-Based

Queue Priority

(Strict-Priority Scheduling)

Strict-Priority Scheduling

strict-high

high

Only one queue: always processed first

high

Only one queue: always processed first

high

medium



high (if strict-high is not configured)

Packets in this queue are processed only if there are no packets in the strict-high priority queue. Packet scheduling is strict priority round-robin while the virtual output queues are in the guaranteed region. After the virtual output queues consume their guaranteed credits, they are demoted to excess-priority scheduling, which is weighted round-robin. The only exception is the strict-high priority, which is always scheduled as strict-high-priority.

high

Processed only if there are no packets in the strict-high priority queue. Strict packet round-robin among all high-priority queues on a given interface (provided other high-priority queues exist in the scheduler configuration). Processed fully before any medium-highmedium-low or low priority queues are served.

medium-high and medium-low

low



medium (if strict-high is not configured)

Packets from these queues are processed only if there are no packets in either the strict-high priority queue or the high priority queue or all high priority queues have been demoted to excess-priority due to full consumption of their guaranteed credits. Packet scheduling is strict priority round-robin while the virtual output queues are in the guaranteed region. After the virtual output queues consume their guaranteed credits, they are demoted to excess-priority scheduling, which is weighted round-robin. The only exception is the strict-high priority, which is always scheduled as strict-high-priority.

medium and low

Processed only if there are no packets in the strict-high or high priority queues. Strict packet round-robin among all high-priority queues on a given interface (provided other high-priority queues exist in the scheduler configuration) Processed fully before any low priority queues are served.

 

low

excess-priority



low (if strict-high is not configured)

Packets from this queue are processed only if there are no packets in either the strict-high, high, medium-low, or medim-high priority queue or all high priority queues have been demoted to excess-priority due to full consumption of their guaranteed credits. Packet scheduling is strict priority round-robin while the virtual output queues are in the guaranteed region. After the virtual output queues consume their guaranteed credits, they are demoted to excess scheduling, which is weighted round-robin. The only exception is the strict-high priority, which is always scheduled as strict-high-priority.

excess-priority

Weighted round-robin

Scheduling Processes on PTX Series Routers

Physical interfaces on PTX Series routers support two mutually exclusive scheduling processes:

  • Shared scheduling—Within the guaranteed region, the scheduler uses the transmit rates to decide the bandwidth allocation. Within the excess region, CoS queues are selected based on the weighted round-robin (WRR) algorithm. Shared scheduling is the default scheduling process on PTX Series routers.

    Within a single priority level, if the scheduler is not configured with a transmit-rate statement (to specify the transmit rate or percentage of transmission capacity) or an excess-rate statement (to specify the percentage or proportion of excess bandwidth traffic to share), the scheduler performs packet round-robin selection across the queues with the same priority.

    Unless the priority is set to strict-high, if transmit-rate is not configured, then priority is essentially excess-priority.

    If multiple queues are in the excess region (CLI queue priority low) and the excess-rate statement is used, then those queues are selected using the WRR algorithm. Otherwise, queues are selected based on the round-robin algorithm.

    Best Practice

    The rate-limit option of the transmit-rate configuration statement is allowed only on the strict-high queue. We recommend that you configure rate limit on strict-high queues because the other queues might not meet their guaranteed bandwidths.

  • Strict-priority scheduling—Queues are processed in strict-priority order. The configured transmit-rate does not affect the queue drain rate because packets are processed in order of queue priority. Among queues that are configured low priority, if excess-rate weights are configured, they are used by the software to perform WRR. Queues that are mapped to the same hardware priority or that have the same configured priority other than low are serviced in a round-robin fashion that is proportional to the packet size.

    Note

    The rate-limit option of the transmit-rate configuration statement cannot rate-limit the strict-high-priority queue when strict-priority scheduling is configured.

    To configure strict-priority scheduling for a physical interface on a PTX Series router, include the strict-priority-scheduler and scheduler-map map-name configuration statements in the traffic control profile you associate with an output interface.

Release History Table
Release
Description
Starting in Junos OS Release 17.4, the table shows differences for shared scheduling when strict-high is not configured, and for strict-priority scheduling.