Technical Documentation

Example: Configuring Initial CoS Parameters Dynamically Obtained from RADIUS

The following configuration is an example of a client dynamic profile in which initial CoS parameters are dynamically obtained from the RADIUS server when a subscriber authenticates over the interface to which the dynamic profile is applied.

For this example, assume that the RADIUS authentication server has been configured with traffic-shaping parameters (at Juniper Networks VSA 26-108) and CoS scheduling and queuing parameters (at Juniper Networks VSA 26–146).

The subscriber interface is a single-unit static gigabit Ethernet VLAN interface on an EQ DPC port:

[edit]interfaces {ge-9/0/3 {hierarchical-scheduler;vlan-tagging;unit 100 {vlan-id 100;family inet {address 192.168.32.2/24;}}}}

The client dynamic profile residential_silver attaches the traffic-control profile tcp_1 to the subscriber interface that is defined in the dynamic profile using the $junos-interface-ifd-name predefined variable.

[edit]dynamic-profiles {residential_silver {interfaces {“$junos-interface-ifd-name” {unit “$junos-underlying-interface-unit” {family inet;}}}class-of-service {interfaces {“$junos-interface-ifd-name” {unit “$junos-underlying-interface-unit” {output-traffic-control-profile tcp_1;}}}}}}

The traffic-control profile tcp_1, references JUNOS predefined variables to obtain a scheduler-map name and traffic-shaping parameter values from RADIUS when a subscriber logs in. For this example, assume that the RADIUS server replaces the JUNOS predefined variable $junos-cos-scheduler-map scheduler-map name business_smap_1. The scheduler map business_smap_1 is configured in the client dynamic profile:

[edit]dynamic-profiles {residential_silver {class-of-service {traffic-control-profiles {tcp_1 {scheduler-map “$junos-cos-scheduler-map”; # ’business_smap_1’shaping-rate "$junos-cos-shaping-rate";guaranteed-rate "$junos-cos-guaranteed-rate";delay-buffer-rate "$junos-cos-delay-buffer-rate";}}scheduler-maps {business_smap_1 {forwarding-class best-effort scheduler be_sched;forwarding-class ef scheduler home_sched}}}}}

A scheduler definition references JUNOS predefined variables to obtain scheduler configurations from RADIUS when a subscriber logs in. For this example, assume that the RADIUS server provides scheduler configurations for schedulers named be_sched and home_sched, which are included in the scheduler map business_smap_1:

[edit]dynamic-profiles {residential_silver {class-of-service {schedulers {“$junos-cos-scheduler” { # ’be_sched’ and ’home_sched’transmit-rate "$junos-cos-scheduler-tx";buffer-size "$junos-cos-scheduler-bs";priority "$junos-cos-scheduler-pri";drop-profile-map loss-priority low protocol any drop-profile “$junos-cos-scheduler-dropfile-low“;drop-profile-map loss-priority medium-low protocol any drop-profile “$junos-cos-scheduler-dropfile-medium-low“;drop-profile-map loss-priority medium-high protocol any drop-profile “$junos-cos-scheduler-dropfile-medium-high“;drop-profile-map loss-priority high protocol any drop-profile “$junos-cos-scheduler-dropfile-high“;}}}}}

Static configurations for CoS consist of configurations for the forwarding classes used in the scheduler map business_smap_1 and configurations for drop-profile names provided by RADIUS for as part of the scheduler configurations provided (for be_sched and home_sched) when a subscriber logs in:

[edit]class-of-service {forwarding-classes {queue 0 best-effort;queue 1 ef;}drop-profiles {. . . configurations_for_drop_profile_names_provided_by_RADIUS . . .}}}

Published: 2010-04-15