tuning timers HSRP

Unanswered Question
Nov 27th, 2008

Hi,

I want to optimize the HSRP timers on my catalyst 4510.

I have 20 vlans interfaces. What is the minimum value I can use ?

With 100 msec (hello) and 300 msec (holdtime), the CPU is very high (55%).

But with the default timers, it is unacceptable for some applications.

Thanks

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Loading.
johnlloyd_13 Thu, 11/27/2008 - 06:29

can you do a show proc cpu? it will let you see which processes eats up your cpu on your switch.

hugo-girard Thu, 11/27/2008 - 07:15

The problem is located in the timers.

With defaults HSRP timers, the CPU decrease to 20%.

show process cpu -> high process : Cat4k Mgmt LoPri

show platform health -> high process : K2CpuMan Review

show platform cpu packet statistics :

Packets Dropped In Hardware By CPU Subport (txQueueNotAvail)

CPU Subport TxQueue 0 TxQueue 1 TxQueue 2 TxQueue 3

------------ --------------- --------------- --------------- ---------------

0 0 0 0 548716

RkiosSysPacketMan:

Packet allocation failures: 0

Packet Buffer(Software Common) allocation failures: 0

Packet Buffer(Software ESMP) allocation failures: 0

Packet Buffer(Software EOBC) allocation failures: 0

Packet Buffer(Software SupToSup) allocation failures: 0

IOS Packet Buffer Wrapper allocation failures: 0

Packets Dropped In Processing Overall

Total 5 sec avg 1 min avg 5 min avg 1 hour avg

-------------------- --------- --------- --------- ----------

1202610 240 244 207 129

Packets Dropped In Processing by CPU event

Event Total 5 sec avg 1 min avg 5 min avg 1 hour avg

----------------- -------------------- --------- --------- --------- ----------

Input Acl 1202609 240 244 207 129

Packets Dropped In Processing by Priority

Priority Total 5 sec avg 1 min avg 5 min avg 1 hour avg

----------------- -------------------- --------- --------- --------- ----------

Normal 1619 0 0 0 0

Medium 1 0 0 0 0

High 1200991 240 244 207 129

Packets Dropped In Processing by Reason

Reason Total 5 sec avg 1 min avg 5 min avg 1 hour avg

------------------ -------------------- --------- --------- --------- ----------

AclActionDrop 18026 0 0 0 0

NoDstPorts 963 0 0 0 0

NoFloodPorts 1183621 240 244 207 129

Total packet queues 16

Packets Received by Packet Queue

Queue Total 5 sec avg 1 min avg 5 min avg 1 hour avg

---------------------- --------------- --------- --------- --------- ----------

Esmp 2197394 26 21 15 8

L2/L3Control 22331749 322 329 276 169

Host Learning 22342 0 0 0 0

L3 Fwd Medium 8682 0 0 0 0

L3 Fwd Low 334263 1 0 0 0

L2 Fwd Medium 17 0 0 0 0

L2 Fwd Low 551413 6 3 5 0

L3 Rx High 11872 1 0 0 0

L3 Rx Low 722648 13 8 9 2

ACL log, unreach 28536 0 0 0 0

ACL sw processing 24 0 0 0 0

viyuan700 Thu, 11/27/2008 - 10:18

Hi,

Is the active router of all vlan is same? If yes, you can opt for loadlancing.

Catalyst 1 is active for vlan 1-10 standby ofr 11-20 and catalyst 2 is active for vlan 11-20 standby for 1-10.

Joseph W. Doherty Thu, 11/27/2008 - 10:22

Unsure whether it would be supported on your 4510, but BFD might provide a lower impact than regular HSRP. (I also recall reading somewhere that BFD may have some kind of special support when working with multiple VLANs - but don't hold me to that.)

Some information to get you started: http://www.cisco.com/en/US/docs/ios/12_4t/ip_route/configuration/guide/t_bfd.html#wp1221583 and http://www.cisco.com/en/US/docs/ios/ipapp/configuration/guide/ipapp_hsrp_ps6922_TSD_Products_Configuration_Guide_Chapter.html#wp1054668

hugo-girard Fri, 11/28/2008 - 00:45

After reading your documentations, it seems that 250 msec (hello) et 800 msec (holdtime) are the minimum value.

Thanks

Joseph W. Doherty Fri, 11/28/2008 - 03:52

If you mean you saw this "We recommend configuring a minimum hellotime value of 250 milliseconds and a minimum holdtime value of 800 milliseconds.", take note of the word "recommend". That doesn't mean they are the actual minimum values possible. Actual possible values may vary per platform. Also their impact to the device at various settings.

[edit]

PS:

Also, if I reading some of the documentation correctly, the 250/800 recommendation might apply to HSRP in general, not when using BFD specifically. In fact, I see one example uses "bfd interval 50 min_rx 50 multiplier 5", which is 50/250?

PPS:

Other documentation using BFD shows other examples using other values, with "bfd interval 50 min_rx 50 multiplier 3" being common. (Which is 50/150?)

For HSRP usage "bfd interval 200 min_rx 200 multiplier 3", seems common values shown in example usage.

Doc:

bfd interval milliseconds min_rx milliseconds multiplier multiplier-value

no bfd interval milliseconds min_rx milliseconds multiplier multiplier-value

Syntax Description

interval milliseconds

Specifies the rate at which BFD control packets will be sent to BFD peers. The configurable time period for the milliseconds argument is from 50 to 999 milliseconds (ms).

min_rx milliseconds

Specifies the rate at which BFD control packets will be expected to be received from BFD peers. The configurable time period for the milliseconds argument is from 1 to 999 milliseconds (ms).

multiplier multiplier-value

Specifies the number of consecutive BFD control packets that must be missed from a BFD peer before BFD declares that the peer is unavailable and the Layer 3 BFD peer is informed of the failure. The configurable value range for the multiplier-value argument is from 3 to 50.

From doc, minimum 50/150 ms?

Actions

This Discussion