0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-23 10:11:53 +00:00
Commit Graph

575 Commits

Author SHA1 Message Date
Maria Matejka
282066ee29 Moved the cork thresholds massively up
This allows for more efficient import and export bundling, including
best route export and next hop resolution.
2024-06-26 11:29:12 +02:00
Maria Matejka
499d5e6fb3 ROA tables have now an auxiliary table
There is an IP table for every ROA table, holding special records
combining all known ROAs for every top-prefix.

The ROA digestor is now an IP digestor, running over the auxiliary
table.
2024-06-12 09:23:50 +02:00
Maria Matejka
0fb9177374 Loop scheduler tracing options configurable 2024-06-12 09:23:50 +02:00
Maria Matejka
7a169e46a8 BGP: export table stores routes, reloads and shows in CLI.
In future, this and rtable's data structures should be probably merged
but it isn't a good idea to do now. The used data structure is similar
to rtable -- an array of pointers to linked lists.

Feed is lockless, as with all tables.

Full export (receiving updates) is not supported yet but we don't have
any method how to use it anyway. Gonna implement it later.
2024-06-04 10:11:36 +02:00
Maria Matejka
ee7afdabc7 BGP: explicitly sending route refresh from CLI 2024-05-29 17:09:50 +02:00
Maria Matejka
e17824f5e5 Protocol filter reload is now done by 'reload filters'
This prepares for the separate 'reload bgp' command triggering BGP Route Refresh
2024-05-29 10:39:01 +02:00
Maria Matejka
4581ecd8de Dropping obsolete protocol Perf
We have now better methods how to measure overall performance
and this obsolete protocol has basically rotten away. If anybody
needs its features, feel free to revive it in future.
2024-05-25 19:37:16 +02:00
Ondrej Zajicek
f27d1bae0f Merge commit '26dd61ee7f91c15157601b2404de5b6500a6061c' into thread-next 2024-04-01 03:01:59 +02:00
Ondrej Zajicek
0bcc7a9316 Merge commit '44a16bff6cbf3f5ae8db21ffcec602bc51295d0a' into thread-next 2024-03-28 20:03:46 +01:00
Ondrej Zajicek
d556788282 Merge commit '5c04f0e2354ff0cca9b1479e68882b72755f3aab' into thread-next
(No need for deprecated names in BIRD 3.)
2024-03-28 20:00:50 +01:00
Ondrej Zajicek
f47ca71d77 Merge commit 'e68363909cb9733c1bf55fff80a8b034e4111849' into thread-next 2024-03-28 19:16:44 +01:00
Ondrej Zajicek
d548665de8 Merge commit '225943eaea3cdd634dce8fd84547baf1bc363640' into thread-next 2024-03-28 17:46:04 +01:00
Ondrej Zajicek
26dd61ee7f BFD: Add arguments to 'show bfd sessions' command
Add several arguments to 'show bfd sessions' command to filter
the list of sessions.
2024-03-05 00:02:16 +01:00
Job Snijders
e2728c8078 RPKI: Add 'local address' configuration option
Allow to explicitly configure the source IP address for RPKI-To-Router
sessions. Predictable source addresses are useful for minimizing the
holes to be poked in ACLs.

Changed from 'source address' to 'local address' by committer.
2024-02-22 14:58:29 +01:00
Ondrej Zajicek
c3335b5044 Static: Allow to define both nexthop and interface
Allow to define both nexthop and interface using iproute2-like syntax,
e.g.: route 10.0.0.0/16 via 10.1.0.1 dev "eth0";

Now we can avoid to use link-local scope hack (e.g. 10.1.0.1%eth0)
for cases where both nexthop and interface have to be defined.

