CVSROOT: /cvs Module name: src Changes by: clau...@cvs.openbsd.org 2019/07/17 04:13:26
Modified files: usr.sbin/bgpd : mrt.c parse.y rde.c rde.h rde_decide.c rde_rib.c rde_update.c Log message: Change the Adj-RIB-Out to a per peer set of RB trees. The way RIB data structures are linked does not scale for the Adj-RIB-Out and so inserts and updates into the Adj-RIB-Out did not scale because of some linear list traversals in hot paths. A synthetic test with 4000 peers announcing one prefix each showed that the initial convergence time dropped from around 1 hout to around 6min. Note: because the Adj-RIB-Out is now per peer the order in which prefixes are dumped in 'bgpctl show rib out' changed. Tested and OK job@, benno@, phessler@