I've got an MX w/ a 40G interface towards a switch and then on the switch I have 6x 10G ports. The 6x 10Gs aggregate up to that single 40G each on their own vlan/unit (so it is over-subscribed).
I want my CoS/QoS to handle these 2 situations:
1) I want to shape each of the vlans/units on the 40G down to 10G so that the MX can effectively enact scheduling should any one of those 6 10Gs start pushing 10G of traffic. However doing this means I would have 60G of shapers on a 40G interface. The MX lets me commit this fine, however the "guaranteed rates" in "show class-of-service scheduler-hierarchy interface" are turning to 0.
2) I want QoS/scheduling enacted if the 40G as a whole becomes congested as well such as if each of the 6x 10Gs start pushing 6.667G each (6 units * 6.667G = ~40G).
How do I do both of these things? Would I just have to put a guaranteed-rate in the TCP for each 10G vlan/unit to 6.66G? What's strange to me is I can actually put shaping-rate 10g and guaranteed-rate 10g and it takes and "show class-of-service scheduler-hierarchy interface" shows each unit has having 10g guaranteed even though that would exceed the total interface bandwidth.
Not sure what is the overall objective here. If You want to apply per-VLAN queueing with per-VLAN shaping-rate 10G, and per-VLAN guaranteed-rate 6.66G, and physical interface' shaping rate 40G, then You can do it on MPC queueing card (full-queueing card or restricted queueing card, with appropriate license of course).
The configuration example which is close to Your requirement and its walk-through are given in the "Juniper MX series" book 2nd Ed pages 774-843
firstname.lastname@example.org wrote: Well let me ask this then: what happens when you overbook CIRs (guaranteed-rate) during times of congestion? Cuz obviously the guaranteed rate is no longer “guaranteed” if it’s overbooked.
Guaranteed is the minimum rate, not maximum. So until the guaranteed rate 6.66G is hit on all 6 VLANs simultaneously, then all is fine since line rate 40G and shaping rate 40G are not met.
In other words if I put a guarantee of 10g across all 6 as well, what’s going to happen during congestion ?
First 4 VLANs that hit their guaranteed 10G rates will get BW they need, last 2 will not, but this greatly depends on composition of traffic. 4+2 arrangement will be in constant and dynamic change (i.e. during 1st second VLANs ABDE + CF, during 2nd second CFDE + AB and so on).
Hence don't inflate the guaranteed rate hoping that somehow all VLANs are going to be satisfied, it is not going to happen.
per-VLAN 6.66G guaranteed rate and per-VLAN 10G shaping rate looks a sensible strategy to me.
I completely understand it’s impossible to satisfy a guarantee when it’s overbooked. I only ask to understand what junos will do under the hood.
Why is it that when I just apply a 10g shaper across each vlan (so 60G total) the schedule hierarchy shows the bandwidth guarantees of all of the queues 0. I would think that it would automatically divide bandwidth guarantees to the 6.66667 automatically. As long as I don’t go over the 40G it shows proper guarantee rates. It’s only when I go over does it set everything to 0. So it’s unclear exactly what’s going to happen here. If it’s literally in fact all 0 then cos is effectively disabled.