< draft-boucadair-netmod-iana-registries-00.txt   draft-boucadair-netmod-iana-registries-01.txt >
netmod M. Boucadair netmod M. Boucadair
Internet-Draft Orange Internet-Draft Orange
Updates: 8407 (if approved) 24 March 2022 Updates: 8407 (if approved) 24 March 2022
Intended status: Standards Track Intended status: Standards Track
Expires: 25 September 2022 Expires: 25 September 2022
Recommendations for Creating IANA-Maintained YANG Modules Recommendations for Creating IANA-Maintained YANG Modules
draft-boucadair-netmod-iana-registries-00 draft-boucadair-netmod-iana-registries-01
Abstract Abstract
This document provides a set of guidelines for YANG module authors This document provides a set of guidelines for YANG module authors
related to the design of IANA-maintained modules. These guidelines related to the design of IANA-maintained modules. These guidelines
are meant to leverage existing IANA registries and use YANG as just are meant to leverage existing IANA registries and use YANG as just
another format to present the content of these registries. another format to present the content of these registries.
This document updates RFC 8407. This document updates RFC 8407 by providing additional guidelines for
IANA-maintained modules. It also relaxes a recommendation related to
the extensibility for such modules.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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/.
skipping to change at page 2, line 29 skipping to change at page 2, line 23
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
5. Security Considerations . . . . . . . . . . . . . . . . . . . 4 5. Security Considerations . . . . . . . . . . . . . . . . . . . 4
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 4
7.1. Normative References . . . . . . . . . . . . . . . . . . 4 7.1. Normative References . . . . . . . . . . . . . . . . . . 4
7.2. Informative References . . . . . . . . . . . . . . . . . 4 7.2. Informative References . . . . . . . . . . . . . . . . . 4
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5
1. Introduction 1. Introduction
IANA maintains a set of registries that are key for inexorability. IANA maintains a set of registries that are key for interoperability.
The content of these registries are usually available using various The content of these registries are usually available using various
formats (e.g., plain text, XML). However, there were some confusion formats (e.g., plain text, XML). However, there were some confusion
in the past about whether the content of some registries is dependent in the past about whether the content of some registries is dependent
on a specific representation format. For example, Section 5 of on a specific representation format. For example, Section 5 of
[RFC8892] was published to clarify that MIB and YANG modules are [RFC8892] was published to clarify that MIB and YANG modules are
merely additional formats in which the "Interface Types (ifType)" and merely additional formats in which the "Interface Types (ifType)" and
"Tunnel Types (tunnelType)" registries are available. The MIB "Tunnel Types (tunnelType)" registries are available. The MIB
[RFC2863] and YANG modules [RFC7224][RFC8675] are not separate [RFC2863] and YANG modules [RFC7224][RFC8675] are not separate
registries, and the same values are always present in all formats of registries, and the same values are always present in all formats of
the same registry. the same registry.
skipping to change at page 3, line 37 skipping to change at page 3, line 35
each sub-registry. However, designers MAY consider defining one each sub-registry. However, designers MAY consider defining one
single IANA-maintained module that covers all sub-registries if single IANA-maintained module that covers all sub-registries if
maintaining that single module is manageable (e.g., very few values maintaining that single module is manageable (e.g., very few values
are present or expected to be present for each sub-registry). are present or expected to be present for each sub-registry).
An IANA-maintained module may use identities (e.g., [RFC8675]) or An IANA-maintained module may use identities (e.g., [RFC8675]) or
typedefs (e.g., [RFC9108]). Such a decision is left to the module typedefs (e.g., [RFC9108]). Such a decision is left to the module
designers and should be made based upon specifics related to the designers and should be made based upon specifics related to the
intended use of the module. It is RECOMMENDED that the reasoning for intended use of the module. It is RECOMMENDED that the reasoning for
the design choice is documented in the companion specification the design choice is documented in the companion specification
document. For example, [I-D.ietf-dots-telemetry] define IANA- document that registers the module. For example,
maintained module that use typedefs for the following reason: [I-D.ietf-dots-telemetry] defines an IANA-maintained module that uses
typedefs for the following reason:
"The DOTS telemetry module (Section 10.1) uses "enumerations" rather "The DOTS telemetry module (Section 10.1) uses "enumerations" rather
than "identities" to define units, samples, and intervals because than "identities" to define units, samples, and intervals because
otherwise the namespace identifier "ietf-dots-telemetry" must be otherwise the namespace identifier "ietf-dots-telemetry" must be
included when a telemetry attribute is included (e.g., in a included when a telemetry attribute is included (e.g., in a
mitigation efficacy update). The use of "identities" is thus mitigation efficacy update). The use of "identities" is thus
suboptimal from a message compactness standpoint; one of the key suboptimal from a message compactness standpoint; one of the key
requirements for DOTS messages." requirements for DOTS messages."
This recommendation takes precedence over the behavior in For IANA-maintained modules, this recommendation takes precedence
Section 4.11.1 of [RFC8407] for IANA-maintained modules because the over the behavior specified in Section 4.11.1 of [RFC8407] because
extensibility concern is not applicable for such modules. the extensibility concern is not applicable for such modules.
Designers of IANA-maintained modules MAY supply the full Initial Designers of IANA-maintained modules MAY supply the full Initial
version of the module in the specification document or only a script version of the module in a specification document that registers the
to be used by IANA (e.g., XSLT 1.0 stylesheet in Appendix A of module or only a script to be used by IANA for generating the module
[RFC9108]). (e.g., an XSLT 1.0 stylesheet in Appendix A of [RFC9108]).
4. IANA Considerations 4. IANA Considerations
This document does not require any IANA action. This document does not require any IANA action.
5. Security Considerations 5. Security Considerations
This document does not introduce new concerns other than those This document does not introduce new concerns other than those
already discussed in Section 15 of [RFC8407]. already discussed in Section 15 of [RFC8407].
6. Acknowledgements 6. Acknowledgements
This document is triggered by a discusison the author had with Dhruv This document is triggered by a discussion the author had with Dhruv
Dhody and Jensen Zhang. Dhody and Jensen Zhang.
Thanks to Juergen Schoenwaelder for the comments.
7. References 7. References
7.1. Normative References 7.1. Normative References
[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,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
 End of changes. 8 change blocks. 
12 lines changed or deleted 17 lines changed or added

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