Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

Example: Configuring Per-Priority Shaping on MIC and MPC Interfaces

 

In practice, per-priority shaping is used with other traffic control profiles to control traffic as a whole. Consider the traffic control profile applied to the physical interface (port), as shown in Figure 1.

Figure 1: Example of MIC and MPC Interface Scheduling Hierarchy
Example of MIC and MPC Interface Scheduling
Hierarchy

This example is more complex than those used before. In addition to a pair of subscribers in an interface set (DSLAM), the figure now adds the following:

  • A dummy level 3 scheduler node (interface-set-remaining-traffic) that provides scheduling for interface set members that do not have explicit class-of-service parameters configured.

  • A subscriber (Subscriber 3) that is not a member of an interface set. A dummy level 2 node connects Subscriber 3’s level 3 node to level 1, making it appear to be at level 2.

  • A dummy level 3 scheduler node (port-remaining-traffic) in order to provide queues for traffic that does not have explicit class-of-service parameters configured.

  • A dummy level 2 scheduler node to connect level 1 and level 3 scheduler nodes. This dummy level 2 scheduler node is internal only.

This example uses a gigabit Ethernet interface with five logical interface units, each one representing one of the level 3 nodes in Figure 1.

From the top of the figure to the bottom, the level 3 nodes are:

  • Unit 3 is scheduled as a “dummy” level 3 node because unit 3 is a member of an interface set (ifset-1) but there is no explicit CoS configuration.

  • Unit 1 is scheduled as a logical interface node for subscriber 1 because unit 1 is a member of an interface set (ifset-1) and has an explicit CoS configuration under the [edit class-of-service interfaces] hierarchy.

  • Unit 2 is scheduled as a logical interface node for subscriber 2 because unit 2 is a member of an interface set (ifset-1) and has an explicit CoS configuration under the [edit class-of-service interfaces] hierarchy.

  • Unit 4 is scheduled as a logical interface node for subscriber 3 because unit 4 is not a member of an interface set but has an explicit CoS configuration under the [edit class-of-service interfaces] hierarchy level.

  • Unit 5 is scheduled by another “dummy” level 3 node, this one for remaining traffic at the port level, because unit 5 is not a member of an interface set and has no explicit CoS configuration.

In this example, per-priority shaping is applied at the physical port level. The example uses three priorities, but other parameters are possible. The example does not use shaping rates, transmit rates, excess priorities, or other options for reasons of simplicity. The example uses five forwarding classes and leaves out a network control forwarding class that would typically be included in real configurations.

The example configuration is presented in several parts:

  • Interfaces configuration

  • Class-of-service forwarding classes and traffic control profiles configuration

  • Class-of-service interfaces configuration

  • Class-of-service schedulers and scheduler map configuration

Interfaces configuration:

Class-of-service forwarding classes and traffic control profiles configuration:

Class-of-service interfaces configuration:

Class-of-service schedulers and scheduler map configuration:

You can configure both a shaping rate and a per-priority shaping rate. In this case, the legacy shaping-rate statement specifies the maximum rate for all traffic scheduled through the scheduler. Therefore, the per-priority shaping rates must be less than or equal to the overall shaping rate. So if there is a shaping-rate 400m statement configured in a traffic control profile, you cannot configure a higher value for a per-priority shaping rate (such as shaping-rate-priority-high 500m). However, the sum of the per-priority shaping rates can exceed the overall shaping rate: for shaping-rate 400m you can configure both shaping-rate-priority-high 300m and shaping-rate-priority-low 200m statements.

Generally, you cannot configure a shaping rate that is smaller than the guaranteed rate (which is why it is guaranteed). However, no such restriction is placed on per-priority shaping rates unless all shaping rates are for priority high or low or medium traffic.

This configuration is allowed (per-priority rates smaller than guaranteed rate):

However, this configuration generates an error (no excess per-priority rate, so the node can never achieve its guaranteed rate):

You verify configuration of per-priority shaping with the show class-of-service traffic-control-profile command. This example shows shaping rates established for the high and medium priorities for a traffic control profile named tcp-ge-port.

user@host# show class-of-service traffic-control-profile

There are no restrictions on or interactions between per-priority shaping rates and the excess rate. An excess rate (a weight) is specified as a percentage or proportion of excess bandwidth.

Table 1 shows where traffic control profiles containing per-priority shaping rates can be attached for both per-unit schedulers and hierarchical schedulers.

Table 1: Applying Traffic Control Profiles

Type of Traffic Control Profile

Per-unit Allowed?

Hierarchical Allowed?

Port level output-traffic-control-profile with per-priority shaping

Yes

Yes

Port level output-traffic-control-profile-remaining with per-priority shaping

No

Yes

Port level output-traffic-control-profile and output-traffic-control-profile-remaining with per-priority shaping

No

Yes

Port level input-traffic-control-profile with per-priority shaping

No

No

Port level input-traffic-control-profile-remaining with per-priority shaping

No

No

Interface set output-traffic-control-profile with per-priority shaping

No

Yes

Interface set output-traffic-control-profile-remaining with per-priority shaping

No

No

Interface set input-traffic-control-profile with per-priority shaping

No

No

Interface set input-traffic-control-profile-remaining with per-priority shaping

No

No

Logical interface level output-traffic-control-profile with per-priority shaping

No

No

Logical interface level input-traffic-control-profile with per-priority shaping

No

No