blob: ac1f779eb4740b2ffa3e4fc9f6184fa7f37366bd [file] [log] [blame]
submodule openconfig-isis-routing {
belongs-to openconfig-isis {
prefix "oc-isis";
}
// import some basic types
import openconfig-isis-types { prefix oc-isis-types; }
import openconfig-extensions { prefix oc-ext; }
import openconfig-mpls-types { prefix oc-mplst; }
import openconfig-segment-routing { prefix oc-sr; }
// meta
organization "OpenConfig working group";
contact
"OpenConfig working group
www.openconfig.net";
description
"This module describes YANG model for ISIS Routing";
oc-ext:openconfig-version "0.3.2";
revision "2017-07-26" {
description
"Update LSDB and fix bugs.";
reference "0.3.2";
}
revision "2017-05-15" {
description
"Refactor LSDB.";
reference "0.3.0";
}
revision "2017-01-13" {
description
"Remove top-level /isis container";
reference "0.2.1";
}
revision "2016-12-15" {
description
"Add segment routing to IS-IS module";
reference "0.2.0";
}
revision "2016-10-18" {
description
"Initial revision of IS-IS models.";
reference "0.1.0";
}
// extension statements
// feature statements
// identity statements
// typedef statements
// grouping statements
grouping rt-admin-config {
description
"Re-usable grouping to enable or disable a particular IS-IS feature.";
leaf enabled {
type boolean;
description
"When set to true, the functionality within which this leaf is
defined is enabled, when set to false it is explicitly disabled.";
}
}
grouping isis-afi-safi-config {
description
"This grouping defines Address-Family configuration parameters";
leaf afi-name {
type identityref {
base oc-isis-types:AFI_TYPE;
}
description
"Address-family type.";
}
leaf safi-name {
type identityref {
base oc-isis-types:SAFI_TYPE;
}
description
"Subsequent address-family type.";
}
}
grouping isis-shortcuts-afi-config {
description
"This grouping defines ISIS Shortcuts configuration parameters";
leaf afi-name {
type identityref {
base oc-isis-types:AFI_TYPE;
}
description "Address-family type.";
}
leaf-list nh-type {
type identityref {
base oc-mplst:PATH_SETUP_PROTOCOL;
}
description "Tunnel NH Type(RSVP,SR). When present it implies
that nh-type shortcut is enabled for a specified AFI.";
}
}
grouping isis-shortcuts-config {
description
"This grouping defines ISIS Shortcuts consfiguration parameters";
container config {
description "This container defines ISIS shortcuts configuration.";
uses rt-admin-config;
}
container state {
config false;
description "This container defines state for ISIS shortcuts.";
uses rt-admin-config;
}
}
grouping isis-mt-config {
description
"This grouping defines ISIS multi-topology configuration parameters";
leaf afi-name {
type identityref {
base oc-isis-types:AFI_TYPE;
}
description
"Address-family type.";
}
leaf safi-name {
type identityref {
base oc-isis-types:SAFI_TYPE;
}
description
"Subsequent address-family type.";
}
//prefer single topology
}
// *********** STRUCTURE GROUPINGS **********************
grouping isis-metric-config {
description
"This grouping defines ISIS metric configuration";
leaf metric {
type uint32;
default 10;
description "ISIS metric value(default=10).";
}
}
grouping isis-afi-safi-list {
description
"This grouping defines address-family configuration and state
information";
list af {
key "afi-name safi-name";
description
"Address-family/Subsequent Address-family list.";
leaf afi-name {
type leafref {
path "../config/afi-name";
}
description
"Reference to address-family type";
}
leaf safi-name {
type leafref {
path "../config/safi-name";
}
description
"Reference to subsequent address-family type";
}
container config {
description
"This container defines AFI-SAFI configuration parameters";
uses isis-afi-safi-config;
uses isis-metric-config;
uses rt-admin-config;
}
container state {
config false;
description
"This container defines AFI-SAFI State information";
uses isis-afi-safi-config;
uses isis-metric-config;
uses rt-admin-config;
}
uses isis-mt-list;
}
}
grouping isis-if-afi-safi-list {
description
"This grouping defines address-family configuration and state
information";
list af {
key "afi-name safi-name";
description
"Address-family/Subsequent Address-family list.";
leaf afi-name {
type leafref {
path "../config/afi-name";
}
description
"Reference to address-family type";
}
leaf safi-name {
type leafref {
path "../config/safi-name";
}
description
"Reference to subsequent address-family type";
}
container config {
description
"This container defines AFI-SAFI configuration parameters. Single
topology is the default setting.";
uses isis-afi-safi-config;
uses isis-metric-config;
uses rt-admin-config;
}
container state {
config false;
description
"This container defines AFI-SAFI State information";
uses isis-afi-safi-config;
uses isis-metric-config;
uses rt-admin-config;
}
uses oc-sr:sr-igp-interface-top;
}
}
grouping isis-if-global-afi-safi-list {
description
"This grouping defines address-family configuration and state
information";
list af {
key "afi-name safi-name";
description
"Address-family/Subsequent Address-family list.";
leaf afi-name {
type leafref {
path "../config/afi-name";
}
description
"Reference to address-family type";
}
leaf safi-name {
type leafref {
path "../config/safi-name";
}
description
"Reference to subsequent address-family type";
}
container config {
description
"This container defines AFI-SAFI configuration parameters. Single
topology is the default setting.";
uses isis-afi-safi-config;
uses rt-admin-config;
}
container state {
config false;
description
"This container defines AFI-SAFI State information";
uses isis-afi-safi-config;
uses rt-admin-config;
}
}
}
grouping isis-shortcuts-afi-list {
description
"This grouping defines ISIS Shorcuts configuration and
state information";
list afi {
key "afi-name";
description
"Address-family list.";
leaf afi-name {
type leafref {
path "../config/afi-name";
}
description
"Reference to address-family type.";
}
container config {
description
"This container defines ISIS Shortcuts configuration parameters";
uses isis-shortcuts-afi-config;
}
container state {
config false;
description
"This container defines ISIS Shortcuts state information";
uses isis-shortcuts-afi-config;
}
}
}
grouping isis-mt-list {
description
"This grouping defines multi-topology address-family configuration and
state information. MT0 - IPv4 Unicast, MT2 - IPv6 Unicast, MT3 -
IPv4 Multicast, MT4 - IPv6 Multicast";
container multi-topology {
description
"This container defines multi-topology address-family configuration
and state information. ISIS TLV 235, 237.";
container config {
description
"This container defines AFI-SAFI multi-topology configuration
parameters";
uses isis-mt-config;
}
container state {
config false;
description
"This container defines AFI-SAFI multi-topology state information";
uses isis-mt-config;
uses rt-admin-config;
}
}
}
}