<div dir="ltr">Dear Developer of BIRD,<div><br></div><div>We're working on a draft called draft-keyur-idr-bgp-pre<wbr>fix-limit-orf that you can find on IETF's website at this URL: <a href="https://tools.ietf.org/html/draft-keyur-idr-bgp-prefix-limit-orf-02" target="_blank">https://tools.ietf.org/html/<wbr>draft-keyur-idr-bgp-prefix-<wbr>limit-orf-02</a></div><div>Its goal is to allow BGP speakers to exchange maxprefix values in-band by making use of the ORF capability.</div><div><br></div><div>We think the ideas expressed in the draft are very simple, but we would like to hear from you how hard it would be to get them implemented in your software.</div><div><br></div><div>Let me briefly explain how it is supposed to work.</div><div>Peer A and B set up a BGP session and set ORF as one of the active capabilities.</div><div>Every time administrators of A change/set/remove maxprefix router A sends an ORF message indicating to router B the new value along with the behavior that router B must follow.</div><div><br></div><div>In case that the Match field is set to DENY router B will consider the value as purely informational and will follow the usual behavior.</div><div>Else, in case Match is set to PERMIT, router B will not advertise any prefix if that would cause the amount of advertised (non withdrawn) prefixes to exceed router's A maxprefix value.</div><div><br></div><div>Please note that what described above is just a coarse summary of what is stated within the draft.</div><div>We encourage you to read it to better understand what we're working on.</div><div><br></div><div>In case that you're wondering why draft-keyur-idr-bgp-prefix-lim<wbr>it-orf could be useful here some real world cases:</div><div>1) Life safer for unplanned redistribution or fat fingers.</div><div> In MPLS L3VPNs service providers often impose strict maxprefix limit as those are commercial values discussed before of signing the contracts.</div><div> An unplanned increment in the advertisements may break the VPN.</div><div> In that case spokes may prefer to not to announce some routes and still be able to reach the rest of the network from the larger part of the site than loosing all connectivity.<br></div><div> And hubs can advertise both default and more specific routes for traffic engineering without the risk of breaking the network.</div><div><br></div><div> Almost the same applies to FlowSpec where you could prefer to not to advertise some "rules" than to get all of them withdrawn because of an error.</div><div> </div><div> 2) Easier and faster method to share maxprefix betweem peers.</div><div> Maxprefix is one of the few protection mechanisms used by autonomous systems when peering in the DFZ.</div><div> When networks merge or transit providers get new large customers their NOCs have to reach all the peering partners in an attempt to get maxprefix updated.</div><div><br></div><div> This is usually done by broadcasting the request by email to all peers (maybe multiple times) a few weeks before of the increment.</div><div> Then "cross the fingers" and send the additional advertisements.</div><div> What often happens is emails got lost or unnoticed by the network engineers of the receiving network and AS to AS connectivity breaks for some hours or even days.</div><div><br></div><div> With the proposed solution the NOCs would be able to verify if the change has been executed before of touching anything.</div><div><br></div><div>At this very moment we're in the process of refining the draft before of submitting it to the IETF community, but we do understand that internet standards are useful only if they're supported by vendors.</div><div>For this reason we would like to hear from you how hard it could be to add the features of draft-keyur-idr-bgp-prefix-lim<wbr>it-orf in BIRD.</div><div>In case that it would be too complicated please let us know how we could make things easier.</div><div><br></div><div>Thank you in advance for the comments or the suggestions you would like to make.</div><div><br></div><div>Regards</div><div><br></div><div>-- <br></div><div><div class="gmail-m_8143663049979214773gmail-m_8684597748916233250gmail_signature">Marco</div>
</div></div>