< draft-qu-mpls-mpls-msd-yang-00.txt   draft-qu-mpls-mpls-msd-yang-01.txt >
Internet Y. Qu Internet Y. Qu
Internet-Draft Futurewei Internet-Draft Futurewei
Intended status: Standards Track A. Lindem Intended status: Standards Track A. Lindem
Expires: August 8, 2021 S. Litkowski Expires: February 2, 2022 S. Litkowski
Cisco Systems Cisco Systems
J. Tantsura J. Tantsura
Juniper Juniper
February 4, 2021 August 1, 2021
A YANG Model for MPLS MSD A YANG Model for MPLS MSD
draft-qu-mpls-mpls-msd-yang-00 draft-qu-mpls-mpls-msd-yang-01
Abstract Abstract
This document defines a YANG data module augmenting the IETF MPLS This document defines a YANG data module augmenting the IETF MPLS
YANG model to provide support for MPLS Maximum SID Depths (MSDs) as YANG model to provide support for MPLS Maximum SID Depths (MSDs) as
defined RFC 8476 and RFC 8491. defined in RFC 8476 and RFC 8491.
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 August 8, 2021. This Internet-Draft will expire on February 2, 2022.
Copyright Notice Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the Copyright (c) 2021 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 15 skipping to change at page 2, line 15
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 2
2. YANG Module for MPLS MSD . . . . . . . . . . . . . . . . . . 3 2. YANG Module for MPLS MSD . . . . . . . . . . . . . . . . . . 3
3. Security Considerations . . . . . . . . . . . . . . . . . . . 6 3. Security Considerations . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.1. Normative References . . . . . . . . . . . . . . . . . . 7 6.1. Normative References . . . . . . . . . . . . . . . . . . 8
6.2. Informative References . . . . . . . . . . . . . . . . . 9 6.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Overview 1. Overview
YANG [RFC6020] [RFC7950] is a data definition language used to define YANG [RFC7950] is a data definition language used to define the
the contents of a conceptual data store that allows networked devices contents of a conceptual data store that allows networked devices to
to be managed using NETCONF [RFC6241]. YANG is proving relevant be managed using NETCONF [RFC6241]. YANG is proving relevant beyond
beyond its initial confines, as bindings to other interfaces (e.g., its initial confines, as bindings to other interfaces (e.g., ReST)
ReST) and encodings other than XML (e.g., JSON) are being defined. and encodings other than XML (e.g., JSON) are being defined.
Furthermore, YANG data models can be used as the basis for Furthermore, YANG data models can be used as the basis for
implementation of other interfaces, such as CLI and programmatic implementation of other interfaces, such as CLI and programmatic
APIs. APIs.
This document defines a YANG data module augmenting the IETF MPLS This document defines a YANG data module augmenting the IETF MPLS
YANG model [RFC8960], which itself augments [RFC8349], to provide YANG model [RFC8960], which itself augments [RFC8349], to provide
operational state for various MSDs[RFC8662]. operational state for various MSDs[RFC8662].
The augmentation defined in this document requires support for the The augmentation defined in this document requires support for the
MPLS base model[RFC8960] which defines basic MPLS configuration and MPLS base model[RFC8960] which defines basic MPLS configuration and
skipping to change at page 3, line 22 skipping to change at page 3, line 22
+--ro msd +--ro msd
+--ro node-msds* [msd-type] +--ro node-msds* [msd-type]
| +--ro msd-type identityref | +--ro msd-type identityref
| +--ro msd-value? uint8 | +--ro msd-value? uint8
+--ro link-msds* [interface] +--ro link-msds* [interface]
+--ro interface if:interface-ref +--ro interface if:interface-ref
+--ro link-msd* [msd-type] +--ro link-msd* [msd-type]
+--ro msd-type identityref +--ro msd-type identityref
+--ro msd-value? uint8 +--ro msd-value? uint8
<CODE BEGINS> file "ietf-mpls-msd@2021-02-04.yang" <CODE BEGINS> file "ietf-mpls-msd@2021-08-01.yang"
module ietf-mpls-msd { module ietf-mpls-msd {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-msd"; namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-msd";
prefix mpls-msd; prefix mpls-msd;
import ietf-routing { import ietf-routing {
prefix rt; prefix rt;
reference "RFC 8349: A YANG Data Model for Routing reference
Management (NMDA Version)"; "RFC 8349: A YANG Data Model for Routing
Management (NMDA Version)";
} }
import ietf-interfaces { import ietf-interfaces {
prefix if; prefix if;
reference "RFC 8343: A YANG Data Model for Interface reference
Management (NMDA Version)"; "RFC 8343: A YANG Data Model for Interface
Management (NMDA Version)";
} }
import ietf-mpls { import ietf-mpls {
prefix mpls; prefix mpls;
reference "RFC 8960: A YANG Data Model for MPLS Base"; reference "RFC 8960: A YANG Data Model for MPLS Base";
} }
organization organization
"IETF MPLS - MPLS Working Group"; "IETF MPLS - MPLS Working Group";
contact contact
skipping to change at page 4, line 41 skipping to change at page 4, line 42
see the RFC itself for full legal notices. see the RFC itself for full legal notices.
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED', NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
'MAY', and 'OPTIONAL' in this document are to be interpreted as 'MAY', and 'OPTIONAL' in this document are to be interpreted as
described in BCP 14 (RFC 2119) (RFC 8174) when, and only when, described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
they appear in all capitals, as shown here."; they appear in all capitals, as shown here.";
reference "RFC XXXX: YANG Data Model for Segment Routing."; reference "RFC XXXX: YANG Data Model for Segment Routing.";
revision 2021-02-04 { revision 2021-08-01 {
description description
"Initial Version"; "Initial Version";
reference "RFC XXXX: YANG Data Model for Segment Routing."; reference "RFC XXXX: YANG Data Model for Segment Routing.";
} }
identity msd-base-type { identity msd-base-type {
description description
"Base identity for MSD Type"; "Base identity for MSD Type";
} }
identity base-mpls-msd { identity base-mpls-msd {
base msd-base-type; base msd-base-type;
description description
"Base MPLS Imposition MSD."; "Base MPLS Imposition MSD.";
reference reference
"RFC 8491: Singling MSD using IS-IS."; "RFC 8491: Singling MSD using IS-IS.";
} }
identity erld-msd { identity erld-msd {
base msd-base-type; base msd-base-type;
skipping to change at page 5, line 31 skipping to change at page 5, line 34
grouping max-sid-depth { grouping max-sid-depth {
description description
"Maximum SID Depth (MSD) grouping."; "Maximum SID Depth (MSD) grouping.";
list node-msds { list node-msds {
key "msd-type"; key "msd-type";
leaf msd-type { leaf msd-type {
type identityref { type identityref {
base msd-base-type; base msd-base-type;
} }
description description
"MSD-Types"; "MSD types";
} }
leaf msd-value { leaf msd-value {
type uint8; type uint8;
description description
"MSD value, in the range of 0-255."; "MSD value, in the range of 0-255.";
} }
description description
"Node MSD is the smallest link MSD supported by "Node MSD is the smallest link MSD supported by
the node."; the node.";
} }
skipping to change at page 6, line 8 skipping to change at page 6, line 10
description description
"Reference to device interface."; "Reference to device interface.";
} }
list link-msd { list link-msd {
key "msd-type"; key "msd-type";
leaf msd-type { leaf msd-type {
type identityref { type identityref {
base msd-base-type; base msd-base-type;
} }
description description
"MSD-Types"; "MSD type";
} }
leaf msd-value { leaf msd-value {
type uint8; type uint8;
description description
"MSD value, in the range of 0-255."; "MSD value, in the range of 0-255.";
} }
description description
"List of link MSDs"; "List of link MSDs";
} }
description description
skipping to change at page 6, line 45 skipping to change at page 6, line 47
<CODE ENDS> <CODE ENDS>
3. Security Considerations 3. Security Considerations
The YANG modules specified in this document define a schema for data The YANG modules specified in this document define 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
transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer
is HTTPS, and the mandatory-to-implement secure transport is TLS is HTTPS, and the mandatory-to-implement secure transport is TLS
[RFC5246]. [RFC8446].
The NETCONF access control model [RFC6536] provides the means to The NETCONF Access Control Model (NACM) [RFC8341] provides the means
restrict access for particular NETCONF or RESTCONF users to a pre- to restrict access for particular NETCONF or RESTCONF users to a pre-
configured subset of all available NETCONF or RESTCONF protocol configured subset of all available NETCONF or RESTCONF protocol
operations and content. operations and content.
There are a number of data nodes defined in the modules that are There are a number of data nodes defined in the modules that are
writable/creatable/deletable (i.e., config true, which is the writable/creatable/deletable (i.e., config true, which is the
default). These data nodes may be considered sensitive or vulnerable default). These data nodes may be considered sensitive or vulnerable
in some network environments. Write operations (e.g., edit-config) in some network environments. Write operations (e.g., edit-config)
to these data nodes without proper protection can have a negative to these data nodes without proper protection can have a negative
effect on network operations. effect on network operations.
Some of the readable data nodes in the modules may be considered Some of the readable data nodes in the modules 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 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. These are the subtrees and data
Database (LSDB) will expose the detailed topology of the network. nodes and their sensitivity/vulnerability:
This may be undesirable since both due to the fact that exposure may
facilitate other attacks. Additionally, network operators may /rt:routing/mpls:mpls/msd/node-msds
consider their topologies to be sensitive confidential data.
/rt:routing/mpls:mpls/msd/link-msds
Exposure of the node's maximum SID depth may be useful in mounting
a Denial-of-Service (DoS) attach by sending packets to the node
that the router can't process.
4. IANA Considerations 4. IANA Considerations
This document registers URIs in the IETF XML registry [RFC3688]. This document registers URIs in the IETF XML registry [RFC3688].
Following the format in [RFC3688], the following registrations is Following the format in [RFC3688], the following registrations is
requested to be made: requested to be made:
URI: urn:ietf:params:xml:ns:yang:ietf-mpls-msd URI: urn:ietf:params:xml:ns:yang:ietf-mpls-msd
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.
skipping to change at page 8, line 14 skipping to change at page 8, line 18
[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>.
[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>.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246,
DOI 10.17487/RFC5246, August 2008,
<https://www.rfc-editor.org/info/rfc5246>.
[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>.
[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>.
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
RFC 7950, DOI 10.17487/RFC7950, August 2016, RFC 7950, DOI 10.17487/RFC7950, August 2016,
<https://www.rfc-editor.org/info/rfc7950>. <https://www.rfc-editor.org/info/rfc7950>.
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
<https://www.rfc-editor.org/info/rfc8040>. <https://www.rfc-editor.org/info/rfc8040>.
[RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration
Access Control Model", STD 91, RFC 8341,
DOI 10.17487/RFC8341, March 2018,
<https://www.rfc-editor.org/info/rfc8341>.
[RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K., [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
and R. Wilton, "Network Management Datastore Architecture and R. Wilton, "Network Management Datastore Architecture
(NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018, (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
<https://www.rfc-editor.org/info/rfc8342>. <https://www.rfc-editor.org/info/rfc8342>.
[RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for
Routing Management (NMDA Version)", RFC 8349, Routing Management (NMDA Version)", RFC 8349,
DOI 10.17487/RFC8349, March 2018, DOI 10.17487/RFC8349, March 2018,
<https://www.rfc-editor.org/info/rfc8349>. <https://www.rfc-editor.org/info/rfc8349>.
[RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol
Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
<https://www.rfc-editor.org/info/rfc8446>.
[RFC8476] Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak, [RFC8476] Tantsura, J., Chunduri, U., Aldrin, S., and P. Psenak,
"Signaling Maximum SID Depth (MSD) Using OSPF", RFC 8476, "Signaling Maximum SID Depth (MSD) Using OSPF", RFC 8476,
DOI 10.17487/RFC8476, December 2018, DOI 10.17487/RFC8476, December 2018,
<https://www.rfc-editor.org/info/rfc8476>. <https://www.rfc-editor.org/info/rfc8476>.
[RFC8491] Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg, [RFC8491] Tantsura, J., Chunduri, U., Aldrin, S., and L. Ginsberg,
"Signaling Maximum SID Depth (MSD) Using IS-IS", RFC 8491, "Signaling Maximum SID Depth (MSD) Using IS-IS", RFC 8491,
DOI 10.17487/RFC8491, November 2018, DOI 10.17487/RFC8491, November 2018,
<https://www.rfc-editor.org/info/rfc8491>. <https://www.rfc-editor.org/info/rfc8491>.
 End of changes. 22 change blocks. 
38 lines changed or deleted 46 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/