TEAS Working Group I. Busi
Internet-Draft Huawei Technologies
Intended status: Standards Track A. Guo
Expires: 30 October 2022 Futurewei Inc.
X. Liu
Volta Networks
T. Saad
Juniper Networks
R. Gandhi
Cisco Systems, Inc.
28 April 2022
A YANG Data Model for MPLS-TE Topology
draft-busizheng-teas-yang-te-mpls-topology-03
Abstract
This document describes a YANG data model for Multi-Protocol Label
Switching (MPLS) with Traffic Engineering (MPLS-TE) networks.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 30 October 2022.
Copyright Notice
Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
Busi, et al. Expires 30 October 2022 [Page 1]
Internet-Draft MPLS-TE Topology YANG Model April 2022
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Tree Diagram . . . . . . . . . . . . . . . . . . . . . . 2
1.2. Prefixes in Data Node Names . . . . . . . . . . . . . . . 3
2. MPLS-TE Types Overview . . . . . . . . . . . . . . . . . . . 3
3. MPLS-TE Topology Model Overview . . . . . . . . . . . . . . . 4
3.1. TE Label Augmentations . . . . . . . . . . . . . . . . . 5
3.2. MPLS-TP Topology . . . . . . . . . . . . . . . . . . . . 5
4. YANG model for common MPLS-TE Types . . . . . . . . . . . . . 6
5. YANG model for MPLS-TE Topology . . . . . . . . . . . . . . . 8
5.1. YANG Tree . . . . . . . . . . . . . . . . . . . . . . . . 8
5.2. YANG Code . . . . . . . . . . . . . . . . . . . . . . . . 9
6. Security Considerations . . . . . . . . . . . . . . . . . . . 12
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12
8.1. Normative References . . . . . . . . . . . . . . . . . . 12
8.2. Informative References . . . . . . . . . . . . . . . . . 12
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 13
Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13
1. Introduction
This document describes a YANG data model for Multi-Protocol Label
Switching (MPLS) with Traffic Engineering (MPLS-TE) networks.
This document also defines a collection of common data types and
groupings in YANG data modeling language for MPLS-TE networks. These
derived common types and groupings are intended to be imported by the
MPLS-TE topology model, defined in this document, as well as by the
MPLS-TE tunnel model, defined in [I-D.ietf-teas-yang-te-mpls].
Multi-Protocol Label Switching - Transport Profile (MPLS-TP) is a
profile of the MPLS protocol that is used in packet switched
transport networks and operated in a similar manner to other existing
transport technologies (e.g., OTN), as described in [RFC5921]. The
YANG model defined in this document can also be for MPLS-TP networks.
1.1. Tree Diagram
A simplified graphical representation of the data model is used in
Section 5.1 of this this document. The meaning of the symbols in
these diagrams is defined in [RFC8340].
Busi, et al. Expires 30 October 2022 [Page 2]
Internet-Draft MPLS-TE Topology YANG Model April 2022
1.2. Prefixes in Data Node Names
In this document, names of data nodes and other data model objects
are prefixed using the standard prefix associated with the
corresponding YANG imported modules, as shown in Table 1.
+============+====================+=================================+
| Prefix | YANG module | Reference |
+============+====================+=================================+
| rt-types | ietf-routing- | [RFC8294] |
| | types | |
+------------+--------------------+---------------------------------+
| tet | ietf-te- | [RFC8795] |
| | topology | |
+------------+--------------------+---------------------------------+
| tet-pkt | ietf-te- | [I-D.ietf-teas-yang-l3-te-topo] |
| | topology-packet | |
+------------+--------------------+---------------------------------+
| te-packet- | ietf-te-packet- | [I-D.ietf-teas-yang-l3-te-topo] |
| types | types | |
+------------+--------------------+---------------------------------+
| mte-types | ietf-mpls-te- | This document |
| | types | |
+------------+--------------------+---------------------------------+
| tet-mpls | ietf-te-mpls- | This document |
| | topology | |
+------------+--------------------+---------------------------------+
Table 1: Prefixes and corresponding YANG modules
2. MPLS-TE Types Overview
The module ietf-mpls-te-types contains the following YANG types and
groupings which can be reused by MPLS-TE YANG models:
load-balancing-type:
This identify defines the types of load-balancing algorithms used
on bundled MPLS-TE link.
te-mpls-label-hop:
This grouping is used for the augmentation of TE label for MPLS-TE
path.
Busi, et al. Expires 30 October 2022 [Page 3]
Internet-Draft MPLS-TE Topology YANG Model April 2022
3. MPLS-TE Topology Model Overview
The MPLS-TE technology specific topology model augments the ietf-te-
topology-packet YANG module, defined in
[I-D.ietf-teas-yang-l3-te-topo], which in turns augment the generic
ietf-te-topology YANG module, defined in [RFC8795], as shown in
Figure 1.
+------------------+ o: augment
TE generic | ietf-te-topology |
+------------------+
o
|
|
|
+-------------------------+
Packet TE | ietf-te-topology-packet |
+-------------------------+
o
|
|
|
+-----------------------+
MPLS-TE | ietf-te-mpls-topology |
+-----------------------+
Figure 1: Relationship between MPLS-TE, Packet-TE and TE topology
models
Given the guidance for augmentation in [RFC8795], the following
technology-specific augmentations need to be provided:
* A network-type to indicate that the TE topology is an MPLS-TE
Topology, as follow:
augment /nw:networks/nw:network/nw:network-types/tet:te-topology
/tet-pkt:packet:
+--rw mpls-topology!
* TE Label Augmentations as described in Section 3.1.
Note: TE Bandwidth Augmentations for paths, LSPs and links are
provided by the ietf-te-topology-packet module, defined in
[I-D.ietf-teas-yang-l3-te-topo].
Busi, et al. Expires 30 October 2022 [Page 4]
Internet-Draft MPLS-TE Topology YANG Model April 2022
3.1. TE Label Augmentations
In MPLS-TE, the label allocation is done by NE, information about
label values availability is not necessary to be provided to the
controller. Moreover, MPLS-TE tunnels are currently established
within a single domain.
Therefore this document does not define any MPLS-TE technology-
specific augmentations, of the TE Topology model, for the TE label
since no TE label related attributes should be instantiated for MPLS-
TE Topologies.
Open issue: shall this module allows the setup of MPLS-TE multi-
domain tunnels?
3.2. MPLS-TP Topology
Multi-Protocol Label Switching - Transport Profile (MPLS-TP) is a
profile of the MPLS protocol that is used in packet switched
transport networks and operated in a similar manner to other existing
transport technologies (e.g., OTN), as described in [RFC5921].
Therefore YANG model defined in this document can also be applicable
for MPLS-TP networks.
However, as described in [RFC5921], MPLS-TP networks support
bidirectional LSPs and require no ECMP and no PHP. When reporting
the topology for an MPLS-TP network, additional information is
required to indicate whether the network support these MPLS-TP
characteristics.
It is worth noting that [RFC8795] is already capable to model TE
topologies supporting either unidirectional or bidirectional LSPs:
all bidirectional TE links can support bidirectional LSPs and all the
links can support unidirectional LSPs and it is always possible to
associated unidirectional LSPs as long as they belong to the same
tunnel.
When setting up bidirectional LSPs (e.g., MPLS-TP LSPs) only
bidirectional TE Links are selected by path computation.
In order to allow reporting that ECMP is not affecting forwarding the
packets of a given LSP, the load-balancing-type attribute reports
whether a LAG or TE Bundled Link performs load-balancing on a per-
flow or per-top-label:
augment /nw:networks/nw:network/nt:link/tet:te:
+--rw load-balancing-type? mte-types:load-balancing-type
Busi, et al. Expires 30 October 2022 [Page 5]
Internet-Draft MPLS-TE Topology YANG Model April 2022
When setting up LSPs which do not requires ECMP (e.g., MPLS-TP LSPs)
only Links that are not part of a LAG or TE Bundle or that performs
per-top-label load balancing are selected by path computation.
It is assumed that almost all the MPLS-TE nodes are capable to
support Ultimate Hop Popping (UHP). However, if some interfaces are
not able to support UHP, they can report it in the MPLS-TE topology:
augment /nw:networks/nw:network/nw:node/nt:termination-point
/tet:te:
+--ro uhp-incapable? empty
When setting up LSPs which do not requires PHP (e.g., MPLS-TP LSPs)
only the interfaces (LTPs) which are capable to support UHP in the
destination node are selected by path computation.
4. YANG model for common MPLS-TE Types
<CODE BEGINS> file "ietf-mpls-te-types@2021-10-12.yang"
module ietf-mpls-te-types {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-te-types";
prefix "mte-types";
import ietf-routing-types {
prefix "rt-types";
}
organization
"Internet Engineering Task Force (IETF) TEAS WG";
contact
"WG Web: <https://datatracker.ietf.org/wg/teas/>
WG List: <mailto:teas@ietf.org>
Editor: Italo Busi
<mailto:italo.busi@huawei.com>
Editor: Haomian Zheng
<mailto:zhenghaomian@huawei.com>
Editor: Aihua Guo
<mailto:aihuaguo.ietf@gmail.com>
Editor: Xufeng Liu
<mailto:xufeng.liu.ietf@gmail.com>
Editor: Vishnu Pavan Beeram
Busi, et al. Expires 30 October 2022 [Page 6]
Internet-Draft MPLS-TE Topology YANG Model April 2022
<mailto:vbeeram@juniper.net>
Editor: Tarek Saad
<mailto:tsaad@juniper.net>
Editor: Rakesh Gandhi
<mailto:rgandhi@cisco.com>
Editor: Igor Bryskin
<mailto:i_bryskin@yahoo.com>
Editor: Yanlei Zheng
<mailto:zhengyanlei@chinaunicom.cn>";
description
"This module defines technology-specific MPLS-TE types
data model.
Copyright (c) 2021 IETF Trust and the persons identified
as authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with
or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Simplified
BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
revision 2021-10-12 {
description
"Initial Version";
reference
"draft-busizheng-teas-yang-te-mpls-topology-02";
}
/*
* Typedefs
*/
typedef load-balancing-type {
type enumeration {
enum per-flow {
description
"The load-balancing algorithm ensures that packets
characterized as the same flow (e.g. based on IP 5-tuple)
Busi, et al. Expires 30 October 2022 [Page 7]
Internet-Draft MPLS-TE Topology YANG Model April 2022
that egress on a LAG or a bundled TE link are forwarded
on the same component link.
Packets for different flows within the same LSP can be
forwarded on different component links.";
}
enum per-top-label {
description
"The load-balancing algorithm ensures incoming MPLS
packets with the same top MPLS label and that egress on
on a LAG or bundled TE link are forwarded on the same
component link.
Packets for different flows within the same LSP are
forwarded on the same component link.";
}
}
description
"The type of load balancing used on bundled links.";
} // typedef load-balancing-type
/*
* Groupings
*/
grouping te-mpls-label-hop {
description
"MPLS-TE Label Hop.";
leaf mpls-label {
type rt-types:mpls-label;
description
"MPLS Label.";
}
} // grouping te-mpls-label-hop
}
<CODE ENDS>
Figure 2: MPLS-TE Types YANG model
5. YANG model for MPLS-TE Topology
5.1. YANG Tree
Figure 3 below shows the tree diagram of the YANG model defined in
module ietf-te-mpls-topology.yang.
Busi, et al. Expires 30 October 2022 [Page 8]
Internet-Draft MPLS-TE Topology YANG Model April 2022
module: ietf-te-mpls-topology
augment /nw:networks/nw:network/nw:network-types/tet:te-topology
/tet-pkt:packet:
+--rw mpls-topology!
augment /nw:networks/nw:network/nt:link/tet:te:
+--rw load-balancing-type? mte-types:load-balancing-type
augment /nw:networks/nw:network/nw:node/nt:termination-point
/tet:te:
+--ro uhp-incapable? empty
Figure 3: MPLS-TE topology YANG tree
5.2. YANG Code
<CODE BEGINS> file "ietf-te-mpls-topology@2021-07-12.yang"
module ietf-te-mpls-topology {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-te-mpls-topology";
prefix "tet-mpls";
import ietf-network {
prefix "nw";
}
import ietf-network-topology {
prefix "nt";
}
import ietf-te-topology {
prefix "tet";
}
import ietf-te-topology-packet {
prefix "tet-pkt";
}
import ietf-mpls-te-types {
prefix "mte-types";
}
organization
"Internet Engineering Task Force (IETF) TEAS WG";
contact
"WG Web: <https://datatracker.ietf.org/wg/teas/>
WG List: <mailto:teas@ietf.org>
Busi, et al. Expires 30 October 2022 [Page 9]
Internet-Draft MPLS-TE Topology YANG Model April 2022
Editor: Italo Busi
<mailto:italo.busi@huawei.com>
Editor: Haomian Zheng
<mailto:zhenghaomian@huawei.com>
Editor: Aihua Guo
<mailto:aihuaguo.ietf@gmail.com>
Editor: Xufeng Liu
<mailto:xufeng.liu.ietf@gmail.com>
Editor: Vishnu Pavan Beeram
<mailto:vbeeram@juniper.net>
Editor: Tarek Saad
<mailto:tsaad@juniper.net>
Editor: Rakesh Gandhi
<mailto:rgandhi@cisco.com>
Editor: Igor Bryskin
<mailto:i_bryskin@yahoo.com>
Editor: Yanlei Zheng
<mailto:zhengyanlei@chinaunicom.cn>";
description
"This module defines technology-specific MPLS-TE topology
data model.
Copyright (c) 2021 IETF Trust and the persons identified
as authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with
or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Simplified
BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
revision 2021-10-12 {
description
"Initial Version";
reference
Busi, et al. Expires 30 October 2022 [Page 10]
Internet-Draft MPLS-TE Topology YANG Model April 2022
"draft-busizheng-teas-yang-te-mpls-topology-02";
}
/*
* Augmentations
*/
augment "/nw:networks/nw:network/nw:network-types/"
+ "tet:te-topology/tet-pkt:packet" {
description
"Augment network types to include MPLS-TE Topology Type";
container mpls-topology {
presence
"Indicates an MPLS-TE Topology Type.";
description
"Its presence indicates an MPLS-TE Topology";
}
}
augment "/nw:networks/nw:network/nt:link/tet:te" {
when "../../nw:network-types/tet:te-topology/"
+ "tet-pkt:packet/tet-mpls:mpls-topology" {
description
"Augment MPLS-TE Topology.";
}
description
"Augment TE Link.";
leaf load-balancing-type {
type mte-types:load-balancing-type;
default 'per-flow';
description
"Indicates the type of load-balancing (per-flow or per-LSP)
performed by the bundled TE Link.
This leaf is not present when the TE Link is not bundled.";
} // leaf load-balancing-type
}
augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
+ "tet:te" {
when "../../../nw:network-types/tet:te-topology/"
+ "tet-pkt:packet/tet-mpls:mpls-topology" {
description "Augment MPLS-TE Topology.";
}
description "Augment LTP.";
leaf uhp-incapable {
Busi, et al. Expires 30 October 2022 [Page 11]
Internet-Draft MPLS-TE Topology YANG Model April 2022
type empty;
config false;
description
"When present, indicates that the LTP is not capable to
support Ultimate Hop Popping (UHP).";
} // leaf uhp-incapable
}
}
<CODE ENDS>
Figure 4: MPLS-TE topology YANG module
6. Security Considerations
To be added.
7. IANA Considerations
To be added.
8. References
8.1. Normative References
[I-D.ietf-teas-yang-l3-te-topo]
Liu, X., Bryskin, I., Beeram, V. P., Saad, T., Shah, H.,
and O. G. D. Dios, "YANG Data Model for Layer 3 TE
Topologies", Work in Progress, Internet-Draft, draft-ietf-
teas-yang-l3-te-topo-12, 24 October 2021,
<https://www.ietf.org/archive/id/draft-ietf-teas-yang-l3-
te-topo-12.txt>.
[RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger,
"Common YANG Data Types for the Routing Area", RFC 8294,
DOI 10.17487/RFC8294, December 2017,
<https://www.rfc-editor.org/info/rfc8294>.
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
<https://www.rfc-editor.org/info/rfc8340>.
[RFC8795] Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
O. Gonzalez de Dios, "YANG Data Model for Traffic
Engineering (TE) Topologies", RFC 8795,
DOI 10.17487/RFC8795, August 2020,
<https://www.rfc-editor.org/info/rfc8795>.
8.2. Informative References
Busi, et al. Expires 30 October 2022 [Page 12]
Internet-Draft MPLS-TE Topology YANG Model April 2022
[I-D.ietf-teas-yang-te-mpls]
Saad, T., Gandhi, R., Liu, X., Beeram, V. P., and I.
Bryskin, "A YANG Data Model for MPLS Traffic Engineering
Tunnels", Work in Progress, Internet-Draft, draft-ietf-
teas-yang-te-mpls-03, 9 March 2020,
<https://www.ietf.org/archive/id/draft-ietf-teas-yang-te-
mpls-03.txt>.
[RFC5921] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau,
L., and L. Berger, "A Framework for MPLS in Transport
Networks", RFC 5921, DOI 10.17487/RFC5921, July 2010,
<https://www.rfc-editor.org/info/rfc5921>.
Acknowledgments
We thank Loa Andersson for providing useful suggestions for this
draft.
This document was prepared using kramdown.
Previous versions of this document was prepared using 2-Word-
v2.0.template.dot.
Contributors
Haomian Zheng
Huawei Technologies
Email: zhenghaomian@huawei.com
Vishnu Pavan Beeram
Juniper Networks
Email: vbeeram@juniper.net
Igor Bryskin
Individual
Email: i_bryskin@yahoo.com
Yanlei Zheng
China Unicom
Email: zhengyanlei@chinaunicom.cn
Authors' Addresses
Busi, et al. Expires 30 October 2022 [Page 13]
Internet-Draft MPLS-TE Topology YANG Model April 2022
Italo Busi
Huawei Technologies
Email: italo.busi@huawei.com
Aihua Guo
Futurewei Inc.
Email: aihuaguo.ietf@gmail.com
Xufeng Liu
Volta Networks
Email: xufeng.liu.ietf@gmail.com
Tarek Saad
Juniper Networks
Email: tsaad@juniper.net
Rakesh Gandhi
Cisco Systems, Inc.
Email: rgandhi@cisco.com
Busi, et al. Expires 30 October 2022 [Page 14]