-
Notifications
You must be signed in to change notification settings - Fork 2
bgp persist
Pre-Alpha. This page describes behavior that may change.
In-memory sent-route cache with replay on peer reconnect. Tracks routes sent to each peer and replays them via cache-forward commands when the peer comes back up, reducing convergence time.
Storage.
plugin {
internal persist { use bgp-persist }
internal rib { use bgp-rib }
}
bgp-persist is not bound to peers. It subscribes to sent UPDATE events and tracks which routes have been advertised to each peer.
The plugin maintains an in-memory ribOut map that records every route sent to each peer, keyed by peer address, address family, and prefix. When a route is withdrawn, the corresponding entry is removed. When a peer goes down, the ribOut for that peer is preserved.
When a peer reconnects and sends its OPEN, the plugin replays the stored routes back to the peer using cache-forward commands. This lets the peer converge faster because it receives the previously-advertised routes without waiting for the full best-path computation and advertisement cycle to complete.
The plugin does not write to disk. The ribOut state lives entirely in memory and is lost if the daemon process exits. For forwarding-state preservation across restarts, pair this plugin with bgp-gr (Graceful Restart).
Registered via ConfigureMetrics on the plugin registration.
| Metric | Type | Meaning |
|---|---|---|
ze_persist_routes_stored |
gauge | Routes currently held in the in-memory ribOut. |
ze_persist_peers_tracked |
gauge | Peers with stored state. |
ze_persist_route_replays_total |
counter | Replay events triggered on peer reconnect. |
See plugin metrics.
- Subscribes to sent UPDATE events to populate the
ribOutmap. - Replays routes to reconnecting peers via
cache-forwardcommands. -
bgp-grcomplements this plugin: GR preserves forwarding state on the wire side during restarts, whilebgp-persistspeeds up convergence after a peer session reset.
main/internal/component/bgp/plugins/persist/
Unreviewed draft. This wiki was authored in bulk and has not been reviewed. File corrections on the issue tracker.
- Overview
- YANG Model
- Editor Workflow
- Archive and Rollback
- System
- Interfaces
- VRRP
- BFD
- FIB
- OSPF
- IS-IS
- MPLS / LDP / RSVP-TE
- RSVP-TE
- SRv6
- Static Routes
- Policy Routing
- Firewall
- Traffic Control
- Class of Service
- L2TP/PPP
- PPPoE
- VPP Data Plane
- RPKI
- IPsec VPN
- TACACS+ AAA
- RADIUS AAA
- AS112 DNS
- Authorization
- Fleet
- BGP
- Starting and Stopping
- Show Commands
- Monitoring
- Flow Export
- DDoS Mitigation
- Anomaly Detection
- Health Checks
- Audit Trail
- Production Diagnostics
- Logging
- Operational Reports
- Healthcheck
- Self-Update
- Zero-Touch Provisioning
- MRT Analysis
- Upgrade and Restart
- Storage
- Policy
- Core
- Resilience
- Validation
- Capabilities
- Address Families
- Protocol
- Subsystems
- Infrastructure
- Route Server at an IXP
- Transit Edge with RPKI
- Public Looking Glass
- ExaBGP Migration Walkthrough
- FlowSpec Injection
- Chaos-Tested Peering
- AS Path Topology