Maria Matejka
a8d0f2516c
Nest: FIB rehash values tweaked for better performance
2019-01-31 15:10:51 +01:00
Jan Maria Matejka
d73c4ac869
Route table max hash size raised to 2^24.
...
This is still OK for everybody to fit into RAM and also probably enough
to keep a little collision rate for full BGP table.
2018-12-04 14:00:44 +01:00
Ondrej Zajicek (work)
be17805c0b
Add support for source-specific IPv6 routes to BIRD core
...
This patch adds support for source-specific IPv6 routes to BIRD core.
This is based on Dean Luga's original patch, with the review comments
addressed. SADR support is added to network address parsing in confbase.Y
and to the kernel protocol on Linux.
Currently there is no way to mix source-specific and non-source-specific
routes (i.e., SADR tables cannot be connected to non-SADR tables).
Thanks to Toke Hoiland-Jorgensen for the original patch.
Minor changes by Ondrej Santiago Zajicek.
2018-02-13 16:39:07 +01:00
Ondrej Zajicek (work)
a82f692e58
Nest: Trivial whitespace cleanup
2018-02-07 17:12:33 +01:00
Ondrej Zajicek (work)
345e50d59f
Nest: remove duplicate function
2018-01-24 13:55:12 +01:00
Ondrej Zajicek (work)
e87a95d97d
Minor fixes for debug mode
2017-12-16 16:31:43 +01:00
Ondrej Zajicek (work)
66acbc8d7f
Revive FIB and kernel MPLS code
2017-12-12 00:05:49 +01:00
Ondrej Zajicek (work)
46434a3cad
Merge commit '7b2c5f3d2826e3175bf31b1c36056c9efc587a2b' into int-new
2017-12-07 18:35:46 +01:00
Michal 'vorner' Vaner
7b2c5f3d28
Docs: FIB iteration macros
2017-09-19 12:59:41 +02:00
Ondrej Zajicek (work)
77234bbbde
Basic flow specification support (RFC 5575)
...
Add flow4/flow6 network and rt-table type and operations, config grammar
and static protocol support.
Squashed flowspec branch from Pavel Tvrdik.
2016-12-07 15:54:19 +01:00
Jan Moskyto Matejka
3f35816136
BSD: Explicitly dropping routes with mismatched AF's.
2016-01-21 14:55:33 +01:00
Pavel Tvrdík
0264ccf6f4
Rewrite roa_check() for integrated BIRD
...
Thanks to Ondrej Zajicek for his support with writing this code.
2016-01-20 16:46:58 +01:00
Pavel Tvrdík
de9b87f558
Add NET ROA4/6 structures
2016-01-07 18:21:31 +01:00
Ondrej Zajicek (work)
74c838a870
Move ID allocator to a separate file and use it also in OSPF
2015-12-29 15:42:12 +01:00
Ondrej Zajicek (work)
04632fd77f
Follow-up work on integration
2015-12-24 15:56:04 +01:00
Ondrej Zajicek (work)
600998fcb1
Modify FIB_WALK() and FIB_ITERATE() to work with new FIB code
...
Returned user data pointers have offset relative to fib_node.
2015-12-21 20:28:44 +01:00
Ondrej Zajicek (work)
23c212e7f1
Follow-up work on integration
2015-12-21 03:33:18 +01:00
Ondrej Zajicek (work)
0f7d5b1a88
Nest: Reimplement fib_route() and add some consts
2015-12-20 18:16:48 +01:00
Ondrej Zajicek (work)
fe9f1a6ded
Initial commit on integrated BIRD
...
New data types net_addr and variants (in lib/net.h) describing
network addresses (prefix/pxlen). Modifications of FIB structures
to handle these data types and changing everything to use these
data types instead of prefix/pxlen pairs where possible.
The commit is WiP, some protocols are not yet updated (BGP, Kernel),
and the code contains some temporary scaffolding.
Comments are welcome.
2015-11-05 12:48:52 +01:00
Ondrej Zajicek (work)
8465dccb06
Major RIP redesign
...
The new RIP implementation fixes plenty of old bugs and also adds support
for many new features: ECMP support, link state support, BFD support,
configurable split horizon and more. Most options are now per-interface.
2015-10-05 13:18:10 +02:00
Pavel Tvrdík
ae80a2de95
unsigned [int] -> uint
2015-06-08 02:24:08 +02:00
Pavel Tvrdík
6264aad16f
Minor fixes
2015-02-21 20:11:02 +01:00
Ondrej Zajicek
d82fc18d75
Implement proper LSA ID generation.
2009-10-07 21:10:29 +01:00
Martin Mares
7c103b1ee1
Marked unused parameters in core code as such.
2004-06-05 09:10:56 +00:00
Martin Mares
58f7d004fd
Fixes to the progdoc.
2000-06-07 13:25:53 +00:00
Martin Mares
ce4aca093a
FIB documentation.
...
I've changed the init callback type to a typedef to work around a bug
in kernel-doc I'm too lazy to hunt now.
2000-06-01 16:16:18 +00:00
Martin Mares
56d6c530eb
Added fib_route() which does (although very slow) lookup of longest-match
...
routing in a FIB.
2000-05-13 11:42:06 +00:00
Martin Mares
8abbde02d4
Several simplifications of the fib iterators.
2000-05-08 19:11:49 +00:00
Martin Mares
6998bb9ee3
Squashed one bug in fib_rehash(). No more routes disappearing as if struct
...
by a lightning :)
2000-05-07 11:28:34 +00:00
Martin Mares
221135d6bf
Include "lib/string.h" instead of <string.h>. It should give us bzero()
...
and other non-portable functions on all systems.
2000-03-31 23:30:21 +00:00
Martin Mares
6b9fa32080
Great cleanup of debug messages. LOCAL_DEBUG turned off in most modules,
...
several debug() calls converted to DBG().
2000-03-12 21:01:38 +00:00
Pavel Machek
1d7c44b711
Oops, previous modification for passing NULL to fib_init() did not
...
compile :-(.
1998-12-22 19:20:43 +00:00
Pavel Machek
ce45fc1287
Allow NULL to init_fib().
1998-12-22 18:55:49 +00:00
Martin Mares
08c69a7720
die() -> bug() where appropriate.
1998-12-20 14:27:37 +00:00
Martin Mares
3ab001b974
Rewrote fib functions to make them insert/delete/asynchronous-walk safe.
...
This is implemented in a way similar to lib/slists.h, but it took some
more effort to make rehashing not disturb the readers. We do it by just
taking _highest_ k bits of ipa_hash as our hash value and sorting each
box by whole ipa_hash().
Consult FIB_ITERATE_* macros in nest/route.h.
Implemented fib_check() debugging function and also rewrote the rehashing
algorithm to use better thresholds and not to waste time by rehashing
forth and back.
1998-12-20 14:01:20 +00:00
Martin Mares
0cf86f0fc3
Renamed DEBUG' symbol to
DEBUGGING' to prevent collisions with token
...
names and include files.
1998-11-29 14:38:34 +00:00
Martin Mares
4c45595e3b
o FIB flags now available for FIB users.
...
o struct network: FIB flags used for kernel syncing.
o struct network: `next' field deleted (historical relic).
1998-10-18 22:24:41 +00:00
Martin Mares
fe82105e5d
Debug messages.
1998-05-26 21:43:45 +00:00
Martin Mares
62aa008abd
Parts of routing table code. Data structure declarations should be
...
complete now.
1998-05-15 07:54:32 +00:00