Nested QoS policy support on Juniper
Can Juniper shape traffic on a 10 Gig link and then within that shaper setup 3 different shappers
The work-around is to use drop profiles; See example below:
------------------------------------------------------------------------------------ classifiers { dscp WAN-CLASSIFIER { forwarding-class DR { loss-priority low code-points [ af11 af12 af13 ]; } forwarding-class VOICE { loss-priority low code-points ef; } forwarding-class VIDEO { loss-priority low code-points af41; loss-priority high code-points cs4; } forwarding-class D1 { loss-priority high code-points cs3; } forwarding-class D2 { loss-priority low code-points af21; loss-priority medium-low code-points af22; loss-priority high code-points cs2; } forwarding-class D3 { loss-priority low code-points be; } forwarding-class D4 { loss-priority high code-points cs1; } forwarding-class NETWORK-CONTROL { loss-priority low code-points [ cs6 cs7 ]; } } } drop-profiles { WRED-PROFILE { fill-level 85 drop-probability 15; fill-level 90 drop-probability 20; fill-level 95 drop-probability 35; fill-level 100 drop-probability 100; } } forwarding-classes { queue 0 D3; queue 1 D4; queue 2 VOICE; queue 3 NETWORK-CONTROL; queue 4 D2; queue 5 VIDEO; queue 6 D1; queue 7 DR; } scheduler-maps { QUEUE-OUTPUT { forwarding-class VOICE scheduler VOICE-SCHED; forwarding-class VIDEO scheduler VIDEO-SCHED; forwarding-class D1 scheduler D1-SCHED; forwarding-class D2 scheduler D2-SCHED; forwarding-class D3 scheduler D3-SCHED; forwarding-class D4 scheduler D4-SCHED; forwarding-class DR scheduler DR-SCHED; forwarding-class NETWORK-CONTROL scheduler NETWORK-CTL-SCHED; } } schedulers { /* DR SCHEDULERS */ DR-SCHED { shaping-rate percent 60; priority low; } /* NORMAL SCHEDULERS */ VOICE-SCHED { transmit-rate percent 4; priority high; } VIDEO-SCHED { transmit-rate percent 4; priority low; } D1-SCHED { transmit-rate percent 4; priority low; } D2-SCHED { transmit-rate percent 20; priority low; drop-profile-map loss-priority low protocol any drop-profile WRED-PROFILE; } D3-SCHED { transmit-rate { remainder; } priority low; drop-profile-map loss-priority low protocol any drop-profile WRED-PROFILE; } D4-SCHED { transmit-rate percent 2; priority low; drop-profile-map loss-priority low protocol any drop-profile WRED-PROFILE; } NETWORK-CTL-SCHED { transmit-rate percent 3; priority high; }