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 policy forwarding for next hop match and GUE encapsulation action #1203

Closed
wants to merge 14 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ tagged with "Note" can be removed from the template.]

[Note: Before this PR can be reviewed please agree to the CLA covering this
repo. Please also review the contribution guide -
https://github.com/openconfig/public/blob/master/doc/external-contributions-guide.md]
https://github.com/openconfig/public/blob/master/doc/contributions-guide.md]

### Change Scope

Expand Down
1 change: 0 additions & 1 deletion release/models/aft/.spec.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
- name: openconfig-aft
docs:
- yang/aft/openconfig-aft.yang
- yang/aft/openconfig-aft-types.yang
- yang/aft/openconfig-aft-summary.yang
build:
- yang/network-instance/openconfig-network-instance.yang
Expand Down
40 changes: 27 additions & 13 deletions release/models/aft/openconfig-aft-common.yang
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ submodule openconfig-aft-common {
import openconfig-inet-types { prefix "oc-inet"; }
import openconfig-mpls-types { prefix "oc-mplst"; }
import openconfig-policy-types { prefix "oc-pol-types"; }
import openconfig-aft-types { prefix "oc-aftt"; }
import openconfig-types { prefix oc-types; }
import openconfig-evpn-types { prefix "oc-evpn-types"; }

organization
Expand All @@ -23,7 +23,19 @@ submodule openconfig-aft-common {
"Submodule containing definitions of groupings that are re-used
across multiple contexts within the AFT model.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-09-05" {
description
Expand Down Expand Up @@ -303,7 +315,7 @@ submodule openconfig-aft-common {
}

container gre {
when "../state/type = 'oc-aftt:GRE'";
when "../state/type = 'oc-types:GRE'";
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since there is a relocation of types to a separate model - the openconfig-version and revision must be updated to reflect this backwards incompatible change

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, but I don't see why we need to make this change. Why not leave these in AFT types?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The next PR from @danameme will use them in policy-forwarding

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's used in policy-forwarding in this same PR.

description
"Container of nodes for GRE encapsulation.";

Expand All @@ -316,7 +328,7 @@ submodule openconfig-aft-common {
}

container ipv4 {
when "../state/type = 'oc-aftt:IPV4'";
when "../state/type = 'oc-types:IPV4'";
description
"Container of nodes for UDP in IPv4 encapsulation. When this
container is used, an IPv4 packet with no transport header
Expand All @@ -331,7 +343,7 @@ submodule openconfig-aft-common {
}

container ipv6 {
when "../state/type = 'oc-aftt:IPV6'";
when "../state/type = 'oc-types:IPV6'";
description
"Container of nodes for UDP in IPv6 encapsulation. When this
container is used, an IPv6 packet with no transport header
Expand All @@ -346,7 +358,7 @@ submodule openconfig-aft-common {
}

container mpls {
when "../state/type = 'oc-aftt:MPLS'";
when "../state/type = 'oc-types:MPLS'";
description
"Container of nodes for MPLS encapsulation.";

Expand All @@ -359,7 +371,7 @@ submodule openconfig-aft-common {
}

container udp-v4 {
when "../state/type = 'oc-aftt:UDPV4'";
when "../state/type = 'oc-types:UDPV4'";
description
"Container of nodes for UDP in IPv4 encapsulation. When this
container is used, an IPv4 header with a UDP header is added
Expand All @@ -375,7 +387,7 @@ submodule openconfig-aft-common {
}

container udp-v6 {
when "../state/type = 'oc-aftt:UDPV6'";
when "../state/type = 'oc-types:UDPV6'";
description
"Container of nodes for UDP in IPv6 encapsulation. When this
container is used, an IPv6 header with a UDP header is added
Expand All @@ -391,7 +403,7 @@ submodule openconfig-aft-common {
}

container vxlan {
when "../state/type = 'oc-aftt:VXLAN'";
when "../state/type = 'oc-types:VXLAN'";
description
"Container of nodes for VXLAN encapsulation.";

Expand Down Expand Up @@ -422,7 +434,7 @@ submodule openconfig-aft-common {
}

leaf type {
type oc-aftt:encapsulation-header-type;
type oc-types:encapsulation-header-type;
description
"Defines which type of packet header should be used.";
}
Expand Down Expand Up @@ -571,7 +583,7 @@ submodule openconfig-aft-common {
}

leaf encapsulate-header {
type oc-aftt:encapsulation-header-type;
type oc-types:encapsulation-header-type;
description
"When forwarding a packet to the specified next-hop the local
system performs an encapsulation of the packet - adding the
Expand All @@ -584,7 +596,7 @@ submodule openconfig-aft-common {
}

leaf decapsulate-header {
type oc-aftt:encapsulation-header-type;
type oc-types:encapsulation-header-type;
description
"When forwarding a packet to the specified next-hop, the local
system performs a decapsulation of the packet - removing the
Expand Down Expand Up @@ -774,7 +786,7 @@ submodule openconfig-aft-common {
uses aft-common-install-protocol;

leaf decapsulate-header {
type oc-aftt:encapsulation-header-type;
type oc-types:encapsulation-header-type;
description
"When forwarding a packet to the specified next-hop, the local
system performs a decapsulation of the packet - removing the
Expand Down Expand Up @@ -1093,6 +1105,7 @@ submodule openconfig-aft-common {
}

grouping aft-common-entry-counter-state {
oc-ext:telemetry-atomic-exempt;
description
"Counters relating to a forwarding entry";

Expand All @@ -1112,6 +1125,7 @@ submodule openconfig-aft-common {
}

grouping aft-common-backup-entry-counter-state {
oc-ext:telemetry-atomic-exempt;
description
"Counters relating to a backup forwarding entry";

Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-ethernet.yang
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,19 @@ submodule openconfig-aft-ethernet {
"Submodule containing definitions of groupings for the abstract
forwarding tables for Ethernet.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-07-18" {
description
Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-ipv4.yang
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,19 @@ submodule openconfig-aft-ipv4 {
"Submodule containing definitions of groupings for the abstract
forwarding tables for IPv4.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-09-05" {
description
Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-ipv6.yang
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,19 @@ submodule openconfig-aft-ipv6 {
"Submodule containing definitions of groupings for the abstract
forwarding tables for IPv6.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-07-18" {
description
Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-mpls.yang
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,19 @@ submodule openconfig-aft-mpls {
"Submodule containing definitions of groupings for the abstract
forwarding table for MPLS label forwarding.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-09-05" {
description
Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-pf.yang
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,19 @@ submodule openconfig-aft-pf {
fields other than the destination address that is used in
other forwarding tables.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-07-18" {
description
Expand Down
14 changes: 13 additions & 1 deletion release/models/aft/openconfig-aft-state-synced.yang
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,19 @@ submodule openconfig-aft-state-synced {
"Submodule containing definitions of groupings for the state
synced signals corresponding to various abstract forwarding tables.";

oc-ext:openconfig-version "2.7.0";
oc-ext:openconfig-version "2.9.0";

revision "2024-10-20" {
description
"Add support for policy forwarding match on next hop and GUE encapsulation action.";
reference "2.9.0";
}

revision "2024-09-19" {
description
"Add atomic-exempt attribute to AFT counters containers.";
reference "2.8.0";
}

revision "2024-07-18" {
description
Expand Down
107 changes: 0 additions & 107 deletions release/models/aft/openconfig-aft-types.yang

This file was deleted.

Loading
Loading