[PATCH] More multipath support for OSPF

Peter Christensen pch at ordbogen.com
Thu Feb 6 14:17:12 CET 2014


I noticed that the multipath support in OSPF seems to be fairly limited. 
Essentially I was only able to make it do multipath if I had two 
interfaces connecting to the same router.
At my company, we need true multipath between multiple routers using a 
single interface. (If I needed the other, I could use LACP)

I am aware of the implications the default multipath implementation in 
Linux which operates on a per-packet basis, which is why we've patched 
our kernels to do it per-flow instead.

Anyway, I seemed to have managed to make multipath work as expected - at 
least in our setup. (Patch attached)

Essentially, I've hooked my multipath code into ri_install_ext() and 
ri_install_net(), where I add the equal routes if the routes share the 
same type, metrics and OSPF area.
I realize that my add_nexthops() is /very/ similar to merge_nexthops() 
in functionality, but it seemed that the top_hash_entry() could be null, 
so I wrote a new method which did not rely on that - at the cost of more 
calls to copy_nexthop(), I guess.

Any thoughts?

Best regard
Peter Christensen
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ospf_multipath.diff
Type: text/x-patch
Size: 3080 bytes
Desc: not available
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20140206/37515aba/attachment.bin>

More information about the Bird-users mailing list