Description

Three ways to configure shaping on QFX5110 using simple topology as an example:

... ---> xe-0/0/2_QFX5110_xe-0/0/3 ---> ...

Solution

1) Queue shaping.


set class-of-service forwarding-classes class TEST-BE-FC queue-num 0
set class-of-service interfaces xe-0/0/2 forwarding-class TEST-BE-FC
set class-of-service interfaces xe-0/0/3 scheduler-map TEST-MAP
set class-of-service scheduler-maps TEST-MAP forwarding-class TEST-BE-FC scheduler TEST-BE-SCHED
set class-of-service scheduler-maps TEST-MAP forwarding-class network-control scheduler TEST-NC-SCHED
set class-of-service scheduler-maps TEST-MAP forwarding-class mcast scheduler TEST-MC-SCHED
set class-of-service schedulers TEST-BE-SCHED shaping-rate 7g
set class-of-service schedulers TEST-NC-SCHED transmit-rate percent 5
set class-of-service schedulers TEST-MC-SCHED transmit-rate percent 10


user@qfx5110> show class-of-service scheduler-map TEST-MAP
Scheduler map: TEST-MAP, Index: 23958

  Scheduler: TEST-BE-SCHED, Forwarding class: TEST-BE-FC, Index: 31542
    Transmit rate: unspecified, Rate Limit: none, Buffer size: remainder, Buffer Limit: none, Priority: low
    Excess Priority: unspecified
    Shaping rate: 7000000000 bps
    Explicit Congestion Notification: disable
....

 

2) Shaping under Traffic Control Profile


set class-of-service forwarding-classes class TEST-BE-FC queue-num 0
set class-of-service traffic-control-profiles TEST-TCP scheduler-map BE-MAP
set class-of-service traffic-control-profiles TEST-TCP shaping-rate 7g
set class-of-service traffic-control-profiles TEST-TCP guaranteed-rate 7g
set class-of-service forwarding-class-sets TEST-FCS class TEST-BE-FC
set class-of-service interfaces xe-0/0/2 forwarding-class TEST-BE-FC
set class-of-service interfaces xe-0/0/3 forwarding-class-set TEST-FCS output-traffic-control-profile TEST-TCP
set class-of-service scheduler-maps BE-MAP forwarding-class TEST-BE-FC scheduler BE-SCHED
set class-of-service schedulers BE-SCHED transmit-rate percent 80


user@qfx5110> show class-of-service traffic-control-profile TEST-TCP
Traffic control profile: TEST-TCP, Index: 14806
  Shaping rate: 7000000000
  Scheduler map: BE-MAP
  Guaranteed rate: 7000000000

labroot@t07-43> show interfaces queue xe-0/0/3
Physical interface: xe-0/0/3, Enabled, Physical link is Up
  Interface index: 651, SNMP ifIndex: 518
Forwarding classes: 12 supported, 5 in use
Egress queues: 12 supported, 5 in use
Queue: 0, Forwarding classes: TEST-BE-FC
  Queued:
    Packets              :             239258704                946476 pps
    Bytes                :          311036317800            9843356584 bps
  Transmitted:
    Packets              :             233361051                672726 pps
    Bytes                :          303369368900            6996355008 bps    <<< Transmitted up to shaping rate
    Tail-dropped packets : Not Available
    RL-dropped packets   :                     0                     0 pps
    RL-dropped bytes     :                     0                     0 bps
    Total-dropped packets:               5897653                273750 pps
    Total-dropped bytes  :            7666948900            2847001576 bps
...

3) Port shaping.

NOTE: Available in 23.2R1+ (https://apps.juniper.net/feature-explorer/feature-info.html?fKey=6893&fn=Port+shaping)

set class-of-service interfaces xe-0/0/3 shaping-rate 7g
 

Modification History

2024-06-17 : Article Created

Related Information

Port shaping: https://www.juniper.net/documentation/us/en/software/junos/traffic-mgmt-qfx/topics/topic-map/cos-port-shaping.html
Queue schedulers: https://www.juniper.net/documentation/us/en/software/junos/traffic-mgmt-qfx/topics/concept/cos-qfx-series-schedulers-understanding.html
Traffic control profiles: https://www.juniper.net/documentation/us/en/software/junos/traffic-mgmt-qfx/topics/concept/cos-qfx-series-traffic-control-profiles-understanding.html