diff options
author | Lu Feng <lu.feng@6wind.com> | 2014-07-18 06:13:18 +0000 |
---|---|---|
committer | David Lamparter <equinox@opensourcerouting.org> | 2014-09-15 18:36:54 +0200 |
commit | b397cf4f0fc484c5ebfc8a680090055c8e6cbe32 (patch) | |
tree | b1fe14811932e92ac87f7ddcad8660061b15cd51 /lib/zclient.h | |
parent | 1520e4748129c4eb97ac3090bcc97149a1900611 (diff) | |
download | quagga-b397cf4f0fc484c5ebfc8a680090055c8e6cbe32.tar.bz2 quagga-b397cf4f0fc484c5ebfc8a680090055c8e6cbe32.tar.xz |
ripd: add ECMP support
* Each node in the routing table is changed into a list, holding
the multiple equal-cost paths.
* If one of the multiple entries gets less-preferred (greater
metric or greater distance), it will be directly deleted instead
of starting a garbage-collection timer for it.
The garbage-collection timer is started only when the last entry
in the list gets INFINITY.
* Some new functions are used to maintain the ECMP list. And hence
rip_rte_process(), rip_redistribute_add() and rip_timeout() are
significantly simplified.
* rip_zebra_ipv4_add() and rip_zebra_ipv4_delete() now can share
the common code. The common part is moved to rip_zebra_ipv4_send().
Signed-off-by: Feng Lu <lu.feng@6wind.com>
Reviewed-by: Alain Ritoux <alain.ritoux@6wind.com>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'lib/zclient.h')
0 files changed, 0 insertions, 0 deletions