-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement bgp bandwidth auto for SR OS #1214
Conversation
jbemmel
commented
Jun 7, 2024
- Enable extended communities for EBGP inside the plugin, for all platforms
- Also adds MED and localpref
* Enable extended communities for EBGP inside the plugin, for all platforms
bed0672
to
f080c04
Compare
The 'add communities to EBGP' code does nothing as you modify a local variable but not store it. Anyway, we need to enable extended communities for EBGP only if the device is able to set Link Bandwidth in outgoing EBGP updates (for the moment, only EOS and FRR/CL). Also, it looks like the changes to SR Linux / SR OS templates are not included in this pull request. |
* Enable extended communities only for 'out' Note that there are different types of 'in': Accept incoming communities from an EBGP neighbor, or add a community locally The latter might be called 'local' to distinguish
'get' returns a reference, I verified that the topology output contains the 'extended' community for EBGP. You are correct that the code assumes
Updated, SR OS does support outgoing updates. There is a missing 3rd type: Locally add a community to incoming routes
Added now |
That's what bgp.bandwidth.in: auto (or just bgp.bandwidth: auto) is supposed to be doing, or did you have something else in mind?
Thank you, merging. |
There are 3 knobs:
#1 is currently being called "in", and #3 is "out". I didn't add #2 yet, because there is no flag for it |
On SR OS ;)
I could add bgp.bandwidth.in: accept keyword, but we're back to adding nerd knobs for one particular platform. Not sure anyone else has that same nerd knob; if you want to scrub communities, you do it with a route-map. |
I'm perfectly happy with leaving things the way they are for now, merely pointing out that there is some asymmetry in the semantics around "in" versus "out" that could be confusing to some people |