Hardware aggregate shapers

Hardware-assisted HQoS is based on hardware aggregate shapers, which provide enforcement of aggregate rates for a group of queues in the hardware. In the FP4-based chipset, hardware aggregate shapers are available at egress only. The queues are allocated in a block of eight to each hardware aggregate shaper.

Hardware aggregate shapers are controlled by three parameters:

rate
sets the aggregate rate of the hardware shaper
burst-limit
sets the aggregate burst for the specific hardware aggregate shaper
adaptation-rule
sets how the administrative rates are translated into hardware operational values

Traffic is scheduled from the queues in a strict priority order based on the hardware scheduling priority assigned to each queue. This can be controlled using the sched-class command. There are 6 scheduling-classes available.

Hardware aggregate shapers do not need software-based HQoS to modify the oper-PIR of the queues to enforce an aggregate rate. This results in a significantly faster reaction time compared to traditional HQoS based on virtual schedulers.

The following examples show the configuration of a hardware aggregate shaper on a subscriber profile. The configuration is similar to traditional QoS configuration.

Classic CLI example:

*A:SR-1s-test>config>subscr-mgmt# info
----------------------------------------------
        sla-profile "trialSLA" create
            ingress
                qos 2
                exit
            exit
            egress
                qos 2
                exit
            exit
        exit
        sub-profile "trialSub" create
            egress
                agg-rate-limit 1500000
            exit
        exit
----------------------------------------------
*A:SR-1s-test>config>subscr-mgmt#

MD-CLI example:

[/configure subscriber-mgmt]
A:admin@SR-1s# info
    sub-profile "trialSub" {
        egress {
            qos {
                agg-rate {
                    rate 1500000
                    burst-limit auto
                }
            }
        }
    }
    sla-profile "trialSLA" {
        egress {
            qos {
                sap-egress {
                    policy-name "trial-egr"
                }
            }
        }
        ingress {
            qos {
                sap-ingress {
                    policy-name "trial-ingr"
                }
            }
        }