On Thu, 22 Oct 2015, Nick Hilliard wrote:

no, we're using bird in route-server mode with per-client ribs, and really need them! :-)

If I understand correctly, it's still "weaker" than the per-client-RIB Quagga offers, correct?

With Quagga's model, each client's export policy can be applied to determine what route gets sent to the other clients, and each client's import policy can be applied to specify what gets 'in'. Ala:

http://www.nongnu.org/quagga/docs/fig-rs-processing.png

If you trim down the generality, then yes, it should be faster. Just getting rid of filtering points should get some constant factor increase in speed, though probably small. However, that might then open up optimisations that couldn't be made otherwise.

E.g., if we got rid of the full-featured import/export filtering capability and just made it an easily comparable list of, say, ASes to send/accept routes to/from, we could work out the common subsets and run a RIB for each subset. That might a win if there are common subsets. If you get rid of export or import filtering, then you should get bigger groupings again and fewer RIBs needed again.

So yeah, simplify the requirements and we can make this much faster! :)

I can't find decent docs on what Bird is doing, and I don't quite understand from your description.

Bird optimises the number of best-path calculations by collapsing multiple ribs into a single rib + diffs. So best-path is only calculated where necessary, not once per loc-rib.

Not sure what is meant by 'diffs'.

regards,
--
Paul Jakma      [email protected]  @pjakma Key ID: 64A2FF6A
Fortune:
Brain damage is all in your head.
-- Karl Lehenbauer

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

Reply via email to