There are QoS configurations common to both SLA modes. The configuration difference is rooted in subscriber management-specific commands where the SLA mode and the aggregate rate of the primary shaper are configured.
The following are the common configuration QoS blocks for both SLA modes:
A hs-scheduler-policy defines parameters at the port level:
the maximum rate of the port scheduler
the maximum rate of the WRR group (single WRR group is supported at this level)
the mapping of scheduling classes to WRR group 1 and their weights within this group.
the shaping rate of each scheduling class that is not mapped to a WRR group 1.
*A:BNG>config>qos>
hs-scheduler-policy ‟hs1” create
max-rate 10000
group 1 rate 3000
scheduling-class 1 rate 1000
scheduling-class 2 rate 1000
scheduling-class 3 group 1 weight 1
scheduling-class 4 group 1 weight 1
scheduling-class 5 rate 1000
scheduling-class 6 rate 1000
After it is defined, the hs-scheduler-policy is applied under the port. There is a single HSQ port scheduler per port.
*A:BNG>config>
port 1/1/1
ethernet
egress
hs-secondary-shaper ‟1” create
aggregate
rate 1000000
exit
class 1
rate 10000
exit
class 2
rate 10000
exit
class 3
rate 10000
exit
class 4
rate 10000
exit
class 5
rate 10000
exit
class 6
rate 10000
exit
In this example, the msap-policy defines the default inter-dest-id to be the top qtag on the subscriber SAP. All subscriber hosts on a SAP with top qtag ‛1’ are mapped to this secondary shaper.
*A:BNG>config>
subscr-mgmt
msap-policy ‟msaps” create
sub-sla-mgmt
def-inter-dest-id use-top-q
exit
An HSQ attachment policy defines how the eight individual queues within the SPI attach to either a scheduling class or to one of two WRR groups local to the SPI.
The HSQ attachment policy also defines the maximum scheduling class (one through six) that uses the SPI aggregate shaper’s low burst tolerance threshold. If a value of three is configured, classes one through three is associated with the low burst tolerance threshold while classes four through six are associated with the high burst threshold. In this example, if the SPI aggregate shaper becomes non-conforming, classes one through three shuts off first (associated queues removed from scheduler). This allows classes four to six to keep being served without buffering and therefore avoiding packet delays. If the rate of classes four through six is enough to cause the high burst tolerance threshold to be crossed, the remaining classes are also shutoff.
*A:BNG>config>qos
hs-attachment-policy ‟attach-1” create
low-burst-max-class 3
queue 1 wrr-group 1
queue 2 wrr-group 1
queue 3 wrr-group 2
queue 4 wrr-group 2
queue 5 sched-class 3
queue 6 sched-class 4
queue 7 sched-class 5
queue 8 sched-class 6
wrr-group 1 sched-class 1
wrr-group 2 sched-class 2
The HSQ attachment policy described in the previous step is referenced in the SAP egress QoS policy that is associated with the subscriber host or session.
The principal functionality provided by the SAP egress QoS policy is the following:
Forwarding class mappings that associate a forwarding class to one of the eight available egress SPI queues. A queue can service one, several, or all eight forwarding classes. A queue without a forwarding class mapping receives no user traffic.
WRR weight and class attachment weight parameters for each queue. A queue’s WRR weight is only used when the queue is attached to a WRR group. In this configuration, the queues’ WRR weight specifies the relative scheduling importance of the queue relative to other active queues in the same queue set. A queue’s class attachment weight is only used when the queue is directly attached to a scheduler class.
Class attachment weights for the WRR groups. The class attachment weight specifies the relative scheduling importance of a queue or WRR group at the primary shaper compared to queues or WRR groups belonging to other SPIs.
Queue rate. The following is an example of queue rate configurations.
*A:BNG>config>qos>
sap-egress 10 create
----------------------------------------------
hs-attachment-policy "attach1"
queue 1 create
hs-wrr-weight 5
exit
queue 2 create
hs-wrr-weight 10
exit
queue 3 create
hs-wrr-weight 15
exit
queue 4 create
hs-wrr-weight 20
exit
queue 5 create
hs-class-weight 2
rate 20000
exit
queue 6 create
hs-class-weight 3
rate 20000
exit
queue 7 create
hs-class-weight 4
rate 20000
exit
queue 8 create
hs-class-weight 5
rate 20000
exit
hs-wrr-group 1
rate 10000
hs-class-weight 8
exit
hs-wrr-group 2
rate 20000
hs-class-weight 2
exit
fc af create
queue 3
exit
fc be create
queue 1
exit
fc ef create
queue 7
exit
fc h1 create
queue 5
exit
fc h2 create
queue 6
exit
fc l1 create
queue 4
exit
fc l2 create
queue 2
exit
fc nc create
queue 8
exit
The following commands are specific to ESM:
SLA mode as configured in the subscriber profile:
*A:BNG>config>subscr-mgmt
sub-profile ‟hs-sub” create
hs-sla-mode {expanded | single}
Single SLA mode:
In single SLA mode, only the sub-profile hs-aggregate-rate-limit should be configured:
*A:BNG>config>subscr-mgmt
sub-profile ‟hs-sub-single” create
hs-sla-mode single
egress
hs-agg-rate-limit 20000
exit
*A:BNG>config>subscr-mgmt
sla-profile ‟hs-single” create
ingress
qos 5
exit
exit
egress
qos 5
exit
exit
When both, subscriber profile egress hs-agg-rate-limit and SLA profile hs-agg-rate-limit are configured, the system uses the minimum value to program the hs-agg-rate of the SPI shaper.
Expanded SLA mode:
In expanded mode, the hs-agg-rate-limit in the SLA profile determines the aggregate shaping rate of each SPI associated with the subscriber:
*A:BNG>config>subscr-mgmt>
sla-profile ‟hs-expanded” create
ingress
qos 5
exit
exit
egress
qos 5
exit
hs-agg-rate-limit 1000
exit
The aggregate rate of the subscriber (primary shaper) is configured in the subscriber profile:
*A:BNG>config>subscr-mgmt>
sub-profile ‟hs-sub-expanded” create
hs-sla-mode expanded
egress
hs-agg-rate-limit 20000
exit
HSQ overrides:
*A:DUAL_HOME_2>config>subscr-mgmt>sla-prof# info
----------------------------------------------
egress
qos 2
queue 1
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 2
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 3
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 4
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 5
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 6
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 7
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
queue 8
rate 100
mbs 1000 kilobytes
hs-class-weight 8
hs-wred-queue-policy "_tmnx_hs_default"
hs-wrr-weight 20
exit
hs-wrr-group 1
hs-class-weight 2
rate 100
exit
hs-wrr-group 2
hs-class-weight 4
rate 100
exit
exit
exit
----------------------------------------------