Thanks to Marcin Saklak for the suggestion.
2024-02-16 18:44:40 +01:00
Ondrej Zajicek
5c04f0e235 Netlink: Fix spelling of krt_ssthresh / krt_lock_ssthresh
BIRD route attribute for RTAX_SSTHRESH metric was krt_sstresh instead of
krt_ssthresh. Fix that and keep old name as an depreacted alias.
2024-02-16 15:00:03 +01:00
Ondrej Zajicek
e68363909c Netlink: Cleanups in route metrics
- Add krt_fastopen_no_cookie atttibute
- Add missing krt_lock_* bits
- Fix krt_feature_allfrag
- Fix type of EA_KRT_LOCK and EA_KRT_FEATURES
2024-02-16 15:00:03 +01:00
Ondrej Zajicek
225943eaea Filter: Add support for setting TCP congestion control algorithm
Allow to set TCP congestion control algorithm using krt_congctl
route attribute.

Based on patch from Trisha Biswas <tbiswas@fastly.com>, thanks!
2024-02-14 14:29:19 +01:00
Maria Matejka
cd81b6d7cd Merge commit '2c7555cf2ac8439713dd9148b348128c57222a38' into thread-next
The UDP logging had to be substantially rewritten due to a different
logging backend and reconfiguration mechanisms.

Conflicts:
	doc/bird.sgml
	sysdep/unix/config.Y
	sysdep/unix/io.c
	sysdep/unix/log.c
	sysdep/unix/unix.h
2024-01-28 23:01:39 +01:00
Maria Matejka
ddb4d9a24c Merge commit 'v2.14-95-g6d453c16' into thread-next 2024-01-28 15:04:45 +01:00
Maria Matejka
8b4f53675e Merge commit 'v2.14-92-gf27b05de' into thread-next 2024-01-28 15:00:59 +01:00
Maria Matejka
422f795fa3 Merge commit 'bcf2327425d4dd96f381b87501cccf943bed606e' into mq-merge-step-1 2024-01-28 15:00:47 +01:00
Maria Matejka
5fdfbf6135 Merge commit '3fb06fea1d14ef147a567052391a5b359704e971' into mq-merge-step-1 2024-01-28 14:58:03 +01:00
Maria Matejka
c4e1e691c7 Merge commit 'v2.14-80-g94a95a69' into thread-next 2024-01-28 14:55:59 +01:00
Maria Matejka
87fcb810af Merge commit '06301a991d80597a2a0a9e449d0cdf4bc1eda6d1' into mq-merge-step-1 2024-01-28 14:54:05 +01:00
Maria Matejka
0639394961 Merge commit 'v2.14-66-ga5e32759' into thread-next 2024-01-28 14:45:33 +01:00
Maria Matejka
1d0371a675 Merge commit '0e1fbaa5b21db8e5c64a732dbaf0b8afe707a147' into mq-merge-step-1 2024-01-28 14:43:20 +01:00
Maria Matejka
8fe58b9f8d Merge commit 'v2.13.1-192-gb8312130' into thread-next 2024-01-28 14:43:05 +01:00
Maria Matejka
605780f9f5 Merge commit 'c5c3a22bccda5454775b48ad318a7fd4bf197f86' into mq-merge-step-1 2024-01-28 14:42:56 +01:00
Maria Matejka
7045a715cf Merge commit 'v2.13.1-189-g105e50f6' into thread-next 2024-01-28 14:42:36 +01:00
Maria Matejka
7441ff7454 Merge commit 'e83beb70bd14923cece5b35411606ade6fb8fbee' into mq-merge-step-1 2024-01-28 14:39:00 +01:00
Maria Matejka
4628a117d9 Merge commit 'v2.13.1-186-g761649e6' into thread-next 2024-01-28 14:38:43 +01:00
Maria Matejka
4f806813b2 Merge commit '57aa077227d1f2440dc1b2bb6cbbebd418a6b898' into mq-merge-step-1 2024-01-28 14:29:15 +01:00
Maria Matejka
caacd78c47 Merge commit 'v2.13.1-165-gd81996d7' into thread-next 2024-01-28 13:29:30 +01:00
Maria Matejka
dcd0cc083c Merge commit '0bfa216f496279905b843abcfb1242477b86783c' into mq-merge-step-1 2024-01-28 13:29:22 +01:00
Maria Matejka
457a0873ab Merge commit 'c1719316a840d268a09d5fe2c10b06e51bc77824' into thread-next
Conflicts:
	doc/bird.sgml
