Re: [VRRP] Proposal for Maintenance Event for VRRP [RFC-5798]

"Anurag Kothari (ankothar)" <> Thu, 28 February 2013 20:01 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id C66BC21F8996 for <>; Thu, 28 Feb 2013 12:01:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -10.472
X-Spam-Status: No, score=-10.472 tagged_above=-999 required=5 tests=[AWL=0.126, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id U-S5W2qFa+80 for <>; Thu, 28 Feb 2013 12:01:34 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id EB79F21F89FC for <>; Thu, 28 Feb 2013 12:01:30 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=24983; q=dns/txt; s=iport; t=1362081692; x=1363291292; h=from:to:subject:date:message-id:references:in-reply-to: mime-version; bh=I9JAeGZxrE4xqvpb5fcGgz7VXqrYDXgVKb2T+SZrTy0=; b=Suj8QnqmlYLoavFdt9CeI0kuKFuAPYl5ZxQgGRVpaVRrgq3oW6E6e9mx 0WXBI3hFwVsOrP7Of+h2XQ4v9FlIRyWtjXJv1kzv+gQjy6XRKIVa/HF+I Fc127pgMqfmjhz5Cox8f+pTfwclru/BRac7pFDX7vIYGXM7J5pe60zOCh A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos; i="4.84,756,1355097600"; d="scan'208,217"; a="179375574"
Received: from ([]) by with ESMTP; 28 Feb 2013 20:01:29 +0000
Received: from ( []) by (8.14.5/8.14.5) with ESMTP id r1SK1Tu4023257 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Thu, 28 Feb 2013 20:01:29 GMT
Received: from ([]) by ([]) with mapi id 14.02.0318.004; Thu, 28 Feb 2013 14:01:29 -0600
From: "Anurag Kothari (ankothar)" <>
To: sreenatha <>, "" <>
Thread-Topic: Proposal for Maintenance Event for VRRP [RFC-5798]
Thread-Index: AQHOFdIXMs1MhoGdzkqW+jdD3o4AJZiPq2bA
Date: Thu, 28 Feb 2013 20:01:29 +0000
Message-ID: <>
References: <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_A2BB90B33FFDF740876C5AAE307D83DB1C295D1Cxmbrcdx05ciscoc_"
MIME-Version: 1.0
Subject: Re: [VRRP] Proposal for Maintenance Event for VRRP [RFC-5798]
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Virtual Router Redundancy Protocol <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 28 Feb 2013 20:01:38 -0000

Hi Sreenatha

Totally agree with your observation.

Also as pointed out by some other participants the additional backup router in my original analysis will never become master on seeing the first ADVERTISEMENT with priority zero as it will keep resetting it's Master_Down_Timer to Skew_Time in the storm of ADVERTISEMENTs with zero priority and the Master_Down_Timer will never fire for the additional backup router.


P.S. Noticed the typos: the additional lines in my email should be numbered 706 and 707 (instead of 701 and 702) and probably yours should be 426 and 427 (instead of 421 and 422).

From: sreenatha []
Sent: Thursday, February 28, 2013 11:39 AM
Cc: Anurag Kothari (ankothar)
Subject: Re: Proposal for Maintenance Event for VRRP [RFC-5798]

Hi Anurag,
    Modification to algorithm is correct. But this modification is taking care only when Router is in Master state.
What about if Backup router(priority value is zero) receives ADVERTISEMENT message with priority value as zero?

Same condition we will consider, where both VRRP routers priority is set to zero, and both sending ADVERTISEMENT messages with priority as zero. According to new modification any one router, lets take "Router A", will remain in Master state and other router, lets say "Router B", will transit to Backup state.

Now according to RFC-5798:
When "Router B" is in Backup state,

(420) - If an ADVERTISEMENT is received, then:

         (425) + If the Priority in the ADVERTISEMENT is zero, then:

            (430) * Set the Master_Down_Timer to Skew_Time

         (440) + else // priority non-zero

So this lead to Master_Down_Timer to expire soon.

Again in Backup state,

(365) - If the Master_Down_Timer fires, then:

         (370) + Send an ADVERTISEMENT




         (405) + Set the Adver_Timer to Advertisement_Interval

         (410) + Transition to the {Master} state

(415) -endif // Master_Down_Timer fire

So this lead to continuous switch over from Backup to Master state and vice verse state transitions in "Router B".

To avoid this condition,

In Backup state also we need to do modification. Same as you suggested in Master state, same extra condition we need to check in Backup state also.

Modifications in Backup state as follows(Differences from RFC-5798 highlighted with Underline):

(420) - If an ADVERTISEMENT is received, then:

         (425) + If the Priority in the ADVERTISEMENT is zero,

         (421) -+ and

         (422) -+ Local Priority is greater than zero, then:

            (430) * Set the Master_Down_Timer to Skew_Time

         (440) + else // priority non-zero or local-priority is zero

             (Continue other logic)

This will avoid state-transition flip-flap problem in "Router B".


Sreenatha Setty

On 02/27/2013 01:30 AM,<> wrote:

Some concerns have been raised regarding the following situation / Corner Case:

Due to congestion or some other fault in the network the ADVERTISEMENTs from the Master router do not reach backup router(s). The Master_Down_timer fires and one of the back router transitions to Master State at the same time the priority of this router and the original Master is set to zero. How would the network behave in this case?

For sure the probability of this happening would be very low (as it is a double/multiple fault situation). Here is my analysis of the situation and solution for the same.

We will have two Master routers both sending ADVERTISEMENTs with Priority = 0. This will create a vicious circle of sending ADVERTISEMENTs (one router triggering the other) at a fast rate. This would also cause the Virtual MAC to shuttle continuously between two ports on the switch(es) at a fast rate. Both of these can probably cause high CPU utilization on the router and the LAN Switches.

If there is an additional backup router available then it will become master on seeing the first Advertisement with Priority = 0 and both the Masters (with priority = 0) will transition to Backup on seeing the advertisement with non-zero priority from the new Master.

For the situation where we do not have an additional backup router we can avoid this by making following modifications (Differences from RFC-5798 highlighted in RED):

(700) - If an ADVERTISEMENT is received, then:

   (705) -+ If the Priority in the ADVERTISEMENT is zero,

   (701) -+ and

   (702) -+ Local Priority is greater than zero, then:

      (710) -* Send an ADVERTISEMENT

      (715) -* Reset the Adver_Timer to Advertisement_Interval

   (720) -+ else // priority was non-zero or local priority was zero

      (725) -* If the Priority in the ADVERTISEMENT is greater

      than the local Priority,

      (730) -* or

      (735) -* If the Priority in the ADVERTISEMENT is equal to

      the local Priority and the primary IPvX Address of the

      sender is greater than the local primary IPvX Address, then:

         (740) -@ Cancel Adver_Timer

         (745) -@ Set Master_Adver_Interval to Adver Interval

         contained in the ADVERTISEMENT

         (750) -@ Recompute the Skew_Time

         (755) @ Recompute the Master_Down_Interval

         (760) @ Set Master_Down_Timer to Master_Down_Interval

         (765) @ Transition to the {Backup} state

      (770) * else // new Master logic

         (775) @ Discard ADVERTISEMENT

      (780) *endif // new Master detected

   (785) +endif // was priority zero?

(790) -endif // advert recv

Please let me know if I have missed something.



-------------- next part --------------

An HTML attachment was scrubbed...

URL: <><>



vrrp mailing list<>

End of vrrp Digest, Vol 81, Issue 10


Disclaimer :
This email communication may contain privileged and confidential information and is intended for the use of the addressee only.If you are not an intended recipient you are requested not to reproduce, copy disseminate or in any manner distribute this email communication as the same is strictly prohibited. If you have received this email in error, please notify the sender immediately by return e-mail and delete the communication sent in error. Email communications cannot be guaranteed to be secure & error free and IB Technology is not liable for any errors in the email communication or for the proper, timely and complete transmission thereof.