Skip to content

Add BIRD OSPF graceful restart support#3595

Open
jbemmel wants to merge 5 commits into
ipspace:devfrom
jbemmel:feature/bird-ospf-gr
Open

Add BIRD OSPF graceful restart support#3595
jbemmel wants to merge 5 commits into
ipspace:devfrom
jbemmel:feature/bird-ospf-gr

Conversation

@jbemmel

@jbemmel jbemmel commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Render BIRD OSPF graceful restart settings from ospf.gr.restart and ospf.gr.helper
  • Declare IPv4/IPv6 OSPF GR capability for the bird daemon
  • Document BIRD in the OSPF graceful restart platform table

Test plan

  • netlab create on a topology with device: bird and ospf.gr.restart / ospf.gr.helper
  • Verify generated ospf.mod.conf contains graceful restart on or graceful restart aware
  • Confirm ospf.gr validation passes for bird nodes with IPv4 and IPv6

Made with Cursor

Enable restart and helper roles in BIRD OSPF templates and declare IPv4/IPv6 GR capability for the bird daemon.

Co-authored-by: Cursor <cursoragent@cursor.com>
@jbemmel jbemmel marked this pull request as draft July 7, 2026 19:37
jbemmel and others added 3 commits July 7, 2026 15:02
Introduce ospfv3_gr_helper validation timing so BIRD can settle before the graceful restart sequence starts.

Co-authored-by: Cursor <cursoragent@cursor.com>
Bird establishes adjacencies quickly but needs extra time before the helper is ready for graceful restart.

Co-authored-by: Cursor <cursoragent@cursor.com>
FRR graceful-restart prepare is one-shot, so restart ospf6d and clear its GR state instead of only unfreezing the process.

Co-authored-by: Cursor <cursoragent@cursor.com>
@jbemmel

jbemmel commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator Author

BIRD establishes the adjacency quickly, but the GR helper seems to need a few moments more:

netlab connect dut birdcl

show protocols
debug ospf_global_v3 { states,routes,events }
echo all

Added a 5-second extra wait for BIRD only, which stabilizes the test. Tried to find a more explicit state to watch for, but no luck

Also improved the GR reset logic at the end, to enable repeated GR tests

Co-authored-by: Cursor <cursoragent@cursor.com>
@jbemmel jbemmel marked this pull request as ready for review July 7, 2026 21:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant