06-20-2008 12:49 PM - edited 03-03-2019 10:26 PM
All,
I have multiple customers connecting to a single "aggregate" WAN router at a location for access to remote sites. I need to guarantee each customer a certain percentage of the overall available bandwidth and at the same time prioritize their traffic accordingly within this percentage boundary. For instance, customer A should receive 25% of the DS3 (45Mbps) and Customer A VOIP should receive 30% of the 25% allocated to Customer A.
I tried to accomplish this using a nested policy-map statement, but IOS puked at me and said nested policy-maps are usable with traffic shaping only. Does anyone know how to do this without creating individual class maps for each service defined for each customer? This is highly unscalable and would have to be completely tweaked every time a customer came online. For instance, 7 customers at a site with 5 prioritized services would require a total of 35 class maps. If customer 8 comes online, I will have to create the 5 class maps for the customer and adjust the bandwidth percentages allocated to the previous 35 maps. A nested service policy would have been cool because I could allocate bandwidth once to a customer and then break-out the separate services withinâ¦
Thanks in advance for any help provided.
-Erik
06-21-2008 02:09 AM
Hi Eric,
Can you please give the details of the policy you are trying to configure and the router/ios details?
I am able to configure hierarchal policy with bandwidth command in the parent class without shaping on 6500. Also shaping is the most used configuration on the parent class. You shape in the parent class to the bandwidth you have allotted to the customer (as this doesnot change frequently unless the customer upgrades the service). then under this class, a child policy is applied which does CBWFQ.
eg.
Ferrari#sh policy-map parent_cust1
Policy Map parent_cust1
Class cust1
bandwidth 25 (%)
service-policy child_cust1
Ferrari#sh poli
Ferrari#sh policy-map child_cust1
Policy Map child_cust1
Class voip_cust1
priority 35 (%)
Class data_cust1
bandwidth 35 (%)
Ferrari#sh poli
Ferrari#sh policy-map int gi 1/1/0
GigabitEthernet1/1/0
Service-policy output: parent_cust1
Class-map: cust1 (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: input vlan 3
Queueing
queue limit 62500 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 25% (250000 kbps)
Service-policy : child_cust1
queue stats for all priority classes:
queue limit 21875 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
Class-map: voip_cust1 (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: dscp ef (46)
Priority: 35% (87500 kbps), burst bytes 2187500
Class-map: data_cust1 (match-all)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: ip precedence 3
Queueing
queue limit 21875 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
bandwidth 35% (87500 kbps)
Class-map: class-default (match-any)
0 packets, 0 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: any
queue limit 18750 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 0/0
Class-map: class-default (match-any)
23 packets, 2070 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: any
queue limit 187500 packets
(queue depth/total drops/no-buffer drops) 0/0/0
(pkts output/bytes output) 25/2250
Ferrari#
regards,
Niranjan.
(please rate the post if it helps.)
06-23-2008 06:30 AM
Niranjan,
We are running IOS Version 12.4(4)T Advanced Enterprise Services on 3825 routers. I tried to accomplish exactly what you outlined, but IOS wouldn't let me. What version IOS are you running on the 6500? It is possible nested policy map functionality was introduced after 12.4(4)T.
Thanks in advance.
06-23-2008 10:23 PM
hi Eric!
The support and options for Hqos can vary according to the platforms due to hardware as well as the software support. 6500 uses 12.2 train of images. Probably on 3800 hqos is supported only with shaping.
Please see if shaping sis supported as interface %. else you have no other option than to limit the customer to whatever he busy. Thsts the way it usually works. If customer buys 3 mbps, thats what you limit him at. Anyways, if thats the case, your requirement cannot be fulfilled exactly.
Regards,
Niranjan
06-21-2008 04:38 AM
The crux of your problem, I suspect, is you want each customer to have a minimal guarantee of bandwidth, which you want to subdivide, but you further don't want to limit a customer to the same guarantee of bandwidth.
Don't believe you're going to be able to accomplish your goal with Cisco's current QoS support. Either you'll need to define the many classes, you wish to avoid, when the interface itself congests, or you'll need to shape each customer to a rate and then subdivide that bandwidth with a child policy. Of these two approaches, besides the second being more manageable assuming most customer's subdivisions could use the same template, the second approach also offers consistent behavior to your customers. Otherwise, although each customer will continue to obtain the minimum bandwidth you've guaranteed, as you add additional customers they are likely to see their peak bandwidth diminish. So, using per customer shaping from the start might be a better way to also manage customer expectations.
E.g.
policy-map STD
class realtime
priority percent 40
class gold
bandwidth remaining percent 59
class scavenger
bandwidth remaining percent 1
class class-default
bandwidth remaining percent 40
policy-map customers
class cust1
shape 2000000
service-policy STD
class cust2
shape 3000000
service-policy STD
.
.
.
06-24-2008 08:49 AM
You can also take what joseph said and add an inbound map to limit the traffic then feed it into the STD policy map to ensure they do not overload the incoming interfaces and force the router to traverse traffic it is just going to drop as well.
06-24-2008 09:18 AM
I would like to make the full scope of bandwidth available to any site unless congestion is experienced and at that time the QoS policies will be enacted. I don't want to perform traffic shaping and isolate customers within fixed bandwidth boundaries which will leave a percentage of bandwidth unused. It looks like I can't accomplish this easily with the 3800 series routers we have deployed.....
06-24-2008 09:27 AM
It does not matter really matter what platform you want to go to, it is not going to be fesiable from an IOS point of view.
06-24-2008 09:57 AM
Apparently it does on a 6500....
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide