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:
- Configure the scheduler and queuing parameters.
- Specify the scheduler for which you want to configure
parameters.[edit dynamic-profiles profile-name class-of-service]user@host# set schedulers scheduler-name
- Configure the buffer size.[edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set buffer-size remainder
- 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
- Configure the priority.[edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set priority low
- Configure the transmit rate. [edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set transmit-rate percent 40
- Specify the scheduler for which you want to configure
parameters.
- Associate the scheduler with a scheduler map.
- Configure the scheduler map name.[edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
- Configure the forwarding class.[edit dynamic-profiles profile-name class-of-service scheduler-maps map-name]user@host# set forwarding-class be
- 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
- Configure the scheduler map name.
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:
- Configure the scheduler and queuing parameters.
- Specify the scheduler name using a variable.[edit dynamic-profiles profile-name class-of-service]user@host# set schedulers $junos-cos-scheduler
- 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
- 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
- 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
- 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
- Specify the scheduler name using a variable.
- Associate the scheduler with a scheduler map.
- Configure the scheduler map name.[edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
- Configure the forwarding class.[edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap]user@host# set forwarding-class be
- 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
- Configure the scheduler map name.
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:
- Configure the scheduler definition.
- 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 - 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
- Configure a static value.
- Configure the drop-profile maps, the drop profile, and
the priority.
Do either of the following:
- Configure static values.[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[edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]user@host# set priority low
- Configure variables.[edit dynamic-profiles profile-name class-of-service schedulers scheduler-name]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
- Configure static values.
- Configure the priority.
Do either of the following:
- 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
- Configure a static value.
- Specify the scheduler name.
- Associate the scheduler with a scheduler map.
- Configure the scheduler map name.[edit dynamic-profiles profile-name class-of-service]user@host# set scheduler-maps data-smap
- Configure the forwarding class.[edit dynamic-profiles profile-name class-of-service scheduler-maps data-smap]user@host# set forwarding-class be
- 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
- Configure the scheduler map name.

