Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation

Applying Scheduler Maps to Packet Forwarding Component Queues

On Intelligent Queuing (IQ) and Intelligent Queuing 2 (IQ2) interfaces, the traffic that is fed from the packet forwarding components into the PIC uses low packet loss priority (PLP) by default and is distributed evenly across the four chassis queues (not PIC queues), regardless of the scheduling configuration for each logical interface. This default behavior can cause traffic congestion.

The default chassis scheduler allocates resources for queue 0 through queue 3, with 25 percent of the bandwidth allocated to each queue. When you configure the chassis to use more than four queues, you must configure and apply a custom chassis scheduler to override the default. To apply a custom chassis scheduler, include the scheduler-map-chassis statement at the [edit class-of-service interfaces at-fpc/pic/*] hierarchy level.

To control the aggregated traffic transmitted from the chassis queues into the PIC, you can configure the chassis queues to derive their scheduling configuration from the associated logical interface’s. Include the scheduler-map-chassis derived statement at the [edit class-of-service interfaces type-fpc/pic/*] hierarchy level:

[edit class-of-service interfaces type-fpc/pic/*]scheduler-map-chassis derived;

Caution: If you include the scheduler-map-chassis derived statement in the configuration, packet loss might occur when you subsequently add or remove logical interfaces at the [edit interfaces interface-name] hierarchy level.

When fragmentation occurs on the egress interface, the first set of packet counters displayed in the output of the show interfaces queue command show the post-fragmentation values. The second set of packet counters (under the Packet Forwarding Engine Chassis Queues field) show the pre-fragmentation values. For more information about the show interfaces queue command, see the Junos OS Operational Mode Commands.

You can include both the scheduler-map and the scheduler-map-chassis derived statements in the same interface configuration. The scheduler-map statement controls the scheduler inside the PIC, while the scheduler-map-chassis derived statement controls the aggregated traffic transmitted into the entire PIC. For the Gigabit Ethernet IQ PIC, include both statements.

For more information about the scheduler-map statement, see Applying Scheduler Maps to Physical Interfaces. For information about logical interface scheduling configuration, see Applying Scheduler Maps and Shaping Rate to DLCIs and VLANs.

Generally, when you include the scheduler-map-chassis statement in the configuration, you must use an interface wildcard for the interface name, as in type-fpc/pic/*. The wildcard must use this format—for example. so-1/2/*, which means all interfaces on FPC slot 1, PIC slot 2. There is one exception—you can apply the chassis scheduler map to a specific interface on the Gigabit Ethernet IQ PIC only.

According to Junos OS wildcard rules, specific interface configurations override wildcard configurations. For chassis scheduler map configuration, this rule does not apply; instead, specific interface CoS configurations are added to the chassis scheduler map configuration. For more information about how wildcards work with chassis scheduler maps, see Examples: Scheduling Packet Forwarding Component Queues. For general information about wildcards, see the Junos OS Administration Library for Routing Devices.

Note: The interface applies wildcard configuration only if you do not add any specific configuration. If you add the specific interface configuration, then the interface deletes the applied wildcard configuration and applies the specified configuration.

For more information, see the following sections:

Applying Custom Schedulers to Packet Forwarding Component Queues

Optionally, you can apply a custom scheduler to the chassis queues instead of configuring the chassis queues to automatically derive their scheduling configuration from the logical interfaces on the PIC.

To assign a custom scheduler to the packet forwarding component queues, include the scheduler-map-chassis statement at the [edit class-of-service interfaces type-fpc/ pic] hierarchy level:

[edit class-of-service interfaces type-fpc/pic/*]scheduler-map-chassis map-name;

When you apply a custom scheduler map to packet forwarding component queues, or when you modify the configuration of a custom scheduler map that is already applied to packet forwarding component queues, packets already in the chassis queues might be dropped. The amount of packet loss is not deterministic and depends on the offered traffic load at the time you apply or modify the custom scheduler map.

For information about defining the scheduler map referenced by map-name, see Configuring Scheduler Maps.

Examples: Scheduling Packet Forwarding Component Queues

Applying a Chassis Scheduler Map to a 2-Port IQ PIC

Apply a chassis scheduler map to interfaces so-0/1/0 and so-0/1/1.

According to customary wildcard rules, the so-0/1/0 configuration overrides the so-0/1/* configuration, implying that the chassis scheduler map MAP1 is not applied to so-0/1/0. However, the wildcard rule is not obeyed in this case; the chassis scheduler map applies to both interfaces so-0/1/0 and so-0/1/1.

[edit]
class-of-service {interfaces {so-0/1/0 {unit 0 {classifiers {inet-precedence default;}}}so-0/1/* {scheduler-map-chassis derived;}}}

Not Recommended: Using a Wildcard for Gigabit Ethernet IQ Interfaces When Applying a Chassis Scheduler Map

On a Gigabit Ethernet IQ PIC, you can apply the chassis scheduler map at both the specific interface level and the wildcard level. We do not recommend this because the wildcard chassis scheduler map takes precedence, which might not be the desired effect. For example, if you want to apply the chassis scheduler map MAP1 to port 0 and MAP2 to port 1, we do not recommend the following:

[edit class-of-service]
interfaces {ge-0/1/0 {scheduler-map-chassis MAP1;}ge-0/1/* {scheduler-map-chassis MAP2;}}

Recommended: Identifying Gigabit Ethernet IQ Interfaces Individually When Applying a Chassis Scheduler Map

Instead, we recommend this configuration:

[edit class-of-service]
interfaces {ge-0/1/0 {scheduler-map-chassis MAP1;}ge-0/1/1 {scheduler-map-chassis MAP2;}}

Configuring ATM CoS with a Normal Scheduler and a Chassis Scheduler

For ATM2 IQ interfaces, the CoS configuration differs significantly from that of other interface types. For more information about ATM CoS, see CoS on ATM Interfaces Overview.

[edit class-of-service]
interfaces {at-1/2/* {scheduler-map-chassis derived;}}
 [edit interfaces]
at-1/2/0 {atm-options {vpi 0;linear-red-profiles red-profile-1 {queue-depth 35000 high-plp-threshold 75 low-plp-threshold 25;}scheduler-maps map-1 {vc-cos-mode strict;forwarding-class best-effort {priority low;transmit-weight percent 25;linear-red-profile red-profile-1;}}}unit 0 {vci 0.128;shaping {vbr peak 20m sustained 10m burst 20;}atm-scheduler-map map-1;family inet {address 192.168.0.100/32 {destination 192.168.0.101;}}}}

Configuring Two T3 Interfaces on a Channelized DS3 IQ PIC

[edit interfaces]
ct3-3/0/0 {no-partition interface-type t3; # use entire port 0 as T3}
ct3-3/0/1 {no-partition interface-type t3; # use entire port 1 as T3}
t3-3/0/0 {unit 0 {family inet {address 10.0.100.1/30;}}}
t3-3/0/1 {unit 0 {family inet {address 10.0.101.1/30;}}}

Applying Normal Schedulers to Two T3 Interfaces

Configure a scheduler for the aggregated traffic transmitted into both T3 interfaces.

[edit class-of-service]
interfaces {t3-3/0/0 {scheduler-map sched-qct3-0;}t3-3/0/1 {scheduler-map sched-qct3-1;}}
scheduler-maps {sched-qct3-0 {forwarding-class best-effort scheduler be-qct3-0;forwarding-class expedited-forwarding scheduler ef-qct3-0;forwarding-class assured-forwarding scheduler as-qct3-0;forwarding-class network-control scheduler nc-qct3-0;}sched-qct3-1 {forwarding-class best-effort scheduler be-qct3-1;forwarding-class expedited-forwarding scheduler ef-qct3-1;forwarding-class assured-forwarding scheduler as-qct3-1;forwarding-class network-control scheduler nc-qct3-1;}sched-chassis-to-q {forwarding-class best-effort scheduler be-chassis;forwarding-class expedited-forwarding scheduler ef-chassis;forwarding-class assured-forwarding scheduler as-chassis;forwarding-class network-control scheduler nc-chassis;}}
schedulers {be-qct3-0 {transmit-rate percent 40;}ef-qct3-0 {transmit-rate percent 30;}as-qct3-0 {transmit-rate percent 20;}nc-qct3-0 {transmit-rate percent 10;}...}

Applying a Chassis Scheduler to Two T3 Interfaces

Bind a scheduler to the aggregated traffic transmitted into the entire PIC. The chassis scheduler controls the traffic from the packet forwarding components feeding the interface t3-3/0/*.

[edit class-of-service]
interfaces {t3-3/0/* {scheduler-map-chassis derived;}}

Not Recommended: Using a Wildcard for Logical Interfaces When Applying a Scheduler

Do not apply a scheduler to a logical interface using a wildcard. For example, if you configure a logical interface (unit) with one parameter, and apply a scheduler map to the interface using a wildcard, the logical interface will not apply the scheduler. The following configuration will commit correctly but will not apply the scheduler map to interface so-3/0/0.0:

[edit class-of-service]
interfaces {so-3/0/* {unit 0 {scheduler-map MY_SCHED_MAP;}}so-3/0/0 {unit 0 {shaping-rate 100m;}}}

Recommended: Identifying Logical Interfaces Individually When Applying a Scheduler

Always apply the scheduler to a logical interface without the wildcard:

[edit class-of-service]
interfaces {so-3/0/0 {unit 0 {scheduler-map MY_SCHED_MAP;shaping-rate 100m;}}}

Note: This same wildcard behavior applies to classifiers and rewrites as well as schedulers.

Published: 2013-07-31

Published: 2013-07-31