draft-ietf-isis-yang-isis-cfg-33.txt   draft-ietf-isis-yang-isis-cfg-34.txt 
skipping to change at page 1, line 16 skipping to change at page 1, line 16
Expires: July 25, 2019 Arrcus, Inc Expires: July 25, 2019 Arrcus, Inc
A. Lindem A. Lindem
Cisco Systems Cisco Systems
J. Zhang J. Zhang
Juniper Networks Juniper Networks
L. Lhotka L. Lhotka
CZ.NIC CZ.NIC
January 21, 2019 January 21, 2019
YANG Data Model for IS-IS Protocol YANG Data Model for IS-IS Protocol
draft-ietf-isis-yang-isis-cfg-33 draft-ietf-isis-yang-isis-cfg-34
Abstract Abstract
This document defines a YANG data model that can be used to configure This document defines a YANG data model that can be used to configure
and manage IS-IS protocol on network elements. and manage IS-IS protocol on network elements.
Requirements Language Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
skipping to change at page 2, line 25 skipping to change at page 2, line 25
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Design of the Data Model . . . . . . . . . . . . . . . . . . 3 2. Design of the Data Model . . . . . . . . . . . . . . . . . . 3
2.1. IS-IS Configuration . . . . . . . . . . . . . . . . . . . 9 2.1. IS-IS Configuration . . . . . . . . . . . . . . . . . . . 9
2.2. Multitopology Parameters . . . . . . . . . . . . . . . . 10 2.2. Multi-topology Parameters . . . . . . . . . . . . . . . 10
2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10 2.3. Per-Level Parameters . . . . . . . . . . . . . . . . . . 10
2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 12 2.4. Per-Interface Parameters . . . . . . . . . . . . . . . . 12
2.5. Authentication Parameters . . . . . . . . . . . . . . . 19 2.5. Authentication Parameters . . . . . . . . . . . . . . . 19
2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . 20 2.6. IGP/LDP synchronization . . . . . . . . . . . . . . . . 20
2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 20 2.7. ISO parameters . . . . . . . . . . . . . . . . . . . . . 20
2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.8. IP FRR . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.9. Operational States . . . . . . . . . . . . . . . . . . . 21 2.9. Operational States . . . . . . . . . . . . . . . . . . . 21
3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 21 3. RPC Operations . . . . . . . . . . . . . . . . . . . . . . . 21
4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 21 4. Notifications . . . . . . . . . . . . . . . . . . . . . . . . 21
5. Interaction with Other YANG Modules . . . . . . . . . . . . 23 5. Interaction with Other YANG Modules . . . . . . . . . . . . 23
skipping to change at page 10, line 9 skipping to change at page 10, line 9
o Per interface configuration (see Section 2.4). o Per interface configuration (see Section 2.4).
Additional modules may be created to support any additional Additional modules may be created to support any additional
parameters. These additional modules MUST augment the ietf-isis parameters. These additional modules MUST augment the ietf-isis
module. module.
The model implements features, thus some of the configuration The model implements features, thus some of the configuration
statement becomes optional. As an example, the ability to control statement becomes optional. As an example, the ability to control
the administrative state of a particular IS-IS instance is optional. the administrative state of a particular IS-IS instance is optional.
By advertising the feature "admin-control", a device communicates to By advertising the feature "admin-control", a device communicates to
the client that it supports the ability to shutdown a particular IS- the client that it supports the ability to shut down a particular IS-
IS instance. IS instance.
The global configuration contains usual IS-IS parameters such as lsp- The global configuration contains usual IS-IS parameters such as lsp-
mtu, lsp-lifetime, lsp-refresh, default-metric... mtu, lsp-lifetime, lsp-refresh, default-metric...
2.2. Multitopology Parameters 2.2. Multi-topology Parameters
The model supports multitopology (MT) IS-IS as defined in [RFC5120]. The model supports multi-topology (MT) IS-IS as defined in [RFC5120].
The "topologies" container is used to enable support of MT The "topologies" container is used to enable support of MT
extensions. extensions.
The "name" used in the topology list should refer to an existing RIB The "name" used in the topology list should refer to an existing RIB
of the device. of the device.
Some specific parameters could be defined on a per topology basis Some specific parameters could be defined on a per topology basis
both at global level and at interface level: for example, an both at global level and at interface level: for example, an
interface metric can be defined per topology. interface metric can be defined per topology.
Multiple address families (like IPv4 or IPv6) can also be activated Multiple address families (like IPv4 or IPv6) can also be activated
within the default topology. This can be achieved using the "afs" within the default topology. This can be achieved using the address-
container (requiring "nlpid-control" feature to be advertised). families container (requiring "nlpid-control" feature to be
advertised).
2.3. Per-Level Parameters 2.3. Per-Level Parameters
Some parameters allow a per level configuration. In this case, the Some parameters allow a per level configuration. In this case, the
parameter is modeled as a container with three configuration parameter is modeled as a container with three configuration
locations: locations:
o a top level container: corresponds to level-1-2, so the o a top-level container: corresponds to level-1-2, so the
configuration applies to both levels. configuration applies to both levels.
o a level-1 container: corresponds to level-1 specific parameters. o a level-1 container: corresponds to level-1 specific parameters.
o a level-2 container: corresponds to level-2 specific parameters. o a level-2 container: corresponds to level-2 specific parameters.
+--rw priority +--rw priority
| +--rw value? uint8 | +--rw value? uint8
| +--rw level-1 | +--rw level-1
| | +--rw value? uint8 | | +--rw value? uint8
skipping to change at page 11, line 19 skipping to change at page 11, line 19
<level-1> <level-1>
<value>100</value> <value>100</value>
</level-1> </level-1>
<level-2> <level-2>
<value>200</value> <value>200</value>
</level-2> </level-2>
</priority> </priority>
An implementation SHOULD prefer a level specific parameter over a An implementation SHOULD prefer a level specific parameter over a
level-all parameter. As example, if the priority is 100 for the level-all parameter. As example, if the priority is 100 for the
level-1, 200 for the level-2 and 250 for the top level configuration, level-1, 200 for the level-2 and 250 for the top-level configuration,
the implementation should use 100 for the level-1 and 200 for the the implementation should use 100 for the level-1 and 200 for the
level-2. level-2.
Some parameters like "overload bit" and "route preference" are not Some parameters like "overload bit" and "route preference" are not
modeled to support a per level configuration. If an implementation modeled to support a per level configuration. If an implementation
supports per level configuration for such parameter, this supports per level configuration for such parameter, this
implementation SHOULD augment the current model by adding both implementation SHOULD augment the current model by adding both
level-1 and level-2 containers and SHOULD reuse existing level-1 and level-2 containers and SHOULD reuse existing
configuration groupings. configuration groupings.
skipping to change at page 12, line 30 skipping to change at page 12, line 30
} }
container level-2 { container level-2 {
uses isis:overload-global-cfg; uses isis:overload-global-cfg;
description description
"Level 2 configuration."; "Level 2 configuration.";
} }
} }
If an implementation does not support per level configuration for a If an implementation does not support per level configuration for a
parameter modeled with per level configuration, the implementation parameter modeled with per level configuration, the implementation
SHOULD advertise a deviation to announce the non support of the SHOULD advertise a deviation to announce the non-support of the
level-1 and level-2 containers. level-1 and level-2 containers.
Finally, if an implementation supports per level configuration but Finally, if an implementation supports per level configuration but
does not support the level-1-2 configuration, it SHOULD also does not support the level-1-2 configuration, it SHOULD also
advertise a deviation. advertise a deviation.
2.4. Per-Interface Parameters 2.4. Per-Interface Parameters
The per-interface section of the IS-IS instance describes the The per-interface section of the IS-IS instance describes the
interface specific parameters. interface specific parameters.
The interface is modeled as a reference to an existing interface The interface is modeled as a reference to an existing interface
defined in the "ietf-interfaces" YANG model ([RFC8343]. defined in the "ietf-interfaces" YANG model ([RFC8343].
Each interface has some interface-specific parameters that may have a Each interface has some interface-specific parameters that may have a
different per level value as described in previous section. An different per level value as described in previous section. An
interface-specific parameter always override an IS-IS global interface-specific parameter always overrides an IS-IS global
parameter. parameter.
Some parameters like hello-padding are defined as containers to allow Some parameters like hello-padding are defined as containers to allow
easy extension by vendor specific modules. easy extension by vendor specific modules.
+--rw interfaces +--rw interfaces
+--rw interface* [name] +--rw interface* [name]
+--rw name if:interface-ref +--rw name if:interface-ref
+--rw level-type? level +--rw level-type? level
+--rw lsp-pacing-interval? +--rw lsp-pacing-interval?
skipping to change at page 22, line 44 skipping to change at page 22, line 44
PDU with a different protocol version number. PDU with a different protocol version number.
area-mismatch: This notification is sent when the system receives area-mismatch: This notification is sent when the system receives
a Hello PDU from an IS that does not share any area address. a Hello PDU from an IS that does not share any area address.
rejected-adjacency: This notification is sent when the system rejected-adjacency: This notification is sent when the system
receives a Hello PDU from an IS but does not establish an receives a Hello PDU from an IS but does not establish an
adjacency for some reason. adjacency for some reason.
protocols-supported-mismatch: This notification is sent when the protocols-supported-mismatch: This notification is sent when the
system receives a non pseudonode LSP that has no matching protocol system receives a non-pseudonode LSP that has no matching protocol
supported. supported.
lsp-error-detected: This notification is sent when the system lsp-error-detected: This notification is sent when the system
receives a LSP with a parse error. receives an LSP with a parse error.
adjacency-state-change: This notification is sent when an IS-IS adjacency-state-change: This notification is sent when an IS-IS
adjacency moves to Up state or to Down state. adjacency moves to Up state or to Down state.
lsp-received: This notification is sent when a LSP is received. lsp-received: This notification is sent when an LSP is received.
lsp-generation: This notification is sent when a LSP is lsp-generation: This notification is sent when an LSP is
regenerated. regenerated.
5. Interaction with Other YANG Modules 5. Interaction with Other YANG Modules
The "isis" container augments the "/rt:routing/rt:control-plane- The "isis" container augments the "/rt:routing/rt:control-plane-
protocols/control-plane-protocol" container of the ietf-routing protocols/control-plane-protocol" container of the ietf-routing
[RFC8349] module by defining IS-IS specific parameters. [RFC8349] module by defining IS-IS specific parameters.
The "isis" module augments "/if:interfaces/if:interface" defined by The "isis" module augments "/if:interfaces/if:interface" defined by
[RFC8343] with ISO specific parameters. [RFC8343] with ISO specific parameters.
skipping to change at page 23, line 44 skipping to change at page 23, line 44
[I-D.ietf-bfd-yang]. [I-D.ietf-bfd-yang].
6. IS-IS YANG Module 6. IS-IS YANG Module
The following RFCs, drafts and external standards are not referenced The following RFCs, drafts and external standards are not referenced
in the document text but are referenced in the ietf-isis.yang module: in the document text but are referenced in the ietf-isis.yang module:
[ISO-10589], [RFC1195], [RFC5029], [RFC5130], [RFC5305], [RFC5306], [ISO-10589], [RFC1195], [RFC5029], [RFC5130], [RFC5305], [RFC5306],
[RFC5308], [RFC5880], [RFC5881], [RFC6119], [RFC6232], [RFC7794], [RFC5308], [RFC5880], [RFC5881], [RFC6119], [RFC6232], [RFC7794],
[RFC7810], [RFC7917], [RFC8405]. [RFC7810], [RFC7917], [RFC8405].
<CODE BEGINS> file "ietf-ospf@2019-01-23.yang" <CODE BEGINS> file "ietf-ospf@2019-01-24.yang"
module ietf-isis { module ietf-isis {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-isis"; namespace "urn:ietf:params:xml:ns:yang:ietf-isis";
prefix isis; prefix isis;
import ietf-routing { import ietf-routing {
prefix "rt"; prefix "rt";
reference "RFC 8349 - A YANG Data Model for Routing reference "RFC 8349 - A YANG Data Model for Routing
Management (NMDA Version)"; Management (NMDA Version)";
skipping to change at page 25, line 8 skipping to change at page 25, line 8
Forwarding Detection (BFD). Forwarding Detection (BFD).
-- Note to RFC Editor Please replace YYYY with published RFC -- Note to RFC Editor Please replace YYYY with published RFC
number for draft-ietf-bfd-yang."; number for draft-ietf-bfd-yang.";
} }
organization organization
"IETF LSR Working Group"; "IETF LSR Working Group";
contact contact
"WG List: <mailto:lsr@ietf.org&gt; "WG List: <mailto:lsr@ietf.org&gt;
Editor: Stephane Litkowski Editor: Stephane Litkowski
<mailto:stephane.litkowski@orange.com&gt; <mailto:stephane.litkowski@orange.com&gt;
Derek Yeung Derek Yeung
<mailto:derek@arrcus.com&gt; <mailto:derek@arrcus.com&gt;
Acee Lindem Acee Lindem
<mailto:acee@cisco.com&gt; <mailto:acee@cisco.com&gt;
Jeffrey Zhang Jeffrey Zhang
<mailto:zzhang@juniper.net&gt; <mailto:zzhang@juniper.net&gt;
Ladislav Lhotka Ladislav Lhotka
<mailto:llhotka@nic.cz&gt; <mailto:llhotka@nic.cz&gt;
Yi Yang Yi Yang
<mailto:yiya@cisco.com&gt; <mailto:yiya@cisco.com&gt;
Dean Bogdanovic Dean Bogdanovic
<mailto:deanb@juniper.net&gt; <mailto:deanb@juniper.net&gt;
Kiran Agrahara Sreenivasa Kiran Agrahara Sreenivasa
<mailto:kkoushik@brocade.com&gt; <mailto:kkoushik@brocade.com&gt;
Yingzhen Qu Yingzhen Qu
<mailto:yiqu@cisco.com&gt; <mailto:yiqu@cisco.com&gt;
Jeff Tantsura Jeff Tantsura
<mailto:jefftant.ietf@gmail.com&gt; <mailto:jefftant.ietf@gmail.com&gt;
"; ";
description description
"This YANG module defines the generic configuration and "This YANG module defines the generic configuration and
operational state for the IS-IS protocol. operational state for the IS-IS protocol.
It is intended that the module It is intended that the module
will be extended by vendors to define vendor-specific will be extended by vendors to define vendor-specific
IS-IS configuration parameters and policies, IS-IS configuration parameters and policies,
for example route maps or route policies. for example, route maps or route policies.
This YANG module conforms to the Network Management This YANG module conforms to the Network Management
Datastore Architecture (NDMA) as described in RFC 8242. Datastore Architecture (NDMA) as described in RFC 8242.
Copyright (c) 2018 IETF Trust and the persons identified as Copyright (c) 2018 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License to the license terms contained in, the Simplified BSD License
skipping to change at page 26, line 18 skipping to change at page 26, line 18
see the RFC itself for full legal notices. see the RFC itself for full legal notices.
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL',
'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED',
'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document 'NOT RECOMMENDED', 'MAY', and 'OPTIONAL' in this document
are to be interpreted as described in BCP 14 [RFC2119] are to be interpreted as described in BCP 14 [RFC2119]
[RFC8174] when, and only when, they appear in all capitals, [RFC8174] when, and only when, they appear in all capitals,
as shown here. as shown here.
"; ";
revision 2019-01-23 { revision 2019-01-24 {
description description
"Initial revision."; "Initial revision.";
reference "RFC XXXX"; reference "RFC XXXX";
} }
/* Identities */ /* Identities */
identity isis { identity isis {
base rt:routing-protocol; base rt:routing-protocol;
description "Identity for the IS-IS routing protocol."; description "Identity for the IS-IS routing protocol.";
skipping to change at page 32, line 14 skipping to change at page 32, line 14
description description
"This type defines the area address format."; "This type defines the area address format.";
} }
typedef snpa { typedef snpa {
type string { type string {
length "0 .. 20"; length "0 .. 20";
} }
description description
"This type defines the Subnetwork Point "This type defines the Subnetwork Point
of Attachement (SNPA) format. of Attachment (SNPA) format.
The SNPA should be encoded according to the rules The SNPA should be encoded according to the rules
specified for the particular type of subnetwork specified for the particular type of subnetwork
being used. As an example, for an ethernet subnetwork, being used. As an example, for an ethernet subnetwork,
the SNPA is encoded as a MAC address like the SNPA is encoded as a MAC address like
'00aa.bbcc.ddee'."; '00aa.bbcc.ddee'.";
} }
typedef system-id { typedef system-id {
type string { type string {
pattern pattern
skipping to change at page 34, line 15 skipping to change at page 34, line 15
leaf interface-name { leaf interface-name {
type if:interface-ref; type if:interface-ref;
description "IS-IS interface name"; description "IS-IS interface name";
} }
leaf interface-level { leaf interface-level {
type level; type level;
description "IS-IS level of the interface."; description "IS-IS level of the interface.";
} }
leaf extended-circuit-id { leaf extended-circuit-id {
type extended-circuit-id; type extended-circuit-id;
description "Eextended circuit-id of the interface."; description "Extended circuit-id of the interface.";
} }
} }
/* Groupings for IP Fast Reroute */ /* Groupings for IP Fast Reroute */
grouping instance-fast-reroute-config { grouping instance-fast-reroute-config {
description description
"This group defines global configuration of IP "This group defines global configuration of IP
Fast ReRoute (FRR)."; Fast ReRoute (FRR).";
container fast-reroute { container fast-reroute {
skipping to change at page 36, line 16 skipping to change at page 36, line 16
"Address-family"; "Address-family";
} }
leaf prefix { leaf prefix {
type inet:ip-prefix; type inet:ip-prefix;
description description
"Protected prefix."; "Protected prefix.";
} }
leaf alternate { leaf alternate {
type inet:ip-address; type inet:ip-address;
description description
"Alternate nexthop for the prefix."; "Alternate next hop for the prefix.";
} }
leaf alternate-type { leaf alternate-type {
type enumeration { type enumeration {
enum equal-cost { enum equal-cost {
description description
"ECMP alternate."; "ECMP alternate.";
} }
enum lfa { enum lfa {
description description
"LFA alternate."; "LFA alternate.";
skipping to change at page 40, line 27 skipping to change at page 40, line 27
list next-hop { list next-hop {
key "next-hop"; key "next-hop";
description "List of next hops for the route"; description "List of next hops for the route";
leaf outgoing-interface { leaf outgoing-interface {
type if:interface-ref; type if:interface-ref;
description description
"Name of the outgoing interface."; "Name of the outgoing interface.";
} }
leaf next-hop { leaf next-hop {
type inet:ip-address; type inet:ip-address;
description "Nexthop address."; description "Next hop address.";
} }
} }
} }
leaf metric { leaf metric {
type uint32; type uint32;
description "Metric for this route."; description "Metric for this route.";
} }
leaf level { leaf level {
type level-number; type level-number;
description "Level number for this route."; description "Level number for this route.";
skipping to change at page 44, line 48 skipping to change at page 44, line 48
} }
enum "short-wait" { enum "short-wait" {
description "SHORT_WAIT state"; description "SHORT_WAIT state";
} }
enum "long-wait" { enum "long-wait" {
description "LONG_WAIT state"; description "LONG_WAIT state";
} }
} }
config false; config false;
description description
"Current SPF backoff algorithm state."; "Current SPF back-off algorithm state.";
} }
leaf remaining-time-to-learn { leaf remaining-time-to-learn {
type rt-types:timer-value-milliseconds; type rt-types:timer-value-milliseconds;
units "msec"; units "msec";
config false; config false;
description description
"Remaining time until time-to-learn timer fires."; "Remaining time until time-to-learn timer fires.";
} }
leaf remaining-hold-down { leaf remaining-hold-down {
type rt-types:timer-value-milliseconds; type rt-types:timer-value-milliseconds;
skipping to change at page 47, line 19 skipping to change at page 47, line 19
} }
enum both { enum both {
description "Advertise both metric styles"; description "Advertise both metric styles";
} }
} }
default wide-only; default wide-only;
description description
"Type of metric to be generated: "Type of metric to be generated:
- wide-only means only new metric style - wide-only means only new metric style
is generated, is generated,
- old-only means that only old style metric - old-only means that only old-style metric
is generated, is generated,
- both means that both are advertised. - both means that both are advertised.
This leaf is only affecting IPv4 metrics."; This leaf is only affecting IPv4 metrics.";
} }
description description
"Grouping for global metric style config."; "Grouping for global metric style config.";
} }
grouping default-metric-global-cfg { grouping default-metric-global-cfg {
leaf value { leaf value {
skipping to change at page 57, line 17 skipping to change at page 57, line 17
type rt-types:timer-value-seconds16; type rt-types:timer-value-seconds16;
units "seconds"; units "seconds";
description description
"Interval (in seconds) between LSP "Interval (in seconds) between LSP
retransmissions."; retransmissions.";
} }
leaf passive { leaf passive {
type boolean; type boolean;
default "false"; default "false";
description description
"Indicates whetherthe interface is in passive mode (IS-IS "Indicates whether the interface is in passive mode (IS-IS
not running but network is advertised)."; not running but network is advertised).";
} }
leaf csnp-interval { leaf csnp-interval {
type rt-types:timer-value-seconds16; type rt-types:timer-value-seconds16;
units "seconds"; units "seconds";
default 10; default 10;
description description
"Interval (in seconds) between CSNP messages."; "Interval (in seconds) between CSNP messages.";
} }
container hello-padding { container hello-padding {
skipping to change at page 57, line 43 skipping to change at page 57, line 43
} }
description "IS-IS hello padding configuration."; description "IS-IS hello padding configuration.";
} }
leaf mesh-group-enable { leaf mesh-group-enable {
type mesh-group-state; type mesh-group-state;
description "IS-IS interface mesh-group state"; description "IS-IS interface mesh-group state";
} }
leaf mesh-group { leaf mesh-group {
when "../mesh-group-enable = 'mesh-set'" { when "../mesh-group-enable = 'mesh-set'" {
description description
"Only valid when mesh-group-enable equals meshset"; "Only valid when mesh-group-enable equals mesh-set";
} }
type uint8; type uint8;
description "IS-IS interface mesh-group ID."; description "IS-IS interface mesh-group ID.";
} }
leaf interface-type { leaf interface-type {
type interface-type; type interface-type;
default "broadcast"; default "broadcast";
description description
"Type of adjacency to be established on the interface. This "Type of adjacency to be established on the interface. This
dictates the type of hello messages that are used."; dictates the type of hello messages that are used.";
skipping to change at page 63, line 6 skipping to change at page 63, line 6
leaf max-sequence { leaf max-sequence {
type uint32; type uint32;
description description
"Number of times the system has attempted "Number of times the system has attempted
to exceed the maximum sequence number."; to exceed the maximum sequence number.";
} }
leaf sequence-number-skipped { leaf sequence-number-skipped {
type uint32; type uint32;
description description
"Number of times a sequence number skip has "Number of times a sequence number skip has
occured."; occurred.";
} }
leaf id-len-mismatch { leaf id-len-mismatch {
type uint32; type uint32;
description description
"Number of times a PDU is received with a "Number of times a PDU is received with a
different value for the ID field length different value for the ID field length
than that of the receiving system."; than that of the receiving system.";
} }
leaf partition-changes { leaf partition-changes {
type uint32; type uint32;
skipping to change at page 63, line 46 skipping to change at page 63, line 46
description "System counters grouping."; description "System counters grouping.";
} }
grouping event-counters { grouping event-counters {
container event-counters { container event-counters {
config false; config false;
leaf adjacency-changes { leaf adjacency-changes {
type uint32; type uint32;
description description
"The number of times an adjacency state change has "The number of times an adjacency state change has
occured on this interface."; occurred on this interface.";
} }
leaf adjacency-number { leaf adjacency-number {
type uint32; type uint32;
description description
"The number of adjacencies on this interface."; "The number of adjacencies on this interface.";
} }
leaf init-fails { leaf init-fails {
type uint32; type uint32;
description description
skipping to change at page 64, line 50 skipping to change at page 64, line 50
leaf authentication-fails { leaf authentication-fails {
type uint32; type uint32;
description description
"Number of authentication key failures."; "Number of authentication key failures.";
} }
leaf lan-dis-changes { leaf lan-dis-changes {
type uint32; type uint32;
description description
"The number of times the DIS has changed on this "The number of times the DIS has changed on this
interface at this level. If the interface type is interface at this level. If the interface type is
point-to-point,the count is zero."; point-to-point, the count is zero.";
} }
description "IS-IS interface event counters."; description "IS-IS interface event counters.";
} }
description description
"Grouping for IS-IS interface event counters"; "Grouping for IS-IS interface event counters";
} }
grouping packet-counters { grouping packet-counters {
container packet-counters { container packet-counters {
skipping to change at page 66, line 51 skipping to change at page 66, line 51
type uint32; type uint32;
description "Received unknown PDUs."; description "Received unknown PDUs.";
} }
leaf out { leaf out {
type uint32; type uint32;
description "Sent unknown PDUs."; description "Sent unknown PDUs.";
} }
description "Number of unknown PDUs received/sent."; description "Number of unknown PDUs received/sent.";
} }
description description
"List of packet counter for supported llevels."; "List of packet counter for supported levels.";
} }
description "Packet counters per IS-IS level."; description "Packet counters per IS-IS level.";
} }
description description
"Grouping for per IS-IS Level packet counters."; "Grouping for per IS-IS Level packet counters.";
} }
/* Groupings for various log buffers */ /* Groupings for various log buffers */
grouping spf-log { grouping spf-log {
container spf-log { container spf-log {
skipping to change at page 69, line 49 skipping to change at page 69, line 49
description description
"This container lists the LSP log. "This container lists the LSP log.
Local LSP modifications are also included Local LSP modifications are also included
in the list."; in the list.";
} description "Grouping for LSP log."; } description "Grouping for LSP log.";
} }
/* Groupings for the LSDB description */ /* Groupings for the LSDB description */
/* Unknown TLV and subTLV description */ /* Unknown TLV and sub-TLV description */
grouping tlv { grouping tlv {
description description
"Type-Length-Value (TLV)"; "Type-Length-Value (TLV)";
leaf type { leaf type {
type uint16; type uint16;
description "TLV type."; description "TLV type.";
} }
leaf length { leaf length {
type uint16; type uint16;
description "TLV length (octets)."; description "TLV length (octets).";
skipping to change at page 70, line 34 skipping to change at page 70, line 34
unknown sub-TLVs."; unknown sub-TLVs.";
container unknown-tlvs { container unknown-tlvs {
description "All unknown TLVs."; description "All unknown TLVs.";
list unknown-tlv { list unknown-tlv {
description "Unknown TLV."; description "Unknown TLV.";
uses tlv; uses tlv;
} }
} }
} }
/* TLVs and subTLVs for prefixes */ /* TLVs and sub-TLVs for prefixes */
grouping prefix-reachability-attributes { grouping prefix-reachability-attributes {
description description
"Grouping for extended reachability attributes of an "Grouping for extended reachability attributes of an
IPv4 or IPv6 prefix."; IPv4 or IPv6 prefix.";
leaf external-prefix-flag { leaf external-prefix-flag {
type boolean; type boolean;
description "External prefix flag."; description "External prefix flag.";
} }
leaf readvertisement-flag { leaf readvertisement-flag {
type boolean; type boolean;
description "Readvertisement flag."; description "Re-advertisement flag.";
} }
leaf node-flag { leaf node-flag {
type boolean; type boolean;
description "Node flag."; description "Node flag.";
} }
} }
grouping prefix-ipv4-source-router-id { grouping prefix-ipv4-source-router-id {
description description
skipping to change at page 74, line 23 skipping to change at page 74, line 23
"List of 32-bit tags associated with the IPv4 prefix."; "List of 32-bit tags associated with the IPv4 prefix.";
} }
leaf-list tag64 { leaf-list tag64 {
type uint64; type uint64;
description description
"List of 32-bit tags associated with the IPv4 prefix."; "List of 32-bit tags associated with the IPv4 prefix.";
} }
uses prefix-attributes-extension; uses prefix-attributes-extension;
} }
/* TLVs and subTLVs for neighbors */ /* TLVs and sub-TLVs for neighbors */
grouping neighbor-link-attributes { grouping neighbor-link-attributes {
description description
"Grouping for link attributes as defined "Grouping for link attributes as defined
in RFC5029"; in RFC5029";
leaf link-attributes-flags { leaf link-attributes-flags {
type uint16; type uint16;
description description
"Flags for the link attributes"; "Flags for the link attributes";
} }
skipping to change at page 82, line 46 skipping to change at page 82, line 46
description "IS-IS error metric supported"; description "IS-IS error metric supported";
} }
description "IS-IS error metric container"; description "IS-IS error metric container";
} }
description "Instance of a particular adjacency description "Instance of a particular adjacency
as defined in ISO10589."; as defined in ISO10589.";
} }
} }
} }
/* Top level TLVs */ /* Top-level TLVs */
grouping tlv132-ipv4-addresses { grouping tlv132-ipv4-addresses {
leaf-list ipv4-addresses { leaf-list ipv4-addresses {
type inet:ipv4-address; type inet:ipv4-address;
description description
"List of IPv4 addresses of the IS-IS node - IS-IS "List of IPv4 addresses of the IS-IS node - IS-IS
reference is TLV 132."; reference is TLV 132.";
} }
description "Grouping for TLV132."; description "Grouping for TLV132.";
} }
skipping to change at page 87, line 32 skipping to change at page 87, line 32
"SRLG attribute of a link."; "SRLG attribute of a link.";
} }
description description
"List of links with SRLGs"; "List of links with SRLGs";
} }
} }
/* Grouping for LSDB description */ /* Grouping for LSDB description */
grouping lsp-entry { grouping lsp-entry {
description "IS-IS LSP database entry groupting"; description "IS-IS LSP database entry grouping";
leaf decoded-completed { leaf decoded-completed {
type boolean; type boolean;
description "IS-IS LSP body fully decoded."; description "IS-IS LSP body fully decoded.";
} }
leaf raw-data { leaf raw-data {
type yang:hex-string; type yang:hex-string;
description description
"The hexadecial representation of the complete LSP in "The hexadecimal representation of the complete LSP in
network-byte order (NBO) as received or originated."; network-byte order (NBO) as received or originated.";
} }
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID of the LSP"; description "LSP ID of the LSP";
} }
leaf checksum { leaf checksum {
type uint16; type uint16;
description "LSP checksum"; description "LSP checksum";
} }
skipping to change at page 90, line 51 skipping to change at page 90, line 51
type uint16 { type uint16 {
range "0 .. 4095"; range "0 .. 4095";
} }
description "Multi-topology (MT) identifier"; description "Multi-topology (MT) identifier";
} }
uses prefix-ipv4-extended; uses prefix-ipv4-extended;
uses unknown-tlvs; uses unknown-tlvs;
description "List of extended prefixes."; description "List of extended prefixes.";
} }
description description
"IPv4 multi-topolgy (MT) extended reachability "IPv4 multi-topology (MT) extended reachability
information container - IS-IS reference is TLV 235."; information container - IS-IS reference is TLV 235.";
} }
container mt-ipv6-reachability { container mt-ipv6-reachability {
list prefixes { list prefixes {
leaf MT-ID { leaf MT-ID {
type uint16 { type uint16 {
range "0 .. 4095"; range "0 .. 4095";
} }
description "Multi-topology (MT) identifier"; description "Multi-topology (MT) identifier";
} }
uses prefix-ipv6-extended; uses prefix-ipv6-extended;
uses unknown-tlvs; uses unknown-tlvs;
description "List of IPv6 extended prefixes."; description "List of IPv6 extended prefixes.";
} }
description description
"IPv6 multi-topolgy (MT) extended reachability "IPv6 multi-topology (MT) extended reachability
information container - IS-IS reference is TLV 237."; information container - IS-IS reference is TLV 237.";
} }
container ipv6-reachability { container ipv6-reachability {
list prefixes { list prefixes {
uses prefix-ipv6-extended; uses prefix-ipv6-extended;
uses unknown-tlvs; uses unknown-tlvs;
description "List of IPv6 prefixes."; description "List of IPv6 prefixes.";
} }
description description
skipping to change at page 97, line 10 skipping to change at page 97, line 10
} }
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID"; description "LSP ID";
} }
description description
"This notification is sent when we attempt to propagate "This notification is sent when we attempt to propagate
an LSP that is larger than the dataLinkBlockSize for the an LSP that is larger than the dataLinkBlockSize for the
circuit. The notification generation must be throttled circuit. The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification if-state-change { notification if-state-change {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf state { leaf state {
type if-state-type; type if-state-type;
description "Interface state."; description "Interface state.";
skipping to change at page 98, line 16 skipping to change at page 98, line 16
description "Size of the ID length in the received PDU"; description "Size of the ID length in the received PDU";
} }
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when we receive a PDU "This notification is sent when we receive a PDU
with a different value for the system-id length. with a different value for the system-id length.
The notification generation must be throttled The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification max-area-addresses-mismatch { notification max-area-addresses-mismatch {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf max-area-addresses { leaf max-area-addresses {
type uint8; type uint8;
description "Received number of supported areas"; description "Received number of supported areas";
} }
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when we receive a PDU "This notification is sent when we receive a PDU
with a different value for the Maximum Area Addresses. with a different value for the Maximum Area Addresses.
The notification generation must be throttled The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification own-lsp-purge { notification own-lsp-purge {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID"; description "LSP ID";
} }
skipping to change at page 99, line 14 skipping to change at page 99, line 14
notification sequence-number-skipped { notification sequence-number-skipped {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID"; description "LSP ID";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
PDU with its own system-id and different contents. The PDU with its own system-id and different contents. The
system has to reoriginate the LSP with a higher sequence system has to originate the LSP with a higher sequence
number."; number.";
} }
notification authentication-type-failure { notification authentication-type-failure {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
PDU with the wrong authentication type field. PDU with the wrong authentication type field.
The notification generation must be throttled The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification authentication-failure { notification authentication-failure {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when the system receives "This notification is sent when the system receives
a PDU with the wrong authentication information. a PDU with the wrong authentication information.
The notification generation must be throttled with The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification version-skew { notification version-skew {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf protocol-version { leaf protocol-version {
type uint8; type uint8;
description "Protocol version received in the PDU."; description "Protocol version received in the PDU.";
} }
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
PDU with a different protocol version number. PDU with a different protocol version number.
The notification generation must be throttled The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification area-mismatch { notification area-mismatch {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
Hello PDU from an IS that does not share any area Hello PDU from an IS that does not share any area
address. The notification generation must be throttled address. The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification rejected-adjacency { notification rejected-adjacency {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description description
"Received raw PDU."; "Received raw PDU.";
skipping to change at page 101, line 8 skipping to change at page 101, line 8
description description
"The system may provide a reason to reject the "The system may provide a reason to reject the
adjacency. If the reason is not available, adjacency. If the reason is not available,
an empty string will be returned. an empty string will be returned.
The expected format is a single line text."; The expected format is a single line text.";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
Hello PDU from an IS but does not establish an adjacency Hello PDU from an IS but does not establish an adjacency
for some reason. The notification generation must be for some reason. The notification generation must be
throttled with at least 5 seconds betweeen successive throttled with at least 5 seconds between successive
notifications."; notifications.";
} }
notification protocols-supported-mismatch { notification protocols-supported-mismatch {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf raw-pdu { leaf raw-pdu {
type binary; type binary;
description "Received raw PDU."; description "Received raw PDU.";
} }
leaf-list protocols { leaf-list protocols {
type uint8; type uint8;
description description
"List of protocols supported by the remote system."; "List of protocols supported by the remote system.";
} }
description description
"This notification is sent when the system receives a "This notification is sent when the system receives a
non-pseudonode LSP that has no matching protocols non-pseudonode LSP that has no matching protocols
supported. The notification generation must be throttled supported. The notification generation must be throttled
with at least 5 seconds betweeen successive with at least 5 seconds between successive
notifications."; notifications.";
} }
notification lsp-error-detected { notification lsp-error-detected {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID."; description "LSP ID.";
} }
skipping to change at page 102, line 14 skipping to change at page 102, line 14
leaf tlv-type { leaf tlv-type {
type uint8; type uint8;
description description
"If the problem is a malformed TLV, the tlv-type is set "If the problem is a malformed TLV, the tlv-type is set
to the type value of the suspicious TLV. Otherwise, to the type value of the suspicious TLV. Otherwise,
this leaf is not present."; this leaf is not present.";
} }
description description
"This notification is sent when the system receives an "This notification is sent when the system receives an
LSP with a parse error. The notification generation must LSP with a parse error. The notification generation must
be throttled with at least 5 seconds betweeen successive be throttled with at least 5 seconds between successive
notifications."; notifications.";
} }
notification adjacency-state-change { notification adjacency-state-change {
uses notification-instance-hdr; uses notification-instance-hdr;
uses notification-interface-hdr; uses notification-interface-hdr;
leaf neighbor { leaf neighbor {
type string { type string {
length "1..255"; length "1..255";
} }
skipping to change at page 103, line 35 skipping to change at page 103, line 35
description "Timestamp when the LSP was received."; description "Timestamp when the LSP was received.";
} }
leaf neighbor-system-id { leaf neighbor-system-id {
type system-id; type system-id;
description "Neighbor system-id of LSP sender"; description "Neighbor system-id of LSP sender";
} }
description description
"This notification is sent when an LSP is received. "This notification is sent when an LSP is received.
The notification generation must be throttled with at The notification generation must be throttled with at
least 5 seconds betweeen successive notifications."; least 5 seconds between successive notifications.";
} }
notification lsp-generation { notification lsp-generation {
uses notification-instance-hdr; uses notification-instance-hdr;
leaf lsp-id { leaf lsp-id {
type lsp-id; type lsp-id;
description "LSP ID"; description "LSP ID";
} }
leaf sequence { leaf sequence {
skipping to change at page 104, line 9 skipping to change at page 104, line 9
} }
leaf send-timestamp { leaf send-timestamp {
type yang:timestamp; type yang:timestamp;
description "Timestamp when our LSP was regenerated."; description "Timestamp when our LSP was regenerated.";
} }
description description
"This notification is sent when an LSP is regenerated. "This notification is sent when an LSP is regenerated.
The notification generation must be throttled with at The notification generation must be throttled with at
least 5 seconds betweeen successive notifications."; least 5 seconds between successive notifications.";
} }
} }
<CODE ENDS> <CODE ENDS>
7. Security Considerations 7. Security Considerations
The YANG module specified in this document defines a schema for data The YANG module specified in this document defines a schema for data
that is designed to be accessed via network management protocols such that is designed to be accessed via network management protocols such
as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer
is the secure transport layer, and the mandatory-to-implement secure is the secure transport layer, and the mandatory-to-implement secure
skipping to change at page 104, line 52 skipping to change at page 104, line 52
sensitive or vulnerable in some network environments. It is thus sensitive or vulnerable in some network environments. It is thus
important to control read access (e.g., via get, get-config, or important to control read access (e.g., via get, get-config, or
notification) to these data nodes. The exposure of the Link State notification) to these data nodes. The exposure of the Link State
Database (LSDB) will expose the detailed topology of the network Database (LSDB) will expose the detailed topology of the network
including authentication parameters. Implementations MUST NOT including authentication parameters. Implementations MUST NOT
provide a configured authentication key in a clear text format in provide a configured authentication key in a clear text format in
response to any request (e.g., via get, get-config). response to any request (e.g., via get, get-config).
For IS-IS authentication, configuration is supported via the For IS-IS authentication, configuration is supported via the
specification of key-chain [RFC8177] or the direction specification specification of key-chain [RFC8177] or the direction specification
of key and authentication algorithm. Hence, authentification of key and authentication algorithm. Hence, authentication
configuration using the "auth-table-trailer" case in the configuration using the "auth-table-trailer" case in the
"authentication" container inherits the security considerations of "authentication" container inherits the security considerations of
[RFC8177]. This includes the considerations with respect to the [RFC8177]. This includes the considerations with respect to the
local storage and handling of authentication keys. local storage and handling of authentication keys.
Some of the RPC operations in this YANG module may be considered Some of the RPC operations in this YANG module may be considered
sensitive or vulnerable in some network environments. It is thus sensitive or vulnerable in some network environments. It is thus
important to control access to these operations. The OSPF YANG important to control access to these operations. The OSPF YANG
module support the "clear-adjacency" and "clear-database" RPCs. If module support the "clear-adjacency" and "clear-database" RPCs. If
access too either of these is compromised, they can result in access to either of these is compromised, they can result in
temporary network outages be employed to mount DoS attacks. temporary network outages be employed to mount DoS attacks.
8. Contributors 8. Contributors
Authors would like to thank Kiran Agrahara Sreenivasa, Dean Authors would like to thank Kiran Agrahara Sreenivasa, Dean
Bogdanovic, Yingzhen Qu, Yi Yang, Jeff Tanstura for their major Bogdanovic, Yingzhen Qu, Yi Yang, Jeff Tanstura for their major
contributions to the draft. contributions to the draft.
9. IANA Considerations 9. IANA Considerations
skipping to change at page 106, line 12 skipping to change at page 106, line 12
o Added some RFC references in the YANG model. o Added some RFC references in the YANG model.
o Leaf default-metric of container prefix-ipv4-std is now a o Leaf default-metric of container prefix-ipv4-std is now a
container. container.
o Changed the description of the authentication and removed the o Changed the description of the authentication and removed the
reference to MD5 as a possible way to hide the password. reference to MD5 as a possible way to hide the password.
o Changed leaf type for authentication type within o Changed leaf type for authentication type within
tlv10-authentication container.Moved from string to tlv10-authentication container. Moved from string to
keychain:crypto-algorithm identity. keychain:crypto-algorithm identity.
o Some admin strings are now limited to a range of 1..255. o Some admin strings are now limited to a range of 1..255.
o Hostname string in hostname DB is limited to 255 as per RFC5301. o Hostname string in hostname DB is limited to 255 as per RFC5301.
o In FRR stats, "prefix" is now encoded as inet:ip-prefix rather o In FRR stats, "prefix" is now encoded as inet:ip-prefix rather
than a string. "alternate" is now encoded as ip-address. than a string. "alternate" is now encoded as ip-address.
10.2. From version -28 to version -29 10.2. From version -28 to version -29
o Fixed area-address type pattern. The authorized number of bytes o Fixed area-address type pattern. The authorized number of bytes
was wrong. was wrong.
10.3. From version -27 to version -28 10.3. From version -27 to version -28
o Fixed non accurate description of level-type leaf. o Fixed inaccurate description of level-type leaf.
10.4. From version -26 to version -27 10.4. From version -26 to version -27
o Fixed XPATH to switching-capability leaf in "when" statement of o Fixed XPATH to switching-capability leaf in "when" statement of
psc-specific and tdm-specific containers. psc-specific and tdm-specific containers.
10.5. From version -25 to version -26 10.5. From version -25 to version -26
o Modify BFD reference descriptions. o Modify BFD reference descriptions.
skipping to change at page 107, line 30 skipping to change at page 107, line 30
associated typedef. associated typedef.
o Revised some groupings and their names (alignment with OSPF). o Revised some groupings and their names (alignment with OSPF).
o Some description alignment with OSPF. o Some description alignment with OSPF.
o auto-cost container alignment with OSPF. o auto-cost container alignment with OSPF.
o MT-ID leaf in database description renamed (lower-case) mt-id. o MT-ID leaf in database description renamed (lower-case) mt-id.
o In lsp-log grouping, leaf change is renamed reason to align with o In the lsp-log grouping, leaf change is renamed reason to align
OSPF. with OSPF.
o Added some link attributes (GMPLS, TE, extended TE, SRLGs) in the o Added some link attributes (GMPLS, TE, extended TE, SRLGs) in the
LSDB. LSDB.
o Added extended-system-id typedef which contains the systemid plus o Added extended-system-id typedef which contains the system-id plus
the pseudonode number. the pseudonode number.
o Add support of POI Purge Originator Identification. o Add support of POI Purge Originator Identification.
10.7. From version -22 to version -24 10.7. From version -22 to version -24
o Fix revision date of the module. o Fix revision date of the module.
10.8. From version -21 to version -22 10.8. From version -21 to version -22
skipping to change at page 110, line 21 skipping to change at page 110, line 21
o Aligned LFA if per level cfg. o Aligned LFA if per level cfg.
o Align to draft-ietf-netmod-routing-cfg-23. o Align to draft-ietf-netmod-routing-cfg-23.
10.20. From version -07 to version -08 10.20. From version -07 to version -08
o Remove selector from system-id type. o Remove selector from system-id type.
o Add some default values. o Add some default values.
o Moved lists to containers+groupings for per level configuration. o Moved lists to containers and groupings for per level
configuration.
o remove routing-instance as per core routing model v21. o Remove routing-instance as per core routing model v21.
o added BFD leaf (no more BFD protocol model). o added BFD leaf (no more BFD protocol model).
o changed keychain module reference. o changed keychain module reference.
10.21. From version -05 to version -07 10.21. From version -05 to version -07
o Move Overload config from list to container. o Move Overload config from list to container.
o Move Overload-max-metric config from list to container. o Move Overload-max-metric config from list to container.
skipping to change at page 111, line 15 skipping to change at page 111, line 15
10.23. From version -02 to version -03 10.23. From version -02 to version -03
o Reviewed config and op state groupings. o Reviewed config and op state groupings.
o Add default value to lfa candidate-disabled. o Add default value to lfa candidate-disabled.
o Add enable leaf to isis container to reflect admin state. o Add enable leaf to isis container to reflect admin state.
o Move to VRF centric only. o Move to VRF centric only.
o Segment routing is part os a separate module. o Segment routing is part of a separate module.
10.24. From version -01 to version -02 10.24. From version -01 to version -02
o Adding IPFRR. o Adding IPFRR.
o Adding igp-ldp-sync. o Adding igp-ldp-sync.
o Adding segment-routing. o Adding segment-routing.
o Adding instance reference to operational states. o Adding instance reference to operational states.
skipping to change at page 112, line 36 skipping to change at page 112, line 36
11.1. Normative References 11.1. Normative References
[I-D.ietf-bfd-yang] [I-D.ietf-bfd-yang]
Rahman, R., Zheng, L., Jethanandani, M., Networks, J., and Rahman, R., Zheng, L., Jethanandani, M., Networks, J., and
G. Mirsky, "YANG Data Model for Bidirectional Forwarding G. Mirsky, "YANG Data Model for Bidirectional Forwarding
Detection (BFD)", draft-ietf-bfd-yang-17 (work in Detection (BFD)", draft-ietf-bfd-yang-17 (work in
progress), August 2018. progress), August 2018.
[ISO-10589] [ISO-10589]
ISO, , "Intermediate System to Intermediate System intra- ISO, , "Intermediate System to Intermediate System intra-
domain routeing information exchange protocol for use in domain routing information exchange protocol for use in
conjunction with the protocol for providing the conjunction with the protocol for providing the
connectionless-mode network service (ISO 8473)", connectionless-mode network service (ISO 8473)",
International Standard 10589: 2002, Second Edition, 2002. International Standard 10589: 2002, Second Edition, 2002.
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, DOI 10.17487/RFC1195, dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <https://www.rfc-editor.org/info/rfc1195>. December 1990, <https://www.rfc-editor.org/info/rfc1195>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
 End of changes. 72 change blocks. 
75 lines changed or deleted 77 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/