Skip to content
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

Add BGP cumulative link-bandwidth #1131

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
11 changes: 9 additions & 2 deletions release/models/bgp/openconfig-bgp-common-multiprotocol.yang
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,18 @@ submodule openconfig-bgp-common-multiprotocol {
for multiple protocols in BGP. The groupings are common across
multiple contexts.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
Expand All @@ -38,6 +44,7 @@ submodule openconfig-bgp-common-multiprotocol {
community for BGP multipath.";
reference "9.7.0";
}

revision "2023-11-02" {
description
"Fix revision '2023-03-31': send-community-type was added to the
Expand Down
32 changes: 30 additions & 2 deletions release/models/bgp/openconfig-bgp-common-structure.yang
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,18 @@ submodule openconfig-bgp-common-structure {
"This sub-module contains groupings that are common across multiple BGP
contexts and provide structure around other primitive groupings.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
Expand Down Expand Up @@ -319,4 +325,26 @@ submodule openconfig-bgp-common-structure {
}
}

grouping bgp-common-structure-link-bw {
description
"Structural grouping used to include link bandwidth configuration and
state for BGP neighbors, peer groups and global.";

container link-bw {
description
"Parameters relating to BGP link bandwidth.";
container config {
description
"Configuration parameters relating to link bandwidth.";
uses bgp-common-link-bw-config;
}
container state {
config false;
description
"State information parameters relating to link bandwidth.";
uses bgp-common-link-bw-config;
}
}
}

}
66 changes: 54 additions & 12 deletions release/models/bgp/openconfig-bgp-common.yang
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,25 @@ submodule openconfig-bgp-common {
may be application to a subset of global, peer-group or neighbor
contexts.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
description
"Add support for controling use of link-bandwidth extended
community for BGP multipath.";
reference "9.7.0";
reference "9.7.0";
}

revision "2023-11-02" {
Expand Down Expand Up @@ -696,21 +702,57 @@ submodule openconfig-bgp-common {

grouping bgp-common-use-multiple-paths-link-bandwidth-config {
description
"Parameters controlling usage of of DMZ Link-Bandwidth
extended community in pultipath RIB/FIB formation";
"Parameters controlling usage of DMZ Link-Bandwidth
extended community in multipath RIB/FIB formation";

leaf enabled {
type boolean;
description
"When set to TRUE, BGP multiplepath shall distributed traffic
load among contributing routes proportionally to value of
Local Administrator subfield of link-bandwidth extended
community [draft-ietf-idr-link-bandwidth-07].
This leaf has no effect if BGP multi-path is disabled or
if maximum-path attribute of BGP multi-path value is set
to 1";
"When set to TRUE, BGP multiplepath shall distributed traffic
load among contributing routes proportionally to value of
Local Administrator subfield of link-bandwidth extended
community [draft-ietf-idr-link-bandwidth-07].
This leaf has no effect if BGP multi-path is disabled or
if maximum-path attribute of BGP multi-path value is set
to 1";
}
}

grouping bgp-common-link-bw-config {
description
"Configuration parameters relating to link-bandwidth for BGP.";
reference
"https://datatracker.ietf.org/doc/draft-ietf-bess-ebgp-dmz/05";

leaf send-cumulative {
type boolean;
description
"When set to TRUE, and sending of link-bandwidth community values
is enabled, the system will sum the bgp link-bandwidth community
values for equal cost paths as defined in
draft-ietf-bess-ebgp-dmz-05.";
}

leaf non-transitive-ebgp {
type boolean;
when "../send-cumulative = 'TRUE'";
description
"When set to TRUE and sending of link-bandwidth community values is
enabled, the system will send the non-transitive link-bandwidth
community learned from iBGP peers to eBGP peers.";
}

leaf divide {
type boolean;
when "../send-cumulative = 'TRUE'";
description
"When set to TRUE, and sending of link-bandwidth community values
is enabled, the system divides the summed bandwidth equally across
available paths as defined in draft-ietf-bess-ebgp-dmz-05.";
}
}


grouping bgp-common-use-multiple-paths-ebgp-config {
description
"Configuration parameters relating to multipath for eBGP";
Expand Down
11 changes: 9 additions & 2 deletions release/models/bgp/openconfig-bgp-global.yang
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,18 @@ submodule openconfig-bgp-global {
"This sub-module contains groupings that are specific to the
global context of the OpenConfig BGP module";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
Expand Down Expand Up @@ -425,6 +431,7 @@ submodule openconfig-bgp-global {
uses bgp-common-route-selection-options;
uses bgp-common-global-group-use-multiple-paths;
uses bgp-common-structure-neighbor-group-add-paths;
uses bgp-common-structure-link-bw;
uses bgp-global-mp-all-afi-safi-list-contents;
uses oc-rpol:default-policy-group;
}
Expand Down
28 changes: 25 additions & 3 deletions release/models/bgp/openconfig-bgp-neighbor.yang
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,25 @@ submodule openconfig-bgp-neighbor {
"This sub-module contains groupings that are specific to the
neighbor context of the OpenConfig BGP module.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
description
"Add support for controling use of link-bandwidth extended
community for BGP multipath.";
reference "9.7.0";
reference "9.7.0";
}

revision "2023-11-02" {
Expand Down Expand Up @@ -274,6 +280,21 @@ submodule openconfig-bgp-neighbor {
container ebgp {
description
"Multipath configuration for eBGP";
container link-bandwidth-ext-community {
description
"Usage of DMZ Link-Bandwidth extended community";
container config {
description
"Configuration parameters relating to usage of link-bandwidth";
uses bgp-common-use-multiple-paths-link-bandwidth-config;
}
container state {
config false;
description
"State information relating to usage of link-bandwidth";
uses bgp-common-use-multiple-paths-link-bandwidth-config;
}
}
container config {
description
"Configuration parameters relating to eBGP multipath";
Expand Down Expand Up @@ -744,6 +765,7 @@ submodule openconfig-bgp-neighbor {
uses bgp-common-structure-neighbor-group-add-paths;
uses bgp-common-mp-all-afi-safi-list-contents;
uses bgp-neighbor-use-multiple-paths;
uses bgp-common-structure-link-bw;
}
}

Expand Down
11 changes: 9 additions & 2 deletions release/models/bgp/openconfig-bgp-peer-group.yang
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,18 @@ submodule openconfig-bgp-peer-group {
"This sub-module contains groupings that are specific to the
peer-group context of the OpenConfig BGP module.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
Expand Down Expand Up @@ -254,6 +260,7 @@ submodule openconfig-bgp-peer-group {
uses bgp-common-structure-neighbor-group-add-paths;
uses bgp-common-global-group-use-multiple-paths;
uses bgp-common-mp-all-afi-safi-list-contents;
uses bgp-common-structure-link-bw;
}
}

Expand Down
12 changes: 9 additions & 3 deletions release/models/bgp/openconfig-bgp.yang
Original file line number Diff line number Diff line change
Expand Up @@ -68,19 +68,25 @@ module openconfig-bgp {
whereas leaf not present inherits its value from the leaf present
at the next higher level in the hierarchy.";

oc-ext:openconfig-version "9.7.1";
oc-ext:openconfig-version "9.8.0";

revision "2024-06-13" {
description
"Add link-bandwidth parameters for cumulative, non-transitive and equal.";
reference "9.8.0";
}

revision "2023-12-28" {
description
"Clarification to last-prefix-limit-exceeded in description";
reference "9.7.1";
reference "9.7.1";
}

revision "2023-12-28" {
description
"Add support for controling use of link-bandwidth extended
community for BGP multipath.";
reference "9.7.0";
reference "9.7.0";
}

revision "2023-11-02" {
Expand Down
Loading