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

From: sreenatha <[email-masked]>
Date: Thu, 28 Feb 2013 22:08:45 +0530

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".

Thanks,
Sreenatha Setty

On 02/27/2013 01:30 AM, [email-masked] 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.
>
> Thanks
> -Anurag
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL:<http://www.ietf.org/mail-archive/web/vrrp/attachments/20130226/cc6018e8/attachment.htm>
>
> ------------------------------
>
> _______________________________________________
> vrrp mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/vrrp
>
>
> 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.

---

From: "Anurag Kothari (ankothar)" <[email-masked]>
Date: Thu, 28 Feb 2013 20:01:29 +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.

Thanks
-Anurag

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 [mailto:[email-masked]]
Sent: Thursday, February 28, 2013 11:39 AM
To: [email-masked]
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.

Again in Backup state,

                    |

                    |

                    ...

To avoid this condition,

         (421) -+ and

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

             (Continue other logic)

Thanks,

Sreenatha Setty

On 02/27/2013 01:30 AM, [email-masked]<mailto:[email-masked]> wrote:

   (701) -+ and

      than the local Priority,

      (730) -* or

Thanks

-Anurag

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

URL: <http://www.ietf.org/mail-archive/web/vrrp/attachments/20130226/cc6018e8/attachment.htm><http://www.ietf.org/mail-archive/web/vrrp/attachments/20130226/cc6018e8/attachment.htm>

vrrp mailing list

[email-masked]<mailto:[email-masked]>

Disclaimer :

---

From: sreenatha <[email-masked]>
Date: Fri, 01 Mar 2013 10:32:37 +0530

Hi Anurag,
     One more point on original proposal of handling Maintenance Event.

Whether "Maintenance_Event" from user is allowed only in Master state or 
any other state?

If Maintenance_Event comes in other state(Init or Backup) apart from the 
Master state, what would be the behaviour of the router?

This point also we need to take care.

Thanks,
Sreenatha Setty

On 03/01/2013 01:31 AM, Anurag Kothari (ankothar) wrote:
> 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.
>
> Thanks
>
> -Anurag
>
> 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 [mailto:[email-masked]]
> *Sent:* Thursday, February 28, 2013 11:39 AM
> *To:* [email-masked]
> *Cc:* Anurag Kothari (ankothar)
> *Subject:* Re: Proposal for Maintenance Event for VRRP [RFC-5798]
>
> Hi Anurag,
> 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.
>
>     URL:<http://www.ietf.org/mail-archive/web/vrrp/attachments/20130226/cc6018e8/attachment.htm>  <http://www.ietf.org/mail-archive/web/vrrp/attachments/20130226/cc6018e8/attachment.htm>
>
>       
>
>     [email-masked]  <mailto:[email-masked]>
>
> 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.
>

Disclaimer :