Technical Documentation

Configuring Schedulers for Subscriber Access in a Dynamic Profile

You use schedulers to define the parameters of output queues. These properties include the amount of interface bandwidth assigned to the queue, the size of the memory buffer allocated for storing packets, the priority of the queue, and the tail drop profiles associated with the queue.

You can configure up to four schedulers in a dynamic profile.

You can choose to define a scheduler definition that contains only static values, only dynamic variables, or a combination of static values and dynamic variables.

Configuring Static Schedulers in a Dynamic Profile

This topic describes how to configure schedulers with static values in a dynamic profile for subscriber access.

To configure static scheduling and queuing in a dynamic profile:

  1. Configure the scheduler and queuing parameters.
    1. Specify the scheduler for which you want to configure parameters.
      [edit dynamic-profiles profile-name class-of-service]user@host# set schedulers scheduler-name
    2. Configure the buffer size.
      [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set buffer-size remainder
    3. Configure the drop-profile map and drop profile.
      [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set drop-profile-map loss-priority any protocol any drop-profile d3
    4. Configure the priority.
      [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set priority low
    5. Configure the transmit rate.
      [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set transmit-rate percent 40
  2. Associate the scheduler with a scheduler map.
    1. Configure the scheduler map name.
      [edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
    2. Configure the forwarding class.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps map-name]user@host# set forwarding-class be
    3. Configure the scheduler.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps map-name forwarding-class forwarding-class-name]user@host# set scheduler be_sch

Configuring Dynamic Schedulers in a Dynamic Profile

You can configure variables for the dynamic scheduler parameters. These values are dynamically obtained by RADIUS when a subscriber logs in or changes a service using a RADIUS change of authorization (CoA) message.

To configure dynamic scheduling and queuing in a dynamic profile:

  1. Configure the scheduler and queuing parameters.
    1. Specify the scheduler name using a variable.
      [edit dynamic-profiles profile-name class-of-service]user@host# set schedulers $junos-cos-scheduler
    2. Configure the variable for the buffer size.
      [edit dynamic-profiles profile-name class-of-service schedulers $junos-cos-scheduler]user@host# set buffer-size $junos-cos-scheduler-bs
    3. Configure the variables for the drop-profile maps and the drop profile.
      [edit dynamic-profiles profile-name class-of-service schedulers $junos-cos-scheduler]user@host# set drop-profile-map loss-priority low protocol any drop-profile $junos-cos-scheduler-lowuser@host# set drop-profile-map loss-priority medium-low protocol any drop-profile $junos-cos-scheduler-medium-lowuser@host# set drop-profile-map loss-priority medium-high protocol any drop-profile $junos-cos-scheduler-medium-highuser@host# set drop-profile-map loss-priority high protocol any drop-profile $junos-cos-scheduler-highuser@host# set drop-profile-map loss-priority any protocol any drop-profile “$junos-cos-scheduler-any
    4. Configure the variable for the priority.
      [edit dynamic-profiles profile-name class-of-service schedulers $junos-cos-scheduler]user@host# set priority $junos-cos-scheduler-pri
    5. Configure the variable for the transmit rate.
      [edit dynamic-profiles profile-name class-of-service schedulers $junos-cos-scheduler]user@host# set transmit-rate $juno-cos-scheduler-tx
  2. Associate the scheduler with a scheduler map.
    1. Configure the scheduler map name.
      [edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
    2. Configure the forwarding class.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap]user@host# set forwarding-class be
    3. Configure the scheduler.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap forwarding-class be]user@host# set scheduler $junos-cos-scheduler

Configuring a Combination of Static and Dynamic Scheduler Parameters in a Scheduler Definition

Within a dynamic profile, you can choose to configure one dynamic scheduler definition, or combine static and dynamic scheduler parameters in many static scheduler definitions.

Combining static and dynamic scheduler parameters enables you to provide subscribers with unique rate configurations that the RADIUS definitions for predefined variables do not allow.

To configure a scheduler definition that contains static and dynamic scheduling and queuing parameters:

  1. Configure the scheduler definition.
    1. Specify the scheduler name.

      Note: To configure a static scheduler that contains both static and dynamic parameters, you must specify a unique scheduler name, not the $junos-cos-scheduler variable.

      [edit dynamic-profiles profile-name class-of-service]user@host# set schedulers scheduler-name
    2. Configure the buffer size.

      Do either of the following:

      • Configure a static value.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set buffer-size $junos-cos-scheduler-bs
      • Configure a variable.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set buffer-size $junos-cos-scheduler-bs
    3. Configure the drop-profile maps, the drop profile, and the priority.

      Do either of the following:

    4. Configure the priority.

      Do either of the following:

      • Configure a static value.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set priority
      • Configure a variable.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set priority $junos-cos-scheduler-pri
    5. Configure the variable for the transmit rate.

      Do either of the following:

      • Configure a static value.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set transmit-rate
      • Configure a variable.
        [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set transmit-rate $juno-cos-scheduler-tx
  2. Associate the scheduler with a scheduler map.
    1. Configure the scheduler map name.
      [edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
    2. Configure the forwarding class.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap]user@host# set forwarding-class be
    3. Configure the scheduler.
      [edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap forwarding-class be]user@host# set scheduler $junos-cos-scheduler

Published: 2010-01-11