<div dir="ltr"><div>I have BIRD installed to test working with a custom forwarding plane. The forwarding plane supports HA in the following way :</div><div><br></div><div>-  Syncs up routing tables</div><div>-  Provides millisecond failover (since routing tables are synced up)</div><div>- Shared MAC </div><div>- At any given time only one of the appliance is actively receiving and processing packets. </div><div>- Both appliances have BIRD running (rte_notify sends route updates to forwarding plane) and a small wrapper that processes forwarding table routing updates (static routes , etc)</div><div><br></div><div>Problem : </div><div>At any point of time, the forwarding plane has correct set of routes on both appliances but bird's routing tables are out of sync since only the active appliance is processing packets (eg : OSPF LSA). So when we failover, BIRD running on secondary appliance does not have any routes until it learns them through route updates (since now secondary appliance is processing the LSA's ). This can also result in stale routes in forwarding plane. </div><div>How do we support failover condition in BIRD ? (both OSPF and BGP (multiple instances))</div><div><br></div><div>I would highly appreciate some thoughts on this issue. I did think about BFD but then currently (if I interpreted it correctly supports only a single instance of OSPF or BGP). Graceful recovery is only implemented for BGP so not completely usable.</div><div><br></div><div><br></div><div><br></div>-- <br><div class="gmail_signature">Jigar Mehta<br><br><br></div>
</div>