Reapply "Add BGP group/neighbor level and policy support for AIGP (#1…#1484
Open
jenna-mccampbell wants to merge 3 commits into
Open
Reapply "Add BGP group/neighbor level and policy support for AIGP (#1…#1484jenna-mccampbell wants to merge 3 commits into
jenna-mccampbell wants to merge 3 commits into
Conversation
…enconfig#1451)" This reverts commit 833a12a.
Contributor
There was a problem hiding this comment.
Code Review
This pull request introduces support for the Accumulated IGP (AIGP) metric across BGP policy, configuration, and RIB models. Key changes include the definition of a 64-bit AIGP metric type, the addition of policy actions to set the AIGP value, and the inclusion of an enable flag for AIGP within neighbor and peer-group address family configurations. Review feedback suggests expanding the available policy actions to include increment and decrement operations (ADD and SUBTRACT) for better alignment with existing MED actions and generalizing documentation to accommodate these potential extensions.
Member
|
/gcbrun |
Member
|
Last call for May 12, 2026 |
|
No major YANG version changes in commit 0f5dde9 |
dplore
approved these changes
Apr 28, 2026
Contributor
|
/gcbrun |
Member
|
/gcbrun |
dplore
approved these changes
May 13, 2026
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please note: this PR includes changes made in #1451, which was accidentally submitted too early and was subsequently reverted. Please see original pull request for earlier comments and discussion on this change
Change Scope
the group and neighbor level for IPv4 and IPv6 unicast address families.
It also adds the ability to set an arbitrary AIGP value in a BGP policy.
Platform Implementations
Note: Implementation A and Implementation B align well with the paths added
here. Implementation C does not allow setting an arbitrary AIGP value in
policy. AIGP value can instead be originated and adjusted via addition,
subtraction, multiplication, or division. Implementation D supports AIGP
enablement only in the base router BGP instance (not per group or
neighbor) and does not support AIGP manipulation in route policies.
Tree View
module: openconfig-network-instance +--rw network-instances +--rw network-instance* [name] +--rw protocols | +--rw protocol* [identifier name] | +--rw bgp | | +--rw neighbors | | | +--rw neighbor* [neighbor-address] | | | +--rw afi-safis | | | | +--rw afi-safi* [afi-safi-name] | | | | +--rw ipv4-unicast | | | | | +--rw prefix-limit | | | | | +--rw prefix-limit-received | | | | | +--rw config | | | | | | +--rw send-default-route? boolean | | | | | | +--rw extended-next-hop-encoding? boolean + | | | | | | +--rw enable-aigp? boolean | | | | | +--ro state | | | | | +--ro send-default-route? boolean | | | | | +--ro extended-next-hop-encoding? boolean + | | | | | +--ro enable-aigp? boolean | | | | +--rw ipv6-unicast | | | | | +--rw prefix-limit | | | | | +--rw prefix-limit-received | | | | | +--rw config | | | | | | +--rw send-default-route? boolean + | | | | | | +--rw enable-aigp? boolean | | | | | +--ro state | | | | | +--ro send-default-route? boolean + | | | | | +--ro enable-aigp? boolean | | | | +--rw ipv4-labeled-unicast | | +--rw peer-groups | | | +--rw peer-group* [peer-group-name] | | | +--rw afi-safis | | | | +--rw afi-safi* [afi-safi-name] | | | | +--rw ipv4-unicast | | | | | +--rw prefix-limit | | | | | +--rw prefix-limit-received | | | | | +--rw config | | | | | | +--rw send-default-route? boolean | | | | | | +--rw extended-next-hop-encoding? boolean + | | | | | | +--rw enable-aigp? boolean | | | | | +--ro state | | | | | +--ro send-default-route? boolean | | | | | +--ro extended-next-hop-encoding? boolean + | | | | | +--ro enable-aigp? boolean | | | | +--rw ipv6-unicast | | | | | +--rw prefix-limit | | | | +--rw ipv4-labeled-unicast | | +--ro rib | | +--ro attr-sets | | | +--ro attr-set* [index] | | | +--ro index -> ../state/index | | | +--ro state | | | | +--ro index? uint64 | | | | +--ro origin? oc-bgpt:bgp-origin-attr-type | | | | +--ro atomic-aggregate? boolean | | | | +--ro next-hop? oc-inet:ip-address | | | | +--ro med? uint32 | | | | +--ro local-pref? uint32 | | | | +--ro originator-id? oc-inet:ipv4-address | | | | +--ro cluster-list* oc-inet:ipv4-address - | | | | +--ro aigp? uint64 + | | | | +--ro aigp? oc-bgpt:bgp-aigp-metric | | | +--ro aggregator module: openconfig-routing-policy +--rw routing-policy +--rw policy-definitions +--rw policy-definition* [name] +--rw statements +--rw statement* [name] +--rw actions +--rw oc-bgp-pol:bgp-actions | +--rw oc-bgp-pol:config | | +--rw oc-bgp-pol:set-route-origin? oc-bgp-types:bgp-origin-attr-type | | +--rw oc-bgp-pol:set-local-pref? uint64 | | +--rw oc-bgp-pol:set-next-hop? bgp-next-hop-type | | +--rw oc-bgp-pol:set-med? bgp-set-med-type | | +--rw oc-bgp-pol:set-med-action? bgp-set-med-action + | | +--rw oc-bgp-pol:set-aigp? oc-bgp-types:bgp-aigp-metric + | | +--rw oc-bgp-pol:set-aigp-action? bgp-set-aigp-action | +--ro oc-bgp-pol:state | | +--ro oc-bgp-pol:set-route-origin? oc-bgp-types:bgp-origin-attr-type | | +--ro oc-bgp-pol:set-local-pref? uint64 | | +--ro oc-bgp-pol:set-next-hop? bgp-next-hop-type | | +--ro oc-bgp-pol:set-med? bgp-set-med-type | | +--ro oc-bgp-pol:set-med-action? bgp-set-med-action + | | +--rw oc-bgp-pol:set-aigp? oc-bgp-types:bgp-aigp-metric + | | +--rw oc-bgp-pol:set-aigp-action? bgp-set-aigp-action