< draft-qu-mpls-mpls-msd-yang-01.txt   draft-qu-mpls-mpls-msd-yang-02.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: February 2, 2022 S. Litkowski Expires: February 3, 2022 S. Litkowski
Cisco Systems Cisco Systems
J. Tantsura J. Tantsura
Juniper Juniper
August 1, 2021 August 2, 2021
A YANG Model for MPLS MSD A YANG Model for MPLS MSD
draft-qu-mpls-mpls-msd-yang-01 draft-qu-mpls-mpls-msd-yang-02
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 in 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
skipping to change at page 1, line 36 skipping to change at page 1, line 36
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 February 2, 2022. This Internet-Draft will expire on February 3, 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
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. 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 . . . . . . . . . . . . . . . . . . 2
3. Security Considerations . . . . . . . . . . . . . . . . . . . 6 3. Security Considerations . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
6.1. Normative References . . . . . . . . . . . . . . . . . . 8 6.1. Normative References . . . . . . . . . . . . . . . . . . 7
6.2. Informative References . . . . . . . . . . . . . . . . . 9 6.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Overview 1. Overview
YANG [RFC7950] is a data definition language used to define the YANG [RFC7950] is a data definition language used to define the
contents of a conceptual data store that allows networked devices to contents of a conceptual data store that allows networked devices to
be managed using NETCONF [RFC6241]. YANG is proving relevant beyond be managed using NETCONF [RFC6241] or RESTCONF [RFC8040].
its initial confines, as bindings to other interfaces (e.g., ReST)
and encodings other than XML (e.g., JSON) are being defined.
Furthermore, YANG data models can be used as the basis for
implementation of other interfaces, such as CLI and programmatic
APIs.
This document defines a YANG data module augmenting the IETF MPLS This document defines a YANG data model augmenting the IETF MPLS YANG
YANG model [RFC8960], which itself augments [RFC8349], to provide 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
state. state.
The YANG module in this document conforms to the Network Management The YANG module in this document conforms to the Network Management
Datastore Architecture (NMDA) [RFC8342]. Datastore Architecture (NMDA) [RFC8342].
1.1. Requirements Language 1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in [RFC2119]. "OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
2. YANG Module for MPLS MSD 2. YANG Module for MPLS MSD
This document defines a YANG module for MSD extensions This document defines a YANG module for MSD extensions
[RFC8476][RFC8491] to MPLS base model as defined in [RFC8960]. [RFC8476][RFC8491] to MPLS base model as defined in [RFC8960].
module: ietf-mpls-msd module: ietf-mpls-msd
augment /rt:routing/mpls:mpls: augment /rt:routing/mpls:mpls:
+--ro msd +--ro node-msd
+--ro node-msds* [msd-type] +--ro node-msds* []
| +--ro msd-type identityref +--ro msd-type? identityref
| +--ro msd-value? uint8 +--ro msd-value? uint8
+--ro link-msds* [interface] augment /rt:routing/mpls:mpls/mpls:interfaces/mpls:interface:
+--ro interface if:interface-ref +--ro link-msd
+--ro link-msd* [msd-type] +--ro link-msds* []
+--ro msd-type identityref +--ro msd-type? identityref
+--ro msd-value? uint8 +--ro msd-value? uint8
<CODE BEGINS> file "ietf-mpls-msd@2021-08-01.yang" <CODE BEGINS> file "ietf-mpls-msd@2021-08-02.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 reference
"RFC 8349: A YANG Data Model for Routing "RFC 8349: A YANG Data Model for Routing
Management (NMDA Version)"; Management (NMDA Version)";
} }
import ietf-interfaces {
prefix if;
reference
"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
"WG Web: <https://tools.ietf.org/wg/mpls/> "WG Web: <https://tools.ietf.org/wg/mpls/>
WG List: <mailto:mpls@ietf.org> WG List: <mailto:mpls@ietf.org>
skipping to change at page 4, line 4 skipping to change at page 3, line 40
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
"WG Web: <https://tools.ietf.org/wg/mpls/> "WG Web: <https://tools.ietf.org/wg/mpls/>
WG List: <mailto:mpls@ietf.org> WG List: <mailto:mpls@ietf.org>
Author: Yingzhen Qu Author: Yingzhen Qu
<mailto:yingzhen.qu@futurewei.com> <mailto:yingzhen.qu@futurewei.com>
Author: Acee Lindem Author: Acee Lindem
<mailto:acee@cisco.com> <mailto:acee@cisco.com>
Author: Stephane Litkowski Author: Stephane Litkowski
<mailto:slitkows.ietf@gmail.com> <mailto:slitkows.ietf@gmail.com>
Author: Jeff Tantsura Author: Jeff Tantsura
<jefftant.ietf@gmail.com> <mailto:jefftant.ietf@gmail.com>
"; ";
description description
"The YANG module augments the base MPLS model, and it is to "The YANG module augments the base MPLS model, and it is to
manage different types of MSDs. manage different types of Maximum SID Depth (MSD).
This YANG model conforms to the Network Management This YANG model conforms to the Network Management
Datastore Architecture (NMDA) as described in RFC 8342. Datastore Architecture (NMDA) as described in RFC 8342.
Copyright (c) 2021 IETF Trust and the persons identified as Copyright (c) 2021 IETF Trust and the persons identified as
authors of the code. All rights reserved. authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject without modification, is permitted pursuant to, and subject
to the license terms contained in, the Simplified BSD License to the license terms contained in, the Simplified BSD License
skipping to change at page 4, line 42 skipping to change at page 4, line 31
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-08-01 { revision 2021-08-02 {
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 Maximum SID Depth (MSD) Type";
} }
identity base-mpls-msd { identity msd-mpls {
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 Maximum SID Depth (MSD) using IS-IS.";
} }
identity erld-msd { identity msd-erld {
base msd-base-type; base msd-base-type;
description description
"ERLD-MSD is defined to advertise the ERLD."; "msd-erld is defined to advertise the Entropy Readable
Label Depth (ERLD).";
reference reference
"RFC 8662: Entropy Label for Source Packet Routing in "RFC 8662: Entropy Label for Source Packet Routing in
Networking (SPRING) Tunnels"; Networking (SPRING) Tunnels";
} }
grouping max-sid-depth { augment "/rt:routing/mpls:mpls" {
description description
"Maximum SID Depth (MSD) grouping."; "This module augments MPLS data model (RFC 8960)
list node-msds { with node MSD.";
key "msd-type"; container node-msd {
leaf msd-type { config false;
type identityref {
base msd-base-type;
}
description
"MSD types";
}
leaf msd-value {
type uint8;
description
"MSD value, in the range of 0-255.";
}
description description
"Node MSD is the smallest link MSD supported by "Maximum SID Depth (MSD) operational state.";
the node."; list node-msds {
}
list link-msds {
key "interface";
leaf interface {
type if:interface-ref;
description
"Reference to device interface.";
}
list link-msd {
key "msd-type";
leaf msd-type { leaf msd-type {
type identityref { type identityref {
base msd-base-type; base msd-base-type;
} }
description description
"MSD type"; "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
"List of link MSDs"; "Node MSD is the smallest link MSD supported by
the node.";
} }
description
"MSD supported by an individual interface.";
} }
} }
augment "/rt:routing/mpls:mpls" { augment "/rt:routing/mpls:mpls/mpls:interfaces/mpls:interface" {
description description
"This module augments MPLS data model (RFC 8960) "This module augments MPLS data model (RFC 8960)
with MSD."; with link MSD.";
container msd { container link-msd {
config false; config false;
description description
"Maximum SID Depth (MSD) operational state."; "Maximum SID Depth (MSD) interface operational state.";
uses max-sid-depth; list link-msds {
leaf msd-type {
type identityref {
base msd-base-type;
}
description
"MSD type";
}
leaf msd-value {
type uint8;
description
"MSD value, in the range of 0-255.";
}
description
"List of link MSDs";
}
} }
} }
} }
<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
skipping to change at page 8, line 40 skipping to change at page 8, line 22
<https://www.rfc-editor.org/info/rfc6242>. <https://www.rfc-editor.org/info/rfc6242>.
[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>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration
Access Control Model", STD 91, RFC 8341, Access Control Model", STD 91, RFC 8341,
DOI 10.17487/RFC8341, March 2018, DOI 10.17487/RFC8341, March 2018,
<https://www.rfc-editor.org/info/rfc8341>. <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>.
 End of changes. 31 change blocks. 
80 lines changed or deleted 68 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/