]> git.proxmox.com Git - mirror_frr.git/commit - ldpd/ldpe.c
ldpd: use red-black trees to store 'l2vpn' elements
authorRenato Westphal <renato@opensourcerouting.org>
Wed, 14 Dec 2016 12:42:45 +0000 (10:42 -0200)
committerRenato Westphal <renato@opensourcerouting.org>
Wed, 4 Jan 2017 00:07:13 +0000 (22:07 -0200)
commit90d7e7bd8b68530a80293e8d1c5c894c99b7a434
tree40babce40dc58d06fe8349c13abfd7a47f543a9c
parent76c4abd19f322288394be872c9198c7d17cfac10
ldpd: use red-black trees to store 'l2vpn' elements

Using red-black trees instead of linked lists brings the following
benefits:
1 - Elements are naturally ordered (no need to reorder anything before
    outputting data to the user);
2 - Faster lookups/deletes: O(log n) time complexity against O(n).

The insert operation with red-black trees is more expensive though,
but that's not a big issue since lookups are much more frequent.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
ldpd/l2vpn.c
ldpd/lde.c
ldpd/ldp_vty_conf.c
ldpd/ldpd.c
ldpd/ldpd.h
ldpd/ldpe.c