[quagga-dev 10790] Re: [PATCH] bgpd: Send notification in OpenSent state when bgp is stopped manually.

Pradosh Mohapatra pmohapat at cumulusnetworks.com
Tue Oct 1 20:10:02 BST 2013


Hi Vitaliy,

Thanks for the patch!

Couple of comments:

(1) To be completely compliant with the RFC, the Case notification should also be sent when
       in OpenConfirm state. It would thus be ideal to convert those 'if' checks to a macro/inline
       that checks (OpenSent | OpenConfirm | Established) and takes the appropriate action.
(2) For the bgp_delete() case, curious why you chose to check for "OpenSent" state only!

- Pradosh


On Oct 1, 2013, at 10:59 AM, Vitaliy Senchyshyn <vsenchyshyn at toroki.com> wrote:

> Hi everyone,
> 
> Please take a look at the patch file attached. 
> 
> The issue it fixes is that the notification message is not sent to a second peer when bgp is stopped manually. 
> 
> According to BGP RFC4271, section 8.2.2, regarding the FSM transitions, in OpenSent state:
> 
> If a ManualStop event (Event 2) is issued in the OpenSent state, the local system:
> 
> sends the NOTIFICATION with a Cease,
> sets the ConnectRetryTimer to zero,
> releases all BGP resources,
> drops the TCP connection,
> sets the ConnectRetryCounter to zero, and
> changes its state to Idle.
> I've added a check for OpenSent state when the notification is sent from the functions which are called from the CLI commands which directly/indirectly stop/restart BGP.
> 
> <notification_in_open_sent.patch>_______________________________________________
> Quagga-dev mailing list
> Quagga-dev at lists.quagga.net
> http://lists.quagga.net/mailman/listinfo/quagga-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quagga.net/pipermail/quagga-dev/attachments/20131001/ab18de77/attachment-0001.html>


More information about the Quagga-dev mailing list