Skip to content

Commit

Permalink
add refactored aft summary model
Browse files Browse the repository at this point in the history
  • Loading branch information
dplore committed Nov 10, 2023
1 parent dccd493 commit d71d1c1
Show file tree
Hide file tree
Showing 3 changed files with 122 additions and 112 deletions.
2 changes: 2 additions & 0 deletions release/models/aft/.spec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
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
- yang/aft/openconfig-aft-network-instance.yang
- yang/aft/openconfig-aft-summary.yang
run-ci: true
120 changes: 120 additions & 0 deletions release/models/aft/openconfig-aft-summary.yang
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
module openconfig-aft-summary {
yang-version "1";

namespace "http://openconfig.net/yang/aft-summary";

prefix "oc-rtsummary";

import openconfig-extensions { prefix "oc-ext"; }
import openconfig-yang-types { prefix "oc-yang-types"; }
import openconfig-policy-types { prefix "oc-pol-types"; }
import openconfig-network-instance { prefix "oc-ni"; }

organization
"OpenConfig working group";

contact
"OpenConfig working group
www.openconfig.net";

description
"This module provides summary of aft entry counts per protocol type for each network
instance.";

oc-ext:openconfig-version "0.1.0";

revision "2023-11-09" {
description
"Initial version.";
reference "0.1.0";
}

grouping protocols-state {
description
"Grouping for protocol type state.";

leaf origin-protocol {
description
"Protocol type that keys the protocol list.";

type identityref {
base "oc-pol-types:INSTALL_PROTOCOL_TYPE";
}
}

container counters {
description
"Enclosing container for aft entry counters";

leaf aft-entries {
description
"Total number of entries in the aft.";
type oc-yang-types:counter64;
}
}
}

grouping aft-summary {
description
"A summary of aft entries by protocol type.";

container protocols {
description
"Enclosing container for a list of protocols";
list protocol {
key "origin-protocol";

description
"Protocol type that keys the aft entry count list.";

leaf origin-protocol {
type leafref {
path "../state/origin-protocol";
}
description
"Reference to the protocol type which added the aft entry.";
}

container state {
description
"State parameters for the aft entry list.";
uses protocols-state;
}
}
}
}

grouping aft-summary-ipv4 {
description
"Grouping of all route summaries for ipv4.";
container ipv4-unicast {
description
"Container for ipv4 unicast route summary by protocol type.";
uses aft-summary;
}
}

grouping aft-summary-ipv6 {
description
"Grouping of all route summaries for ipv6.";
container ipv6-unicast {
description
"Container for ipv4 route counts by protocol type.";
uses aft-summary;
}
}

augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:afts" {
description
"Augment the afts model with the route summary container.";

container aft-summaries {
uses aft-summary-ipv4;
uses aft-summary-ipv6;

description
"Route summary for the network instance.";
}
}

}
112 changes: 0 additions & 112 deletions release/models/network-instance/openconfig-route-summary.yang

This file was deleted.

0 comments on commit d71d1c1

Please sign in to comment.