On 22/10/2015 14:21, Paul Jakma wrote:
> Hard to think how to solve the scaling issue of the per-client-RIB RS
> approach, while still speaking classical BGP to other peers. How did Bird
> solve that?

bird handles its ribs by having a main rib with effective diffs off it for
the per-client loc-ribs.  It performs a single best path calculation for
each unique prefix + attribute set.

This works in practice because most rs clients don't tend to use
per-recipient-peer policy, which means that the diff set is relatively
small.  In the worst case, the number of best path calculations will
converge towards the maximum.

> One thing that's quite possible is to run multiple bgpds, and scale out
> over multiple cores. With some kind of all-paths extension to bgpd (e.g.
> using ADD_PATH), this could still get the full-view, per-client-RIB
> behaviour, while still supporting classic BGP clients.

there are several different scaling problems associated with the rs
functionality.  This would brute-force one of the issues.

Nick


_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to