2024-01-26 23:27:33 +01:00
Maria Matejka
4f2aa1319c Merge commit 'cab5fce2b6822b7f3a892103077f26e197fecfbc' into mq-merge-step-1 2024-01-26 23:25:25 +01:00
Maria Matejka
fa95ef5d6e Merge commit 'b2e2525e5ee4faab5bc5ee88581a19a4ca1d6277' into thread-next 2024-01-26 23:24:26 +01:00
Maria Matejka
d5fd7ec6cb Merge commit '8a70885694c5a3b384deba0f8cd25b7f63b99fcd' into HEAD 2024-01-26 23:23:56 +01:00
Ondrej Zajicek
2c7555cf2a Log: Add support for UDP logging
Add support for UDP logging, using RFC 3164 syslog protocol.

Based on the patch from Alexander Zubkov <green@qrator.net>, thanks!
2023-12-13 04:01:09 +01:00
Maria Matejka
4aac1b259f Merge commit '54ddf90f' 2023-12-08 08:30:30 +01:00
Maria Matejka
54ddf90f63 Conf: debug tables
For now just a dummy config but it is needed for forward
compatibility with v3.
2023-12-07 14:38:05 +01:00
Katerina Kubecova
bcf2327425 BGP: Send hold timer
Implement BGP Send hold timer according to draft-ietf-idr-bgp-sendholdtimer.
The Send hold timer drops the session if the neighbor is sending keepalives,
but does not receive our messages, causing the TCP connection to stall.
2023-12-05 04:14:45 +01:00
Ondrej Zajicek
3fb06fea1d BGP: Add options to require BGP capabilities
Some BGP capabilities change the BGP behavior in a significant way, so if
the configuration depends on it, it is better to not establish BGP
session when the capability is not available.

Add several BGP option to require individual BGP capabilities during
session negotiation.
2023-11-23 20:54:22 +01:00
Maria Matejka
c6fba7d7e6 Merge branch 'thread-next' into HEAD 2023-11-02 14:43:15 +01:00
Katerina Kubecova
9680bf68e4 Automatic ROA reloads on channel import
This includes updating OSPF, Pipe and RIP to enable partial route reload
directly from the protocols' internal tables.
2023-11-02 14:37:27 +01:00
Maria Matejka
d8463ca7d9 Merge branch 'mq-aggregator-for-v3' into thread-next 2023-11-01 17:48:00 +01:00
Maria Matejka
8917f16e4b Merge branch 'mq-aggregator-for-v3' into HEAD 2023-11-01 10:58:31 +01:00
Igor Putovny
f42c118aa7 Basic route aggregation
Add a new protocol offering route aggregation.

User can specify list of route attributes in the configuration file and
run route aggregation on the export side of the pipe protocol. Routes are
sorted and for every group of equivalent routes new route is created and
exported to the routing table. It is also possible to specify filter
which will run for every route before aggregation.

Furthermore, it will be possible to set attributes of new routes
according to attributes of the aggregated routes.

This is a work in progress.

Original work by Igor Putovny, subsequent cleanups and finalization by
Maria Matejka.

This is a split-commit of the neighboring aggregator branch
with a bit improved lvalue handling, to have easier merge into v3.
2023-10-31 16:40:46 +01:00
Maria Matejka
c5f6dc8142 Merge commit '0a729b50' into thread-next
This merge was particularly difficult. I finally resorted to delete the
symbol scope active flag altogether and replace its usage by other
means.

Also I had to update custom route attribute registration to fit
both the scope updates in v2 and the data model in v3.
2023-10-29 15:42:46 +01:00