Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Configuring Rate Limiting and Sharing of Excess Bandwidth on Multiservices PICs

date_range 29-Nov-23

On Multiservices PICs, you can limit the transmit rate of a logical interface (lsq-) in the same way as other types of queuing PICs. You can also assign a percentage of the excess bandwidth to the logical interfaces. As with other types of PICs, the strict-high queue (voice) can “starve” low and medium priority queues. To prevent the strict-high queue from starving other queues, rate-limit the queue.

To rate-limit logical interfaces on a Multiservices PIC, include the transmit-rate statement with the rate-limit option at the [edit class-of-service schedulers scheduler-name] hierarchy level:

content_copy zoom_out_map
[edit class-of-service schedulers scheduler-name]
transmit-rate (rate | percent percentage | remainder) rate-limit;

You can also make the excess strict-high bandwidth available for other queues. You can split the excess bandwidth among multiple queues, but the total excess bandwidth assigned to these queues can only add up to 100 percent. The excess-bandwidth priority statement option is not supported on the Multiservices PIC. For more information about excess bandwidth sharing, see Configuring Excess Bandwidth Sharing on IQE PICs.

To share excess bandwidth among Multiservices PICs, include the excess-rate statement at the [edit class-of-service schedulers scheduler-name] hierarchy level.

content_copy zoom_out_map
[edit class-of-service schedulers scheduler-name]
excess-rate percent percentage;

Both of these rate-limiting and excess bandwidth sharing features apply to egress traffic only, and only for per-unit schedulers. Hierarchical schedulers and shared schedulers are not supported.

You must still complete the configuration by configuring the scheduler map and applying it to the Multiservices PIC interface.

This example configures a rate limit and excess bandwidth sharing for a Multiservices PIC interface.

The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

  1. Specify the scheduler name and parameter values.
    content_copy zoom_out_map
    [edit]
    user@host# edit class-of-service
    user@host# set schedulers scheduler0 transmit-rate percent 10 rate-limit
    user@host# set schedulers scheduler0 priority strict-high excess-rate percent 30
    user@host# set schedulers scheduler1 transmit-rate percent 1 rate-limit
    user@host# set schedulers scheduler1 priority high excess-rate percent 70
    
  2. Specify a scheduler map name and associate it with the scheduler configuration and forwarding class.
    content_copy zoom_out_map
    [edit class-of-service]
    user@host# set scheduler-maps scheduler0 forwarding-class ef scheduler scheduler0
    user@host# set scheduler-maps scheduler0 forwarding-class af scheduler scheduler1
    
  3. Associate the scheduler map name with the interface.
    content_copy zoom_out_map
    [edit class-of-service]
    user@host# set interfaces lsq-1/3/0 unit 0 scheduler-map scheduler0
    user@host# set interfaces lsq-1/3/0 unit 1 scheduler-map scheduler1
    
  4. Verify the configuration.
    content_copy zoom_out_map
    scheduler0 {
        transmit-rate {
            percent 10;
            rate-limit;
        }
        excess-rate percent 30;
        priority strict-high;
    }
    scheduler1 {
        transmit-rate {
            percent 1;
            rate-limit;
        }
        excess-rate percent 70;
        priority high;
    }
    
    content_copy zoom_out_map
    [edit class-of-service]
    user@host# show schedulers
    
    content_copy zoom_out_map
    interfaces {
     lsq-1/3/0 {
            unit 0 {
                scheduler-map scheduler0;
            }
        }
    
    content_copy zoom_out_map
    scheduler-maps {
     scheduler0 {
            forwarding-class ef scheduler scheduler0;
            forwarding-class af scheduler scheduler1;
        }
    }
    
footer-navigation