08-28-2019 05:03 AM
Hi CSC,
I'm looking for a bit of advice on the following attached scenario.
I have management of a router, on the left, 10.10.10.10. The other router which feeds all the sites I have no access to.
On the router I have access to I'm looking to shape traffic bound for each of the different sites based on each sites CIR. I also want to prioritize voice for each of the sites within their configured classes.
What is the best way to approach/structure this?
Thanks
Solved! Go to Solution.
08-28-2019 05:25 AM
Hello GRANT3779,
you should use the Hierarchical QoS Framework.
Parent shaper:
one class for each remote site based only on destination address
policy-map PARENT-SHAPER
class RSITE1
shape average 1000000
service-policy CHILD1
class RSITE2
shape average 1000000
service-policy CHILD2
CHILD1 and CHILD2 can be CBWFQ with a priority queue for VOIP.
However, the real improvement is relative as you do not manage the router that connects to remote site.
You would need to coordinate your efforts with people managing that router to achieve good results.
Hope to help
Giuseppe
08-28-2019 05:25 AM
Hello GRANT3779,
you should use the Hierarchical QoS Framework.
Parent shaper:
one class for each remote site based only on destination address
policy-map PARENT-SHAPER
class RSITE1
shape average 1000000
service-policy CHILD1
class RSITE2
shape average 1000000
service-policy CHILD2
CHILD1 and CHILD2 can be CBWFQ with a priority queue for VOIP.
However, the real improvement is relative as you do not manage the router that connects to remote site.
You would need to coordinate your efforts with people managing that router to achieve good results.
Hope to help
Giuseppe
08-28-2019 06:44 AM
08-28-2019 07:24 AM
Hello GRANT3779,
>> For the various classes would the shape average be equal to the Site BW as per below
Yes this should be the idea.
However, the next router if not configured for shaping can create bursts of traffic to each remote followed by short silence intervals.
This is why I say that for achieving the best results also that router should be configured for QoS and in a coordinate way with your configuration.
If the second router would be using a traditional serial link, this would not be an issue, but if the "WAN" interface is a 100 Mbps FE with a CIR of 1 Mbps problems can arise.
Hope to help
Giuseppe
08-28-2019 11:04 AM - edited 08-28-2019 11:07 AM
If the topology is as your diagram shows, and link from your router to the WAN router's bandwidth is or exceeds the aggregate of all the remote sites (again, each with their own dedicated link), then as both you and Giuseppe have noted, a CBWFQ policy with a class per site, would be shaped for the bandwidth to that site.
With the forgoing, you might not have any subordinate child polices or you could have shared and/or unique per site child policies.
e.g.:
policy-map parent
class site1
shape average 1000000
service-policy site1
class site2
shape average 2000000
service-policy commonsite
class site3
shape average 3000000
service-policy commonsite
class site4
shape average 1000000
class . . .
BTW, the reason CBWFQ provide percentage based bandwidth, is so you could hare the same logical policy with different bandwidth interfaces or parent classes.
Also BTW, I'm not sure that all Cisco routers account for L2 overhead. If not, shape about 15% less than the L2 bandwidth to allow for L2 overhead.
If its possible there's a congestion point less than the aggregate of all the remote sites, then you want a 3 level hierarchical policy (not supported on all platforms). The highest level provides the policy if the aggregate exceeds the aggregate maximum, the 2nd level provides the per-site bandwidth shaping, and the lowest level provides the manage of site traffic.
I.e.
policy grandparent
shape average 10000000
service-policy parent
08-29-2019 03:17 AM
Very informative @Joseph W. Doherty , thanks for that. I have been looking over some Cisco docs and an example is shown below -
policy-map grand-parent
class class-default
shape average 10 mbps
service-policy parent
policy-map parent
class p1
service-policy child
police rate 10 mbps
bandwidth remaining ratio 1
class p2
service-policy child
police rate 10 mbps
bandwidth remaining ratio 1
class p3
police rate 10 mbps
service-policy child
bandwidth remaining ratio 1
class class-default
policy-map child
class c1
police rate 2 mbps
class c2
police rate 5 mbps
class class-default
police rate 10 mbps
Am I right in saying that there is an Overall Grand Parent Shaper of 10Mbps and is applied overall to outbound traffic
Would the top level policy section (grand parent) be representative of your comment -
"If its possible there's a congestion point less than the aggregate of all the remote sites, then you want a 3 level hierarchical policy"
The Grandparent shaper would be configured to match the slowest link on the path to the WAN Router (if this is lower than all the sites combined BW)?
The child policy in my example above, is this what would be used to shape to each specific sites BW? What does the Bandwidth remaining ratio 1 do in this case?
08-29-2019 10:14 AM - edited 08-29-2019 10:17 AM
"Am I right in saying that there is an Overall Grand Parent Shaper of 10Mbps and is applied overall to outbound traffic
Would the top level policy section (grand parent) be representative of your comment -"
Yes and yes.
"The Grandparent shaper would be configured to match the slowest link on the path to the WAN Router (if this is lower than all the sites combined BW)?"
Yes, because if you exceed that bandwidth, without shaping for it, you queue at its botteneck without having (your) QoS management of that congestion. Also, if the WAN link is a "shared" link to some "WAN (multi-point) cloud", e.g. frame-relay, ATM, MPLS, Internet, the same can happen too. I.e. the aggregate bandwidth of all the remotes can exceed what the local connection provides.
"The child policy in my example above, is this what would be used to shape to each specific sites BW? What does the Bandwidth remaining ratio 1 do in this case?"
Not sure, believe that's later QoS commands of which I'm unfamiliar. I would need to read up on them. However, I suspect they don't shape but probably a "better" way to define dequeuing priorities between classes, i.e. "clearer" than bandwidth percentages (which really set relative priorities.
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: