-
Notifications
You must be signed in to change notification settings - Fork 228
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bgp: fix detection of new BGP sessions (#6606)
Fix a bug introduced in refactoring from #6251, where some routes would not be exchanged on BGP links that come up after the snapshot starts. Fairly rare in datacenters, because BGP links in datacenters are usually ebgp singlehop. When sending routes to new links, we need to use the main RIB from the previous round rather than the current RIB, because depending on iteration order of the current round the current RIB may include routes that were not yet advertised in the previous round. Tried to make the invariants clear and enforced in only one place, and the code will only track previous entire route tables when necessary. The only semantic change we had to make was to move the processing of external BGP announcements to the first round instead of "in between" IGP and EGP. Add a test.
- Loading branch information
Showing
8 changed files
with
252 additions
and
72 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.