As the QoS administrator, you can create a parameter definition that constrains how a QoS client can create a parameter instance. When QoS clients create a parameter instance, they work within the attributes that you have defined.
Table 24 lists the parameter attributes that you can define for a parameter definition.
Table 24: Attributes in Parameter Definitions
You define the parameter name by issuing the qos-parameter-define command to enter QoS Parameter Definition Configuration mode.
The naming guidelines for parameters differ from other QoS features such as QoS profiles and scheduler profiles.
Parameter names must begin with a letter to avoid confusion with numbers and operators. Because QoS clients reference this parameter name to create a parameter instance, we recommend that you use a name that is descriptive.
Table 25 lists some sample parameter names and descriptions.
Table 25: Sample Parameter Names
In addition, parameter names cannot be the same as an arithmetic operator. Table 26 lists examples of valid and invalid parameter names that use operators.
Table 26: Valid and Invalid Parameter Names
|
Valid Names |
Invalid Names |
|---|---|
|
n1 |
1 |
|
f+ |
1n |
|
– |
+ |
|
– |
+foo |
|
– |
min |
|
– |
max |
Parameter names are case-sensitive. For example, max-subscriber-bw and max-Subscriber-bw are different parameter names.
Because the shaping rate and shared-shaping rates determine the maximum scheduler rates, and the assured rate determines minimum scheduler rates, we recommend that you use min or max operands in the parameter name.
You can specify the following attributes in a parameter definition to control the scope of a parameter on interfaces:
Controlled-interface types specify interface types for queues and scheduler nodes that a parameter instance can control. You can define up to four controlled-interface types for each parameter definition by issuing the controlled-interface-type command in QoS Parameter Definition Configuration mode. Examples of controlled interface types include atm-vp (ATM virtual paths), atm-vc (ATM virtual circuits), and VLAN (virtual LANs).
For example, if you specify controlled-interface types of atm-vc and vlan, then you can use the parameter instance to shape or weight an ATM VC or VLAN node. However, because you did not specify ip, the system does not allow this parameter in a scheduler profile that was referenced in a QoS profile with an ip node (for example, ip node scheduler-profile test1).
In this example, you configure a parameter definition for a scheduler hierarchy in which a VLAN represents a subscriber. The parameter definition specifies that the parameter controls VLAN nodes and queues and sets the maximum rate for any parameter instance.
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#controlled-interface-type
vlan
- host1(config-qos-parameter-define)#exit
Then you reference the parameter definition within a scheduler profile.
- host1(config)#scheduler-profile subscriber
- host1(config-scheduler-profile)#shared-shaping-rate
max-subscriber-bandwidth auto
- host1(config-scheduler-profile)#exit
This scheduler profile can be referenced only by QoS profile VLAN rules. When a user attempts to reference the scheduler profile using rules other than VLAN, an error message is displayed. For example, a QoS profile rule cannot associate the scheduler profile with an atm-vc rule, as shown in the following example:
- host1(config-qos-profile)#atm-vc queue traffic-class
best-effort scheduler-profile
-
subscriber
- % scheduler-profile parameter's controlled-interface-types(s)
do not control this
- atm-vc qos-profile rule type
After you reference the parameter in a scheduler profile, you can reference the scheduler profile from a QoS profile. In this example, you configure a vlan node for each subscriber with a shared-shaping rate specified by the parameter max-subscriber-bandwidth.
- host1(config)#qos-profile subscriber-triple-play
- host1(config-qos-profile)#vlan queue traffic-class
best-effort scheduler-profile subscriber
After you configure at least one controlled-interface type, you configure one or more instance-interface types that specify the types of logical interfaces to which the QoS client can apply the parameter. You can define up to eight instance-interface types for each parameter definition by issuing the instance-interface-type command in QoS Parameter Definition Configuration mode.
QoS clients cannot create a downreference for a parameter instance for instance-interface types that is above the lowest controlled-interface type of the same family in the interface stack.
![]() |
Note: The guidelines are different for using instance-interface types with hierarchical parameters. For more information, see Scheduler Profiles and Parameter Expressions for QoS Administrators. |
In the following example, you configure a parameter definition with a controlled-interface type of VLAN. You then enable QoS clients to create a parameter instances at VLAN, SVLAN, and Ethernet interfaces by configuring instance-interface types of vlan, svlan, and ethernet.
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#controlled-interface-type
vlan
- host1(config-qos-parameter-define)#instance-interface-type
vlan
- host1(config-qos-parameter-define)#instance-interface-type
svlan
- host1(config-qos-parameter-define)#instance-interface-type
ethernet
In the scheduler hierarchy, IP is above VLANs. If you attempt to configure an instance-interface type for ip, an error message indicates that you cannot downreference IP from VLANs.
- host1(config-qos-parameter-define)#instance-interface-type
ip
- % instance-interface-type ip cannot stack above the lowest
controlled-interface-type
Subscriber-interface types represent subscriber interfaces to which you can apply QoS parameters obtained through RADIUS or SRC. You can define up to four subscriber-interface types for each parameter definition by issuing the subscriber-interface-type command in QoS Parameter Definition Configuration mode.
The following interface types are supported:
QoS clients cannot create a parameter instance for subscriber-interface types that is above the lowest controlled-interface type of the same family in the interface stack.
If an interface profile contains a QoS parameter instance rule of max-subscriber-bandwidth 1000000, the system searches the logical interface column, starting at the top, and associates the parameter instance with the first interface with the subscriber-interface type that it locates.
A RADIUS administrator can enter multiple QoS parameter name and value pairs when configuring the RADIUS server with the Juniper Networks VSA [26-82]. This means that the RADIUS can return multiple instances of the same VSA in a single request. For more information about Juniper Networks VSA [26-82], see Juniper Networks VSAs.
In the following example, you configure a parameter definition with a controlled-interface type and a subscriber-interface type of IP. These settings enable you to create QoS parameter VSAs on an IP interface.
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#controlled-interface-type
ip
- host1(config-qos-parameter-define)#instance-interface-type
ip
- host1(config-qos-parameter-define)#subscriber-interface-type
ip
You can specify the range of values that the QoS client can enter for a parameter instance by issuing the range command in QoS Parameter Definition Configuration mode.
In the following example, you specify that a QoS client can enter a value for the parameter from 512 Kbps to 8 Mbps. The system does not accept values outside of this range.
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#controlled-interface-type
vlan
- host1(config-qos-parameter-define)#instance-interface-type
vlan
- host1(config-qos-parameter-define)#range 512000
8192000
- host1(config-qos-parameter-define)#exit
If the QoS client attempts to configure values outside of this range, a message is displayed.
- host1(config)#interface fastEthernet 9/0.1
- host1(config-subif)#qos-parameter max-subscriber-bandwidth
1000000
- host1(config-subif)#exit
- host1(config)#interface fastEthernet 9/0.1
- host1(config-subif)#qos-parameter max-subscriber-bandwidth
200000
- % parameter instance is out of range
You cannot create or modify an existing range if the change causes any explicit parameter instance values to be outside the valid range. For example:
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#controlled-interface-type
vlan
- host1(config-qos-parameter-define)#instance-interface-type
vlan
- host1(config-qos-parameter-define)#range 512000
8192000
- host1(config-qos-parameter-define)#exit
- host1(config)#interface fastEthernet 9/0.1
- host1(config-subif)# ! This parameter instance is within
the range of 512Kbps to 8Mbps.
- host1(config-subif)#qos-parameter max-subscriber-bandwidth
1000000
- host1(config-subif)#exit
- host1(config)#qos-parameter-define max-subscriber-bandwidth
- host1(config-qos-parameter-define)#range 2048000
8192000
- % cannot modify a range when parameter instances exist
with values outside the new range
However, you can remove ranges by using the no range command.
![]() |
Note: You can also define a range in parameter expressions when referencing a parameter within a scheduler profile. For more information, see Specifying a Range in Expressions. |
You can associate a parameter definition with an application in the system by issuing the application keyword with the qos-parameter-define command. The applications that you can configure include: