Skip to content

API design prevents correct GR Restarting Speaker deferral with multiple peers #3433

Description

@fujita

RFC 4724 Section 4.2 requires the Restarting Speaker to defer route selection for a family until End-of-RIB is received from all GR-capable peers. This requires knowing all GR peer configurations before any session is established.

The current API model (start_bgp followed by repeated add_peer calls) starts connections immediately as peers are added. When multiple GR-capable peers are configured, the first peer may establish and begin sending routes before the remaining peers are added, making it impossible to correctly initialize route selection deferral across all peers.

The correct fix is to separate the configuration phase from the connection-start phase (e.g., split start_bgp into init_bgp and start_bgp), so the daemon can initialize deferral state for all configured GR families before any connection starts.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions