| < draft-ietf-netmod-module-tags-06.txt | draft-ietf-netmod-module-tags-07.txt > | |||
|---|---|---|---|---|
| Network Working Group C. Hopps | Network Working Group C. Hopps | |||
| Internet-Draft LabN Consulting, L.L.C. | Internet-Draft LabN Consulting, L.L.C. | |||
| Updates: 8407 (if approved) L. Berger | Updates: 8407 (if approved) L. Berger | |||
| Intended status: Standards Track LabN Consulting, LLC. | Intended status: Standards Track LabN Consulting, LLC. | |||
| Expires: September 3, 2019 D. Bogdanovic | Expires: September 10, 2019 D. Bogdanovic | |||
| Volta Networks | Volta Networks | |||
| March 2, 2019 | March 9, 2019 | |||
| YANG Module Tags | YANG Module Tags | |||
| draft-ietf-netmod-module-tags-06 | draft-ietf-netmod-module-tags-07 | |||
| Abstract | Abstract | |||
| This document provides for the association of tags with YANG modules. | This document provides for the association of tags with YANG modules. | |||
| The expectation is for such tags to be used to help classify and | The expectation is for such tags to be used to help classify and | |||
| organize modules. A method for defining, reading and writing a | organize modules. A method for defining, reading and writing a | |||
| modules tags is provided. Tags may be standardized and assigned | modules tags is provided. Tags may be standardized and assigned | |||
| during module definition; assigned by implementations; or dynamically | during module definition; assigned by implementations; or dynamically | |||
| defined and set by users. This document also provides guidance to | defined and set by users. This document also provides guidance to | |||
| future model writers, as such, this document updates RFC8407. | future model writers; as such, this document updates RFC8407. | |||
| 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/. | |||
| 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 September 3, 2019. | This Internet-Draft will expire on September 10, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2019 IETF Trust and the persons identified as the | Copyright (c) 2019 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 | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| 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 . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 1.1. Some possible use cases of YANG module tags . . . . . . . 3 | 1.1. Some possible use cases for YANG module tags . . . . . . 3 | |||
| 1.2. Conventions Used in This Document . . . . . . . . . . . . 4 | 1.2. Conventions Used in This Document . . . . . . . . . . . . 4 | |||
| 2. Tag Values . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 2. Tag Values . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 2.1. IETF Standard Tags . . . . . . . . . . . . . . . . . . . 4 | 2.1. IETF Standard Tags . . . . . . . . . . . . . . . . . . . 4 | |||
| 2.2. Vendor Tags . . . . . . . . . . . . . . . . . . . . . . . 4 | 2.2. Vendor Tags . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 2.3. User Tags . . . . . . . . . . . . . . . . . . . . . . . . 5 | 2.3. User Tags . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 2.4. Reserved Tags . . . . . . . . . . . . . . . . . . . . . . 5 | 2.4. Reserved Tags . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 3. Tag Management . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Tag Management . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 3.1. Module Definition Tagging . . . . . . . . . . . . . . . . 5 | 3.1. Module Definition Tagging . . . . . . . . . . . . . . . . 5 | |||
| 3.2. Implementation Tagging . . . . . . . . . . . . . . . . . 5 | 3.2. Implementation Tagging . . . . . . . . . . . . . . . . . 5 | |||
| 3.3. User Tagging . . . . . . . . . . . . . . . . . . . . . . 5 | 3.3. User Tagging . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4. Tags Module Structure . . . . . . . . . . . . . . . . . . . . 5 | 4. Tags Module Structure . . . . . . . . . . . . . . . . . . . . 6 | |||
| 4.1. Tags Module Tree . . . . . . . . . . . . . . . . . . . . 5 | 4.1. Tags Module Tree . . . . . . . . . . . . . . . . . . . . 6 | |||
| 4.2. YANG Module . . . . . . . . . . . . . . . . . . . . . . . 6 | 4.2. YANG Module . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5. Other Classifications . . . . . . . . . . . . . . . . . . . . 8 | 5. Other Classifications . . . . . . . . . . . . . . . . . . . . 9 | |||
| 6. Guidelines to Model Writers . . . . . . . . . . . . . . . . . 8 | 6. Guidelines to Model Writers . . . . . . . . . . . . . . . . . 9 | |||
| 6.1. Define Standard Tags . . . . . . . . . . . . . . . . . . 8 | 6.1. Define Standard Tags . . . . . . . . . . . . . . . . . . 9 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 7.1. YANG Module Tag Prefixes Registry . . . . . . . . . . . . 9 | 7.1. YANG Module Tag Prefixes Registry . . . . . . . . . . . . 9 | |||
| 7.2. YANG Module Tags Registry . . . . . . . . . . . . . . . . 10 | 7.2. YANG Module Tags Registry . . . . . . . . . . . . . . . . 10 | |||
| 7.3. Updates to the IETF XML Registry . . . . . . . . . . . . 11 | 7.3. Updates to the IETF XML Registry . . . . . . . . . . . . 12 | |||
| 7.4. Updates to the YANG Module Names Registry . . . . . . . . 11 | 7.4. Updates to the YANG Module Names Registry . . . . . . . . 12 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 9.1. Normative References . . . . . . . . . . . . . . . . . . 13 | |||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 12 | 9.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
| Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 13 | Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| Appendix B. Acknowledgements . . . . . . . . . . . . . . . . . . 14 | Appendix B. Acknowledgements . . . . . . . . . . . . . . . . . . 15 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
| 1. Introduction | 1. Introduction | |||
| The use of tags for classification and organization is fairly | The use of tags for classification and organization is fairly | |||
| ubiquitous not only within IETF protocols, but in the internet itself | ubiquitous not only within IETF protocols, but in the internet itself | |||
| (e.g., "#hashtags"). One benefit of using tags for organization over | (e.g., "#hashtags"). One benefit of using tags for organization over | |||
| a rigid structure is that it is more flexible and can more easily | a rigid structure is that it is more flexible and can more easily | |||
| adapt over time as technologies evolve. Tags can be usefully | adapt over time as technologies evolve. Tags can be usefully | |||
| standardized, but they can also serve as a non-standardized mechanism | standardized, but they can also serve as a non-standardized mechanism | |||
| available for users to define themselves. This document provides a | available for users to define themselves. This document provides a | |||
| skipping to change at page 3, line 27 ¶ | skipping to change at page 3, line 27 ¶ | |||
| This document also defines an IANA registry for tag prefixes as well | This document also defines an IANA registry for tag prefixes as well | |||
| as a set of globally assigned tags. | as a set of globally assigned tags. | |||
| Section 6 provides guidelines for authors of YANG data models. | Section 6 provides guidelines for authors of YANG data models. | |||
| This document updates [RFC8407]. | This document updates [RFC8407]. | |||
| The YANG data model in this document conforms to the Network | The YANG data model in this document conforms to the Network | |||
| Management Datastore Architecture defined in [RFC8342]. | Management Datastore Architecture defined in [RFC8342]. | |||
| 1.1. Some possible use cases of YANG module tags | 1.1. Some possible use cases for YANG module tags | |||
| During this documents progression there were requests for example | During this documents's development there were requests for example | |||
| uses of module tags. The following are a few example use cases for | uses of module tags. The following are a few example use cases for | |||
| tags. This list is certainly not exhaustive. | tags. This list is certainly not exhaustive. | |||
| One example use of tags would be to help filter different discrete | One example use of tags would be to help filter different discrete | |||
| categories of YANG modules supported by a device. E.g., if modules | categories of YANG modules supported by a device. For example, if | |||
| are suitably tagged, then an XPath query can be used to list all of | modules are suitably tagged, then an XPath query can be used to list | |||
| the vendor modules supported by a device. | all of the vendor modules supported by a device. | |||
| Tags can also be used to help coordination when multiple semi- | Tags can also be used to help coordination when multiple semi- | |||
| independent clients are interacting with the same devices. E.g., one | independent clients are interacting with the same devices. For | |||
| management client could mark that some modules should not be used | example, one management client could mark that some modules should | |||
| because they have not been verified to behave correctly, so that | not be used because they have not been verified to behave correctly, | |||
| other management clients avoid querying the data associated with | so that other management clients avoid querying the data associated | |||
| those modules. | with those modules. | |||
| Tag classification is useful for users searching module repositories | Tag classification is useful for users searching module repositories | |||
| (e.g. YANG catalog). A query restricted to the 'ietf:routing' | (e.g., YANG catalog). A query restricted to the 'ietf:routing' | |||
| module tag could be used to return only the IETF YANG modules | module tag could be used to return only the IETF YANG modules | |||
| associated with routing. Without tags, a user would need to know the | associated with routing. Without tags, a user would need to know the | |||
| name of all the IETF routing protocol YANG modules. | name of all the IETF routing protocol YANG modules. | |||
| Future management protocol extensions could allow for filtering | Future management protocol extensions could allow for filtering | |||
| queries of configuration or operational state on a server based on | queries of configuration or operational state on a server based on | |||
| tags. E.g., return all operational state related to system- | tags. For example, return all operational state related to system- | |||
| management. | management. | |||
| 1.2. Conventions Used in This Document | 1.2. Conventions Used in This Document | |||
| 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 | |||
| "OPTIONAL" in this document are to be interpreted as described in | "OPTIONAL" in this document are to be interpreted as described in | |||
| [RFC2119] [RFC8174] when, and only when, they appear in all capitals, | [RFC2119] [RFC8174] when, and only when, they appear in all capitals, | |||
| as shown here. | as shown here. | |||
| 2. Tag Values | 2. Tag Values | |||
| All tags SHOULD begin with a prefix indicating who owns their | All tags SHOULD begin with a prefix indicating who owns their | |||
| definition. An IANA registry is used to support standardizing tag | definition. An IANA registry (Section 7.1) is used to support | |||
| prefixes Section 7.1. Currently 3 prefixes are defined with all | standardizing tag prefixes. Currently 3 prefixes are defined. No | |||
| others reserved. No further structure is imposed by this document on | further structure is imposed by this document on the value following | |||
| the value following the standard prefix, and the value can contain | the standard prefix, and the value can contain any YANG type 'string' | |||
| any yang type 'string' characters except carriage-returns, newlines | characters except carriage-returns, newlines and tabs. | |||
| and tabs. | ||||
| Again, except for the conflict-avoiding prefix, this document is not | Again, except for the conflict-avoiding prefix, this document is not | |||
| specifying any structure on (i.e., restricting) the tag values on | specifying any structure on (i.e., restricting) the tag values on | |||
| purpose. The intent is to avoid arbitrarily restricting the values | purpose. The intent is to avoid arbitrarily restricting the values | |||
| that designers, implementers and users can use. As a result of this | that designers, implementers and users can use. As a result of this | |||
| choice, designers, implementers, and users are free to add or not add | choice, designers, implementers, and users are free to add or not add | |||
| any structure they may require to their own tag values. | any structure they may require to their own tag values. | |||
| 2.1. IETF Standard Tags | 2.1. IETF Standard Tags | |||
| An IETF standard tag is a tag that has the prefix "ietf:". All IETF | An IETF standard tag is a tag that has the prefix "ietf:". All IETF | |||
| standard tags are registered with IANA in a registry defined later in | standard tags are registered with IANA in a registry defined later in | |||
| this document Section 7.2. | this document (Section 7.2). | |||
| 2.2. Vendor Tags | 2.2. Vendor Tags | |||
| A vendor tag is a tag that has the prefix "vendor:". These tags are | A vendor tag is a tag that has the prefix "vendor:". These tags are | |||
| defined by the vendor that implements the module, and are not | defined by the vendor that implements the module, and are not | |||
| standardized; however, it is RECOMMENDED that the vendor include | standardized; however, it is RECOMMENDED that the vendor include | |||
| extra identification in the tag to avoid collisions such as using the | extra identification in the tag to avoid collisions such as using the | |||
| enterpise or organization name follwing the "vendor:" prefix (e.g., | enterpise or organization name following the "vendor:" prefix (e.g., | |||
| vendor:example.com:vendor-defined-classifier). | vendor:example.com:vendor-defined-classifier). | |||
| 2.3. User Tags | 2.3. User Tags | |||
| A user tag is any tag that has the prefix "user:". These tags are | A user tag is any tag that has the prefix "user:". These tags are | |||
| defined by the user/administrator and will never be standardized. | defined by the user/administrator and will never be standardized. | |||
| Users are not required to use the "user:" prefix; however, doing so | ||||
| is RECOMMENDED as it helps avoid collisions. | ||||
| 2.4. Reserved Tags | 2.4. Reserved Tags | |||
| Any tag not starting with the prefix "ietf:", "vendor:" or "user:" is | Any tag not starting with the prefix "ietf:", "vendor:" or "user:" is | |||
| reserved for future standardization. | reserved for future standardization. These tag values are not | |||
| invalid, but simply reserved in the context of standardization. | ||||
| 3. Tag Management | 3. Tag Management | |||
| Tags can become associated with a module in a number of ways. Tags | Tags can become associated with a module in a number of ways. Tags | |||
| may be defined and associated at module design time, at | may be defined and associated at module design time, at | |||
| implementation time, or via user administrative control. As the main | implementation time, or via user administrative control. As the main | |||
| consumer of tags are users, users may also remove any tag, no matter | consumer of tags are users, users may also remove any tag, no matter | |||
| how the tag became associated with a module. | how the tag became associated with a module. | |||
| 3.1. Module Definition Tagging | 3.1. Module Definition Tagging | |||
| A module definition MAY indicate a set of tags to be added by the | A module definition MAY indicate a set of tags to be added by the | |||
| module implementer. These design time tags are indicated using the | module implementer. These design time tags are indicated using the | |||
| module-tag extension statement. | module-tag extension statement. | |||
| If the module definition is IETF standards track, the tags MUST also | If the module is defined in an IETF standards track document, the | |||
| be Section 2.1. Thus, new modules can drive the addition of new | tags MUST be IETF Standard Tags (2.1). Thus, new modules can drive | |||
| standard tags to the IANA registry, and the IANA registry can serve | the addition of new standard tags to the IANA registry defined in | |||
| as a check against duplication. | Section 7.2, and the IANA registry can serve as a check against | |||
| duplication. | ||||
| 3.2. Implementation Tagging | 3.2. Implementation Tagging | |||
| An implementation MAY include additional tags associated with a | An implementation MAY include additional tags associated with a | |||
| module. These tags SHOULD be standard or vendor specific tags. | module. These tags SHOULD be IETF Standard or vendor specific tags. | |||
| 3.3. User Tagging | 3.3. User Tagging | |||
| Tags of any kind can be assigned and removed by the user using normal | Tags of any kind, with or without a prefix, can be assigned and | |||
| configuration mechanisms. | removed by the user using normal configuration mechanisms. In order | |||
| to remove a tag from the operational datastore the user adds a | ||||
| matching "masked-tag" entry for a given module. | ||||
| 4. Tags Module Structure | 4. Tags Module Structure | |||
| 4.1. Tags Module Tree | 4.1. Tags Module Tree | |||
| The tree associated with the "ietf-module-tags" module follows. The | The tree associated with the "ietf-module-tags" module follows. The | |||
| meaning of the symbols can be found in [RFC8340]. | meaning of the symbols can be found in [RFC8340]. | |||
| module: ietf-module-tags | module: ietf-module-tags | |||
| +--rw module-tags | +--rw module-tags | |||
| +--rw module* [name] | +--rw module* [name] | |||
| +--rw name yang:yang-identifier | +--rw name yang:yang-identifier | |||
| +--rw tag* tag | +--rw tag* tag | |||
| +--rw masked-tag* tag | +--rw masked-tag* tag | |||
| 4.2. YANG Module | 4.2. YANG Module | |||
| <CODE BEGINS> file "ietf-module-tags@2019-03-02.yang" | <CODE BEGINS> file "ietf-module-tags@2019-03-09.yang" | |||
| module ietf-module-tags { | module ietf-module-tags { | |||
| yang-version 1.1; | yang-version 1.1; | |||
| namespace "urn:ietf:params:xml:ns:yang:ietf-module-tags"; | namespace "urn:ietf:params:xml:ns:yang:ietf-module-tags"; | |||
| prefix tags; | prefix tags; | |||
| import ietf-yang-types { | import ietf-yang-types { | |||
| prefix yang; | prefix yang; | |||
| } | } | |||
| organization | organization | |||
| "IETF NetMod Working Group (NetMod)"; | "IETF NetMod Working Group (NetMod)"; | |||
| contact | contact | |||
| "NetMod Working Group - <netmod@ietf.org>"; | "WG Web: <https://tools.ietf.org/wg/netmod/> | |||
| WG List: <mailto:netmod@ietf.org> | ||||
| Author: Christian Hopps | ||||
| <mailto:chopps@chopps.org> | ||||
| Author: Lou Berger | ||||
| <mailto:lberger@labn.net> | ||||
| Author: Dean Bogdanovic | ||||
| <ivandean@gmail.com>"; | ||||
| // RFC Ed.: replace XXXX with actual RFC number and | // RFC Ed.: replace XXXX with actual RFC number and | |||
| // remove this note. | // remove this note. | |||
| description | description | |||
| "This module describes a mechanism associating tags with YANG | "This module describes a mechanism associating tags with YANG | |||
| modules. Tags may be IANA assigned or privately defined. | modules. Tags may be IANA assigned or privately defined. | |||
| 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. | |||
| skipping to change at page 7, line 12 ¶ | skipping to change at page 7, line 28 ¶ | |||
| described in BCP 14 [RFC2119] [RFC8174] when, and only when, | described in BCP 14 [RFC2119] [RFC8174] when, and only when, | |||
| they appear in all capitals, as shown here. | they appear in all capitals, as shown here. | |||
| This version of this YANG module is part of RFC XXXX | This version of this YANG module is part of RFC XXXX | |||
| (https://tools.ietf.org/html/rfcXXXX); see the RFC itself for | (https://tools.ietf.org/html/rfcXXXX); see the RFC itself for | |||
| full legal notices."; | full legal notices."; | |||
| // RFC Ed.: update the date below with the date of RFC publication | // RFC Ed.: update the date below with the date of RFC publication | |||
| // and RFC number and remove this note. | // and RFC number and remove this note. | |||
| revision 2019-03-02 { | revision 2019-03-09 { | |||
| description | description | |||
| "Initial revision."; | "Initial revision."; | |||
| reference "RFC XXXX: YANG Module Tags"; | reference "RFC XXXX: YANG Module Tags"; | |||
| } | } | |||
| typedef tag { | typedef tag { | |||
| type string { | type string { | |||
| length "1..max"; | length "1..max"; | |||
| pattern '[a-zA-Z_][a-zA-Z0-9\-_]*:[\S ]+'; | pattern '[\S ]+'; | |||
| } | } | |||
| description | description | |||
| "A tag value is composed of a standard prefix followed by any | "A tag is a type 'string' value that does not include carriage | |||
| type 'string' value that does not include carriage return, | return, newline or tab characters. It SHOULD begin with a | |||
| newline or tab characters."; | standard prefix; however, tags without a standard prefix | |||
| SHOULD NOT be treated as invalid."; | ||||
| } | } | |||
| extension module-tag { | extension module-tag { | |||
| argument tag; | argument tag; | |||
| description | description | |||
| "The argument 'tag' is of type 'tag'. This extension statement | "The argument 'tag' is of type 'tag'. This extension statement | |||
| is used by module authors to indicate the tags that SHOULD be | is used by module authors to indicate the tags that SHOULD be | |||
| added automatically by the system. As such the origin of the | added automatically by the system. As such the origin of the | |||
| value for the pre-defined tags should be set to 'system'."; | value for the pre-defined tags should be set to 'system' | |||
| [RFC8342]."; | ||||
| } | } | |||
| container module-tags { | container module-tags { | |||
| description | description | |||
| "Contains the list of modules and their associated tags"; | "Contains the list of modules and their associated tags"; | |||
| list module { | list module { | |||
| key "name"; | key "name"; | |||
| description | description | |||
| "A list of modules and their associated tags"; | "A list of modules and their associated tags"; | |||
| leaf name { | leaf name { | |||
| skipping to change at page 11, line 22 ¶ | skipping to change at page 11, line 42 ¶ | |||
| | | TACAC+, SNMP, netconf, | | | | | TACAC+, SNMP, netconf, | | | |||
| | | ...). | | | | | ...). | | | |||
| | | | | | | | | | | |||
| | ietf:oam | Relates to Operations, | [This | | | ietf:oam | Relates to Operations, | [This | | |||
| | | Administration, and | document] | | | | Administration, and | document] | | |||
| | | Maintenance (e.g., BFD). | | | | | Maintenance (e.g., BFD). | | | |||
| | | | | | | | | | | |||
| | ietf:routing | Relates to routing. | [This | | | ietf:routing | Relates to routing. | [This | | |||
| | | | document] | | | | | document] | | |||
| | | | | | | | | | | |||
| | ietf:security | Related to security. | [This | | ||||
| | | | document] | | ||||
| | | | | | ||||
| | ietf:signaling | Relates to control plane | [This | | | ietf:signaling | Relates to control plane | [This | | |||
| | | signaling. | document] | | | | signaling. | document] | | |||
| | | | | | | | | | | |||
| | ietf:link-management | Relates to link | [This | | | ietf:link-management | Relates to link | [This | | |||
| | | management. | document] | | | | management. | document] | | |||
| +----------------------------+--------------------------+-----------+ | +----------------------------+--------------------------+-----------+ | |||
| 7.3. Updates to the IETF XML Registry | 7.3. Updates to the IETF XML Registry | |||
| This document registers a URI in the "IETF XML Registry" [RFC3688]. | This document registers a URI in the "IETF XML Registry" [RFC3688]. | |||
| Following the format in [RFC3688], the following registration has | Following the format in [RFC3688], the following registration has | |||
| been made: | been made: | |||
| URI: urn:ietf:params:xml:ns:yang:ietf-module-tags | URI: | |||
| urn:ietf:params:xml:ns:yang:ietf-module-tags | ||||
| Registrant Contact: The IESG. | Registrant Contact: | |||
| The IESG. | ||||
| XML: N/A; the requested URI is an XML namespace. | XML: | |||
| N/A; the requested URI is an XML namespace. | ||||
| 7.4. Updates to the YANG Module Names Registry | 7.4. Updates to the YANG Module Names Registry | |||
| This document registers one YANG module in the "YANG Module Names" | This document registers one YANG module in the "YANG Module Names" | |||
| registry [RFC6020]. Following the format in [RFC6020], the following | registry [RFC6020]. Following the format in [RFC6020], the following | |||
| registration has been made: | registration has been made: | |||
| name: ietf-module-tags | name: | |||
| ietf-module-tags | ||||
| namespace: urn:ietf:params:xml:ns:yang:ietf-module-tags | namespace: | |||
| urn:ietf:params:xml:ns:yang:ietf-module-tags | ||||
| prefix: tags | prefix: | |||
| reference: RFC XXXX (RFC Ed.: replace XXX with actual RFC number and | tags | |||
| remove this note.) | ||||
| reference: | ||||
| RFC XXXX (RFC Ed.: replace XXX with actual RFC number and remove | ||||
| this note.) | ||||
| 8. Security Considerations | 8. Security Considerations | |||
| The YANG module defined in this memo is designed to be accessed via | The YANG module defined in this memo is designed to be accessed via | |||
| the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the | the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the | |||
| secure transport layer and the mandatory-to-implement secure | secure transport layer and the mandatory-to-implement secure | |||
| transport is SSH [RFC6242]. | transport is SSH [RFC6242]. | |||
| This document adds the ability to associate tag meta-data with YANG | This document adds the ability to associate tag meta-data with YANG | |||
| modules. This document does not define any actions based on these | modules. This document does not define any actions based on these | |||
| skipping to change at page 12, line 46 ¶ | skipping to change at page 13, line 29 ¶ | |||
| [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | |||
| Writing an IANA Considerations Section in RFCs", BCP 26, | Writing an IANA Considerations Section in RFCs", BCP 26, | |||
| RFC 8126, DOI 10.17487/RFC8126, June 2017, | RFC 8126, DOI 10.17487/RFC8126, June 2017, | |||
| <https://www.rfc-editor.org/info/rfc8126>. | <https://www.rfc-editor.org/info/rfc8126>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8199] Bogdanovic, D., Claise, B., and C. Moberg, "YANG Module | ||||
| Classification", RFC 8199, DOI 10.17487/RFC8199, July | ||||
| 2017, <https://www.rfc-editor.org/info/rfc8199>. | ||||
| [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | ||||
| and R. Wilton, "Network Management Datastore Architecture | ||||
| (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8342>. | ||||
| [RFC8407] Bierman, A., "Guidelines for Authors and Reviewers of | ||||
| Documents Containing YANG Data Models", BCP 216, RFC 8407, | ||||
| DOI 10.17487/RFC8407, October 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8407>. | ||||
| 9.2. Informative References | 9.2. Informative References | |||
| [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
| DOI 10.17487/RFC3688, January 2004, | DOI 10.17487/RFC3688, January 2004, | |||
| <https://www.rfc-editor.org/info/rfc3688>. | <https://www.rfc-editor.org/info/rfc3688>. | |||
| [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
| the Network Configuration Protocol (NETCONF)", RFC 6020, | the Network Configuration Protocol (NETCONF)", RFC 6020, | |||
| DOI 10.17487/RFC6020, October 2010, | DOI 10.17487/RFC6020, October 2010, | |||
| <https://www.rfc-editor.org/info/rfc6020>. | <https://www.rfc-editor.org/info/rfc6020>. | |||
| [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>. | |||
| [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure | [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure | |||
| Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, | Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, | |||
| <https://www.rfc-editor.org/info/rfc6242>. | <https://www.rfc-editor.org/info/rfc6242>. | |||
| [RFC8199] Bogdanovic, D., Claise, B., and C. Moberg, "YANG Module | ||||
| Classification", RFC 8199, DOI 10.17487/RFC8199, July | ||||
| 2017, <https://www.rfc-editor.org/info/rfc8199>. | ||||
| [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
| BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
| <https://www.rfc-editor.org/info/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
| [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., | ||||
| and R. Wilton, "Network Management Datastore Architecture | ||||
| (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8342>. | ||||
| [RFC8407] Bierman, A., "Guidelines for Authors and Reviewers of | ||||
| Documents Containing YANG Data Models", BCP 216, RFC 8407, | ||||
| DOI 10.17487/RFC8407, October 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8407>. | ||||
| Appendix A. Examples | Appendix A. Examples | |||
| The following is a fictional example result from a query of the | The following is a fictional example result from a query of the | |||
| module tags list. For the sake of brevity only a few module results | module tags list. For the sake of brevity only a few module results | |||
| are imagined. | are imagined. | |||
| <ns0:config xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0"> | <ns0:config xmlns:ns0="urn:ietf:params:xml:ns:netconf:base:1.0"> | |||
| <t:module-tags xmlns:t="urn:ietf:params:xml:ns:yang:ietf-module-tags"> | <t:module-tags xmlns:t="urn:ietf:params:xml:ns:yang:ietf-module-tags"> | |||
| <t:module> | <t:module> | |||
| <t:name>ietf-bfd</t:name> | <t:name>ietf-bfd</t:name> | |||
| End of changes. 40 change blocks. | ||||
| 77 lines changed or deleted | 105 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/ | ||||