03-17-2009 02:11 AM - edited 03-04-2019 03:58 AM
Hi all,
I have 2 questions regarding the rate-limit.
According to the cisco documentation, the rate limit command will have the following parameters:-
burst-normal - Normal burst size, in bytes. The minimum value is bps divided by 2000. The value is a number from 1000 to 512000,000.
burst-max - Excess burst size, in bytes. The value is a number from 2000 to 1024000000.
There is 6 subinterfaces of GigabitEthernet8/1/0 like GigabitEthernet8/1/0.100, GigabitEthernet8/1/0.200,etc.
Question 1:-
-------------
When I try to execute the rate-limit command on a interface GigabitEthernet8/1/0.100 of a SPA card, then the default value of burst-normal & burst-max is different
in this interface as shown below:-
WORD 1,000-2,560,000,000 bytes for normal burst size (postfix k, m, g optional; comma allowed if used properly)
WORD 2,000-4,096,000,000 bytes for max burst size (postfix k, m, g optional; comma allowed if used properly)
Why is the range different for both burst-normal & burst-max in this interface?
Question 2:-
-------------
When I execute the following rate-limit command on a interface GigabitEthernet8/1/0.100 of a SPA card,
dis1-gondor(config-subif)#rate-limit input access-group 114 8000 512000000 1024000000 conform-action transmit exceed-action set-prec-transmit 0
Response:
Adjusting normal burst to match hardware limit of 16777215 bytes
Adjusting exceed burst to match hardware limit of 16777215 bytes
From where, it is calculating the value of 16777215 bytes as the maximum limit for burst-normal & burst-max? Can we get this value 16777215 bytes from a seperate command?
Please help.
There is 6 subinterfaces of GigabitEthernet8/1/0 like GigabitEthernet8/1/0.100, GigabitEthernet8/1/0.200,etc.
SPA card Details:-
---------------------
SLOT 8 (RP/LC 8 ): Modular SPA Interface Card (10G)
MAIN: type 117, 800-26102-02 rev A0
Deviation: 0
HW config: 0x01 SW key: 00-00-00
PCA: 73-9863-03 rev A0 ver 8
Design Release 1.0 S/N SAD093605KC
MBUS: Embedded Agent
Test hist: 0x00 RMA#: 00-00-00 RMA hist: 0x00
DIAG: Test count: 0x00000000 Test results: 0x00000000
FRU: Linecard/Module: 12000-SIP-600=
Processor Memory: MEM-LC5-1024=(Non-Replaceable)
Packet Memory: MEM-LC5-PKT-512=(Non-Replaceable)
L3 Engine: 5 - ISE 10 Gbps
MBUS Agent Software version 2.69 (RAM) (ROM version is 2.65)
ROM Monitor version 1.13
Fabric Downloader version used n/a (ROM version is 4.3)
Primary clock is CSC 1
Board is analyzed
Board State is Line Card Enabled (IOS RUN )
Insertion time: 00:00:04 (6d13h ago)
Processor Memory size: 1073741824 bytes
TX Packet Memory size: 268435456 bytes, Packet Memory pagesize: 32768 bytes
RX Packet Memory size: 268435456 bytes, Packet Memory pagesize: 32768 bytes
0 crashes since restart
SPA Information:
subslot 8/0: SPA-1XTENGE-XFP (0x483), status is ok
subslot 8/1: SPA-1X10GE-L-V2 (0x50C), status is ok
SUBSLOT 8/0 (SPA-1XTENGE-XFP): 1-port 10 Gigabit Ethernet Shared Port Adapter XFP based
Product Identifier (PID) : SPA-1XTENGE-XFP
Version Identifier (VID) : V01
PCB Serial Number : JAB094205E7
Top Assy. Part Number : 68-2430-01
Top Assy. Revision : D0
Hardware Revision : 3.2
CLEI Code : IPUIAKBRAA
Insertion Time : 00:00:13 (6d13h ago)
Operational Status : ok
SUBSLOT 8/1 (SPA-1X10GE-L-V2): 1-port 10 Gigabit Ethernet Shared Port Adapter XFP based
Product Identifier (PID) : SPA-1X10GE-L-V2
Version Identifier (VID) : V02
PCB Serial Number : JAE1143124A
Top Assy. Part Number : 68-2614-02
Top Assy. Revision : A0
Hardware Revision : 1.2
CLEI Code : IPUIA5VRAA
Insertion Time : 00:00:14 (6d13h ago)
Operational Status : ok
03-17-2009 04:19 AM
Hello Thilakh,
Q1) realizing that the first generation of limits could be too low for high speed links new highest limits have been introduced.
Q2)
However, these new limits can be higher then the effective capabilities of your hardware so the choice that has been done is to let you configure the commands and then to automatically adjust to max supported value.
16777215 bytes are 16MB taken from the whole packet memory of 256 MB.
otherwise per platform per linecard limits should be implemented and shown in the command help.
Hope to help
Giuseppe
03-17-2009 07:59 AM
Thanks giuslar.
Regarding q2, i'am trying to put together an algorithm to determine the value that cisco IOS assigns to the 'burst size' and 'extended burst size'. Would you know how this value of 16777215 would have been arrived at ? I can put together the algo only if i understand the inputs that need to go into it.
03-17-2009 08:19 AM
Hello Thilakh,
you can choice these values to implement a stricter or looser bandwidth control
here are the usual Cisco recommendations
CAR embodies a rate-limiting feature for policing traffic. When policing traffic with CAR, Cisco recommends the following values for the normal and extended burst parameters:
normal burst (in bytes) = configured rate (in bits per second) * (1 byte)/(8 bits) * 1.5 seconds
17.000.000 * (1 byte)/(8 bits) * 1.5 seconds = 3.187.500 bytes
extended burst = 2 * normal burst
2 * 3.187.500 = 6.375.000 bytes
see
http://www.cisco.com/en/US/docs/ios/qos/command/reference/qos_q1.html#wp1015612
that max value of 16777215 comes from two possible reasons (both are possible):
-a 24 bit size of the buffer as Joseph suggests
- a reasonable limit to 16 MB taken from the 256 MB packet memory of the line card
As other have suggested the above formula cannot be satisfied on high speed links when trying to limit to 170 Mbps for example.
Tests I've done in the past show that :
the extended burst size must be greater then the normal burst size to see the effect.
The effect of the extended burst size is visible at the beginning as extra credits (tokens) that are allowed.
On the long term the traffic allowed is that of the rate parameter taking in account the L2 overhead on lan interfaces.
Hope to help
Giuseppe
03-17-2009 05:48 PM
Giuseppe, in both your posts, you mention taking 16 MB from card's packet memory. Why would a rate-limiter (or policer) take memory?
03-18-2009 04:11 AM
Hello Joseph,
you're right I've confused with shaping or WRED here we have traffic meter objects not buffers.
your note about the 24bit size is the only correct reason.
Best Regards
Giuseppe
03-18-2009 04:43 AM
Giuseppe,
I had wondered whether you might have had shaping in mind, but with your obvious high quality posts, it could have been something I was unaware of.
Thinking some more about it, even for a shaper, the rate values determine whether to pass traffic, queue it, or dequeue it. I.e., although the shaper queues will take memory, they shouldn't need to be tied to the rate values for their memory usage. WRED, also uses memory for its queue, but specific variable bandwidth values are not part of its parameters.
I can't guarantee my answer is correct; only Cisco could. However, any time some value has a limitation that's a binary value, especially one on a byte boundary, such is very often the reason.
Thank you for your response, and look forward to reading more of your posts.
03-17-2009 06:12 AM
"From where, it is calculating the value of 16777215 bytes as the maximum limit for burst-normal & burst-max?"
Since 24 bits support (0..16777215), I would suspect a hardware register limitation.
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