draft-ietf-core-sid-02.txt   draft-ietf-core-sid-03.txt 
Internet Engineering Task Force M. Veillette, Ed. Internet Engineering Task Force M. Veillette, Ed.
Internet-Draft Trilliant Networks Inc. Internet-Draft Trilliant Networks Inc.
Intended status: Standards Track A. Pelov, Ed. Intended status: Standards Track A. Pelov, Ed.
Expires: May 3, 2018 Acklio Expires: June 4, 2018 Acklio
October 30, 2017 December 01, 2017
YANG Schema Item iDentifier (SID) YANG Schema Item iDentifier (SID)
draft-ietf-core-sid-02 draft-ietf-core-sid-03
Abstract Abstract
YANG Schema Item iDentifiers (SID) are globally unique 64-bit YANG Schema Item iDentifiers (SID) are globally unique 64-bit
unsigned numbers used to identify YANG items. This document defines unsigned numbers used to identify YANG items. This document defines
the semantics, the registration, and assignment processes of SIDs. the semantics, the registration, and assignment processes of SIDs.
To enable the implementation of these processes, this document also To enable the implementation of these processes, this document also
defines a file format used to persist and publish assigned SIDs. defines a file format used to persist and publish assigned SIDs.
Status of This Memo Status of This Memo
skipping to change at page 1, line 35 skipping to change at page 1, line 35
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on May 3, 2018. This Internet-Draft will expire on June 4, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 13 skipping to change at page 2, line 13
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 . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology and Notation . . . . . . . . . . . . . . . . . . 3 2. Terminology and Notation . . . . . . . . . . . . . . . . . . 3
3. ".sid" file lifecycle . . . . . . . . . . . . . . . . . . . . 4 3. ".sid" file lifecycle . . . . . . . . . . . . . . . . . . . . 4
4. ".sid" file format . . . . . . . . . . . . . . . . . . . . . 7 4. ".sid" file format . . . . . . . . . . . . . . . . . . . . . 7
5. Security Considerations . . . . . . . . . . . . . . . . . . . 9 5. Security Considerations . . . . . . . . . . . . . . . . . . . 11
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
6.1. "SID mega-range" registry . . . . . . . . . . . . . . . . 10 6.1. "SID mega-range" registry . . . . . . . . . . . . . . . . 11
6.1.1. IANA SID Mega-Range Registry . . . . . . . . . . . . 10 6.1.1. IANA SID Mega-Range Registry . . . . . . . . . . . . 12
6.1.2. IANA "RFC SID range assignment" sub-registries . . . 11 6.1.2. IANA "RFC SID range assignment" sub-registries . . . 13
6.2. "YANG module assignment" registry . . . . . . . . . . . . 12 6.2. "YANG module assignment" registry . . . . . . . . . . . . 14
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 13 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 14
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 14
8.1. Normative References . . . . . . . . . . . . . . . . . . 13 8.1. Normative References . . . . . . . . . . . . . . . . . . 14
8.2. Informative References . . . . . . . . . . . . . . . . . 13 8.2. Informative References . . . . . . . . . . . . . . . . . 15
Appendix A. ".sid" file example . . . . . . . . . . . . . . . . 14 Appendix A. ".sid" file example . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 25
1. Introduction 1. Introduction
Some of the items defined in YANG [RFC7950] require the use of a Some of the items defined in YANG [RFC7950] require the use of a
unique identifier. In both NETCONF [RFC6241] and RESTCONF [RFC8040], unique identifier. In both NETCONF [RFC6241] and RESTCONF [RFC8040],
these identifiers are implemented using names. To allow the these identifiers are implemented using names. To allow the
implementation of data models defined in YANG in constrained devices implementation of data models defined in YANG in constrained devices
and constrained networks, a more compact method to identify YANG and constrained networks, a more compact method to identify YANG
items is required. This compact identifier, called SID, is encoded items is required. This compact identifier, called SID, is encoded
using a 64-bit unsigned integer. The following items are identified using a 64-bit unsigned integer. The following items are identified
skipping to change at page 3, line 18 skipping to change at page 3, line 18
SIDs are globally unique numbers, a registration system is used in SIDs are globally unique numbers, a registration system is used in
order to guarantee their uniqueness. SIDs are registered in blocks order to guarantee their uniqueness. SIDs are registered in blocks
called "SID ranges". called "SID ranges".
Assignment of SIDs to YANG items can be automated, the recommended Assignment of SIDs to YANG items can be automated, the recommended
process to assign SIDs is as follows: process to assign SIDs is as follows:
1. A tool extracts the different items defined for a specific YANG 1. A tool extracts the different items defined for a specific YANG
module. module.
2. The list of items is ordered in alphabetical order by type and 2. The list of items is sorted in alphabetical order, 'namespace' in
label. Valid types and label formats are described within the descending order, 'identifier' in ascending order. The
'ietf-sid-file' YANG module defined in Section 4. 'namespace' and 'identifier' formats are described in the YANG
module 'ietf-sid-file' defined in Section 4.
3. SIDs are assigned sequentially from the entry point up to the 3. SIDs are assigned sequentially from the entry point up to the
size of the registered SID range. This approach is recommended size of the registered SID range. This approach is recommended
to minimize the serialization overhead, especially when delta to minimize the serialization overhead, especially when delta
encoding is implemented. encoding is implemented.
4. If the number of items exceeds the SID range(s) allocated to a 4. If the number of items exceeds the SID range(s) allocated to a
YANG module, an extra range is added for subsequent assignments. YANG module, an extra range is added for subsequent assignments.
SIDs are assigned permanently, items introduced by a new revision of SIDs are assigned permanently, items introduced by a new revision of
skipping to change at page 4, line 29 skipping to change at page 4, line 29
reference SID is defined for each context for which deltas are reference SID is defined for each context for which deltas are
used. used.
o item: A schema node, an identity, a module, a submodule or a o item: A schema node, an identity, a module, a submodule or a
feature defined using the YANG modeling language. feature defined using the YANG modeling language.
o path: A path is a string that identifies a schema node within the o path: A path is a string that identifies a schema node within the
schema tree. A path consists of the list of schema node schema tree. A path consists of the list of schema node
identifier(s) separated by slashes ("/"). Schema node identifier(s) separated by slashes ("/"). Schema node
identifier(s) are always listed from the top-level schema node up identifier(s) are always listed from the top-level schema node up
to the targeted schema node. (e.g. "/system-state/clock/current- to the targeted schema node. (e.g. "/ietf-system:system-
datetime") state/clock/current-datetime")
o YANG Schema Item iDentifier (SID): Unsigned integer used to o YANG Schema Item iDentifier (SID): Unsigned integer used to
identify different YANG items. identify different YANG items.
3. ".sid" file lifecycle 3. ".sid" file lifecycle
YANG is a language designed to model data sent between clients and YANG is a language designed to model data accessed using one of the
servers using one of the compatible protocol (e.g. NETCONF compatible protocols (e.g. NETCONF [RFC6241], RESCONF [RFC8040] and
[RFC6241], RESCONF [RFC8040] and CoMI [I-D.ietf-core-comi]). A YANG CoMI [I-D.ietf-core-comi]). A YANG module defines hierarchies of
module defines hierarchies of data, including configuration, state data, including configuration, state data, RPCs, actions and
data, RPCs, actions and notifications. notifications.
YANG modules are not necessary created in the context of constrained YANG modules are not necessary created in the context of constrained
applications. YANG modules can be implemented using NETCONF applications. YANG modules can be implemented using NETCONF
[RFC6241] or RESTCONF [RFC8040] without the need to assign SIDs. [RFC6241] or RESTCONF [RFC8040] without the need to assign SIDs.
As needed, authors of YANG modules can assign SIDs to their YANG As needed, authors of YANG modules can assign SIDs to their YANG
modules. This process starts by the registration of a SID range. modules. This process starts by the registration of a SID range.
Once a SID range is registered, the owner of this range assigns sub- Once a SID range is registered, the owner of this range assigns sub-
ranges to each YANG module in order to generate the associated ".sid" ranges to each YANG module in order to generate the associated ".sid"
files. Generation of ".sid" files SHOULD be performed using an files. Generation of ".sid" files SHOULD be performed using an
skipping to change at page 6, line 10 skipping to change at page 6, line 10
| no | | no |
+---------------------+ +---------------------+
| |
[DONE] [DONE]
Each time a YANG module or one of its imported module(s) or included Each time a YANG module or one of its imported module(s) or included
sub-module(s) is updated, the ".sid" file MAY need to be updated. sub-module(s) is updated, the ".sid" file MAY need to be updated.
This update SHOULD also be performed using an automated tool. This update SHOULD also be performed using an automated tool.
If a new revision requires more SIDs than initially allocated, a new If a new revision requires more SIDs than initially allocated, a new
SID range MUST be added to the "assignment-ranges" as defined in the SID range MUST be added to the 'assignment-ranges'. These extra SIDs
".sid" file header. These extra SIDs are used for subsequent are used for subsequent assignements.
assignements.
The following activity diagram summarizes the update of a YANG module The following activity diagram summarizes the update of a YANG module
and its associated .sid file. and its associated .sid file.
+---------------+ +---------------+
O | Update of the | O | Update of the |
-|- ->| YANG module | -|- ->| YANG module |
/ \ | or include(s) | / \ | or include(s) |
| or import(s) | | or import(s) |
+---------------+ +---------------+
| |
V V
/-------------\ +----------------+ /-------------\
/ More SIDs \ yes | Extra sub-range| / New items \ yes
\ required ? /---->| assignment | \ created ? /------+
\-------------/ +----------------+ \-------------/ |
| no | | no V
+---------------------+ | /-------------\ +----------------+
| | / SID range \ yes | Extra sub-range|
V | \ exhausted ? /---->| assignment |
+---------------+ | \-------------/ +----------------+
| .sid file | | | no |
| update based | | +---------------------+
| on previous | | |
| .sid file | | V
+---------------+ | +---------------+
| | | .sid file |
V | | update based |
/-------------\ +---------------+ | | on previous |
/ Publicly \ yes | YANG module | | | .sid file |
\ available ? /---->| registration | | +---------------+
\-------------/ +---------------+ | |
| no | | V
+---------------------+ | /-------------\ +---------------+
| | / Publicly \ yes | YANG module |
[DONE] | \ available ? /---->| registration |
| \-------------/ +---------------+
| | no |
+--------------+---------------------+
|
[DONE]
4. ".sid" file format 4. ".sid" file format
".sid" files are used to persist and publish SIDs assigned to the ".sid" files are used to persist and publish SIDs assigned to the
different YANG items of a specific YANG module. The following YANG different YANG items of a specific YANG module. The following YANG
module defined the structure of this file, encoding is performed module defined the structure of this file, encoding is performed
using the rules defined in [RFC7951]. using the rules defined in [RFC7951].
<CODE BEGINS> file "ietf-sid-file@2015-12-16.yang" <CODE BEGINS> file "ietf-sid-file@2017-11-26.yang"
module ietf-sid-file { module ietf-sid-file {
namespace "urn:ietf:params:xml:ns:yang:ietf-sid-file"; namespace "urn:ietf:params:xml:ns:yang:ietf-sid-file";
prefix sid; prefix sid;
import ietf-yang-types {
prefix yang;
}
import ietf-comi {
prefix comi;
}
organization organization
"IETF Core Working Group"; "IETF Core Working Group";
contact contact
"Michel Veillette "Michel Veillette
<mailto:michel.veillette@trilliantinc.com> <mailto:michel.veillette@trilliantinc.com>
Andy Bierman
<mailto:andy@yumaworks.com>
Alexander Pelov Alexander Pelov
<mailto:a@ackl.io>"; <mailto:a@ackl.io>";
description description
"This module define the structure of the .sid files. "This module defines the structure of the .sid files.
.sid files contains the identifiers (SIDs) assigned
to the different items defined in a YANG module.";
revision 2015-12-16 { Each .sid file contains the mapping between the different
string identifiers defined by a YANG module and a
corresponding numeric value called SID.";
revision 2017-11-26 {
description description
"Initial revision."; "Initial revision.";
reference reference
"RFC XXXX"; "[I-D.ietf-core-sid] YANG Schema Item iDentifier (SID)";
// RFC Ed.: replace XXXX with RFC number assigned to
// draft-ietf-core-yang-cbor and remove this note
} }
typedef yang-identifier { typedef revision-identifier {
type string { type string {
length "1..max"; pattern '\d{4}-\d{2}-\d{2}';
pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*';
pattern '.|..|[^xX].*|.[^mM].*|..[^lL].*';
} }
description description
"A YANG identifier string as defined by the 'identifier' "Represents a date in YYYY-MM-DD format.";
rule in Section 12 of RFC 6020.";
} }
typedef revision-identifier { typedef schema-node-path {
type string { type string {
pattern '\d{4}-\d{2}-\d{2}'; pattern
'/[a-zA-Z_][a-zA-Z0-9\-_.]*:[a-zA-Z_][a-zA-Z0-9\-_.]*' +
'(/[a-zA-Z_][a-zA-Z0-9\-_.]*(:[a-zA-Z_][a-zA-Z0-9\-_.]*)?)*';
} }
description description
"Represents a date in YYYY-MM-DD format."; "Identifies a schema-node path string for use in the
SID registry. This string format follows the rules
for an instance-identifier, as defined in RFC 7959,
except that no predicates are allowed.
This format is intended to support the YANG 1.1 ABNF
for a schema node identifier, except module names
are used instead of prefixes, as specified in RFC 7951.";
reference
"RFC 7950, The YANG 1.1 Data Modeling Language;
Section 6.5: Schema Node Identifier;
RFC 7951, JSON Encoding of YANG Data;
Section 6.11: The instance-identifier type";
} }
leaf module-name { leaf module-name {
type yang-identifier; type yang:yang-identifier;
description description
"Name of the module associated with this .sid file."; "Name of the YANG module associated with this .sid file.";
} }
leaf module-revision { leaf module-revision {
type revision-identifier; type revision-identifier;
description description
"Revision of the module associated with this .sid file. "Revision of the YANG module associated with this .sid file.
This leaf is not present if no revision statement is This leaf is not present if no revision statement is
defined in the YANG module."; defined in the YANG module.";
} }
list assigment-ranges { list assigment-ranges {
key "entry-point"; key "entry-point";
description description
"Range(s) of SIDs available for assignment to the "SID range(s) allocated to the YANG module identified by
different items defined by the associated module."; 'module-name' and 'module-revision'.";
leaf entry-point { leaf entry-point {
type uint64; type comi:sid;
mandatory true; mandatory true;
description description
"Lowest SID available for assignment."; "Lowest SID available for assignment.";
} }
leaf size { leaf size {
type uint16; type uint64;
mandatory true; mandatory true;
description description
"Number of SIDs available for assignment."; "Number of SIDs available for assignment.";
} }
} }
list items { list items {
key "type label"; key "namespace identifier";
description description
"List of items defined by the associated YANG module."; "Each entry within this list defined the mapping between
a YANG item string identifier and a SID. This list MUST
include a mapping entry for each YANG item defined by
the YANG module identified by 'module-name' and
'module-revision'.";
leaf type { leaf namespace {
type string { type enumeration {
pattern 'Module|Submodule|feature|' + enum module {
'identity$|node$|notification$|rpc$|action$'; value 0;
description
"All module and submodule names share the same
global module identifier namespace.";
}
enum identity {
value 1;
description
"All identity names defined in a module and its
submodules share the same identity identifier
namespace.";
}
enum feature {
value 2;
description
"All feature names defined in a module and its
submodules share the same feature identifier
namespace.";
}
enum data {
value 3;
description
"The namespace for all data nodes, as defined in YANG.";
}
} }
mandatory true;
description description
"Item type assigned, this field can be set to: "Namespace of the YANG item for this mapping entry.";
- 'Module'
- 'Submodule'
- 'feature'
- 'identity'
- 'node'
- 'notification'
- 'rpc'
- 'action'";
} }
leaf identifier {
leaf label { type union {
type string; type yang:yang-identifier;
mandatory true; type schema-node-path;
}
description description
"Label associated to this item, can be set to: "String identifier of the YANG item for this mapping entry.
- a module name
- a submodule name If the corresponding 'namespace' field is 'module',
- a feature name 'feature', or 'identity', then this field MUST
- a base identity encoded as contain a valid YANG identifier string.
'/<base identity name>'
- an identity encoded as If the corresponding 'namespace' field is 'data',
'/<base identity name>/<identity name>' then this field MUST contain a valid schema node
- a data node path"; path.";
} }
leaf sid { leaf sid {
type uint64; type comi:sid;
mandatory true; mandatory true;
description "Identifier assigned to this YANG item."; description
"SID assigned to the YANG item for this mapping entry.";
} }
} }
} }
<CODE ENDS> <CODE ENDS>
5. Security Considerations 5. Security Considerations
The security considerations of [RFC7049] and [RFC7950] apply. The security considerations of [RFC7049] and [RFC7950] apply.
This document defines a new type of identifier used to encode data This document defines a new type of identifier used to encode data
skipping to change at page 11, line 9 skipping to change at page 12, line 41
The first million SIDs assigned to IANA is sub-divided as follow: The first million SIDs assigned to IANA is sub-divided as follow:
o The range of 0 to 999 is reserved for future extensions. The IANA o The range of 0 to 999 is reserved for future extensions. The IANA
policy for this range is "IETF review" [RFC5226]. policy for this range is "IETF review" [RFC5226].
o The range of 1000 to 59,999 is reserved for YANG modules defined o The range of 1000 to 59,999 is reserved for YANG modules defined
in RFCs. The IANA policy for future additions to this sub- in RFCs. The IANA policy for future additions to this sub-
registry is "RFC required" [RFC5226]. Allocation within this registry is "RFC required" [RFC5226]. Allocation within this
range requires publishing of the associated ".yang" and ".sid" range requires publishing of the associated ".yang" and ".sid"
files in the YANG module registry. files in the YANG module registry. The allocation within this
range is done prior to the RFC publication but should not be done
prior to the working group adoption.
o The range of 60,000 to 99,999 is reserved for experimental YANG o The range of 60,000 to 99,999 is reserved for experimental YANG
modules. This range MUST NOT be used in operational deployments modules. This range MUST NOT be used in operational deployments
since these SIDs are not globally unique which limit their since these SIDs are not globally unique which limit their
interoperability. The IANA policy for this range is "Experimental interoperability. The IANA policy for this range is "Experimental
use" [RFC5226]. use" [RFC5226].
o The range of 100,000 to 999,999 is reserved for standardized YANG o The range of 100,000 to 999,999 is reserved for standardized YANG
modules. The IANA policy for future additions to this sub- modules. The IANA policy for future additions to this sub-
registry is "Specification Required" [RFC5226]. Allocation within registry is "Specification Required" [RFC5226]. Allocation within
skipping to change at page 11, line 32 skipping to change at page 13, line 17
+-------------+---------------+------------------------+ +-------------+---------------+------------------------+
| Entry Point | Size | IANA policy | | Entry Point | Size | IANA policy |
+-------------+---------------+------------------------+ +-------------+---------------+------------------------+
| 0 | 1,000 | IETF review | | 0 | 1,000 | IETF review |
| 1,000 | 59,000 | RFC required | | 1,000 | 59,000 | RFC required |
| 60,000 | 40,000 | Experimental use | | 60,000 | 40,000 | Experimental use |
| 100,000 | 1,000,000,000 | Specification Required | | 100,000 | 1,000,000,000 | Specification Required |
+-------------+---------------+------------------------+ +-------------+---------------+------------------------+
The size of SID range assigned to a YANG module should be at least The size of a SID range assigned to a YANG module should be at least
33% above the current number of YANG items. This headroom allows 33% above the current number of YANG items. This headroom allows
assignment within the same range of new YANG items introduced by assignment within the same range of new YANG items introduced by
subsequent revisions. A larger SID range size may be requested by subsequent revisions. A larger SID range size may be requested by
the authors if this recommendation is considered insufficient. It is the authors if this recommendation is considered insufficient. It is
important to note that an extra SID range can be allocated to an important to note that an extra SID range can be allocated to an
existing YANG module if the initial range is exhausted. existing YANG module if the initial range is exhausted.
6.1.2. IANA "RFC SID range assignment" sub-registries 6.1.2. IANA "RFC SID range assignment" sub-registries
The name of this sub-registry is "RFC SID range assignment". This The name of this sub-registry is "RFC SID range assignment". This
sub-registry corresponds to the SID entry point 1000, size 59000. sub-registry corresponds to the SID entry point 1000, size 59000.
Each entry in this sub-registry must include the SID range entry Each entry in this sub-registry must include the SID range entry
point, the SID range size, the YANG module name, the RFC number. point, the SID range size, the YANG module name, the RFC number.
Initial entries in this registry are as follows: Initial entries in this registry are as follows:
+------------+------+-----------------+-----------------------------+ +-------------+------+------------------+----------------------+
| Entry | Size | Module name | RFC number | | Entry Point | Size | Module name | RFC number |
| Point | | | | +-------------+------+------------------+----------------------+
+------------+------+-----------------+-----------------------------+ | 1000 | 100 | ietf-comi | [I-D.ietf-core-comi] |
| 1000 | 100 | | Reserved for | | 1100 | 50 | ietf-yang-types | [RFC6021] |
| | | | [I-D.ietf-core-comi] | | 1150 | 50 | ietf-inet-types | [RFC6021] |
| 1100 | 400 | iana-if-type | [RFC7224] | | 1200 | 50 | iana-crypt-hash | [RFC7317] |
| 1500 | 100 | ietf-interfaces | [RFC7223] | | 1250 | 50 | ietf-netconf-acm | [RFC6536] |
| 1600 | 100 | ietf-ip | [RFC7277] | | 1300 | 50 | ietf-sid-file | RFCXXXX |
| 1700 | 100 | ietf-system | [RFC7317] | | 1500 | 100 | ietf-interfaces | [RFC7223] |
+------------+------+-----------------+-----------------------------+ | 1600 | 100 | ietf-ip | [RFC7277] |
| 1700 | 100 | ietf-system | [RFC7317] |
| 1800 | 400 | iana-if-type | [RFC7224] |
+-------------+------+------------------+----------------------+
// RFC Ed.: replace XXXX with RFC number assigned to this draft.
6.2. "YANG module assignment" registry 6.2. "YANG module assignment" registry
The name of this registry is "YANG module assignment". This registry The name of this registry is "YANG module assignment". This registry
is used to track which YANG modules have been assigned and the is used to track which YANG modules have been assigned and the
specific YANG items assignment. Each entry in this sub-registry must specific YANG items assignment. Each entry in this sub-registry must
include: include:
o The YANG module name o The YANG module name
skipping to change at page 13, line 45 skipping to change at page 15, line 34
[I-D.ietf-core-comi] [I-D.ietf-core-comi]
Veillette, M., Stok, P., Pelov, A., and A. Bierman, "CoAP Veillette, M., Stok, P., Pelov, A., and A. Bierman, "CoAP
Management Interface", draft-ietf-core-comi-01 (work in Management Interface", draft-ietf-core-comi-01 (work in
progress), July 2017. progress), July 2017.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", RFC 5226, IANA Considerations Section in RFCs", RFC 5226,
DOI 10.17487/RFC5226, May 2008, DOI 10.17487/RFC5226, May 2008,
<https://www.rfc-editor.org/info/rfc5226>. <https://www.rfc-editor.org/info/rfc5226>.
[RFC6021] Schoenwaelder, J., Ed., "Common YANG Data Types",
RFC 6021, DOI 10.17487/RFC6021, October 2010,
<https://www.rfc-editor.org/info/rfc6021>.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
<https://www.rfc-editor.org/info/rfc6241>. <https://www.rfc-editor.org/info/rfc6241>.
[RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration
Protocol (NETCONF) Access Control Model", RFC 6536,
DOI 10.17487/RFC6536, March 2012,
<https://www.rfc-editor.org/info/rfc6536>.
[RFC7223] Bjorklund, M., "A YANG Data Model for Interface [RFC7223] Bjorklund, M., "A YANG Data Model for Interface
Management", RFC 7223, DOI 10.17487/RFC7223, May 2014, Management", RFC 7223, DOI 10.17487/RFC7223, May 2014,
<https://www.rfc-editor.org/info/rfc7223>. <https://www.rfc-editor.org/info/rfc7223>.
[RFC7224] Bjorklund, M., "IANA Interface Type YANG Module", [RFC7224] Bjorklund, M., "IANA Interface Type YANG Module",
RFC 7224, DOI 10.17487/RFC7224, May 2014, RFC 7224, DOI 10.17487/RFC7224, May 2014,
<https://www.rfc-editor.org/info/rfc7224>. <https://www.rfc-editor.org/info/rfc7224>.
[RFC7277] Bjorklund, M., "A YANG Data Model for IP Management", [RFC7277] Bjorklund, M., "A YANG Data Model for IP Management",
RFC 7277, DOI 10.17487/RFC7277, June 2014, RFC 7277, DOI 10.17487/RFC7277, June 2014,
skipping to change at page 14, line 37 skipping to change at page 16, line 37
o ietf-yang-types@2013-07-15.yang o ietf-yang-types@2013-07-15.yang
o ietf-inet-types@2013-07-15.yang o ietf-inet-types@2013-07-15.yang
o ietf-netconf-acm@2012-02-22.yang o ietf-netconf-acm@2012-02-22.yang
o iana-crypt-hash@2014-04-04.yang o iana-crypt-hash@2014-04-04.yang
{ {
"assignment-ranges": [ "assignment-ranges": [
{ {
"entry-point": 1700, "entry-point": 1700,
"size": 100 "size": 100
} }
], ],
"module-name": "ietf-system", "module-name": "ietf-system",
"module-revision": "2014-08-06", "module-revision": "2014-08-06",
"items": [ "items": [
{ {
"type": "Module", "namespace": "module",
"label": "ietf-system", "identifier": "ietf-system",
"sid": 1700 "sid": 1700
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "authentication", "identifier": "authentication-method",
"sid": 1701 "sid": 1701
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "dns-udp-tcp-port", "identifier": "local-users",
"sid": 1702 "sid": 1702
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "local-users", "identifier": "radius",
"sid": 1703 "sid": 1703
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "ntp", "identifier": "radius-authentication-type",
"sid": 1704 "sid": 1704
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "ntp-udp-port", "identifier": "radius-chap",
"sid": 1705 "sid": 1705
}, },
{ {
"type": "feature", "namespace": "identity",
"label": "radius", "identifier": "radius-pap",
"sid": 1706 "sid": 1706
}, },
{ {
"type": "feature", "namespace": "feature",
"label": "radius-authentication", "identifier": "authentication",
"sid": 1707 "sid": 1707
}, },
{ {
"type": "feature", "namespace": "feature",
"label": "timezone-name", "identifier": "dns-udp-tcp-port",
"sid": 1708 "sid": 1708
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/authentication-method", "identifier": "local-users",
"sid": 1709 "sid": 1709
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/authentication-method/local-users", "identifier": "ntp",
"sid": 1710 "sid": 1710
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/authentication-method/radius", "identifier": "ntp-udp-port",
"sid": 1711 "sid": 1711
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/radius-authentication-type", "identifier": "radius",
"sid": 1712 "sid": 1712
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/radius-authentication-type/radius-chap", "identifier": "radius-authentication",
"sid": 1713 "sid": 1713
}, },
{ {
"type": "identity", "namespace": "feature",
"label": "/radius-authentication-type/radius-pap", "identifier": "timezone-name",
"sid": 1714 "sid": 1714
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system", "identifier": "/ietf-system:set-current-datetime",
"sid": 1715 "sid": 1715
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system-state", "identifier": "/ietf-system:set-current-datetime/
"sid": 1716 current-datetime",
}, "sid": 1716
{ },
"type": "node", {
"label": "/system-state/clock", "namespace": "data",
"sid": 1717 "identifier": "/ietf-system:system",
}, "sid": 1717
{ },
"type": "node", {
"label": "/system-state/clock/boot-datetime", "namespace": "data",
"sid": 1718 "identifier": "/ietf-system:system-restart",
}, "sid": 1718
{ },
"type": "node", {
"label": "/system-state/clock/current-datetime", "namespace": "data",
"sid": 1719 "identifier": "/ietf-system:system-shutdown",
}, "sid": 1719
{ },
"type": "node", {
"label": "/system-state/platform", "namespace": "data",
"sid": 1720 "identifier": "/ietf-system:system-state",
}, "sid": 1720
{ },
"type": "node", {
"label": "/system-state/platform/machine", "namespace": "data",
"sid": 1721 "identifier": "/ietf-system:system-state/clock",
}, "sid": 1721
{ },
"type": "node", {
"label": "/system-state/platform/os-name", "namespace": "data",
"sid": 1722 "identifier": "/ietf-system:system-state/clock/boot-datetime",
}, "sid": 1722
{ },
"type": "node", {
"label": "/system-state/platform/os-release", "namespace": "data",
"sid": 1723 "identifier": "/ietf-system:system-state/clock/
}, current-datetime",
{ "sid": 1723
"type": "node", },
"label": "/system-state/platform/os-version", {
"sid": 1724 "namespace": "data",
}, "identifier": "/ietf-system:system-state/platform",
{ "sid": 1724
"type": "node", },
"label": "/system/authentication", {
"sid": 1725 "namespace": "data",
}, "identifier": "/ietf-system:system-state/platform/machine",
{ "sid": 1725
"type": "node", },
"label": "/system/authentication/user", {
"sid": 1726 "namespace": "data",
}, "identifier": "/ietf-system:system-state/platform/os-name",
{ "sid": 1726
"type": "node", },
"label": "/system/authentication/user-authentication-order", {
"sid": 1727 "namespace": "data",
}, "identifier": "/ietf-system:system-state/platform/os-release",
{ "sid": 1727
"type": "node", },
"label": "/system/authentication/user/authorized-key", {
"sid": 1728 "namespace": "data",
}, "identifier": "/ietf-system:system-state/platform/os-version",
{ "sid": 1728
"type": "node", },
"label": "/system/authentication/user/authorized-key/algorithm", {
"sid": 1729 "namespace": "data",
}, "identifier": "/ietf-system:system/authentication",
{ "sid": 1729
"type": "node",
"label": "/system/authentication/user/authorized-key/key-data",
"sid": 1730
},
{
"type": "node",
"label": "/system/authentication/user/authorized-key/name",
"sid": 1731
},
{
"type": "node",
"label": "/system/authentication/user/name",
"sid": 1732
},
{
"type": "node",
"label": "/system/authentication/user/password",
"sid": 1733
},
{
"type": "node",
"label": "/system/clock",
"sid": 1734
},
{
"type": "node",
"label": "/system/clock/timezone-name",
"sid": 1735
},
{
"type": "node",
"label": "/system/clock/timezone-utc-offset",
"sid": 1736
},
{
"type": "node",
"label": "/system/contact",
"sid": 1737
},
{
"type": "node",
"label": "/system/dns-resolver",
"sid": 1738
},
{
"type": "node",
"label": "/system/dns-resolver/options",
"sid": 1739
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system/dns-resolver/options/attempts", "identifier": "/ietf-system:system/authentication/user",
"sid": 1740 "sid": 1730
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system/dns-resolver/options/timeout", "identifier": "/ietf-system:system/authentication/
"sid": 1741 user-authentication-order",
}, "sid": 1731
{ },
"type": "node", {
"label": "/system/dns-resolver/search", "namespace": "data",
"sid": 1742 "identifier": "/ietf-system:system/authentication/user/
}, authorized-key",
{ "sid": 1732
"type": "node", },
"label": "/system/dns-resolver/server", {
"sid": 1743 "namespace": "data",
}, "identifier": "/ietf-system:system/authentication/user/
{ authorized-key/algorithm",
"type": "node", "sid": 1733
"label": "/system/dns-resolver/server/name", },
"sid": 1744 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/authentication/user/
"type": "node", authorized-key/key-data",
"label": "/system/dns-resolver/server/udp-and-tcp", "sid": 1734
"sid": 1745 },
}, {
{ "namespace": "data",
"type": "node", "identifier": "/ietf-system:system/authentication/user/
"label": "/system/dns-resolver/server/udp-and-tcp/address", authorized-key/name",
"sid": 1746 "sid": 1735
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system/dns-resolver/server/udp-and-tcp/port", "identifier": "/ietf-system:system/authentication/user/
"sid": 1747 name",
}, "sid": 1736
{ },
"type": "node", {
"label": "/system/hostname", "namespace": "data",
"sid": 1748 "identifier": "/ietf-system:system/authentication/user/
}, password",
{ "sid": 1737
"type": "node", },
"label": "/system/location", {
"sid": 1749 "namespace": "data",
}, "identifier": "/ietf-system:system/clock",
{ "sid": 1738
"type": "node", },
"label": "/system/ntp", {
"sid": 1750 "namespace": "data",
}, "identifier": "/ietf-system:system/clock/timezone-name",
{ "sid": 1739
"type": "node", },
"label": "/system/ntp/enabled", {
"sid": 1751 "namespace": "data",
}, "identifier": "/ietf-system:system/clock/timezone-utc-offset",
{ "sid": 1740
"type": "node", },
"label": "/system/ntp/server", {
"sid": 1752 "namespace": "data",
}, "identifier": "/ietf-system:system/contact",
{ "sid": 1741
"type": "node", },
"label": "/system/ntp/server/association-type", {
"sid": 1753 "namespace": "data",
}, "identifier": "/ietf-system:system/dns-resolver",
{ "sid": 1742
"type": "node", },
"label": "/system/ntp/server/iburst", {
"sid": 1754 "namespace": "data",
}, "identifier": "/ietf-system:system/dns-resolver/options",
{ "sid": 1743
"type": "node", },
"label": "/system/ntp/server/name", {
"sid": 1755 "namespace": "data",
}, "identifier": "/ietf-system:system/dns-resolver/options/
{ attempts",
"type": "node", "sid": 1744
"label": "/system/ntp/server/prefer", },
"sid": 1756 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/dns-resolver/options/
"type": "node", timeout",
"label": "/system/ntp/server/udp", "sid": 1745
"sid": 1757 },
}, {
{ "namespace": "data",
"type": "node", "identifier": "/ietf-system:system/dns-resolver/search",
"label": "/system/ntp/server/udp/address", "sid": 1746
"sid": 1758 },
}, {
{ "namespace": "data",
"type": "node", "identifier": "/ietf-system:system/dns-resolver/server",
"label": "/system/ntp/server/udp/port", "sid": 1747
"sid": 1759 },
}, {
{ "namespace": "data",
"type": "node", "identifier": "/ietf-system:system/dns-resolver/server/name",
"label": "/system/radius", "sid": 1748
"sid": 1760 },
}, {
{ "namespace": "data",
"type": "node", "identifier": "/ietf-system:system/dns-resolver/server/
"label": "/system/radius/options", udp-and-tcp",
"sid": 1761 "sid": 1749
}, },
{ {
"type": "node", "namespace": "data",
"label": "/system/radius/options/attempts", "identifier": "/ietf-system:system/dns-resolver/server/
"sid": 1762 udp-and-tcp/address",
}, "sid": 1750
{ },
"type": "node", {
"label": "/system/radius/options/timeout", "namespace": "data",
"sid": 1763 "identifier": "/ietf-system:system/dns-resolver/server/
}, udp-and-tcp/port",
{ "sid": 1751
"type": "node", },
"label": "/system/radius/server", {
"sid": 1764 "namespace": "data",
}, "identifier": "/ietf-system:system/hostname",
{ "sid": 1752
"type": "node", },
"label": "/system/radius/server/authentication-type", {
"sid": 1765 "namespace": "data",
}, "identifier": "/ietf-system:system/location",
{ "sid": 1753
"type": "node", },
"label": "/system/radius/server/name", {
"sid": 1766 "namespace": "data",
}, "identifier": "/ietf-system:system/ntp",
{ "sid": 1754
"type": "node", },
"label": "/system/radius/server/udp", {
"sid": 1767 "namespace": "data",
}, "identifier": "/ietf-system:system/ntp/enabled",
{ "sid": 1755
"type": "node", },
"label": "/system/radius/server/udp/address", {
"sid": 1768 "namespace": "data",
}, "identifier": "/ietf-system:system/ntp/server",
{ "sid": 1756
"type": "node", },
"label": "/system/radius/server/udp/authentication-port", {
"sid": 1769 "namespace": "data",
}, "identifier": "/ietf-system:system/ntp/server/
{ association-type",
"type": "node", "sid": 1757
"label": "/system/radius/server/udp/shared-secret", },
"sid": 1770 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/ntp/server/iburst",
"type": "rpc", "sid": 1758
"label": "/set-current-datetime", },
"sid": 1771 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/ntp/server/name",
"type": "rpc", "sid": 1759
"label": "/set-current-datetime/input/current-datetime", },
"sid": 1772 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/ntp/server/prefer",
"type": "rpc", "sid": 1760
"label": "/system-restart", },
"sid": 1773 {
}, "namespace": "data",
{ "identifier": "/ietf-system:system/ntp/server/udp",
"type": "rpc", "sid": 1761
"label": "/system-shutdown", },
"sid": 1774 {
} "namespace": "data",
] "identifier": "/ietf-system:system/ntp/server/udp/address",
"sid": 1762
},
{
"namespace": "data",
"identifier": "/ietf-system:system/ntp/server/udp/port",
"sid": 1763
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius",
"sid": 1764
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/options",
"sid": 1765
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/options/attempts",
"sid": 1766
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/options/timeout",
"sid": 1767
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server",
"sid": 1768
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/
authentication-type",
"sid": 1769
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/name",
"sid": 1770
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/udp",
"sid": 1771
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/udp/
address",
"sid": 1772
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/udp/
authentication-port",
"sid": 1773
},
{
"namespace": "data",
"identifier": "/ietf-system:system/radius/server/udp/
shared-secret",
"sid": 1774
}
]
} }
Authors' Addresses Authors' Addresses
Michel Veillette (editor) Michel Veillette (editor)
Trilliant Networks Inc. Trilliant Networks Inc.
610 Rue du Luxembourg 610 Rue du Luxembourg
Granby, Quebec J2J 2V2 Granby, Quebec J2J 2V2
Canada Canada
 End of changes. 43 change blocks. 
507 lines changed or deleted 589 lines changed or added

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