draft-ietf-teas-yang-te-topo-16.txt   draft-ietf-teas-yang-te-topo-17.txt 
skipping to change at page 1, line 15 skipping to change at page 1, line 15
Huawei Technologies Huawei Technologies
Vishnu Pavan Beeram Vishnu Pavan Beeram
Juniper Networks Juniper Networks
Tarek Saad Tarek Saad
Cisco Systems Inc Cisco Systems Inc
Himanshu Shah Himanshu Shah
Ciena Ciena
Oscar Gonzalez De Dios Oscar Gonzalez De Dios
Telefonica Telefonica
Expires: December 4, 2018 June 4, 2018 Expires: December 23, 2018 June 23, 2018
YANG Data Model for Traffic Engineering (TE) Topologies YANG Data Model for Traffic Engineering (TE) Topologies
draft-ietf-teas-yang-te-topo-16 draft-ietf-teas-yang-te-topo-17
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), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 1, line 41 skipping to change at page 1, line 41
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html http://www.ietf.org/shadow.html
This Internet-Draft will expire on December 4, 2018. This Internet-Draft will expire on December 23, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 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
(http://trustee.ietf.org/license-info) in effect on the date of (http://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 25 skipping to change at page 2, line 25
Abstract Abstract
This document defines a YANG data model for representing, retrieving This document defines a YANG data model for representing, retrieving
and manipulating Traffic Engineering (TE) Topologies. The model and manipulating Traffic Engineering (TE) Topologies. The model
serves as a base model that other technology specific TE Topology serves as a base model that other technology specific TE Topology
models can augment. models can augment.
Conventions used in this document 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", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in RFC-2119 [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.
Table of Contents Table of Contents
1. Introduction...................................................3 1. Introduction...................................................3
1.1. Terminology...............................................4 1.1. Terminology...............................................4
1.2. Tree Structure............................................4 1.2. Tree Structure............................................4
1.3. Prefixes in Data Node Names...............................5 1.3. Prefixes in Data Node Names...............................5
2. Characterizing TE Topologies...................................5 2. Characterizing TE Topologies...................................5
3. Modeling Abstractions and Transformations......................6 3. Modeling Abstractions and Transformations......................7
3.1. TE Topology...............................................6 3.1. TE Topology...............................................7
3.2. TE Node...................................................7 3.2. TE Node...................................................7
3.3. TE Link...................................................7 3.3. TE Link...................................................8
3.4. Transitional TE Link for Multi-Layer Topologies...........7 3.4. Transitional TE Link for Multi-Layer Topologies...........8
3.5. TE Link Termination Point (LTP)...........................9 3.5. TE Link Termination Point (LTP)..........................10
3.6. TE Tunnel Termination Point (TTP).........................9 3.6. TE Tunnel Termination Point (TTP)........................10
3.7. TE Node Connectivity Matrix..............................10 3.7. TE Node Connectivity Matrix..............................11
3.8. TTP Local Link Connectivity List (LLCL)..................10 3.8. TTP Local Link Connectivity List (LLCL)..................11
3.9. TE Path..................................................10 3.9. TE Path..................................................11
3.10. TE Inter-Layer Lock.....................................10 3.10. TE Inter-Layer Lock.....................................12
3.11. Underlay TE topology....................................12 3.11. Underlay TE topology....................................13
3.12. Overlay TE topology.....................................12 3.12. Overlay TE topology.....................................13
3.13. Abstract TE topology....................................12 3.13. Abstract TE topology....................................13
4. Model Applicability...........................................13
4.1. Native TE Topologies.....................................13 4. Model Applicability...........................................14
4.2. Customized TE Topologies.................................15 4.1. Native TE Topologies.....................................14
4.3. Merging TE Topologies Provided by Multiple Providers.....18 4.2. Customized TE Topologies.................................16
4.3. Merging TE Topologies Provided by Multiple Providers.....19
4.4. Dealing with Multiple Abstract TE Topologies Provided by the 4.4. Dealing with Multiple Abstract TE Topologies Provided by the
Same Provider.................................................21 Same Provider.................................................22
5. Modeling Considerations.......................................24 5. Modeling Considerations.......................................25
5.1. Network topology building blocks.........................24 5.1. Network topology building blocks.........................25
5.2. Technology agnostic TE Topology model....................24 5.2. Technology agnostic TE Topology model....................25
5.3. Model Structure..........................................25 5.3. Model Structure..........................................26
5.4. Topology Identifiers.....................................26 5.4. Topology Identifiers.....................................27
5.5. Generic TE Link Attributes...............................26 5.5. Generic TE Link Attributes...............................27
5.6. Generic TE Node Attributes...............................27 5.6. Generic TE Node Attributes...............................28
5.7. TED Information Sources..................................28 5.7. TED Information Sources..................................29
5.8. Overlay/Underlay Relationship............................29 5.8. Overlay/Underlay Relationship............................30
5.9. Templates................................................30 5.9. Templates................................................31
5.10. Scheduling Parameters...................................31 5.10. Scheduling Parameters...................................32
5.11. Notifications...........................................31 5.11. Notifications...........................................32
6. Guidance for Writing Technology Specific TE Topology Augmentations 6. Guidance for Writing Technology Specific TE Topology Augmentations
.................................................................32 .................................................................33
7. TE Topology YANG Module.......................................44 7. TE Topology YANG Module.......................................45
8. Security Considerations.......................................92 8. Security Considerations.......................................92
9. IANA Considerations...........................................94 9. IANA Considerations...........................................94
10. References...................................................94 10. References...................................................95
10.1. Normative References....................................94 10.1. Normative References....................................95
10.2. Informative References..................................95 10.2. Informative References..................................96
11. Acknowledgments..............................................96 11. Acknowledgments.............................................100
Appendix A. Complete Model Tree Structure........................97 Appendix A. Complete Model Tree Structure.......................101
Appendix B. Companion YANG Model for Non-NMDA Compliant Appendix B. Companion YANG Model for Non-NMDA Compliant
Implementations.................................................151 Implementations.................................................150
Appendix C. Example: YANG Model for Technology Specific Augmentations Appendix C. Example: YANG Model for Technology Specific Augmentations
................................................................159 ................................................................158
Contributors....................................................197 Contributors....................................................196
Authors' Addresses..............................................197 Authors' Addresses..............................................196
1. Introduction 1. Introduction
The Traffic Engineering Database (TED) is an essential component of The Traffic Engineering Database (TED) is an essential component of
Traffic Engineered (TE) systems that are based on MPLS-TE [RFC2702] Traffic Engineered (TE) systems that are based on MPLS-TE [RFC2702]
and GMPLS [RFC3945]. The TED is a collection of all TE information and GMPLS [RFC3945]. The TED is a collection of all TE information
about all TE nodes and TE links in the network. The TE Topology is a about all TE nodes and TE links in the network. The TE Topology is a
schematic arrangement of TE nodes and TE links present in a given schematic arrangement of TE nodes and TE links present in a given
TED. There could be one or more TE Topologies present in a given TED. There could be one or more TE Topologies present in a given
Traffic Engineered system. The TE Topology is the topology on which Traffic Engineered system. A TE Topology is the topology on which
path computational algorithms are run to compute Traffic Engineered path computational algorithms are run to compute Traffic Engineered
Paths (TE Paths). Paths (TE Paths).
This document defines a YANG [RFC7950] data model for representing This document defines a YANG [RFC7950] data model for representing
and manipulating TE Topologies. This model contains technology and manipulating TE Topologies. This model contains technology
agnostic TE Topology building blocks that can be augmented and used agnostic TE Topology building blocks that can be augmented and used
by other technology-specific TE Topology models. by other technology-specific TE Topology models.
1.1. Terminology 1.1. Terminology
skipping to change at page 4, line 36 skipping to change at page 4, line 39
and TE links in a given TED. It forms the basis for a graph suitable and TE links in a given TED. It forms the basis for a graph suitable
for TE path computations. for TE path computations.
Native TE Topology: Native TE Topology is a topology that is native Native TE Topology: Native TE Topology is a topology that is native
to a given provider network. Native TE topology could be discovered to a given provider network. Native TE topology could be discovered
via various routing protocols and/or subscribe/publish techniques. via various routing protocols and/or subscribe/publish techniques.
This is the topology on which path computational algorithms are run This is the topology on which path computational algorithms are run
to compute TE Paths. to compute TE Paths.
Customized TE Topology: Customized TE Topology is a custom topology Customized TE Topology: Customized TE Topology is a custom topology
that is produced by a provider for a given Client. This topology that is produced by a provider for a given client. This topology
typically augments the Client's Native TE Topology. Path typically makes abstractions on the provider's Native TE Topology,
computational algorithms aren't typically run on the Customized TE and is provided to the client. The client receives the Customized TE
Topology; they are run on the Client's augmented Native TE Topology. Topology, and merges it into the client's Native TE Topology. The
client's path computational algorithms aren't typically run on the
Customized TE Topology; they are run on the client's Native TE
Topology after the merge.
1.2. Tree Structure 1.2. Tree Structure
A simplified graphical representation of the data model is presented A simplified graphical representation of the data model is presented
in Appendix A. of this document. The tree format defined in [RFC8340] in Appendix A. of this document. The tree format defined in [RFC8340]
is used for the YANG data model tree representation. is used for the YANG data model tree representation.
1.3. Prefixes in Data Node Names 1.3. Prefixes in Data Node Names
In this document, names of data nodes and other data model objects In this document, names of data nodes and other data model objects
are prefixed using the standard prefix associated with the are prefixed using the standard prefix associated with the
corresponding YANG imported modules, as shown in Table 1. corresponding YANG imported modules, as shown in Table 1.
+--------+-----------------+-----------+ +----------+-----------------------+-------------------------+
| Prefix | YANG module | Reference | | Prefix | YANG module | Reference |
+--------+-----------------+-----------+ +----------+-----------------------+-------------------------+
| yang | ietf-yang-types | [RFC6991] | | yang | ietf-yang-types | [RFC6991] |
| inet | ietf-inet-types | [RFC6991] | | inet | ietf-inet-types | [RFC6991] |
+--------+-----------------+-----------+ | nw | ietf-network | [RFC6991] |
| nt | ietf-network-topology | [RFC8345] |
| te-types | ietf-te-types | [I-D.ietf-teas-yang-te] |
+----------+-----------------------+-------------------------+
Table 1: Prefixes and corresponding YANG modules Table 1: Prefixes and corresponding YANG modules
2. Characterizing TE Topologies 2. Characterizing TE Topologies
The data model proposed by this document takes the following The data model proposed by this document takes the following
characteristics of TE Topologies into account: characteristics of TE Topologies into account:
- TE Topology is an abstract control-plane representation of the - TE Topology is an abstract control-plane representation of the
data-plane topology. Hence attributes specific to the data-plane data-plane topology. Hence attributes specific to the data-plane
must make their way into the corresponding TE Topology modeling. must make their way into the corresponding TE Topology modeling.
The TE Topology comprises of dynamic auto-discovered data (data The TE Topology comprises of dynamic auto-discovered data as well
that may change frequently - example: unreserved bandwidth as fairly static data associated with data-plane nodes and links.
available on data-plane links) as well as fairly static data (data The dynamic data may change frequently, such as unreserved
that rarely changes- examples: layer network identification, bandwidth available on data-plane links. The static data rarely
switching and adaptation capabilities and limitations, fate changes, such as layer network identification, switching and
sharing, administrative colors) associated with data-plane nodes adaptation capabilities and limitations, fate sharing, and
and links. It is possible for a single TE Topology to encompass TE administrative colors. It is possible for a single TE Topology to
information at multiple switching layers. encompass TE information at multiple switching layers.
- TE Topologies are protocol independent. Information about - TE Topologies are protocol independent. Information about
topological elements may be learnt via link-state protocols, but topological elements may be learnt via link-state protocols, but
the topology can exist without being dependent on any particular the topology can exist without being dependent on any particular
protocol. protocol.
- TE Topology may not be congruent to the routing topology (topology - TE Topology may not be congruent to the routing topology in a
constructed based on routing adjacencies) in a given TE System. given TE System. The routing topology is constructed based on
There isn't always a one-to-one association between a TE-link and routing adjacencies. There isn't always a one-to-one association
a routing adjacency. For example, the presence of a TE link between a TE-link and a routing adjacency. For example, the
between a pair of nodes doesn't necessarily imply the existence of presence of a TE link between a pair of nodes doesn't necessarily
a routing-adjacency between these nodes. imply the existence of a routing-adjacency between these nodes.
- Each TE Topological element has an information source associated - Each TE Topological element has at least one information source
with it. In some scenarios, there could be more than one associated with it. In some scenarios, there could be more than
information source associated with each topological element. one information source associated with any given topological
element.
- TE Topologies can be hierarchical. Each node and link of a given - TE Topologies can be hierarchical. Each node and link of a given
TE Topology can be associated with respective underlay topology. TE Topology can be associated with respective underlay topology.
This means that each node and link of a given TE Topology can be This means that each node and link of a given TE Topology can be
associated with an independent stack of supporting TE Topologies. associated with an independent stack of supporting TE Topologies.
- TE Topologies can be customized. TE topologies of a given network - TE Topologies can be customized. TE topologies of a given network
presented by the network provider to its client could be presented by the network provider to its client could be
customized on per-client request basis. This customization could customized on per-client request basis. This customization could
be performed by provider, by client or by provider/client be performed by provider, by client or by provider/client
negotiation. The relationship between a customized topology (as negotiation. The relationship between a customized topology and
presented to the client) and provider's native topology (as known provider's native topology could be captured as hierarchical
in its entirety to the provider itself) could be captured as (overlay-underlay), but otherwise the two topologies are decoupled
hierarchical (overlay-underlay), but otherwise the two topologies from each other. A customized topology is presented to the client,
are decoupled from each other. while provider's native topology is known in its entirety to the
provider itself.
3. Modeling Abstractions and Transformations 3. Modeling Abstractions and Transformations
| +---+ __
| | | TE Node \/ TTP o LTP
| +---+
|
| ----- TE Link
| ***** Node Connectivity Matrix,
| TTP Local Link Connectivity
| @@@@@ TE Tunnel
o----------------------------------
Node-1 Node-3 Node-1 Node-3
+------------+ +------------+ +------------+ +------------+
| TTP-1 | | TTP-1 | | TTP-1 | | TTP-1 |
|LTP __ | TE-Tunel-1 | __ | |LTP __ | TE-Tunel-1 | __ |
|-6 \/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\/ | |-6 \/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\/ |
o * * oLTP-1 Node-2 LTP-6o * * o o * * oLTP-1 Node-2 LTP-6o * * o
| * * | +------------+ | * * | | * * | +------------+ | * * |
| * TTP-2* | | | | * TTP-2* | | * TTP-2* | | | | * TTP-2* |
| * __ * |LTP-2 LTP-6| |LTP-1 LTP-5| * __ * | | * __ * |LTP-2 LTP-6| |LTP-1 LTP-5| * __ * |
o* \/ *o-----------o************o-----------o* \/ *o o* \/ *o-----------o************o-----------o* \/ *o
skipping to change at page 7, line 7 skipping to change at page 7, line 46
3.1. TE Topology 3.1. TE Topology
TE topology is a traffic engineering representation of one or more TE topology is a traffic engineering representation of one or more
layers of network topologies. TE topology is comprised of TE nodes layers of network topologies. TE topology is comprised of TE nodes
(TE graph vertices) interconnected via TE links (TE graph edges). A (TE graph vertices) interconnected via TE links (TE graph edges). A
TE topology is mapped to a TE graph. TE topology is mapped to a TE graph.
3.2. TE Node 3.2. TE Node
TE node is an element of a TE topology (presented as a vertex on TE TE node is an element of a TE topology, presented as a vertex on TE
graph). TE node represents one or several nodes (physical switches), graph. TE node represents one or several nodes, or a fraction of a
or a fraction of a node. TE node belongs to and is fully defined in node, which can be a switch or router that is physical or virtual. TE
exactly one TE topology. TE node is assigned with the TE topology node belongs to and is fully defined in exactly one TE topology. TE
scope unique ID. TE node attributes include information related to node is assigned a unique ID within the TE topology scope. TE node
the data plane aspects of the associated node(s) (e.g. connectivity attributes include information related to the data plane aspects of
matrix), as well as configuration data (such as TE node name). A the associated node(s) (e.g. connectivity matrix), as well as
given TE node can be reached on the TE graph over one of TE links configuration data (such as TE node name). A given TE node can be
terminated by the TE node. reached on the TE graph over one of TE links terminated by the TE
node.
Multi-layer TE nodes providing switching functions at multiple Multi-layer TE nodes providing switching functions at multiple
network layers are an example where a physical node can be decomposed network layers are an example where a physical node can be decomposed
into multiple logical TE nodes (fractions of a node). Some of these into multiple logical TE nodes, which are fractions of the physical
(logical) TE nodes may reside in the client layer TE topology while node. Some of these (logical) TE nodes may reside in the client layer
the remaining TE nodes belong to the server layer TE topology. TE topology while the remaining TE nodes belong to the server layer
TE topology.
In Figure 1, Node-1, Node-2, and Node-3 are TE nodes. In Figure 1, Node-1, Node-2, and Node-3 are TE nodes.
3.3. TE Link 3.3. TE Link
TE link is an element of a TE topology (presented as an edge on TE TE link is an element of a TE topology, presented as an edge on TE
graph, arrows indicate one or both directions of the TE link). TE graph. The arrows on an edge indicate one or both directions of the
link represents one or several (physical) links or a fraction of a TE link. When there are a pair of parallel links of opposite
link. TE link belongs to and is fully defined in exactly one TE directions, an edge without arrows is also used. TE link represents
topology. TE link is assigned with the TE topology scope unique ID. one or several (physical) links or a fraction of a link. TE link
TE link attributes include parameters related to the data plane belongs to and is fully defined in exactly one TE topology. TE link
aspects of the associated link(s) (e.g. unreserved bandwidth, is assigned a unique ID within the TE topology scope. TE link
resource maps/pools, etc.), as well as the configuration data (such attributes include parameters related to the data plane aspects of
as remote node/link IDs, SRLGs, administrative colors, etc.). TE link the associated link(s) (e.g. unreserved bandwidth, resource
is connected to TE node, terminating the TE link via exactly one TE maps/pools, etc.), as well as the configuration data (such as remote
link termination point (LTP). node/link IDs, SRLGs, administrative colors, etc.). TE link is
connected to TE node, terminating the TE link via exactly one TE link
termination point (LTP).
In Figure 1, Link-12 and Link-23 are TE links. In Figure 1, Link-12 and Link-23 are TE links.
3.4. Transitional TE Link for Multi-Layer Topologies 3.4. Transitional TE Link for Multi-Layer Topologies
Networks are typically composed of multiple network layers where one Networks are typically composed of multiple network layers where one
or multiple signals in the client layer network can be multiplexed or multiple signals in the client layer network can be multiplexed
and encapsulated into a server layer signal [RFC5212] [G.805]. The and encapsulated into a server layer signal [RFC5212] [G.805]. The
server layer signal can be carried in the server layer network across server layer signal can be carried in the server layer network across
multiple nodes until the server layer signal is terminated and the multiple nodes until the server layer signal is terminated and the
client layer signals reappear in the node that terminates the server client layer signals reappear in the node that terminates the server
layer signal. Examples of multi-layer networks are: IP over MPLS over layer signal. Examples of multi-layer networks are: IP over MPLS over
Ethernet, low order Optical Data Unit-k (ODUk) signals multiplexed Ethernet, low order Optical Data Unit-k (ODUk) signals multiplexed
into a high order ODUl (l>k) carried over an Optical Channel (OCh) into a high order ODUl (l>k) carried over an Optical Channel (OCh)
signal in an optical transport network as defined in [G.872] and signal in an optical transport network as defined in [G.872] and
[G.709]. [G.709].
TE links as defined in 3.3. can be used to represent links within a TE links as defined in 3.3. can be used to represent links within a
network layer. In case of a multi-layer network, TE nodes and TE network layer. In case of a multi-layer network, TE nodes and TE
links only allow representation of each network layer as a separate links only allow representation of each network layer as a separate
TE topology Each of these single layer TE topologies would be TE topology. Each of these single layer TE topologies would be
isolated from their client and their server layer TE topology, if isolated from their client and their server layer TE topology, if
present (the highest and the lowest network layer in the hierarchy present. The highest and the lowest network layer in the hierarchy
only have a single adjacent layer below or above, respectively). only have a single adjacent layer below or above, respectively.
Multiplexing of client layer signals and encapsulating them into a Multiplexing of client layer signals and encapsulating them into a
server layer signal requires a function that is provided inside a server layer signal requires a function that is provided inside a
node (typically realized in hardware). This function is also called node (typically realized in hardware). This function is also called
layer transition. layer transition.
One of the key requirements for path computation is to be able to One of the key requirements for path computation is to be able to
calculate a path between two endpoints across a multi-layer network calculate a path between two endpoints across a multi-layer network
based on the TE topology representing this multi-layer network. This based on the TE topology representing this multi-layer network. This
means that an additional TE construct is needed that represents means that an additional TE construct is needed that represents
potential layer transitions in the multi-layer TE-topology that potential layer transitions in the multi-layer TE-topology that
skipping to change at page 8, line 36 skipping to change at page 9, line 34
represents the layer transition function residing inside a node that represents the layer transition function residing inside a node that
is decomposed into multiple logical nodes that are represented as TE is decomposed into multiple logical nodes that are represented as TE
nodes (see also the transitional link definition in [G.8080] for the nodes (see also the transitional link definition in [G.8080] for the
optical transport network). Hence, a transitional TE link connects a optical transport network). Hence, a transitional TE link connects a
client layer node with a server layer node. A TE link as defined in client layer node with a server layer node. A TE link as defined in
3.3. has LTPs of exactly the same kind on each link end whereas the 3.3. has LTPs of exactly the same kind on each link end whereas the
transitional TE link has client layer LTPs on the client side of the transitional TE link has client layer LTPs on the client side of the
transitional link and in most cases a single server layer LTP on the transitional link and in most cases a single server layer LTP on the
server side. It should be noted that transitional links are a helper server side. It should be noted that transitional links are a helper
construct in the multi-layer TE topology and they only exist as long construct in the multi-layer TE topology and they only exist as long
as they are not in use (as they represent potential connectivity). as they are not in use, as they represent potential connectivity.
When the server layer trail has been established between the server When the server layer trail has been established between the server
layer LTP of two transitional links in the server layer network, the layer LTP of two transitional links in the server layer network, the
resulting client layer link in the data plane will be represented as resulting client layer link in the data plane will be represented as
a normal TE link in the client layer topology. The transitional TE a normal TE link in the client layer topology. The transitional TE
links will re-appear when the server layer trail has been torn down. links will re-appear when the server layer trail has been torn down.
| |
| +---+ ---
| | | TE Node \ / Transitional
| +---+ | Link
|
| ----- Client Layer Link
| ===== Server Layer Link
| ***** Layer Boundary
o----------------------------------
+------------------+ +------------------+
| +------+ | +------+ | +------+ | +------+
-----|Client|------+ | Client -----|Client| -----|Client|------+ | Client -----|Client|
| |Layer |---+ | | Layer |Layer | | |Layer |---+ | | Layer |Layer |
-----|Switch|-+ | | | Links -----|Node | -----|Switch|-+ | | | Links -----|Node |
| +------+ | | | | +------+ | +------+ | | | | +------+
| | | | | Client | | | | | | | | Client | | |
| | | ---_| Layer --- --- | | | ---_| Layer --- ---
***|**********|*| \ /*|***************************\ /*\ /**** ***|**********|*| \ /*|***************************\ /*\ /****
| --- | | Server Transitional | | | --- | | Server Transitional | |
skipping to change at page 9, line 43 skipping to change at page 11, line 5
Cardinality between an LTP and the associated TE link is 1:0..1. Cardinality between an LTP and the associated TE link is 1:0..1.
In Figure 1, Node-2 has six LTPs: LTP-1 to LTP-6. In Figure 1, Node-2 has six LTPs: LTP-1 to LTP-6.
3.6. TE Tunnel Termination Point (TTP) 3.6. TE Tunnel Termination Point (TTP)
TE tunnel termination point (TTP) is an element of TE topology TE tunnel termination point (TTP) is an element of TE topology
representing one or several of potential transport service representing one or several of potential transport service
termination points (i.e. service client adaptation points such as termination points (i.e. service client adaptation points such as
WDM/OCh transponder). TTP is associated with (hosted by) exactly one WDM/OCh transponder). TTP is associated with (hosted by) exactly one
TE node. TTP is assigned with the TE node scope unique ID. Depending TE node. TTP is assigned a unique ID within the TE node scope.
on the TE node's internal constraints, a given TTP hosted by the TE Depending on the TE node's internal constraints, a given TTP hosted
node could be accessed via one, several or all TE links terminated by by the TE node could be accessed via one, several or all TE links
the TE node. terminated by the TE node.
In Figure 1, Node-1 has two TTPs: TTP-1 and TTP-2. In Figure 1, Node-1 has two TTPs: TTP-1 and TTP-2.
3.7. TE Node Connectivity Matrix 3.7. TE Node Connectivity Matrix
TE node connectivity matrix is a TE node's attribute describing the TE node connectivity matrix is a TE node's attribute describing the
TE node's switching limitations in a form of valid switching TE node's switching limitations in a form of valid switching
combinations of the TE node's LTPs (see below). From the point of combinations of the TE node's LTPs (see below). From the point of
view of a potential TE path arriving at the TE node at a given view of a potential TE path arriving at the TE node at a given
inbound LTP, the node's connectivity matrix describes valid inbound LTP, the node's connectivity matrix describes valid
skipping to change at page 10, line 24 skipping to change at page 11, line 31
In Figure 1, the connectivity matrix on Node-2 is: In Figure 1, the connectivity matrix on Node-2 is:
{<LTP-6, LTP-1>, <LTP-5, LTP-2>, <LTP-5, LTP-4>, <LTP-4, LTP-1>, {<LTP-6, LTP-1>, <LTP-5, LTP-2>, <LTP-5, LTP-4>, <LTP-4, LTP-1>,
<LTP-3, LTP-2>} <LTP-3, LTP-2>}
3.8. TTP Local Link Connectivity List (LLCL) 3.8. TTP Local Link Connectivity List (LLCL)
TTP Local Link Connectivity List (LLCL) is a List of TE links TTP Local Link Connectivity List (LLCL) is a List of TE links
terminated by the TTP hosting TE node (i.e. list of the TE link terminated by the TTP hosting TE node (i.e. list of the TE link
LTPs), which the TTP could be connected to. From the point of view of LTPs), which the TTP could be connected to. From the point of view of
a potential TE path LLCL provides a list of valid TE links the TE a potential TE path, LLCL provides a list of valid TE links the TE
path needs to start/stop on for the connection, taking the TE path, path needs to start/stop on for the connection, taking the TE path,
to be successfully terminated on the TTP in question. to be successfully terminated on the TTP in question.
In Figure 1, the LLCL on Node-1 is: In Figure 1, the LLCL on Node-1 is:
{<TTP-1, LTP-5>, <TTP-1, LTP-2>, <TTP-2, LTP-3>, <TTP-2, LTP4>} {<TTP-1, LTP-5>, <TTP-1, LTP-2>, <TTP-2, LTP-3>, <TTP-2, LTP4>}
3.9. TE Path 3.9. TE Path
TE path is an ordered list of TE links and/or TE nodes on the TE TE path is an ordered list of TE links and/or TE nodes on the TE
topology graph, inter-connecting a pair of TTPs to be taken by a topology graph, inter-connecting a pair of TTPs to be taken by a
skipping to change at page 10, line 50 skipping to change at page 12, line 14
3.10. TE Inter-Layer Lock 3.10. TE Inter-Layer Lock
TE inter-layer lock is a modeling concept describing client-server TE inter-layer lock is a modeling concept describing client-server
layer adaptation relationships and hence important for the multi- layer adaptation relationships and hence important for the multi-
layer traffic engineering. It is an association of M client layer layer traffic engineering. It is an association of M client layer
LTPs and N server layer TTPs, within which data arriving at any of LTPs and N server layer TTPs, within which data arriving at any of
the client layer LTPs could be adopted onto any of the server layer the client layer LTPs could be adopted onto any of the server layer
TTPs. TE inter-layer lock is identified by inter-layer lock ID, which TTPs. TE inter-layer lock is identified by inter-layer lock ID, which
is unique across all TE topologies provided by the same provider. The is unique across all TE topologies provided by the same provider. The
client layer LIPs and the server layer TTPs associated within a given client layer LTPs and the server layer TTPs associated within a given
TE inter-layer lock are annotated with the same inter-layer lock ID TE inter-layer lock are annotated with the same inter-layer lock ID
attribute. attribute.
| +---+ __
| | | TE Node \/ TTP o LTP
| +---+
|
| ----- TE Link
| ***** TTP Local Link Connectivity
o----------------------------------
(IL-1) C-LTP-1 +------------+ C-LTP-2 (IL-1) (IL-1) C-LTP-1 +------------+ C-LTP-2 (IL-1)
--------O (IL-1) O-------- --------O (IL-1) O--------
(IL-1) C-LTP-3 | S-TTP-1 | C-LTP-4 (IL-1) (IL-1) C-LTP-3 | S-TTP-1 | C-LTP-4 (IL-1)
--------O __ 0-------- --------O __ 0--------
(IL-1) C-LTP-5 | *\/* | C-LTP-5 (IL-1) (IL-1) C-LTP-5 | *\/* | C-LTP-5 (IL-1)
--------O * * O-------- --------O * * O--------
| *(IL-1)* | | *(IL-1)* |
S-LTP-3 | * S-TTP-2* | S-LTP-4 S-LTP-3 | * S-TTP-2* | S-LTP-4
--------o* __ *o-------- --------o* __ *o--------
| *\/* | | *\/* |
skipping to change at page 13, line 5 skipping to change at page 14, line 5
the provider's native TE topologies (underlay TE topologies), the the provider's native TE topologies (underlay TE topologies), the
provider's policies and the client's preferences. For example, a provider's policies and the client's preferences. For example, a
first level topology provider (such as Domain Controller) can create first level topology provider (such as Domain Controller) can create
an abstract TE topology for its client (e.g. Multi-Domain Service an abstract TE topology for its client (e.g. Multi-Domain Service
Coordinator) based on the provider's one or more native TE Coordinator) based on the provider's one or more native TE
topologies, local policies/profiles and the client's TE topology topologies, local policies/profiles and the client's TE topology
configuration requests configuration requests
Figure 4 shows an example of abstract TE topology. Figure 4 shows an example of abstract TE topology.
| +---+
| | | TE Node
| +---+
| ----- TE Link
o----------------------------------
+---+ +---+ +---+ +---+
|s31|--------------|S5 | |s31|--------------|S5 |
+---+\ / +---+ +---+\ / +---+
\ / \ /
\ / \ /
\+---+/ +---+ \+---+/ +---+
/|AN1|\----------------|S8 | /|AN1|\----------------|S8 |
/ +---+ \ +---+ / +---+ \ +---+
+---+ / \ +---+ +---+ / \ +---+
|S9 |-------------|S11| |S9 |-------------|S11|
skipping to change at page 14, line 5 skipping to change at page 15, line 5
Figure 4: Abstract TE Topology Figure 4: Abstract TE Topology
4. Model Applicability 4. Model Applicability
4.1. Native TE Topologies 4.1. Native TE Topologies
The model discussed in this draft can be used to represent and The model discussed in this draft can be used to represent and
retrieve native TE topologies on a given TE system. retrieve native TE topologies on a given TE system.
| +---+
| | | TE Node
| +---+
| ----- TE Link
o----------------------------------
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
| R1|-------| R2|--------| R3|---------| R4|---------| R5| | R1|-------| R2|--------| R3|---------| R4|---------| R5|
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
| / \ / \ / | / \ / \ /
| / \ / \ / | / \ / \ /
| / \ / \ / | / \ / \ /
| / \ / \ / | / \ / \ /
| / \ / \ / | / \ / \ /
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
| R6|-------------| R7| | R8|---------| R9| | R6|-------------| R7| | R8|---------| R9|
+---+ +---+ +---+ +---+ +---+ +---+ +---+ +---+
Figure 5a: Example Network Topology Figure 5a: Example Network Topology
Consider the network topology depicted in Figure 5a (R1 .. R9 are Consider the network topology depicted in Figure 5a. R1 .. R9 are
nodes representing routers). An implementation MAY choose to nodes representing routers. An implementation MAY choose to construct
construct a native TE Topology using all nodes and links present in a native TE Topology using all nodes and links present in the given
the given TED as depicted in Figure 5b. The data model proposed in TED as depicted in Figure 5b. The data model proposed in this
this document can be used to retrieve/represent this TE topology. document can be used to retrieve/represent this TE topology.
--------------- ---------------
| Native | | [ ] TE Node | Native | | [ ] TE Node
| TE-Topology | | +++ TE Link | TE-Topology | | +++ TE Link
--------------- o-------------- --------------- o--------------
[R1] ++++ [R2] ++++ [R3] ++++ [R4] ++++ [R5] [R1] ++++ [R2] ++++ [R3] ++++ [R4] ++++ [R5]
+ + + + + + + + + + + +
+ + + + + + + + + + + +
+ + ++ ++ + + ++ ++
skipping to change at page 17, line 37 skipping to change at page 18, line 39
[R2] ++++++++ [B] ++++++++++++++++++++ [F] +++++++++ [R4] [R2] ++++++++ [B] ++++++++++++++++++++ [F] +++++++++ [R4]
Figure 8c: Customized TE Topology merged with the Client's Native TE Figure 8c: Customized TE Topology merged with the Client's Native TE
Topology Topology
The data model proposed in this document can be used to The data model proposed in this document can be used to
retrieve/represent/manipulate the customized TE Topology depicted in retrieve/represent/manipulate the customized TE Topology depicted in
Figure 8b. Figure 8b.
A customized TE topology is not necessarily an abstract TE topology. A customized TE topology is not necessarily an abstract TE topology.
he provider may produce, for example, an abstract TE topology of The provider may produce, for example, an abstract TE topology of
certain type (e.g. single-abstract-node-with-connectivit-matrix certain type (e.g. single-abstract-node-with-connectivit-matrix
topology, a border_nodes_connected_via_mesh_of_abstract_links topology, a border_nodes_connected_via_mesh_of_abstract_links
topology, etc.) and expose it to all/some clients in expectation that topology, etc.) and expose it to all/some clients in expectation that
the clients will use it without customization. the clients will use it without customization.
On the other hand, a client may request a customized version of the On the other hand, a client may request a customized version of the
provider's native TE topology (e.g. by requesting removal of TE links provider's native TE topology (e.g. by requesting removal of TE links
which belong to certain layers, are too slow, not protected and/or which belong to certain layers, are too slow, not protected and/or
have a certain affinity). Note that the resulting TE topology will have a certain affinity). Note that the resulting TE topology will
not be abstract (because it will not contain abstract elements), but not be abstract (because it will not contain abstract elements), but
customized (modified upon client's instructions). customized (modified upon client's instructions).
The client ID field in the TE topology identifier (Section 5.4. The client ID field in the TE topology identifier (Section 5.4. )
indicates which client the TE topology is customized for. Although a indicates which client the TE topology is customized for. Although a
authorized client MAY receive a TE topology with the client ID field authorized client MAY receive a TE topology with the client ID field
matching some other client, the client can customize only TE matching some other client, the client can customize only TE
topologies with the client ID field either 0 or matching the ID of topologies with the client ID field either 0 or matching the ID of
the client in question. If the client starts reconfiguration of a the client in question. If the client starts reconfiguration of a
topology its client ID will be automatically set in the topology ID topology its client ID will be automatically set in the topology ID
field for all future configurations and updates wrt. the topology in field for all future configurations and updates wrt. the topology in
question. question.
The provider MAY tell the client that a given TE topology cannot be The provider MAY tell the client that a given TE topology cannot be
skipping to change at page 20, line 24 skipping to change at page 21, line 24
remote nodeID/linkID attribute in the provided inter-domain TE links. remote nodeID/linkID attribute in the provided inter-domain TE links.
This, however, may prove to be not flexible. For example, the This, however, may prove to be not flexible. For example, the
providers may not know the respective remote nodeIDs/ linkIDs. More providers may not know the respective remote nodeIDs/ linkIDs. More
importantly, this option does not allow for the client to mix-n-match importantly, this option does not allow for the client to mix-n-match
multiple (more than one) topologies catered by the same providers multiple (more than one) topologies catered by the same providers
(see below). Another, more flexible, option to resolve the open-ended (see below). Another, more flexible, option to resolve the open-ended
inter-domain TE links is by annotating them with the inter-domain inter-domain TE links is by annotating them with the inter-domain
plug ID attribute. Inter-domain plug ID is a network-wide unique plug ID attribute. Inter-domain plug ID is a network-wide unique
number that identifies on the network a connectivity supporting a number that identifies on the network a connectivity supporting a
given inter-domain TE link. Instead of specifying remote node ID/link given inter-domain TE link. Instead of specifying remote node ID/link
ID, an inter-domain TE link may provide a non-zero inert-domain plug ID, an inter-domain TE link may provide a non-zero inter-domain plug
ID. It is expected that two neighboring domain TE topologies ID. It is expected that two neighboring domain TE topologies
(provided by separate providers) will have each at least one open- (provided by separate providers) will have each at least one open-
ended inter-domain TE link with an inter-domain plug ID matching to ended inter-domain TE link with an inter-domain plug ID matching to
one provided by its neighbor. For example, the inter-domain TE link one provided by its neighbor. For example, the inter-domain TE link
originating from node S5 of the Domain 1 TE topology (Figure 1) and originating from node S15 of the Domain 1 TE topology (Figure 9) and
the inter-domain TE link coming from node S3 of Domain2 TE topology the inter-domain TE link coming from node S23 of Domain 2 TE topology
may specify matching inter-domain plug ID (e.g. 175344) This allows may specify matching inter-domain plug ID (e.g. 175344). This allows
for the client to identify adjacent nodes in the separate neighboring for the client to identify adjacent nodes in the separate neighboring
TE topologies and resolve the inter-domain TE links connecting them TE topologies and resolve the inter-domain TE links connecting them
regardless of their respective nodeIDs/linkIDs (which, as mentioned, regardless of their respective nodeIDs/linkIDs (which, as mentioned,
could be allocated from independent name spaces). Inter-domain plug could be allocated from independent name spaces). Inter-domain plug
IDs may be assigned and managed by a central network authority. IDs may be assigned and managed by a central network authority.
Alternatively, inter-domain plug IDs could be dynamically auto- Alternatively, inter-domain plug IDs could be dynamically auto-
discovered (e.g. via LMP protocol). discovered (e.g. via LMP protocol).
Furthermore, the client renames the TE nodes, links and SRLGs offered Furthermore, the client renames the TE nodes, links and SRLGs offered
in the abstract TE topologies by assigning to them IDs allocated from in the abstract TE topologies by assigning to them IDs allocated from
skipping to change at page 22, line 9 skipping to change at page 23, line 9
topologies. In any case, the client should be prepared for a provider topologies. In any case, the client should be prepared for a provider
to offer to the client more than one abstract TE topology. to offer to the client more than one abstract TE topology.
It should be up to the client (based on the client's local It should be up to the client (based on the client's local
configuration and/or policies conveyed to the client by the client's configuration and/or policies conveyed to the client by the client's
clients) to decide how to mix-and-match multiple abstract TE clients) to decide how to mix-and-match multiple abstract TE
topologies provided by each or some of the providers, as well as how topologies provided by each or some of the providers, as well as how
to merge them into the client's native TE topologies. The client also to merge them into the client's native TE topologies. The client also
decides how many such merged TE topologies it needs to produce and decides how many such merged TE topologies it needs to produce and
maintain. For example, in addition to the merged TE topology depicted maintain. For example, in addition to the merged TE topology depicted
in the upper part of Figure 1, the client may merge the abstract TE in the upper part of Figure 9, the client may merge the abstract TE
topologies received from the two providers, as shown in Figure 10, topologies received from the two providers, as shown in Figure 10,
into the client's additional native TE topologies, as shown in Figure into the client's additional native TE topologies, as shown in Figure
11. 11.
Note that allowing for the client mix-n-matching of multiple TE Note that allowing for the client mix-n-matching of multiple TE
topologies assumes that inter-domain plug IDs (rather than remote topologies assumes that inter-domain plug IDs (rather than remote
nodeID/linkID) option is used for identifying neighboring domains and nodeID/linkID) option is used for identifying neighboring domains and
inter-domain TE link resolution. inter-domain TE link resolution.
Client's Merged TE Topology 2 Client's Merged TE Topology 2
skipping to change at page 26, line 28 skipping to change at page 27, line 28
5.4. Topology Identifiers 5.4. Topology Identifiers
The TE-Topology is uniquely identified by a key that has 3 The TE-Topology is uniquely identified by a key that has 3
constituents - te-topology-id, provider-id and client-id. The constituents - te-topology-id, provider-id and client-id. The
combination of provider-id and te-topology-id uniquely identifies a combination of provider-id and te-topology-id uniquely identifies a
native TE Topology on a given provider. The client-id is used only native TE Topology on a given provider. The client-id is used only
when Customized TE Topologies come into play; a value of "0" is used when Customized TE Topologies come into play; a value of "0" is used
as the client-id for native TE Topologies. as the client-id for native TE Topologies.
augment /nw:networks/nw:network: augment /nw:networks/nw:network:
+--rw provider-id? te-types:te-global-id
+--rw client-id? te-types:te-global-id
+--rw te-topology-id? te-types:te-topology-id
+--rw te! +--rw te!
+--rw provider-id te-global-id | ............
+--rw client-id te-global-id
+--rw te-topology-id te-topology-id
5.5. Generic TE Link Attributes 5.5. Generic TE Link Attributes
The model covers the definitions for generic TE Link attributes - The model covers the definitions for generic TE Link attributes -
bandwidth, admin groups, SRLGs, switching capabilities, TE metric bandwidth, admin groups, SRLGs, switching capabilities, TE metric
extensions etc. extensions etc.
+--rw te-link-attributes +--rw te-link-attributes
..................... .....................
+--rw admin-status? te-admin-status +--rw admin-status? te-admin-status
skipping to change at page 27, line 24 skipping to change at page 28, line 24
The definition of a generic connectivity matrix is shown below: The definition of a generic connectivity matrix is shown below:
+--rw te-node-attributes +--rw te-node-attributes
........... ...........
+--rw connectivity-matrices +--rw connectivity-matrices
........... ...........
| +--rw connectivity-matrix* [id] | +--rw connectivity-matrix* [id]
| | +--rw id uint32 | | +--rw id uint32
| | +--rw from | | +--rw from
| | | +--rw tp-ref? leafref | | | +--rw tp-ref? leafref
| | | +--rw label-restriction* [inclusive-exclusive label- | | | +--rw label-restrictions
start]
| | +--rw to | | +--rw to
| | | +--rw tp-ref? leafref | | | +--rw tp-ref? leafref
| | | +--rw label-restriction* [inclusive-exclusive label- | | | +--rw label-restrictions
start]
| | +--rw is-allowed? boolean | | +--rw is-allowed? boolean
........... ...........
| | +--rw underlay! {te-topology-hierarchy}? | | +--rw underlay! {te-topology-hierarchy}?
........... ...........
| | +--rw path-constraints | | +--rw path-constraints
........... ...........
| | +--rw optimizations | | +--rw optimizations
........... ...........
| | +--ro path-properties | | +--ro path-properties
........... ...........
The definition of a TTP Local Link Connectivity List is shown below: The definition of a TTP Local Link Connectivity List is shown below:
+--rw tunnel-termination-point* [tunnel-tp-id] +--rw tunnel-termination-point* [tunnel-tp-id]
+--rw tunnel-tp-id binary +--rw tunnel-tp-id binary
+--rw admin-status? te-types:te-admin-status +--rw admin-status? te-types:te-admin-status
+--rw name? string +--rw name? string
+--rw switching-capability? identityref +--rw switching-capability? identityref
+--rw encoding? identityref +--rw encoding? identityref
+--rw inter-layer-lock-id? uint32 +--rw inter-layer-lock-id* uint32
+--rw protection-type? Identityref +--rw protection-type? Identityref
+--rw client-layer-adaptation +--rw client-layer-adaptation
........... ...........
+--rw local-link-connectivities +--rw local-link-connectivities
........... ...........
| +--rw local-link-connectivity* [link-tp-ref] | +--rw local-link-connectivity* [link-tp-ref]
| +--rw link-tp-ref leafref | +--rw link-tp-ref leafref
| +--rw label-restriction* [inclusive-exclusive label-start] | +--rw label-restrictions
........... ...........
| +--rw is-allowed? boolean | +--rw is-allowed? boolean
| +--rw underlay {te-topology-hierarchy}? | +--rw underlay {te-topology-hierarchy}?
........... ...........
| +--rw path-constraints | +--rw path-constraints
........... ...........
| +--rw optimizations | +--rw optimizations
........... ...........
| +--ro path-properties | +--ro path-properties
........... ...........
skipping to change at page 30, line 38 skipping to change at page 31, line 37
| | +--rw tunnels | | +--rw tunnels
| | | .................... | | | ....................
5.9. Templates 5.9. Templates
The data model provides the users with the ability to define The data model provides the users with the ability to define
templates and apply them to link and node configurations. The use of templates and apply them to link and node configurations. The use of
"template" configuration is optional and this functionality is tagged "template" configuration is optional and this functionality is tagged
as a "feature" ("template"). as a "feature" ("template").
+--rw topology* [provider-id client-id te-topology-id] augment /nw:networks/nw:network/nw:node:
| ........... +--rw te-node-id? te-types:te-node-id
| +--rw node* [te-node-id] +--rw te!
| | +--rw te-node-template? leafref {template}? +--rw te-node-template*
| | .......... | -> ../../../../te/templates/node-template/name
| +--rw link* [source-te-node-id source-te-link-id dest-te-node-id | {template}?
dest-te-link-id]
| +--rw te-link-template? leafref {template}? augment /nw:networks/nw:network/nt:link:
| .......... +--rw te!
+--rw te-link-template*
| -> ../../../../te/templates/link-template/name
| {template}?
augment /nw:networks: augment /nw:networks:
+--rw te! +--rw te!
+--rw templates +--rw templates
+--rw node-template* [name] {template}? +--rw node-template* [name] {template}?
| +--rw name te-types:te-template- | +--rw name
name | | te-types:te-template-name
| +--rw priority? uint16 | +--rw priority? uint16
| +--rw reference-change-policy? enumeration | +--rw reference-change-policy? enumeration
| +--rw te-node-attributes | +--rw te-node-attributes
.......... ..........
+--rw link-template* [name] {template}? +--rw link-template* [name] {template}?
+--rw name te-types:te-template- +--rw name
name | te-types:te-template-name
+--rw priority? uint16 +--rw priority? uint16
+--rw reference-change-policy? enumeration +--rw reference-change-policy? enumeration
+--rw te-link-attributes +--rw te-link-attributes
.......... ..........
Multiple templates can be specified to a configuration element. When Multiple templates can be specified to a configuration element. When
two or more templates specify values for the same configuration two or more templates specify values for the same configuration
field, the value from the template with the highest priority is used. field, the value from the template with the highest priority is used.
The reference-change-policy specifies the action that needs to be The reference-change-policy specifies the action that needs to be
taken when the template changes on a configuration element that has a taken when the template changes on a configuration element that has a
reference to this template. The choices of action include taking no reference to this template. The choices of action include taking no
action, rejecting the change to the template and applying the change action, rejecting the change to the template and applying the change
to the corresponding configuration. [Editor's Note: The notion of to the corresponding configuration.
"templates" has wider applicability. It is possible for this to be
discussed in a separate document.]
5.10. Scheduling Parameters 5.10. Scheduling Parameters
The model allows time scheduling parameters to be specified for each The model allows time scheduling parameters to be specified for each
topological element or for the topology as a whole. These parameters topological element or for the topology as a whole. These parameters
allow the provider to present different topological views to the allow the provider to present different topological views to the
client at different time slots. The use of "scheduling parameters" is client at different time slots. The use of "scheduling parameters" is
optional. optional.
The YANG data model for configuration scheduling is defined in [YANG- The YANG data model for configuration scheduling is defined in [I-
SCHEDULE], which allows specifying configuration schedules without D.liu-netmod-yang-schedule], which allows specifying configuration
altering this data model. schedules without altering this data model.
5.11. Notifications 5.11. Notifications
Notifications are a key component of any topology data model. Notifications are a key component of any topology data model.
[YANG-PUSH] and [NETCONF-NOTIF] define a subscription and push [I-D.ietf-netconf-subscribed-notifications] and [I-D.ietf-netconf-
mechanism for YANG datastores. This mechanism currently allows the yang-push] define a subscription and push mechanism for YANG
user to: datastores. This mechanism currently allows the user to:
- Subscribe notifications on a per client basis - Subscribe notifications on a per client basis
- Specify subtree filters or xpath filters so that only interested - Specify subtree filters or xpath filters so that only interested
contents will be sent. contents will be sent.
- Specify either periodic or on-demand notifications. - Specify either periodic or on-demand notifications.
6. Guidance for Writing Technology Specific TE Topology Augmentations 6. Guidance for Writing Technology Specific TE Topology Augmentations
The TE topology model defined in this document is technology agnostic The TE topology model defined in this document is technology agnostic
as it defines concepts, abstractions and attributes that are common as it defines concepts, abstractions and attributes that are common
across multiple network technologies. It is envisioned that this base across multiple network technologies. It is envisioned that this base
model will be widely used when defining technology specific TE model will be widely used when defining technology specific TE
topology models for various layer networks. [YANG-TOPO-WSON], [YANG- topology models for various layer networks. [I-D.ietf-ccamp-wson-
TOPO-OTN], and [YANG-TOPO-L3TE] are some examples of technology yang], [I-D.ietf-ccamp-otn-topo-yang], and [I-D.ietf-teas-yang-l3-te-
specific TE Topology models. Writers of such models are encouraged to topo] are some examples of technology specific TE Topology models.
augment the basic TE topology model's containers, such as TE Writers of such models are encouraged to augment the basic TE
Topology, TE Node, TE Link, Link Termination Point (LTP), Tunnel topology model's containers, such as TE Topology, TE Node, TE Link,
Termination Point (TTP), Bandwidth and Label with the layer specific Link Termination Point (LTP), Tunnel Termination Point (TTP),
attributes instead of defining new containers. Bandwidth and Label with the layer specific attributes instead of
defining new containers.
Consider the following technology specific example-topology model: Consider the following technology specific example-topology model:
module: example-topology module: example-topology
augment /nw:networks/nw:network/nw:network-types/tet:te-topology: augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
+--rw example-topology! +--rw example-topology!
augment /nw:networks/nw:network/tet:te: augment /nw:networks/nw:network/tet:te:
+--rw attributes +--rw attributes
+--rw attribute-1? uint8 +--rw attribute-1? uint8
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
skipping to change at page 36, line 36 skipping to change at page 37, line 37
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/tet:te/tet:templates/tet:link-template augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:underlay/tet:backup-path /tet:te-link-attributes/tet:underlay/tet:backup-path
/tet:path-element/tet:type/tet:label/tet:label-hop /tet:path-element/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/tet:te/tet:templates/tet:link-template augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:label-restriction /tet:te-link-attributes/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/tet:te/tet:templates/tet:link-template augment /nw:networks/tet:te/tet:templates/tet:link-template
/tet:te-link-attributes/tet:label-restriction /tet:te-link-attributes/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:label-restriction/tet:label-start/tet:te-label /tet:label-restrictions/tet:label-restriction
/tet:technology: /tet:label-start/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:label-restriction/tet:label-end/tet:te-label /tet:label-restrictions/tet:label-restriction
/tet:technology: /tet:label-end/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:underlay/tet:primary-path/tet:path-element/tet:type /tet:underlay/tet:primary-path/tet:path-element/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
skipping to change at page 38, line 4 skipping to change at page 39, line 7
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:path-properties/tet:path-route-objects /tet:path-properties/tet:path-route-objects
/tet:path-route-object/tet:type/tet:label/tet:label-hop /tet:path-route-object/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:from/tet:label-restriction /tet:connectivity-matrix/tet:from/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:from/tet:label-restriction /tet:connectivity-matrix/tet:from/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:to/tet:label-restriction /tet:connectivity-matrix/tet:to/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:to/tet:label-restriction /tet:connectivity-matrix/tet:to/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:underlay/tet:primary-path /tet:connectivity-matrix/tet:underlay/tet:primary-path
/tet:path-element/tet:type/tet:label/tet:label-hop /tet:path-element/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
skipping to change at page 39, line 15 skipping to change at page 40, line 23
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:te-node-attributes/tet:connectivity-matrices /tet:te-node-attributes/tet:connectivity-matrices
/tet:connectivity-matrix/tet:path-properties /tet:connectivity-matrix/tet:path-properties
/tet:path-route-objects/tet:path-route-object/tet:type /tet:path-route-objects/tet:path-route-object/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:label-restriction/tet:label-start/tet:te-label /tet:label-restrictions/tet:label-restriction
/tet:technology: /tet:label-start/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:label-restriction/tet:label-end/tet:te-label /tet:label-restrictions/tet:label-restriction
/tet:technology: /tet:label-end/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:underlay/tet:primary-path/tet:path-element/tet:type /tet:underlay/tet:primary-path/tet:path-element/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
skipping to change at page 40, line 10 skipping to change at page 41, line 18
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:path-properties/tet:path-route-objects /tet:path-properties/tet:path-route-objects
/tet:path-route-object/tet:type/tet:label/tet:label-hop /tet:path-route-object/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:from/tet:label-restriction /tet:connectivity-matrix/tet:from/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:from/tet:label-restriction /tet:connectivity-matrix/tet:from/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:to/tet:label-restriction /tet:connectivity-matrix/tet:to/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:to/tet:label-restriction /tet:connectivity-matrix/tet:to/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:underlay/tet:primary-path /tet:connectivity-matrix/tet:underlay/tet:primary-path
/tet:path-element/tet:type/tet:label/tet:label-hop /tet:path-element/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
skipping to change at page 41, line 21 skipping to change at page 42, line 32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:information-source-entry/tet:connectivity-matrices /tet:information-source-entry/tet:connectivity-matrices
/tet:connectivity-matrix/tet:path-properties /tet:connectivity-matrix/tet:path-properties
/tet:path-route-objects/tet:path-route-object/tet:type /tet:path-route-objects/tet:path-route-object/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities/tet:label-restriction /tet:local-link-connectivities/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities/tet:label-restriction /tet:local-link-connectivities/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities/tet:underlay /tet:local-link-connectivities/tet:underlay
/tet:primary-path/tet:path-element/tet:type/tet:label /tet:primary-path/tet:path-element/tet:type/tet:label
/tet:label-hop/tet:te-label/tet:technology: /tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
skipping to change at page 42, line 19 skipping to change at page 43, line 32
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities/tet:path-properties /tet:local-link-connectivities/tet:path-properties
/tet:path-route-objects/tet:path-route-object/tet:type /tet:path-route-objects/tet:path-route-object/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities /tet:local-link-connectivities
/tet:local-link-connectivity/tet:label-restriction /tet:local-link-connectivity/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities /tet:local-link-connectivities
/tet:local-link-connectivity/tet:label-restriction /tet:local-link-connectivity/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities /tet:local-link-connectivities
/tet:local-link-connectivity/tet:underlay /tet:local-link-connectivity/tet:underlay
/tet:primary-path/tet:path-element/tet:type/tet:label /tet:primary-path/tet:path-element/tet:type/tet:label
/tet:label-hop/tet:te-label/tet:technology: /tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
skipping to change at page 43, line 19 skipping to change at page 44, line 34
augment /nw:networks/nw:network/nw:node/tet:te augment /nw:networks/nw:network/nw:node/tet:te
/tet:tunnel-termination-point /tet:tunnel-termination-point
/tet:local-link-connectivities /tet:local-link-connectivities
/tet:local-link-connectivity/tet:path-properties /tet:local-link-connectivity/tet:path-properties
/tet:path-route-objects/tet:path-route-object/tet:type /tet:path-route-objects/tet:path-route-object/tet:type
/tet:label/tet:label-hop/tet:te-label/tet:technology: /tet:label/tet:label-hop/tet:te-label/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:label-restriction /tet:te-link-attributes/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:label-restriction /tet:te-link-attributes/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:underlay/tet:primary-path /tet:te-link-attributes/tet:underlay/tet:primary-path
/tet:path-element/tet:type/tet:label/tet:label-hop /tet:path-element/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:te-link-attributes/tet:underlay/tet:backup-path /tet:te-link-attributes/tet:underlay/tet:backup-path
/tet:path-element/tet:type/tet:label/tet:label-hop /tet:path-element/tet:type/tet:label/tet:label-hop
/tet:te-label/tet:technology: /tet:te-label/tet:technology:
+--:(example) +--:(example)
+--rw example +--rw example
+--rw label-1? uint32 +--rw label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry/tet:label-restriction /tet:information-source-entry/tet:label-restrictions
/tet:label-start/tet:te-label/tet:technology: /tet:label-restriction/tet:label-start/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
augment /nw:networks/nw:network/nt:link/tet:te augment /nw:networks/nw:network/nt:link/tet:te
/tet:information-source-entry/tet:label-restriction /tet:information-source-entry/tet:label-restrictions
/tet:label-end/tet:te-label/tet:technology: /tet:label-restriction/tet:label-end/tet:te-label
/tet:technology:
+--:(example) +--:(example)
+--ro example +--ro example
+--ro label-1? uint32 +--ro label-1? uint32
The YANG module to implement the above example topology can be seen The YANG module to implement the above example topology can be seen
in Appendix C. in Appendix C.
7. TE Topology YANG Module 7. TE Topology YANG Module
<CODE BEGINS> file "ietf-te-topology@2018-06-02.yang" This module references [RFC1195], [RFC3209], [RFC3272], [RFC3471],
[RFC3630], [RFC3785], [RFC4201], [RFC4202], [RFC4203], [RFC4206],
[RFC4872], [RFC5152], [RFC5212], [RFC5305], [RFC5316], [RFC5329],
[RFC5392], [RFC6001], [RFC6241], [RFC6991], [RFC7308], [RFC7471],
[RFC7579], [RFC7752], [RFC8345], and [I-D.ietf-teas-yang-te].
<CODE BEGINS> file "ietf-te-topology@2018-06-15.yang"
module ietf-te-topology { module ietf-te-topology {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology"; namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology";
prefix "tet"; prefix "tet";
import ietf-yang-types { import ietf-yang-types {
prefix "yang"; prefix "yang";
reference "RFC 6991: Common YANG Data Types";
} }
import ietf-inet-types { import ietf-inet-types {
prefix "inet"; prefix "inet";
reference "RFC 6991: Common YANG Data Types";
} }
import ietf-te-types { import ietf-te-types {
prefix "te-types"; prefix "te-types";
reference
"I-D.ietf-teas-yang-te: A YANG Data Model for Traffic
Engineering Tunnels and Interfaces";
} }
import ietf-network { import ietf-network {
prefix "nw"; prefix "nw";
reference "RFC 8345: A YANG Data Model for Network Topologies";
} }
import ietf-network-topology { import ietf-network-topology {
prefix "nt"; prefix "nt";
reference "RFC 8345: A YANG Data Model for Network Topologies";
} }
organization organization
"IETF Traffic Engineering Architecture and Signaling (TEAS) "IETF Traffic Engineering Architecture and Signaling (TEAS)
Working Group"; Working Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/teas/> "WG Web: <http://tools.ietf.org/wg/teas/>
WG List: <mailto:teas@ietf.org> WG List: <mailto:teas@ietf.org>
Editor: Xufeng Liu Editor: Xufeng Liu
<mailto:xufeng.liu.ietf@gmail.com> <mailto:xufeng.liu.ietf@gmail.com>
Editor: Igor Bryskin Editor: Igor Bryskin
<mailto:Igor.Bryskin@huawei.com> <mailto:Igor.Bryskin@huawei.com>
Editor: Vishnu Pavan Beeram Editor: Vishnu Pavan Beeram
<mailto:vbeeram@juniper.net> <mailto:vbeeram@juniper.net>
Editor: Tarek Saad Editor: Tarek Saad
skipping to change at page 46, line 10 skipping to change at page 47, line 39
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 to without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents Relating to IETF Documents
(http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see the This version of this YANG module is part of RFC XXXX; see the
RFC itself for full legal notices."; RFC itself for full legal notices.";
revision "2018-06-02" { revision "2018-06-15" {
description "Initial revision"; description "Initial revision";
reference "RFC XXXX: YANG Data Model for TE Topologies"; reference "RFC XXXX: YANG Data Model for TE Topologies";
// RFC Ed.: replace XXXX with actual RFC number and remove // RFC Ed.: replace XXXX with actual RFC number and remove
// this note // this note
} }
/* /*
* Features * Features
*/ */
feature nsrlg { feature nsrlg {
skipping to change at page 47, line 29 skipping to change at page 49, line 18
} }
enum "ospfv3" { enum "ospfv3" {
description "OSPFv3."; description "OSPFv3.";
} }
enum "isis" { enum "isis" {
description "ISIS."; description "ISIS.";
} }
enum "bgp-ls" { enum "bgp-ls" {
description "BGP-LS."; description "BGP-LS.";
reference reference
"RFC7752: North-Bound Distribution of Link-State and "RFC 7752: North-Bound Distribution of Link-State and
Traffic Engineering (TE) Information Using BGP"; Traffic Engineering (TE) Information Using BGP";
} }
enum "system-processed" { enum "system-processed" {
description "System processed entity."; description "System processed entity.";
} }
enum "other" { enum "other" {
description "Other source."; description "Other source.";
} }
} }
description description
"Describining the type of source that has provided the "Describining the type of source that has provided the
related information, and the source credibility."; related information, and the source credibility.";
} // te-info-source } // te-info-source
/* /*
* Groupings * Groupings
*/ */
grouping connectivity-label-restriction-list {
description
"List of abel restrictions specifying what labels may or may
not be used on a link connectivity.";
list label-restriction {
key "index";
description
"List of abel restrictions specifying what labels may or may
not be used on a link connectivity.";
reference
"RFC7579: General Network Element Constraint Encoding
for GMPLS-Controlled Networks";
leaf index {
type uint32;
description
"Then index of the label restriction list entry.";
}
leaf inclusive-exclusive {
type enumeration {
enum inclusive {
description "The label or label range is inclusive.";
}
enum exclusive {
description "The label or label range is exclusive.";
}
}
default inclusive;
description
"Whether the list item is inclusive or exclusive.";
}
container label-start {
description
"This is the starting lable if a lable range is specified.
This is the lable value if a single lable is specified,
in which case, attribute 'label-end' is not set.";
uses te-types:te-label;
}
container label-end {
description
"The ending lable if a lable range is specified;
This attribute is not set, If a single lable is
specified.";
uses te-types:te-label;
}
leaf range-bitmap {
type binary;
description
"When there are gaps between label-start and label-end,
this attribute is used to specified the possitions
of the used labels.";
}
}
} // connectivity-label-restriction-list
grouping connectivity-matrix-entry-path-attributes { grouping connectivity-matrix-entry-path-attributes {
description description
"Attributes of connectivity matrix entry."; "Attributes of connectivity matrix entry.";
leaf is-allowed { leaf is-allowed {
type boolean; type boolean;
description description
"true - switching is allowed, "true - switching is allowed,
false - switching is disallowed."; false - switching is disallowed.";
} }
container underlay { container underlay {
if-feature te-topology-hierarchy; if-feature te-topology-hierarchy;
description "Attributes of the te-link underlay."; description "Attributes of the te-link underlay.";
reference reference
"RFC4206: Label Switched Paths (LSP) Hierarchy with "RFC 4206: Label Switched Paths (LSP) Hierarchy with
Generalized Multi-Protocol Label Switching (GMPLS) Generalized Multi-Protocol Label Switching (GMPLS)
Traffic Engineering (TE)"; Traffic Engineering (TE)";
uses te-link-underlay-attributes; uses te-link-underlay-attributes;
} // underlay } // underlay
uses te-types:generic-path-constraints; uses te-types:generic-path-constraints;
uses te-types:generic-path-optimization; uses te-types:generic-path-optimization;
uses te-types:generic-path-properties; uses te-types:generic-path-properties;
} // connectivity-matrix-entry-path-attributes } // connectivity-matrix-entry-path-attributes
skipping to change at page 52, line 40 skipping to change at page 53, line 18
grouping interface-switching-capability-list { grouping interface-switching-capability-list {
description description
"List of Interface Switching Capabilities Descriptors (ISCD)"; "List of Interface Switching Capabilities Descriptors (ISCD)";
list interface-switching-capability { list interface-switching-capability {
key "switching-capability encoding"; key "switching-capability encoding";
description description
"List of Interface Switching Capabilities Descriptors (ISCD) "List of Interface Switching Capabilities Descriptors (ISCD)
for this link."; for this link.";
reference reference
"RFC3471: Generalized Multi-Protocol Label Switching (GMPLS) "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
Signaling Functional Description. Signaling Functional Description.
RFC4203: OSPF Extensions in Support of Generalized RFC 4203: OSPF Extensions in Support of Generalized
Multi-Protocol Label Switching (GMPLS)."; Multi-Protocol Label Switching (GMPLS).";
leaf switching-capability { leaf switching-capability {
type identityref { type identityref {
base te-types:switching-capabilities; base te-types:switching-capabilities;
} }
description description
"Switching Capability for this interface."; "Switching Capability for this interface.";
} }
leaf encoding { leaf encoding {
type identityref { type identityref {
base te-types:lsp-encoding-types; base te-types:lsp-encoding-types;
skipping to change at page 57, line 22 skipping to change at page 57, line 38
container connectivity-matrix-entry { container connectivity-matrix-entry {
description description
"Containing connectivity matrix entry level statistics "Containing connectivity matrix entry level statistics
attributes."; attributes.";
leaf creates { leaf creates {
type yang:counter32; type yang:counter32;
description description
"Number of times that a connectivity matrix entry was "Number of times that a connectivity matrix entry was
created."; created.";
reference reference
"RFC6241. Section 7.2 for 'create' operation. "; "RFC 6241. Section 7.2 for 'create' operation. ";
} }
leaf deletes { leaf deletes {
type yang:counter32; type yang:counter32;
description description
"Number of times that a connectivity matrix entry was "Number of times that a connectivity matrix entry was
deleted."; deleted.";
reference reference
"RFC6241. Section 7.2 for 'delete' operation. "; "RFC 6241. Section 7.2 for 'delete' operation. ";
} }
leaf disables { leaf disables {
type yang:counter32; type yang:counter32;
description description
"Number of times that a connectivity matrix entry was "Number of times that a connectivity matrix entry was
disabled."; disabled.";
} }
leaf enables { leaf enables {
type yang:counter32; type yang:counter32;
description description
skipping to change at page 60, line 6 skipping to change at page 60, line 23
container local-link-connectivity { container local-link-connectivity {
description description
"Containing TE LLCL (Local Link Connectivity List) level "Containing TE LLCL (Local Link Connectivity List) level
statistics attributes."; statistics attributes.";
leaf creates { leaf creates {
type yang:counter32; type yang:counter32;
description description
"Number of times that an LLCL entry was created."; "Number of times that an LLCL entry was created.";
reference reference
"RFC6241. Section 7.2 for 'create' operation. "; "RFC 6241. Section 7.2 for 'create' operation.";
} }
leaf deletes { leaf deletes {
type yang:counter32; type yang:counter32;
description description
"Number of times that an LLCL entry was deleted."; "Number of times that an LLCL entry was deleted.";
reference reference
"RFC6241. Section 7.2 for 'delete' operation."; "RFC 6241. Section 7.2 for 'delete' operation.";
} }
leaf disables { leaf disables {
type yang:counter32; type yang:counter32;
description description
"Number of times that an LLCL entry was disabled."; "Number of times that an LLCL entry was disabled.";
} }
leaf enables { leaf enables {
type yang:counter32; type yang:counter32;
description description
"Number of times that an LLCL entry was enabled."; "Number of times that an LLCL entry was enabled.";
skipping to change at page 61, line 16 skipping to change at page 61, line 34
"TE link configuration grouping."; "TE link configuration grouping.";
choice bundle-stack-level { choice bundle-stack-level {
description description
"The TE link can be partitioned into bundled "The TE link can be partitioned into bundled
links, or component links."; links, or component links.";
case bundle { case bundle {
container bundled-links { container bundled-links {
description description
"A set of bundled links."; "A set of bundled links.";
reference reference
"RFC4201: Link Bundling in MPLS Traffic Engineering "RFC 4201: Link Bundling in MPLS Traffic Engineering
(TE)."; (TE).";
list bundled-link { list bundled-link {
key "sequence"; key "sequence";
description description
"Specify a bundled interface that is "Specify a bundled interface that is
further partitioned."; further partitioned.";
leaf sequence { leaf sequence {
type uint32; type uint32;
description description
"Identify the sequence in the bundle."; "Identify the sequence in the bundle.";
skipping to change at page 63, line 39 skipping to change at page 64, line 14
description "Present if the link is abstract."; description "Present if the link is abstract.";
} }
leaf name { leaf name {
type string; type string;
description "Link Name."; description "Link Name.";
} }
container underlay { container underlay {
if-feature te-topology-hierarchy; if-feature te-topology-hierarchy;
description "Attributes of the te-link underlay."; description "Attributes of the te-link underlay.";
reference reference
"RFC4206: Label Switched Paths (LSP) Hierarchy with "RFC 4206: Label Switched Paths (LSP) Hierarchy with
Generalized Multi-Protocol Label Switching (GMPLS) Generalized Multi-Protocol Label Switching (GMPLS)
Traffic Engineering (TE)"; Traffic Engineering (TE)";
uses te-link-underlay-attributes; uses te-link-underlay-attributes;
} // underlay } // underlay
leaf admin-status { leaf admin-status {
type te-types:te-admin-status; type te-types:te-admin-status;
description description
"The administrative state of the link."; "The administrative state of the link.";
} }
skipping to change at page 64, line 28 skipping to change at page 65, line 4
description description
"The link identifier. If OSPF is used, this represents an "The link identifier. If OSPF is used, this represents an
ospfLsdbID. If IS-IS is used, this represents an isisLSPID. ospfLsdbID. If IS-IS is used, this represents an isisLSPID.
If a locally configured link is used, this object represents If a locally configured link is used, this object represents
a unique value, which is locally defined in a router."; a unique value, which is locally defined in a router.";
} }
leaf administrative-group { leaf administrative-group {
type te-types:admin-groups; type te-types:admin-groups;
description description
"Administrative group or color of the link. "Administrative group or color of the link.
This attribute covers both administrative group (defined in This attribute covers both administrative group (defined in
RFC3630, RFC5329, and RFC5305), and extended administrative RFC 3630, RFC 5305 and RFC 5329), and extended
group (defined in RFC7308)."; administrative group (defined in RFC 7308).";
} }
uses interface-switching-capability-list; uses interface-switching-capability-list;
uses connectivity-label-restriction-list; uses te-types:label-set-info;
leaf link-protection-type { leaf link-protection-type {
type enumeration { type enumeration {
enum "unprotected" { enum "unprotected" {
description "Unprotected."; description "Unprotected.";
} }
enum "extra-traffic" { enum "extra-traffic" {
description "Extra traffic."; description "Extra traffic.";
} }
enum "shared" { enum "shared" {
skipping to change at page 65, line 19 skipping to change at page 65, line 37
enum "1-plus-1" { enum "1-plus-1" {
description "One plus one protection."; description "One plus one protection.";
} }
enum "enhanced" { enum "enhanced" {
description "Enhanced protection."; description "Enhanced protection.";
} }
} }
description description
"Link Protection Type desired for this link."; "Link Protection Type desired for this link.";
reference reference
"RFC4202: Routing Extensions in Support of "RFC 4202: Routing Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)."; Generalized Multi-Protocol Label Switching (GMPLS).";
} }
container max-link-bandwidth { container max-link-bandwidth {
uses te-types:te-bandwidth; uses te-types:te-bandwidth;
description description
"Maximum bandwidth that can be seen on this link in this "Maximum bandwidth that can be seen on this link in this
direction. Units in bytes per second."; direction. Units in bytes per second.";
reference reference
"RFC3630: Traffic Engineering (TE) Extensions to OSPF "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
Version 2. Version 2.
RFC5305: IS-IS Extensions for Traffic Engineering."; RFC 5305: IS-IS Extensions for Traffic Engineering.";
} }
container max-resv-link-bandwidth { container max-resv-link-bandwidth {
uses te-types:te-bandwidth; uses te-types:te-bandwidth;
description description
"Maximum amount of bandwidth that can be reserved in this "Maximum amount of bandwidth that can be reserved in this
direction in this link. Units in bytes per second."; direction in this link. Units in bytes per second.";
reference reference
"RFC3630: Traffic Engineering (TE) Extensions to OSPF "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
Version 2. Version 2.
RFC5305: IS-IS Extensions for Traffic Engineering."; RFC 5305: IS-IS Extensions for Traffic Engineering.";
} }
list unreserved-bandwidth { list unreserved-bandwidth {
key "priority"; key "priority";
max-elements "8"; max-elements "8";
description description
"Unreserved bandwidth for 0-7 priority levels. Units in "Unreserved bandwidth for 0-7 priority levels. Units in
bytes per second."; bytes per second.";
reference reference
"RFC3630: Traffic Engineering (TE) Extensions to OSPF "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
Version 2. Version 2.
RFC5305: IS-IS Extensions for Traffic Engineering."; RFC 5305: IS-IS Extensions for Traffic Engineering.";
leaf priority { leaf priority {
type uint8 { type uint8 {
range "0..7"; range "0..7";
} }
description "Priority."; description "Priority.";
} }
uses te-types:te-bandwidth; uses te-types:te-bandwidth;
} }
leaf te-default-metric { leaf te-default-metric {
type uint32; type uint32;
description description
"Traffic engineering metric."; "Traffic engineering metric.";
reference reference
"RFC3630: Traffic Engineering (TE) Extensions to OSPF "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
Version 2. Version 2.
RFC5305: IS-IS Extensions for Traffic Engineering."; RFC 5305: IS-IS Extensions for Traffic Engineering.";
} }
leaf te-delay-metric { leaf te-delay-metric {
type uint32; type uint32;
description description
"Traffic engineering delay metric."; "Traffic engineering delay metric.";
reference reference
"RFC7471: OSPF Traffic Engineering (TE) Metric Extensions."; "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions.";
} }
leaf te-igp-metric { leaf te-igp-metric {
type uint32; type uint32;
description description
"IGP metric used for traffic engineering."; "IGP metric used for traffic engineering.";
reference reference
"RFC3785: Use of Interior Gateway Protocol (IGP) Metric as a "RFC 3785: Use of Interior Gateway Protocol (IGP) Metric as a
Second MPLS Traffic Engineering (TE) Metric."; Second MPLS Traffic Engineering (TE) Metric.";
} }
container te-srlgs { container te-srlgs {
description description
"Containing a list of SLRGs."; "Containing a list of SLRGs.";
leaf-list value { leaf-list value {
type te-types:srlg; type te-types:srlg;
description "SRLG value."; description "SRLG value.";
reference reference
"RFC4202: Routing Extensions in Support of "RFC 4202: Routing Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)."; Generalized Multi-Protocol Label Switching (GMPLS).";
} }
} }
container te-nsrlgs { container te-nsrlgs {
if-feature nsrlg; if-feature nsrlg;
description description
"Containing a list of NSRLGs (Not Sharing Risk Link "Containing a list of NSRLGs (Not Sharing Risk Link
Groups). Groups).
When an abstract TE link is configured, this list specifies When an abstract TE link is configured, this list specifies
the request that underlay TE paths need to be mutually the request that underlay TE paths need to be mutually
disjoint with other TE links in the same groups."; disjoint with other TE links in the same groups.";
leaf-list id { leaf-list id {
type uint32; type uint32;
description description
"NSRLG ID, uniquely configured within a topology."; "NSRLG ID, uniquely configured within a topology.";
reference reference
"RFC4872: RSVP-TE Extensions in Support of End-to-End "RFC 4872: RSVP-TE Extensions in Support of End-to-End
Generalized Multi-Protocol Label Switching (GMPLS) Generalized Multi-Protocol Label Switching (GMPLS)
Recovery"; Recovery";
} }
} }
} // te-link-info-attributes } // te-link-info-attributes
grouping te-link-iscd-attributes { grouping te-link-iscd-attributes {
description description
"TE link ISCD (Interface Switching Capability Descriptor) "TE link ISCD (Interface Switching Capability Descriptor)
attributes."; attributes.";
reference reference
"Sec 1.4, RFC4203: OSPF Extensions in Support of Generalized "Sec 1.4, RFC 4203: OSPF Extensions in Support of Generalized
Multi-Protocol Label Switching (GMPLS). Section 1.4."; Multi-Protocol Label Switching (GMPLS). Section 1.4.";
list max-lsp-bandwidth { list max-lsp-bandwidth {
key "priority"; key "priority";
max-elements "8"; max-elements "8";
description description
"Maximum LSP Bandwidth at priorities 0-7."; "Maximum LSP Bandwidth at priorities 0-7.";
leaf priority { leaf priority {
type uint8 { type uint8 {
range "0..7"; range "0..7";
} }
skipping to change at page 68, line 33 skipping to change at page 69, line 9
} }
leaf is-transitional { leaf is-transitional {
type empty; type empty;
config false; config false;
description description
"Present if the link is transitional, used as an "Present if the link is transitional, used as an
alternative approach in lieu of inter-layer-lock-id alternative approach in lieu of inter-layer-lock-id
for path computation in a TE topology covering multiple for path computation in a TE topology covering multiple
layers or multiple regions."; layers or multiple regions.";
reference reference
"RFC5212: Requirements for GMPLS-Based Multi-Region and "RFC 5212: Requirements for GMPLS-Based Multi-Region and
Multi-Layer Networks (MRN/MLN). Multi-Layer Networks (MRN/MLN).
RFC6001: Generalized MPLS (GMPLS) Protocol Extensions RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN)."; for Multi-Layer and Multi-Region Networks (MLN/MRN).";
} }
uses information-source-per-link-attributes; uses information-source-per-link-attributes;
list information-source-entry { list information-source-entry {
key "information-source"; key "information-source";
config false; config false;
description description
"A list of information sources learned, including the one "A list of information sources learned, including the one
used."; used.";
uses information-source-per-link-attributes; uses information-source-per-link-attributes;
uses te-link-info-attributes; uses te-link-info-attributes;
} }
container recovery { container recovery {
config false; config false;
description description
"Status of the recovery process."; "Status of the recovery process.";
leaf restoration-status { leaf restoration-status {
type te-types:te-recovery-status; type te-types:te-recovery-status;
description description
skipping to change at page 69, line 43 skipping to change at page 70, line 18
type boolean; type boolean;
description description
"true if the underlay is committed."; "true if the underlay is committed.";
} }
} }
} // te-link-state-derived } // te-link-state-derived
grouping te-link-underlay-attributes { grouping te-link-underlay-attributes {
description "Attributes for te-link underlay."; description "Attributes for te-link underlay.";
reference reference
"RFC4206: Label Switched Paths (LSP) Hierarchy with "RFC 4206: Label Switched Paths (LSP) Hierarchy with
Generalized Multi-Protocol Label Switching (GMPLS) Generalized Multi-Protocol Label Switching (GMPLS)
Traffic Engineering (TE)"; Traffic Engineering (TE)";
leaf enabled { leaf enabled {
type boolean; type boolean;
description description
"'true' if the underlay is enabled. "'true' if the underlay is enabled.
'false' if the underlay is disabled."; 'false' if the underlay is disabled.";
} }
container primary-path { container primary-path {
description description
"The service path on the underlay topology that "The service path on the underlay topology that
supports this link."; supports this link.";
skipping to change at page 72, line 18 skipping to change at page 72, line 35
description description
"Zero, one or more underlay TE tunnels that support this TE "Zero, one or more underlay TE tunnels that support this TE
link."; link.";
leaf tunnel-name { leaf tunnel-name {
type string; type string;
description description
"A tunnel name uniquely identifies an underlay TE tunnel, "A tunnel name uniquely identifies an underlay TE tunnel,
used together with the source-node of this link. used together with the source-node of this link.
The detailed information of this tunnel can be retrieved The detailed information of this tunnel can be retrieved
from the ietf-te model."; from the ietf-te model.";
reference "RFC3209"; reference "RFC 3209";
} }
leaf sharing { leaf sharing {
type boolean; type boolean;
description description
"'true' if the underlay tunnel can be shared with other "'true' if the underlay tunnel can be shared with other
TE links; TE links;
'false' if the underlay tunnel is dedicated to this 'false' if the underlay tunnel is dedicated to this
TE link."; TE link.";
} }
} // tunnel } // tunnel
} // tunnels } // tunnels
} // te-link-underlay-attributes } // te-link-underlay-attributes
grouping te-node-augment { grouping te-node-augment {
description description
"Augmentation for TE node."; "Augmentation for TE node.";
uses te-node-config; uses te-node-config;
uses te-node-state-derived; uses te-node-state-derived;
container statistics { container statistics {
skipping to change at page 75, line 22 skipping to change at page 75, line 39
grouping te-node-connectivity-matrices { grouping te-node-connectivity-matrices {
description "Connectivity matrix on a TE node."; description "Connectivity matrix on a TE node.";
container connectivity-matrices { container connectivity-matrices {
description description
"Containing connectivity matrix on a TE node."; "Containing connectivity matrix on a TE node.";
leaf number-of-entries { leaf number-of-entries {
type uint16; type uint16;
description description
"The number of connectivity matrix entries. "The number of connectivity matrix entries.
If this number is speficied in the configuration request, If this number is specified in the configuration request,
the number is requested number of entries, which may not the number is requested number of entries, which may not
all be listed in the list; all be listed in the list;
if this number is reported in the state data, if this number is reported in the state data,
the number is the current number of operational entries."; the number is the current number of operational entries.";
} }
uses connectivity-label-restriction-list; uses te-types:label-set-info;
uses connectivity-matrix-entry-path-attributes; uses connectivity-matrix-entry-path-attributes;
list connectivity-matrix { list connectivity-matrix {
key "id"; key "id";
description description
"Represents node's switching limitations, i.e. limitations "Represents node's switching limitations, i.e. limitations
in interconnecting network TE links across the node."; in interconnecting network TE links across the node.";
reference reference
"RFC7579: General Network Element Constraint Encoding "RFC 7579: General Network Element Constraint Encoding
for GMPLS-Controlled Networks."; for GMPLS-Controlled Networks.";
leaf id { leaf id {
type uint32; type uint32;
description "Identifies the connectivity-matrix entry."; description "Identifies the connectivity-matrix entry.";
} }
} // connectivity-matrix } // connectivity-matrix
} // connectivity-matrices } // connectivity-matrices
} // te-node-connectivity-matrices } // te-node-connectivity-matrices
grouping te-node-connectivity-matrix-attributes { grouping te-node-connectivity-matrix-attributes {
description description
"Termination point references of a connectivity matrix entry."; "Termination point references of a connectivity matrix entry.";
container from { container from {
description description
"Reference to source link termination point."; "Reference to source link termination point.";
leaf tp-ref { leaf tp-ref {
type leafref { type leafref {
path "../../../../../../nt:termination-point/nt:tp-id"; path "../../../../../../nt:termination-point/nt:tp-id";
} }
skipping to change at page 76, line 17 skipping to change at page 76, line 35
container from { container from {
description description
"Reference to source link termination point."; "Reference to source link termination point.";
leaf tp-ref { leaf tp-ref {
type leafref { type leafref {
path "../../../../../../nt:termination-point/nt:tp-id"; path "../../../../../../nt:termination-point/nt:tp-id";
} }
description description
"Relative reference to a termination point."; "Relative reference to a termination point.";
} }
uses connectivity-label-restriction-list; uses te-types:label-set-info;
} }
container to { container to {
description description
"Reference to destination link termination point."; "Reference to destination link termination point.";
leaf tp-ref { leaf tp-ref {
type leafref { type leafref {
path "../../../../../../nt:termination-point/nt:tp-id"; path "../../../../../../nt:termination-point/nt:tp-id";
} }
description description
"Relative reference to a termination point."; "Relative reference to a termination point.";
} }
uses connectivity-label-restriction-list; uses te-types:label-set-info;
} }
uses connectivity-matrix-entry-path-attributes; uses connectivity-matrix-entry-path-attributes;
} // te-node-connectivity-matrix-attributes } // te-node-connectivity-matrix-attributes
grouping te-node-info-attributes { grouping te-node-info-attributes {
description description
"Advertised TE information attributes."; "Advertised TE information attributes.";
leaf domain-id { leaf domain-id {
type uint32; type uint32;
description description
"Identifies the domain that this node belongs. "Identifies the domain that this node belongs.
This attribute is used to support inter-domain links."; This attribute is used to support inter-domain links.";
reference reference
"RFC5152: A Per-Domain Path Computation Method for "RFC 5152: A Per-Domain Path Computation Method for
Establishing Inter-Domain Traffic Engineering (TE) Establishing Inter-Domain Traffic Engineering (TE)
Label Switched Paths (LSPs). Label Switched Paths (LSPs).
RFC5392: OSPF Extensions in Support of Inter-Autonomous RFC 5392: OSPF Extensions in Support of Inter-Autonomous
System (AS) MPLS and GMPLS Traffic Engineering. System (AS) MPLS and GMPLS Traffic Engineering.
RFC5316: ISIS Extensions in Support of Inter-Autonomous RFC 5316: ISIS Extensions in Support of Inter-Autonomous
System (AS) MPLS and GMPLS Traffic Engineering."; System (AS) MPLS and GMPLS Traffic Engineering.";
} }
leaf is-abstract { leaf is-abstract {
type empty; type empty;
description description
"Present if the node is abstract, not present if the node "Present if the node is abstract, not present if the node
is actual."; is actual.";
} }
leaf name { leaf name {
type string; type string;
skipping to change at page 78, line 9 skipping to change at page 78, line 26
"The current operational state of the node."; "The current operational state of the node.";
} }
uses geolocation-container; uses geolocation-container;
leaf is-multi-access-dr { leaf is-multi-access-dr {
type empty; type empty;
config false; config false;
description description
"The presence of this attribute indicates that this TE node "The presence of this attribute indicates that this TE node
is a pseudonode elected as a designated router."; is a pseudonode elected as a designated router.";
reference reference
"RFC3630: Traffic Engineering (TE) Extensions to OSPF "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
Version 2. Version 2.
RFC1195: Use of OSI IS-IS for Routing in TCP/IP and Dual RFC 1195: Use of OSI IS-IS for Routing in TCP/IP and Dual
Environments."; Environments.";
} }
uses information-source-per-node-attributes; uses information-source-per-node-attributes;
list information-source-entry { list information-source-entry {
key "information-source"; key "information-source";
config false; config false;
description description
"A list of information sources learned, including the one "A list of information sources learned, including the one
used."; used.";
uses information-source-per-node-attributes; uses information-source-per-node-attributes;
skipping to change at page 78, line 40 skipping to change at page 79, line 16
TE node."; TE node.";
uses te-node-tunnel-termination-point-config-attributes; uses te-node-tunnel-termination-point-config-attributes;
container local-link-connectivities { container local-link-connectivities {
description description
"Containing local link connectivity list for "Containing local link connectivity list for
a tunnel termination point on a TE node."; a tunnel termination point on a TE node.";
leaf number-of-entries { leaf number-of-entries {
type uint16; type uint16;
description description
"The number of local link connectivity list entries. "The number of local link connectivity list entries.
If this number is speficied in the configuration request, If this number is specified in the configuration request,
the number is requested number of entries, which may not the number is requested number of entries, which may not
all be listed in the list; all be listed in the list;
if this number is reported in the state data, if this number is reported in the state data,
the number is the current number of operational entries."; the number is the current number of operational entries.";
} }
uses connectivity-label-restriction-list; uses te-types:label-set-info;
uses connectivity-matrix-entry-path-attributes; uses connectivity-matrix-entry-path-attributes;
} // local-link-connectivities } // local-link-connectivities
} // te-node-tunnel-termination-point-config } // te-node-tunnel-termination-point-config
grouping te-node-tunnel-termination-point-config-attributes { grouping te-node-tunnel-termination-point-config-attributes {
description description
"Configuration attributes of a tunnel termination point on a "Configuration attributes of a tunnel termination point on a
TE node."; TE node.";
leaf admin-status { leaf admin-status {
type te-types:te-admin-status; type te-types:te-admin-status;
skipping to change at page 79, line 45 skipping to change at page 80, line 20
} }
description description
"Encoding supported by this interface."; "Encoding supported by this interface.";
} }
leaf-list inter-layer-lock-id { leaf-list inter-layer-lock-id {
type uint32; type uint32;
description description
"Inter layer lock ID, used for path computation in a TE "Inter layer lock ID, used for path computation in a TE
topology covering multiple layers or multiple regions."; topology covering multiple layers or multiple regions.";
reference reference
"RFC5212: Requirements for GMPLS-Based Multi-Region and "RFC 5212: Requirements for GMPLS-Based Multi-Region and
Multi-Layer Networks (MRN/MLN). Multi-Layer Networks (MRN/MLN).
RFC6001: Generalized MPLS (GMPLS) Protocol Extensions RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN)."; for Multi-Layer and Multi-Region Networks (MLN/MRN).";
} }
leaf protection-type { leaf protection-type {
type identityref { type identityref {
base te-types:lsp-protection-type; base te-types:lsp-protection-type;
} }
description description
"The protection type that this tunnel termination point "The protection type that this tunnel termination point
is capable of."; is capable of.";
} }
container client-layer-adaptation { container client-layer-adaptation {
description description
"Containing capability information to support a client layer "Containing capability information to support a client layer
adaption in multi-layer topology."; adaption in multi-layer topology.";
list switching-capability { list switching-capability {
key "switching-capability encoding"; key "switching-capability encoding";
description description
"List of supported switching capabilities"; "List of supported switching capabilities";
reference reference
"RFC6001: Generalized MPLS (GMPLS) Protocol Extensions "RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN). for Multi-Layer and Multi-Region Networks (MLN/MRN).
RFC4202: Routing Extensions in Support of
RFC 4202: Routing Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)."; Generalized Multi-Protocol Label Switching (GMPLS).";
leaf switching-capability { leaf switching-capability {
type identityref { type identityref {
base te-types:switching-capabilities; base te-types:switching-capabilities;
} }
description description
"Switching Capability for the client layer adaption."; "Switching Capability for the client layer adaption.";
} }
leaf encoding { leaf encoding {
type identityref { type identityref {
skipping to change at page 81, line 21 skipping to change at page 81, line 38
"Local link connectivity list of a tunnel termination "Local link connectivity list of a tunnel termination
point on a TE node."; point on a TE node.";
list local-link-connectivity { list local-link-connectivity {
key "link-tp-ref"; key "link-tp-ref";
description description
"The termination capabilities between "The termination capabilities between
tunnel-termination-point and link termination-point. tunnel-termination-point and link termination-point.
The capability information can be used to compute The capability information can be used to compute
the tunnel path. the tunnel path.
The Interface Adjustment Capability Descriptors (IACD) The Interface Adjustment Capability Descriptors (IACD)
[RFC6001] on each link-tp can be derived from this (defined in RFC 6001) on each link-tp can be derived from
local-link-connectivity list."; this local-link-connectivity list.";
reference reference
"RFC6001: Generalized MPLS (GMPLS) Protocol Extensions "RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN)."; for Multi-Layer and Multi-Region Networks (MLN/MRN).";
leaf link-tp-ref { leaf link-tp-ref {
type leafref { type leafref {
path "../../../../../nt:termination-point/nt:tp-id"; path "../../../../../nt:termination-point/nt:tp-id";
} }
description description
"Link termination point."; "Link termination point.";
} }
uses connectivity-label-restriction-list; uses te-types:label-set-info;
uses connectivity-matrix-entry-path-attributes; uses connectivity-matrix-entry-path-attributes;
} // local-link-connectivity } // local-link-connectivity
} // te-node-tunnel-termination-point-config } // te-node-tunnel-termination-point-config
grouping te-path-element { grouping te-path-element {
description description
"A group of attributes defining an element in a TE path "A group of attributes defining an element in a TE path
such as TE node, TE link, TE atomic resource or label."; such as TE node, TE link, TE atomic resource or label.";
uses te-types:explicit-route-hop; uses te-types:explicit-route-hop;
} // te-path-element } // te-path-element
skipping to change at page 83, line 21 skipping to change at page 83, line 39
when the provider does not know remote-te-node-id and when the provider does not know remote-te-node-id and
remote-te-link-tp-id or need to give client the remote-te-link-tp-id or need to give client the
flexibility to mix-n-match multiple topologies."; flexibility to mix-n-match multiple topologies.";
} }
leaf-list inter-layer-lock-id { leaf-list inter-layer-lock-id {
type uint32; type uint32;
description description
"Inter layer lock ID, used for path computation in a TE "Inter layer lock ID, used for path computation in a TE
topology covering multiple layers or multiple regions."; topology covering multiple layers or multiple regions.";
reference reference
"RFC5212: Requirements for GMPLS-Based Multi-Region and "RFC 5212: Requirements for GMPLS-Based Multi-Region and
Multi-Layer Networks (MRN/MLN). Multi-Layer Networks (MRN/MLN).
RFC6001: Generalized MPLS (GMPLS) Protocol Extensions RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN)."; for Multi-Layer and Multi-Region Networks (MLN/MRN).";
} }
} // te-termination-point-config } // te-termination-point-config
grouping te-topologies-augment { grouping te-topologies-augment {
description description
"Augmentation for TE topologies."; "Augmentation for TE topologies.";
container te { container te {
presence "TE support."; presence "TE support.";
description description
"Indicates TE support."; "Indicates TE support.";
container templates { container templates {
description description
skipping to change at page 86, line 10 skipping to change at page 86, line 27
"Specifies a preference for this topology. A lower number "Specifies a preference for this topology. A lower number
indicates a higher preference."; indicates a higher preference.";
} }
leaf optimization-criterion { leaf optimization-criterion {
type identityref { type identityref {
base te-types:te-optimization-criterion; base te-types:te-optimization-criterion;
} }
description description
"Optimization criterion applied to this topology."; "Optimization criterion applied to this topology.";
reference reference
"RFC3272: Overview and Principles of Internet Traffic "RFC 3272: Overview and Principles of Internet Traffic
Engineering."; Engineering.";
} }
list nsrlg { list nsrlg {
if-feature nsrlg; if-feature nsrlg;
key "id"; key "id";
description description
"List of NSRLGs (Not Sharing Risk Link Groups)."; "List of NSRLGs (Not Sharing Risk Link Groups).";
reference reference
"RFC4872: RSVP-TE Extensions in Support of End-to-End "RFC 4872: RSVP-TE Extensions in Support of End-to-End
Generalized Multi-Protocol Label Switching (GMPLS) Generalized Multi-Protocol Label Switching (GMPLS)
Recovery"; Recovery";
leaf id { leaf id {
type uint32; type uint32;
description description
"Identify the NSRLG entry."; "Identify the NSRLG entry.";
} }
leaf disjointness { leaf disjointness {
type te-types:te-path-disjointness; type te-types:te-path-disjointness;
description description
skipping to change at page 90, line 24 skipping to change at page 90, line 42
leaf src-tp-ref { leaf src-tp-ref {
type leafref { type leafref {
path "../../../../../nw:node[nw:node-id = " path "../../../../../nw:node[nw:node-id = "
+ "current()/../../../../nt:source/" + "current()/../../../../nt:source/"
+ "nt:source-node]/" + "nt:source-node]/"
+ "nt:termination-point/nt:tp-id"; + "nt:termination-point/nt:tp-id";
require-instance true; require-instance true;
} }
description description
"Reference to another TE termination point on the "Reference to another TE termination point on the
same souruce node."; same source node.";
} }
leaf des-tp-ref { leaf des-tp-ref {
type leafref { type leafref {
path "../../../../../nw:node[nw:node-id = " path "../../../../../nw:node[nw:node-id = "
+ "current()/../../../../nt:destination/" + "current()/../../../../nt:destination/"
+ "nt:dest-node]/" + "nt:dest-node]/"
+ "nt:termination-point/nt:tp-id"; + "nt:termination-point/nt:tp-id";
require-instance true; require-instance true;
} }
description description
skipping to change at page 93, line 34 skipping to change at page 94, line 7
o /nw:networks/nw:network/nw:network-types/tet:te-topology o /nw:networks/nw:network/nw:network-types/tet:te-topology
Unauthorized access to this subtree can disclose the TE topology Unauthorized access to this subtree can disclose the TE topology
type. type.
o /nw:networks/tet:te o /nw:networks/tet:te
Unauthorized access to this subtree can disclose the TE node Unauthorized access to this subtree can disclose the TE node
templates and TE link templates. templates and TE link templates.
o /nw:networks/nw:network o /nw:networks/nw:network
Unauthorized access to this subtree can disclose the topology-wide Unauthorized access to this subtree can disclose the topology-wide
configurations, including the TE topology ID and topology-wide configurations, including the TE topology ID, the topology-wide
policies policies, and the topology geolocation.
o /nw:networks/nw:network/nw:node o /nw:networks/nw:network/nw:node
Unauthorized access to this subtree can disclose the operational Unauthorized access to this subtree can disclose the operational
state information of TE nodes. state information of TE nodes.
o /nw:networks/nw:network/nt:link/tet:te o /nw:networks/nw:network/nt:link/tet:te
Unauthorized access to this subtree can disclose the operational Unauthorized access to this subtree can disclose the operational
state information of TE links. state information of TE links.
o /nw:networks/nw:network/nw:node/nt:termination-point o /nw:networks/nw:network/nw:node/nt:termination-point
Unauthorized access to this subtree can disclose the operational Unauthorized access to this subtree can disclose the operational
state information of TE link termination points. state information of TE link termination points.
9. IANA Considerations 9. IANA Considerations
This document registers the following URIs in the IETF XML registry This document registers the following URIs in the IETF XML registry
[RFC3688]. Following the format in [RFC3688], the following [RFC3688]. Following the format in [RFC3688], the following
registration is requested to be made. registration is requested to be made.
URI: urn:ietf:params:xml:ns:yang:ietf-te-topology URI: urn:ietf:params:xml:ns:yang:ietf-te-topology
Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace. XML: N/A, the requested URI is an XML namespace.
URI: urn:ietf:params:xml:ns:yang:ietf-te-topology-state URI: urn:ietf:params:xml:ns:yang:ietf-te-topology-state
Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace. XML: N/A, the requested URI is an XML namespace.
This document registers a YANG module in the YANG Module Names This document registers a YANG module in the YANG Module Names
registry [RFC7950]. registry [RFC7950].
name: ietf-te-topology name: ietf-te-topology
namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology
prefix: tet prefix: tet
reference: RFC XXXX
name: ietf-te-topology-state name: ietf-te-topology-state
namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology-state namespace: urn:ietf:params:xml:ns:yang:ietf-te-topology-state
prefix: tet-s prefix: tet-s
reference: RFC XXXX
10. References 10. References
10.1. Normative References 10.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, March 1997. Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<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,
January 2004. DOI 10.17487/RFC3688, January 2004,
<https://www.rfc-editor.org/info/rfc3688>.
[RFC3945] Mannie, E., "Generalized Multi-Protocol Label Switching [RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label
(GMPLS) Architecture", October 2004. Switching (GMPLS) Architecture", RFC 3945,
DOI 10.17487/RFC3945, October 2004,
<https://www.rfc-editor.org/info/rfc3945>.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, DOI (TLS) Protocol Version 1.2", RFC 5246,
10.17487/RFC5246, August 2008. DOI 10.17487/RFC5246, August 2008,
<https://www.rfc-editor.org/info/rfc5246>.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
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>.
[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>.
[RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration [RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration
Protocol (NETCONF) Access Control Model", RFC 6536, DOI Protocol (NETCONF) Access Control Model", RFC 6536,
10.17487/RFC6536, March 2012. DOI 10.17487/RFC6536, March 2012,
<https://www.rfc-editor.org/info/rfc6536>.
[RFC6991] Schoenwaelder, J., "Common YANG Data Types", RFC 6991, [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types",
July 2013. RFC 6991, DOI 10.17487/RFC6991, July 2013,
<https://www.rfc-editor.org/info/rfc6991>.
[RFC7926] Farrel, A., Ed., Drake, J., Bitar, N., Swallow, G., [RFC7926] Farrel, A., Ed., Drake, J., Bitar, N., Swallow, G.,
Ceccarelli, D., and X. Zhang, "Problem Statement and Ceccarelli, D., and X. Zhang, "Problem Statement and
Architecture for Information Exchange between Architecture for Information Exchange between
Interconnected Traffic-Engineered Networks", BCP 206, RFC Interconnected Traffic-Engineered Networks", BCP 206,
7926, DOI 10.17487/RFC7926, July 2016. RFC 7926, DOI 10.17487/RFC7926, July 2016,
<https://www.rfc-editor.org/info/rfc7926>.
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
Language", RFC 7950, August 2016. RFC 7950, DOI 10.17487/RFC7950, August 2016,
<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>.
[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. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[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.
[RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., [RFC8342] Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
Ananthakrishnan, H., and X. Liu, "A YANG Data Model for and R. Wilton, "Network Management Datastore Architecture
Network Topologies", RFC 8345, DOI 10.17487/RFC8345, (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
March 2018. <https://www.rfc-editor.org/info/rfc8342>.
[YANG-PUSH] Clemm, A., "Subscribing to YANG datastore push updates", [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N.,
draft-ietf-netconf-yang-push (work in progress), October Ananthakrishnan, H., and X. Liu, "A YANG Data Model for
2017. Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March
2018, <https://www.rfc-editor.org/info/rfc8345>.
[NETCONF-NOTIF] Voit, E., "Custom Subscription to Event [I-D.ietf-teas-yang-te]
Notifications", draft-ietf-netconf-subscribed- Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., and
notifications-05 (work in progress), October 2017. I. Bryskin, "A YANG Data Model for Traffic Engineering
Tunnels and Interfaces", draft-ietf-teas-yang-te-15 (work
in progress), June 2018.
10.2. Informative References 10.2. Informative References
[G.709] ITU-T, "Interfaces for the optical transport network", [G.709] ITU-T, "Interfaces for the optical transport network",
ITU-T Recommendation G.709, June 2016. ITU-T Recommendation G.709, June 2016.
[G.805] ITU-T, "Generic functional architecture of transport [G.805] ITU-T, "Generic functional architecture of transport
networks", ITU-T Recommendation G.805, March 2000. networks", ITU-T Recommendation G.805, March 2000.
[G.872] ITU-T, "Architecture of optical transport networks", ITU- [G.872] ITU-T, "Architecture of optical transport networks", ITU-T
T Recommendation G.872, January 2017. Recommendation G.872, January 2017.
[G.8080] ITU-T, "Architecture for the automatically switched [G.8080] ITU-T, "Architecture for the automatically switched
optical network", ITU-T Recommendation G.8080, February optical network", ITU-T Recommendation G.8080, February
2012. 2012.
[RFC2702] Awduche, D., "Requirements for Traffic Engineering Over [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
MPLS", RFC 2702, September 1999. dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <https://www.rfc-editor.org/info/rfc1195>.
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", [RFC2702] Awduche, D., Malcolm, J., Agogbua, J., O'Dell, M., and J.
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018. McManus, "Requirements for Traffic Engineering Over MPLS",
RFC 2702, DOI 10.17487/RFC2702, September 1999,
<https://www.rfc-editor.org/info/rfc2702>.
[YANG-SCHEDULE] Liu, X., "A YANG Data Model for Configuration [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
Scheduling", draft-liu-netmod-yang-schedule (Work in and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Progress), September 2017. Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<https://www.rfc-editor.org/info/rfc3209>.
[YANG-TOPO-WSON] Lee, Y., "A YANG Data Model for WSON Optical [RFC3272] Awduche, D., Chiu, A., Elwalid, A., Widjaja, I., and X.
Networks", draft-ietf-ccamp-wson-yang, (work in Xiao, "Overview and Principles of Internet Traffic
progress), October 2017. Engineering", RFC 3272, DOI 10.17487/RFC3272, May 2002,
<https://www.rfc-editor.org/info/rfc3272>.
[YANG-TOPO-OTN] Zheng, H., "A YANG Data Model for Optical Transport [RFC3471] Berger, L., Ed., "Generalized Multi-Protocol Label
Network Topology", draft-ietf-ccamp-otn-topo-yang-01, Switching (GMPLS) Signaling Functional Description",
work in progress), September 2017. RFC 3471, DOI 10.17487/RFC3471, January 2003,
<https://www.rfc-editor.org/info/rfc3471>.
[YANG-TOPO-L3TE] Liu, X., "YANG Data Model for Layer 3 TE [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
Topologies", draft-liu-teas-yang-l3-te-topo, (work in (TE) Extensions to OSPF Version 2", RFC 3630,
progress), July 2017. DOI 10.17487/RFC3630, September 2003,
<https://www.rfc-editor.org/info/rfc3630>.
[RFC3785] Le Faucheur, F., Uppili, R., Vedrenne, A., Merckx, P., and
T. Telkamp, "Use of Interior Gateway Protocol (IGP) Metric
as a second MPLS Traffic Engineering (TE) Metric", BCP 87,
RFC 3785, DOI 10.17487/RFC3785, May 2004,
<https://www.rfc-editor.org/info/rfc3785>.
[RFC4201] Kompella, K., Rekhter, Y., and L. Berger, "Link Bundling
in MPLS Traffic Engineering (TE)", RFC 4201,
DOI 10.17487/RFC4201, October 2005,
<https://www.rfc-editor.org/info/rfc4201>.
[RFC4202] Kompella, K., Ed. and Y. Rekhter, Ed., "Routing Extensions
in Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 4202, DOI 10.17487/RFC4202, October 2005,
<https://www.rfc-editor.org/info/rfc4202>.
[RFC4203] Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in
Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 4203, DOI 10.17487/RFC4203, October 2005,
<https://www.rfc-editor.org/info/rfc4203>.
[RFC4206] Kompella, K. and Y. Rekhter, "Label Switched Paths (LSP)
Hierarchy with Generalized Multi-Protocol Label Switching
(GMPLS) Traffic Engineering (TE)", RFC 4206,
DOI 10.17487/RFC4206, October 2005,
<https://www.rfc-editor.org/info/rfc4206>.
[RFC4872] Lang, J., Ed., Rekhter, Y., Ed., and D. Papadimitriou,
Ed., "RSVP-TE Extensions in Support of End-to-End
Generalized Multi-Protocol Label Switching (GMPLS)
Recovery", RFC 4872, DOI 10.17487/RFC4872, May 2007,
<https://www.rfc-editor.org/info/rfc4872>.
[RFC5152] Vasseur, JP., Ed., Ayyangar, A., Ed., and R. Zhang, "A
Per-Domain Path Computation Method for Establishing Inter-
Domain Traffic Engineering (TE) Label Switched Paths
(LSPs)", RFC 5152, DOI 10.17487/RFC5152, February 2008,
<https://www.rfc-editor.org/info/rfc5152>.
[RFC5212] Shiomoto, K., Papadimitriou, D., Le Roux, JL., Vigoureux,
M., and D. Brungard, "Requirements for GMPLS-Based Multi-
Region and Multi-Layer Networks (MRN/MLN)", RFC 5212,
DOI 10.17487/RFC5212, July 2008,
<https://www.rfc-editor.org/info/rfc5212>.
[RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic
Engineering", RFC 5305, DOI 10.17487/RFC5305, October
2008, <https://www.rfc-editor.org/info/rfc5305>.
[RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in
Support of Inter-Autonomous System (AS) MPLS and GMPLS
Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316,
December 2008, <https://www.rfc-editor.org/info/rfc5316>.
[RFC5329] Ishiguro, K., Manral, V., Davey, A., and A. Lindem, Ed.,
"Traffic Engineering Extensions to OSPF Version 3",
RFC 5329, DOI 10.17487/RFC5329, September 2008,
<https://www.rfc-editor.org/info/rfc5329>.
[RFC5392] Chen, M., Zhang, R., and X. Duan, "OSPF Extensions in
Support of Inter-Autonomous System (AS) MPLS and GMPLS
Traffic Engineering", RFC 5392, DOI 10.17487/RFC5392,
January 2009, <https://www.rfc-editor.org/info/rfc5392>.
[RFC6001] Papadimitriou, D., Vigoureux, M., Shiomoto, K., Brungard,
D., and JL. Le Roux, "Generalized MPLS (GMPLS) Protocol
Extensions for Multi-Layer and Multi-Region Networks (MLN/
MRN)", RFC 6001, DOI 10.17487/RFC6001, October 2010,
<https://www.rfc-editor.org/info/rfc6001>.
[RFC7308] Osborne, E., "Extended Administrative Groups in MPLS
Traffic Engineering (MPLS-TE)", RFC 7308,
DOI 10.17487/RFC7308, July 2014,
<https://www.rfc-editor.org/info/rfc7308>.
[RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S.
Previdi, "OSPF Traffic Engineering (TE) Metric
Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015,
<https://www.rfc-editor.org/info/rfc7471>.
[RFC7579] Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and
J. Han, "General Network Element Constraint Encoding for
GMPLS-Controlled Networks", RFC 7579,
DOI 10.17487/RFC7579, June 2015,
<https://www.rfc-editor.org/info/rfc7579>.
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
S. Ray, "North-Bound Distribution of Link-State and
Traffic Engineering (TE) Information Using BGP", RFC 7752,
DOI 10.17487/RFC7752, March 2016,
<https://www.rfc-editor.org/info/rfc7752>.
[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>.
[I-D.ietf-netconf-subscribed-notifications]
Voit, E., Clemm, A., Prieto, A., Nilsen-Nygaard, E., and
A. Tripathy, "Customized Subscriptions to a Publisher's
Event Streams", draft-ietf-netconf-subscribed-
notifications-12 (work in progress), April 2018.
[I-D.ietf-netconf-yang-push]
Clemm, A., Voit, E., Prieto, A., Tripathy, A., Nilsen-
Nygaard, E., Bierman, A., and B. Lengyel, "YANG Datastore
Subscription", draft-ietf-netconf-yang-push-16 (work in
progress), May 2018.
[I-D.liu-netmod-yang-schedule]
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
O. Dios, "A YANG Data Model for Configuration Scheduling",
draft-liu-netmod-yang-schedule-05 (work in progress),
March 2018.
[I-D.ietf-ccamp-wson-yang]
Lee, Y., Dhody, D., Zhang, X., Guo, A., Lopezalvarez, V.,
King, D., Yoon, B., and R. Vilata, "A Yang Data Model for
WSON Optical Networks", draft-ietf-ccamp-wson-yang-10
(work in progress), February 2018.
[I-D.ietf-ccamp-otn-topo-yang]
zhenghaomian@huawei.com, z., Guo, A., Busi, I., Sharma,
A., Liu, X., Belotti, S., Xu, Y., Wang, L., and O. Dios,
"A YANG Data Model for Optical Transport Network
Topology", draft-ietf-ccamp-otn-topo-yang-03 (work in
progress), June 2018.
[I-D.ietf-teas-yang-l3-te-topo]
Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
O. Dios, "YANG Data Model for Layer 3 TE Topologies",
draft-ietf-teas-yang-l3-te-topo-01 (work in progress),
March 2018.
11. Acknowledgments 11. Acknowledgments
The authors would like to thank Lou Berger, Sue Hares, Mazen Khaddam, The authors would like to thank Lou Berger, Sue Hares, Mazen Khaddam,
Cyril Margaria and Zafar Ali for participating in design discussions Cyril Margaria and Zafar Ali for participating in design discussions
and providing valuable insights. and providing valuable insights.
Appendix A. Complete Model Tree Structure Appendix A. Complete Model Tree Structure
module: ietf-te-topology module: ietf-te-topology
skipping to change at page 98, line 6 skipping to change at page 102, line 6
| +--rw remote-te-node-id? te-types:te-node-id | +--rw remote-te-node-id? te-types:te-node-id
| +--rw remote-te-link-tp-id? te-types:te-tp-id | +--rw remote-te-link-tp-id? te-types:te-tp-id
+--rw is-abstract? empty +--rw is-abstract? empty
+--rw name? string +--rw name? string
+--rw underlay {te-topology-hierarchy}? +--rw underlay {te-topology-hierarchy}?
| +--rw enabled? boolean | +--rw enabled? boolean
| +--rw primary-path | +--rw primary-path
| | +--rw network-ref? | | +--rw network-ref?
| | | -> /nw:networks/network/network-id | | | -> /nw:networks/network/network-id
| | +--rw path-element* [path-element-id] | | +--rw path-element* [path-element-id]
| | +--rw path-element-id uint32 | | +--rw path-element-id uint32
| | +--rw index? uint32 | | +--rw index? uint32
| | +--rw (type)? | | +--rw (type)?
| | +--:(numbered) | | +--:(num-unnum-hop)
| | | +--rw numbered-hop | | | +--rw num-unnum-hop
| | | +--rw address?
| | | | te-types:te-tp-id
| | | +--rw hop-type? te-hop-type
| | | +--rw direction?
| | | te-link-direction
| | +--:(as-number)
| | | +--rw as-number-hop
| | | +--rw as-number? binary
| | | +--rw hop-type? te-hop-type
| | +--:(unnumbered)
| | | +--rw unnumbered-hop
| | | +--rw node-id? | | | +--rw node-id?
| | | | te-types:te-node-id | | | | te-types:te-node-id
| | | +--rw link-tp-id? | | | +--rw link-tp-id?
| | | | te-types:te-tp-id | | | | te-types:te-tp-id
| | | +--rw hop-type? te-hop-type | | | +--rw hop-type? te-hop-type
| | | +--rw direction? | | | +--rw direction?
| | | te-link-direction | | | te-link-direction
| | +--:(as-number)
| | | +--rw as-number-hop
| | | +--rw as-number? binary
| | | +--rw hop-type? te-hop-type
| | +--:(label) | | +--:(label)
| | +--rw label-hop | | +--rw label-hop
| | +--rw te-label | | +--rw te-label
| | +--rw (technology)? | | +--rw (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--rw generic? | | | +--rw generic?
| | | rt- | | | rt-
types:generalized-label types:generalized-label
| | +--rw direction? | | +--rw direction?
| | te-label-direction | | te-label-direction
| +--rw backup-path* [index] | +--rw backup-path* [index]
| | +--rw index uint32 | | +--rw index uint32
| | +--rw network-ref? | | +--rw network-ref?
| | | -> /nw:networks/network/network-id | | | -> /nw:networks/network/network-id
| | +--rw path-element* [path-element-id] | | +--rw path-element* [path-element-id]
| | +--rw path-element-id uint32 | | +--rw path-element-id uint32
| | +--rw index? uint32 | | +--rw index? uint32
| | +--rw (type)? | | +--rw (type)?
| | +--:(numbered) | | +--:(num-unnum-hop)
| | | +--rw numbered-hop | | | +--rw num-unnum-hop
| | | +--rw address?
| | | | te-types:te-tp-id
| | | +--rw hop-type? te-hop-type
| | | +--rw direction?
| | | te-link-direction
| | +--:(as-number)
| | | +--rw as-number-hop
| | | +--rw as-number? binary
| | | +--rw hop-type? te-hop-type
| | +--:(unnumbered)
| | | +--rw unnumbered-hop
| | | +--rw node-id? | | | +--rw node-id?
| | | | te-types:te-node-id | | | | te-types:te-node-id
| | | +--rw link-tp-id? | | | +--rw link-tp-id?
| | | | te-types:te-tp-id | | | | te-types:te-tp-id
| | | +--rw hop-type? te-hop-type | | | +--rw hop-type? te-hop-type
| | | +--rw direction? | | | +--rw direction?
| | | te-link-direction | | | te-link-direction
| | +--:(as-number)
| | | +--rw as-number-hop
| | | +--rw as-number? binary
| | | +--rw hop-type? te-hop-type
| | +--:(label) | | +--:(label)
| | +--rw label-hop | | +--rw label-hop
| | +--rw te-label | | +--rw te-label
| | +--rw (technology)? | | +--rw (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--rw generic? | | | +--rw generic?
| | | rt- | | | rt-
types:generalized-label types:generalized-label
| | +--rw direction? | | +--rw direction?
| | te-label-direction | | te-label-direction
skipping to change at page 100, line 19 skipping to change at page 104, line 5
+--rw interface-switching-capability* +--rw interface-switching-capability*
| [switching-capability encoding] | [switching-capability encoding]
| +--rw switching-capability identityref | +--rw switching-capability identityref
| +--rw encoding identityref | +--rw encoding identityref
| +--rw max-lsp-bandwidth* [priority] | +--rw max-lsp-bandwidth* [priority]
| +--rw priority uint8 | +--rw priority uint8
| +--rw te-bandwidth | +--rw te-bandwidth
| +--rw (technology)? | +--rw (technology)?
| +--:(generic) | +--:(generic)
| +--rw generic? te-bandwidth | +--rw generic? te-bandwidth
+--rw label-restriction* [index] +--rw label-restrictions
| +--rw index uint32 | +--rw label-restriction* [index]
| +--rw inclusive-exclusive? enumeration | +--rw restriction? enumeration
| +--rw label-start | +--rw index uint32
| | +--rw te-label | +--rw label-start
| | +--rw (technology)? | | +--rw te-label
| | | +--:(generic) | | +--rw (technology)?
| | | +--rw generic? | | | +--:(generic)
| | | rt-types:generalized-label | | | +--rw generic?
| | +--rw direction? te-label-direction | | | rt-types:generalized-label
| +--rw label-end | | +--rw direction? te-label-direction
| | +--rw te-label | +--rw label-end
| | +--rw (technology)? | | +--rw te-label
| | | +--:(generic) | | +--rw (technology)?
| | | +--rw generic? | | | +--:(generic)
| | | rt-types:generalized-label | | | +--rw generic?
| | +--rw direction? te-label-direction | | | rt-types:generalized-label
| +--rw range-bitmap? binary | | +--rw direction? te-label-direction
| +--rw range-bitmap? binary
+--rw link-protection-type? enumeration +--rw link-protection-type? enumeration
+--rw max-link-bandwidth +--rw max-link-bandwidth
| +--rw te-bandwidth | +--rw te-bandwidth
| +--rw (technology)? | +--rw (technology)?
| +--:(generic) | +--:(generic)
| +--rw generic? te-bandwidth | +--rw generic? te-bandwidth
+--rw max-resv-link-bandwidth +--rw max-resv-link-bandwidth
| +--rw te-bandwidth | +--rw te-bandwidth
| +--rw (technology)? | +--rw (technology)?
| +--:(generic) | +--:(generic)
skipping to change at page 102, line 4 skipping to change at page 105, line 32
augment /nw:networks/nw:network/nw:node: augment /nw:networks/nw:network/nw:node:
+--rw te-node-id? te-types:te-node-id +--rw te-node-id? te-types:te-node-id
+--rw te! +--rw te!
+--rw te-node-template* +--rw te-node-template*
| -> ../../../../te/templates/node-template/name | -> ../../../../te/templates/node-template/name
| {template}? | {template}?
+--rw te-node-attributes +--rw te-node-attributes
| +--rw admin-status? te-types:te-admin-status | +--rw admin-status? te-types:te-admin-status
| +--rw connectivity-matrices | +--rw connectivity-matrices
| | +--rw number-of-entries? uint16 | | +--rw number-of-entries? uint16
| | +--rw label-restriction* [index] | | +--rw label-restrictions
| | | +--rw index uint32 | | | +--rw label-restriction* [index]
| | | +--rw inclusive-exclusive? enumeration | | | +--rw restriction? enumeration
| | | +--rw label-start | | | +--rw index uint32
| | | | +--rw te-label | | | +--rw label-start
| | | | +--rw (technology)? | | | | +--rw te-label
| | | | | +--:(generic) | | | | +--rw (technology)?
| | | | | +--rw generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--rw generic?
| | | | +--rw direction? te-label-direction | | | | | rt-types:generalized-label
| | | +--rw label-end | | | | +--rw direction? te-label-direction
| | | | +--rw te-label | | | +--rw label-end
| | | | +--rw (technology)? | | | | +--rw te-label
| | | | | +--:(generic) | | | | +--rw (technology)?
| | | | | +--rw generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--rw generic?
| | | | +--rw direction? te-label-direction | | | | | rt-types:generalized-label
| | | +--rw range-bitmap? binary | | | | +--rw direction? te-label-direction
| | | +--rw range-bitmap? binary
| | +--rw is-allowed? boolean | | +--rw is-allowed? boolean
| | +--rw underlay {te-topology-hierarchy}? | | +--rw underlay {te-topology-hierarchy}?
| | | +--rw enabled? boolean | | | +--rw enabled? boolean
| | | +--rw primary-path | | | +--rw primary-path
| | | | +--rw network-ref? | | | | +--rw network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--rw path-element* [path-element-id] | | | | +--rw path-element* [path-element-id]
| | | | +--rw path-element-id uint32 | | | | +--rw path-element-id uint32
| | | | +--rw index? uint32 | | | | +--rw index? uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address? te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id? | | | | | +--rw node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id? te-types:te-tp-id | | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type | | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? te-link-direction | | | | | +--rw direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt-types:generalized- | | | | | rt-types:generalized-
label label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label-direction | | | | te-label-direction
| | | +--rw backup-path* [index] | | | +--rw backup-path* [index]
| | | | +--rw index uint32 | | | | +--rw index uint32
| | | | +--rw network-ref? | | | | +--rw network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--rw path-element* [path-element-id] | | | | +--rw path-element* [path-element-id]
| | | | +--rw path-element-id uint32 | | | | +--rw path-element-id uint32
| | | | +--rw index? uint32 | | | | +--rw index? uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address? te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id? | | | | | +--rw node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id? te-types:te-tp-id | | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type | | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? te-link-direction | | | | | +--rw direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt-types:generalized- | | | | | rt-types:generalized-
label label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label-direction | | | | te-label-direction
skipping to change at page 104, line 27 skipping to change at page 108, line 5
| | | +--rw tunnel-name string | | | +--rw tunnel-name string
| | | +--rw sharing? boolean | | | +--rw sharing? boolean
| | +--rw path-constraints | | +--rw path-constraints
| | | +--rw te-bandwidth | | | +--rw te-bandwidth
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? te-bandwidth | | | | +--rw generic? te-bandwidth
| | | +--rw setup-priority? uint8 | | | +--rw setup-priority? uint8
| | | +--rw hold-priority? uint8 | | | +--rw hold-priority? uint8
| | | +--rw signaling-type? identityref | | | +--rw signaling-type? identityref
| | | +--rw disjointness?
| | | | te-types:te-path-disjointness
| | | +--rw path-metric-bounds | | | +--rw path-metric-bounds
| | | | +--rw path-metric-bound* [metric-type] | | | | +--rw path-metric-bound* [metric-type]
| | | | +--rw metric-type identityref | | | | +--rw metric-type identityref
| | | | +--rw upper-bound? uint64 | | | | +--rw upper-bound? uint64
| | | +--rw path-affinities | | | +--rw path-affinities
| | | | +--rw constraint* [usage] | | | | +--rw constraint* [usage]
| | | | +--rw usage identityref | | | | +--rw usage identityref
| | | | +--rw value? admin-groups | | | | +--rw value? admin-groups
| | | +--rw path-srlgs | | | +--rw path-srlgs
| | | +--rw usage? identityref | | | +--rw usage? identityref
skipping to change at page 105, line 10 skipping to change at page 108, line 27
| | | +--rw (algorithm)? | | | +--rw (algorithm)?
| | | +--:(metric) {path-optimization-metric}? | | | +--:(metric) {path-optimization-metric}?
| | | | +--rw optimization-metric* [metric-type] | | | | +--rw optimization-metric* [metric-type]
| | | | | +--rw metric-type | | | | | +--rw metric-type
| | | | | | identityref | | | | | | identityref
| | | | | +--rw weight? | | | | | +--rw weight?
| | | | | | uint8 | | | | | | uint8
| | | | | +--rw explicit-route-exclude-objects | | | | | +--rw explicit-route-exclude-objects
| | | | | | +--rw route-object-exclude-object* | | | | | | +--rw route-object-exclude-object*
| | | | | | [index] | | | | | | [index]
| | | | | | +--rw index uint32 | | | | | | +--rw index uint32
| | | | | | +--rw (type)? | | | | | | +--rw (type)?
| | | | | | +--:(numbered) | | | | | | +--:(num-unnum-hop)
| | | | | | | +--rw numbered-hop | | | | | | | +--rw num-unnum-hop
| | | | | | | +--rw address? | | | | | | | +--rw node-id?
| | | | | | | | te-types:te-node-id
| | | | | | | +--rw link-tp-id?
| | | | | | | | te-types:te-tp-id | | | | | | | | te-types:te-tp-id
| | | | | | | +--rw hop-type? | | | | | | | +--rw hop-type?
| | | | | | | | te-hop-type | | | | | | | | te-hop-type
| | | | | | | +--rw direction? | | | | | | | +--rw direction?
| | | | | | | te-link-direction | | | | | | | te-link-direction
| | | | | | +--:(as-number) | | | | | | +--:(as-number)
| | | | | | | +--rw as-number-hop | | | | | | | +--rw as-number-hop
| | | | | | | +--rw as-number? binary | | | | | | | +--rw as-number? binary
| | | | | | | +--rw hop-type? | | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--:(unnumbered)
| | | | | | | +--rw unnumbered-hop
| | | | | | | +--rw node-id?
| | | | | | | | te-types:te-node-id
| | | | | | | +--rw link-tp-id?
| | | | | | | | te-types:te-tp-id
| | | | | | | +--rw hop-type?
| | | | | | | | te-hop-type
| | | | | | | +--rw direction?
| | | | | | | te-link-direction
| | | | | | +--:(label) | | | | | | +--:(label)
| | | | | | +--rw label-hop | | | | | | | +--rw label-hop
| | | | | | +--rw te-label | | | | | | | +--rw te-label
| | | | | | +--rw (technology)? | | | | | | | +--rw (technology)?
| | | | | | | +--:(generic) | | | | | | | | +--:(generic)
| | | | | | | +--rw generic? | | | | | | | | +--rw generic?
| | | | | | | rt- | | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | | +--rw direction? | | | | | | | +--rw direction?
| | | | | | te-label-direction | | | | | | | te-label-direction
| | | | | | +--:(srlg)
| | | | | | +--rw srlg
| | | | | | +--rw srlg? uint32
| | | | | +--rw explicit-route-include-objects | | | | | +--rw explicit-route-include-objects
| | | | | +--rw route-object-include-object* | | | | | +--rw route-object-include-object*
| | | | | [index] | | | | | [index]
| | | | | +--rw index uint32 | | | | | +--rw index uint32
| | | | | +--rw (type)? | | | | | +--rw (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--rw numbered-hop | | | | | | +--rw num-unnum-hop
| | | | | | +--rw address? | | | | | | +--rw node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--rw as-number-hop | | | | | | +--rw as-number-hop
| | | | | | +--rw as-number? binary | | | | | | +--rw as-number? binary
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--rw unnumbered-hop
| | | | | | +--rw node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type?
| | | | | | | te-hop-type
| | | | | | +--rw direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--rw label-hop | | | | | +--rw label-hop
| | | | | +--rw te-label | | | | | +--rw te-label
| | | | | +--rw (technology)? | | | | | +--rw (technology)?
| | | | | | +--:(generic) | | | | | | +--:(generic)
| | | | | | +--rw generic? | | | | | | +--rw generic?
| | | | | | rt- | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-label-direction | | | | | te-label-direction
skipping to change at page 107, line 21 skipping to change at page 110, line 25
| | | | +--ro accumulative-value? uint64 | | | | +--ro accumulative-value? uint64
| | | +--ro path-affinities | | | +--ro path-affinities
| | | | +--ro constraint* [usage] | | | | +--ro constraint* [usage]
| | | | +--ro usage identityref | | | | +--ro usage identityref
| | | | +--ro value? admin-groups | | | | +--ro value? admin-groups
| | | +--ro path-srlgs | | | +--ro path-srlgs
| | | | +--ro usage? identityref | | | | +--ro usage? identityref
| | | | +--ro values* srlg | | | | +--ro values* srlg
| | | +--ro path-route-objects | | | +--ro path-route-objects
| | | +--ro path-route-object* [index] | | | +--ro path-route-object* [index]
| | | +--ro index uint32 | | | +--ro index uint32
| | | +--ro (type)? | | | +--ro (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--ro numbered-hop | | | | +--ro num-unnum-hop
| | | | +--ro address? te-types:te-tp-id
| | | | +--ro hop-type? te-hop-type
| | | | +--ro direction? te-link-direction
| | | +--:(as-number)
| | | | +--ro as-number-hop
| | | | +--ro as-number? binary
| | | | +--ro hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--ro unnumbered-hop
| | | | +--ro node-id? | | | | +--ro node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--ro link-tp-id? te-types:te-tp-id | | | | +--ro link-tp-id? te-types:te-tp-id
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type
| | | | +--ro direction? te-link-direction | | | | +--ro direction? te-link-direction
| | | +--:(as-number)
| | | | +--ro as-number-hop
| | | | +--ro as-number? binary
| | | | +--ro hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--ro label-hop | | | +--ro label-hop
| | | +--ro te-label | | | +--ro te-label
| | | +--ro (technology)? | | | +--ro (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--ro generic? | | | | +--ro generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--ro direction? | | | +--ro direction?
| | | te-label-direction | | | te-label-direction
| | +--rw connectivity-matrix* [id] | | +--rw connectivity-matrix* [id]
| | +--rw id uint32 | | +--rw id uint32
| | +--rw from | | +--rw from
| | | +--rw tp-ref? leafref | | | +--rw tp-ref? leafref
| | | +--rw label-restriction* [index] | | | +--rw label-restrictions
| | | +--rw index uint32 | | | +--rw label-restriction* [index]
| | | +--rw inclusive-exclusive? enumeration | | | +--rw restriction? enumeration
| | | +--rw label-start | | | +--rw index uint32
| | | | +--rw te-label | | | +--rw label-start
| | | | +--rw (technology)? | | | | +--rw te-label
| | | | | +--:(generic) | | | | +--rw (technology)?
| | | | | +--rw generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--rw generic?
| | | | +--rw direction? te-label-direction | | | | | rt-types:generalized-
| | | +--rw label-end label
| | | | +--rw te-label | | | | +--rw direction?
| | | | +--rw (technology)? | | | | te-label-direction
| | | | | +--:(generic) | | | +--rw label-end
| | | | | +--rw generic? | | | | +--rw te-label
| | | | | rt-types:generalized-label | | | | +--rw (technology)?
| | | | +--rw direction? te-label-direction | | | | | +--:(generic)
| | | +--rw range-bitmap? binary | | | | | +--rw generic?
| | | | | rt-types:generalized-
label
| | | | +--rw direction?
| | | | te-label-direction
| | | +--rw range-bitmap? binary
| | +--rw to | | +--rw to
| | | +--rw tp-ref? leafref | | | +--rw tp-ref? leafref
| | | +--rw label-restriction* [index] | | | +--rw label-restrictions
| | | +--rw index uint32 | | | +--rw label-restriction* [index]
| | | +--rw inclusive-exclusive? enumeration | | | +--rw restriction? enumeration
| | | +--rw label-start | | | +--rw index uint32
| | | | +--rw te-label | | | +--rw label-start
| | | | +--rw (technology)? | | | | +--rw te-label
| | | | | +--:(generic) | | | | +--rw (technology)?
| | | | | +--rw generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--rw generic?
| | | | +--rw direction? te-label-direction | | | | | rt-types:generalized-
| | | +--rw label-end label
| | | | +--rw te-label | | | | +--rw direction?
| | | | +--rw (technology)? | | | | te-label-direction
| | | | | +--:(generic) | | | +--rw label-end
| | | | | +--rw generic? | | | | +--rw te-label
| | | | | rt-types:generalized-label | | | | +--rw (technology)?
| | | | +--rw direction? te-label-direction | | | | | +--:(generic)
| | | +--rw range-bitmap? binary | | | | | +--rw generic?
| | | | | rt-types:generalized-
label
| | | | +--rw direction?
| | | | te-label-direction
| | | +--rw range-bitmap? binary
| | +--rw is-allowed? boolean | | +--rw is-allowed? boolean
| | +--rw underlay {te-topology-hierarchy}? | | +--rw underlay {te-topology-hierarchy}?
| | | +--rw enabled? boolean | | | +--rw enabled? boolean
| | | +--rw primary-path | | | +--rw primary-path
| | | | +--rw network-ref? | | | | +--rw network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--rw path-element* [path-element-id] | | | | +--rw path-element* [path-element-id]
| | | | +--rw path-element-id uint32 | | | | +--rw path-element-id uint32
| | | | +--rw index? uint32 | | | | +--rw index? uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address?
| | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction?
| | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id? | | | | | +--rw node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id? | | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type | | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label-direction | | | | te-label-direction
| | | +--rw backup-path* [index] | | | +--rw backup-path* [index]
| | | | +--rw index uint32 | | | | +--rw index uint32
| | | | +--rw network-ref? | | | | +--rw network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--rw path-element* [path-element-id] | | | | +--rw path-element* [path-element-id]
| | | | +--rw path-element-id uint32 | | | | +--rw path-element-id uint32
| | | | +--rw index? uint32 | | | | +--rw index? uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address?
| | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction?
| | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id? | | | | | +--rw node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id? | | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? te-hop-type | | | | | +--rw hop-type? te-hop-type
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary
| | | | | +--rw hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label-direction | | | | te-label-direction
skipping to change at page 111, line 22 skipping to change at page 114, line 18
| | | +--rw tunnel-name string | | | +--rw tunnel-name string
| | | +--rw sharing? boolean | | | +--rw sharing? boolean
| | +--rw path-constraints | | +--rw path-constraints
| | | +--rw te-bandwidth | | | +--rw te-bandwidth
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? te-bandwidth | | | | +--rw generic? te-bandwidth
| | | +--rw setup-priority? uint8 | | | +--rw setup-priority? uint8
| | | +--rw hold-priority? uint8 | | | +--rw hold-priority? uint8
| | | +--rw signaling-type? identityref | | | +--rw signaling-type? identityref
| | | +--rw disjointness?
| | | | te-types:te-path-disjointness
| | | +--rw path-metric-bounds | | | +--rw path-metric-bounds
| | | | +--rw path-metric-bound* [metric-type] | | | | +--rw path-metric-bound* [metric-type]
| | | | +--rw metric-type identityref | | | | +--rw metric-type identityref
| | | | +--rw upper-bound? uint64 | | | | +--rw upper-bound? uint64
| | | +--rw path-affinities | | | +--rw path-affinities
| | | | +--rw constraint* [usage] | | | | +--rw constraint* [usage]
| | | | +--rw usage identityref | | | | +--rw usage identityref
| | | | +--rw value? admin-groups | | | | +--rw value? admin-groups
| | | +--rw path-srlgs | | | +--rw path-srlgs
| | | +--rw usage? identityref | | | +--rw usage? identityref
skipping to change at page 112, line 5 skipping to change at page 114, line 40
| | | +--rw (algorithm)? | | | +--rw (algorithm)?
| | | +--:(metric) {path-optimization-metric}? | | | +--:(metric) {path-optimization-metric}?
| | | | +--rw optimization-metric* [metric-type] | | | | +--rw optimization-metric* [metric-type]
| | | | | +--rw metric-type | | | | | +--rw metric-type
| | | | | | identityref | | | | | | identityref
| | | | | +--rw weight? | | | | | +--rw weight?
| | | | | | uint8 | | | | | | uint8
| | | | | +--rw explicit-route-exclude-objects | | | | | +--rw explicit-route-exclude-objects
| | | | | | +--rw route-object-exclude-object* | | | | | | +--rw route-object-exclude-object*
| | | | | | [index] | | | | | | [index]
| | | | | | +--rw index | | | | | | +--rw index uint32
| | | | | | | uint32
| | | | | | +--rw (type)? | | | | | | +--rw (type)?
| | | | | | +--:(numbered) | | | | | | +--:(num-unnum-hop)
| | | | | | | +--rw numbered-hop | | | | | | | +--rw num-unnum-hop
| | | | | | | +--rw address? | | | | | | | +--rw node-id?
| | | | | | | | te-types:te-node-
id
| | | | | | | +--rw link-tp-id?
| | | | | | | | te-types:te-tp-id | | | | | | | | te-types:te-tp-id
| | | | | | | +--rw hop-type? | | | | | | | +--rw hop-type?
| | | | | | | | te-hop-type | | | | | | | | te-hop-type
| | | | | | | +--rw direction? | | | | | | | +--rw direction?
| | | | | | | te-link-direction | | | | | | | te-link-direction
| | | | | | +--:(as-number) | | | | | | +--:(as-number)
| | | | | | | +--rw as-number-hop | | | | | | | +--rw as-number-hop
| | | | | | | +--rw as-number? binary | | | | | | | +--rw as-number? binary
| | | | | | | +--rw hop-type? | | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--:(unnumbered)
| | | | | | | +--rw unnumbered-hop
| | | | | | | +--rw node-id?
| | | | | | | | te-types:te-node-
id
| | | | | | | +--rw link-tp-id?
| | | | | | | | te-types:te-tp-id
| | | | | | | +--rw hop-type?
| | | | | | | | te-hop-type
| | | | | | | +--rw direction?
| | | | | | | te-link-direction
| | | | | | +--:(label) | | | | | | +--:(label)
| | | | | | +--rw label-hop | | | | | | | +--rw label-hop
| | | | | | +--rw te-label | | | | | | | +--rw te-label
| | | | | | +--rw (technology)? | | | | | | | +--rw (technology)?
| | | | | | | +--:(generic) | | | | | | | | +--:(generic)
| | | | | | | +--rw generic? | | | | | | | | +--rw generic?
| | | | | | | rt- | | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | | +--rw direction? | | | | | | | +--rw direction?
| | | | | | te-label- | | | | | | | te-label-
direction direction
| | | | | | +--:(srlg)
| | | | | | +--rw srlg
| | | | | | +--rw srlg? uint32
| | | | | +--rw explicit-route-include-objects | | | | | +--rw explicit-route-include-objects
| | | | | +--rw route-object-include-object* | | | | | +--rw route-object-include-object*
| | | | | [index] | | | | | [index]
| | | | | +--rw index | | | | | +--rw index uint32
| | | | | | uint32
| | | | | +--rw (type)? | | | | | +--rw (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--rw numbered-hop | | | | | | +--rw num-unnum-hop
| | | | | | +--rw address? | | | | | | +--rw node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--rw as-number-hop | | | | | | +--rw as-number-hop
| | | | | | +--rw as-number? binary | | | | | | +--rw as-number? binary
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--rw unnumbered-hop
| | | | | | +--rw node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type?
| | | | | | | te-hop-type
| | | | | | +--rw direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--rw label-hop | | | | | +--rw label-hop
| | | | | +--rw te-label | | | | | +--rw te-label
| | | | | +--rw (technology)? | | | | | +--rw (technology)?
| | | | | | +--:(generic) | | | | | | +--:(generic)
| | | | | | +--rw generic? | | | | | | +--rw generic?
| | | | | | rt- | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-label- | | | | | te-label-
skipping to change at page 114, line 24 skipping to change at page 116, line 44
| | | +--ro accumulative-value? uint64 | | | +--ro accumulative-value? uint64
| | +--ro path-affinities | | +--ro path-affinities
| | | +--ro constraint* [usage] | | | +--ro constraint* [usage]
| | | +--ro usage identityref | | | +--ro usage identityref
| | | +--ro value? admin-groups | | | +--ro value? admin-groups
| | +--ro path-srlgs | | +--ro path-srlgs
| | | +--ro usage? identityref | | | +--ro usage? identityref
| | | +--ro values* srlg | | | +--ro values* srlg
| | +--ro path-route-objects | | +--ro path-route-objects
| | +--ro path-route-object* [index] | | +--ro path-route-object* [index]
| | +--ro index uint32 | | +--ro index uint32
| | +--ro (type)? | | +--ro (type)?
| | +--:(numbered) | | +--:(num-unnum-hop)
| | | +--ro numbered-hop | | | +--ro num-unnum-hop
| | | +--ro address?
| | | | te-types:te-tp-id
| | | +--ro hop-type? te-hop-type
| | | +--ro direction?
| | | te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(unnumbered)
| | | +--ro unnumbered-hop
| | | +--ro node-id? | | | +--ro node-id?
| | | | te-types:te-node-id | | | | te-types:te-node-id
| | | +--ro link-tp-id? | | | +--ro link-tp-id?
| | | | te-types:te-tp-id | | | | te-types:te-tp-id
| | | +--ro hop-type? te-hop-type | | | +--ro hop-type? te-hop-type
| | | +--ro direction? | | | +--ro direction?
| | | te-link-direction | | | te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(label) | | +--:(label)
| | +--ro label-hop | | +--ro label-hop
| | +--ro te-label | | +--ro te-label
| | +--ro (technology)? | | +--ro (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--ro generic? | | | +--ro generic?
| | | rt- | | | rt-
types:generalized-label types:generalized-label
| | +--ro direction? | | +--ro direction?
| | te-label-direction | | te-label-direction
skipping to change at page 116, line 6 skipping to change at page 118, line 19
| +--ro information-source-state | +--ro information-source-state
| | +--ro credibility-preference? uint16 | | +--ro credibility-preference? uint16
| | +--ro logical-network-element? string | | +--ro logical-network-element? string
| | +--ro network-instance? string | | +--ro network-instance? string
| | +--ro topology | | +--ro topology
| | +--ro node-ref? leafref | | +--ro node-ref? leafref
| | +--ro network-ref? | | +--ro network-ref?
| | -> /nw:networks/network/network-id | | -> /nw:networks/network/network-id
| +--ro connectivity-matrices | +--ro connectivity-matrices
| | +--ro number-of-entries? uint16 | | +--ro number-of-entries? uint16
| | +--ro label-restriction* [index] | | +--ro label-restrictions
| | | +--ro index uint32 | | | +--ro label-restriction* [index]
| | | +--ro inclusive-exclusive? enumeration | | | +--ro restriction? enumeration
| | | +--ro label-start | | | +--ro index uint32
| | | | +--ro te-label | | | +--ro label-start
| | | | +--ro (technology)? | | | | +--ro te-label
| | | | | +--:(generic) | | | | +--ro (technology)?
| | | | | +--ro generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--ro generic?
| | | | +--ro direction? te-label-direction | | | | | rt-types:generalized-label
| | | +--ro label-end | | | | +--ro direction? te-label-direction
| | | | +--ro te-label | | | +--ro label-end
| | | | +--ro (technology)? | | | | +--ro te-label
| | | | | +--:(generic) | | | | +--ro (technology)?
| | | | | +--ro generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--ro generic?
| | | | +--ro direction? te-label-direction | | | | | rt-types:generalized-label
| | | +--ro range-bitmap? binary | | | | +--ro direction? te-label-direction
| | | +--ro range-bitmap? binary
| | +--ro is-allowed? boolean | | +--ro is-allowed? boolean
| | +--ro underlay {te-topology-hierarchy}? | | +--ro underlay {te-topology-hierarchy}?
| | | +--ro enabled? boolean | | | +--ro enabled? boolean
| | | +--ro primary-path | | | +--ro primary-path
| | | | +--ro network-ref? | | | | +--ro network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--ro path-element* [path-element-id] | | | | +--ro path-element* [path-element-id]
| | | | +--ro path-element-id uint32 | | | | +--ro path-element-id uint32
| | | | +--ro index? uint32 | | | | +--ro index? uint32
| | | | +--ro (type)? | | | | +--ro (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--ro numbered-hop | | | | | +--ro num-unnum-hop
| | | | | +--ro address? te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--ro unnumbered-hop
| | | | | +--ro node-id? | | | | | +--ro node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--ro link-tp-id? te-types:te-tp-id | | | | | +--ro link-tp-id? te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type | | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? te-link-direction | | | | | +--ro direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--ro label-hop | | | | +--ro label-hop
| | | | +--ro te-label | | | | +--ro te-label
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--ro generic? | | | | | +--ro generic?
| | | | | rt-types:generalized- | | | | | rt-types:generalized-
label label
| | | | +--ro direction? | | | | +--ro direction?
| | | | te-label-direction | | | | te-label-direction
| | | +--ro backup-path* [index] | | | +--ro backup-path* [index]
| | | | +--ro index uint32 | | | | +--ro index uint32
| | | | +--ro network-ref? | | | | +--ro network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--ro path-element* [path-element-id] | | | | +--ro path-element* [path-element-id]
| | | | +--ro path-element-id uint32 | | | | +--ro path-element-id uint32
| | | | +--ro index? uint32 | | | | +--ro index? uint32
| | | | +--ro (type)? | | | | +--ro (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--ro numbered-hop | | | | | +--ro num-unnum-hop
| | | | | +--ro address? te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--ro unnumbered-hop
| | | | | +--ro node-id? | | | | | +--ro node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--ro link-tp-id? te-types:te-tp-id | | | | | +--ro link-tp-id? te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type | | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? te-link-direction | | | | | +--ro direction? te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--ro label-hop | | | | +--ro label-hop
| | | | +--ro te-label | | | | +--ro te-label
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--ro generic? | | | | | +--ro generic?
| | | | | rt-types:generalized- | | | | | rt-types:generalized-
label label
| | | | +--ro direction? | | | | +--ro direction?
| | | | te-label-direction | | | | te-label-direction
skipping to change at page 118, line 29 skipping to change at page 120, line 33
| | | +--ro tunnel-name string | | | +--ro tunnel-name string
| | | +--ro sharing? boolean | | | +--ro sharing? boolean
| | +--ro path-constraints | | +--ro path-constraints
| | | +--ro te-bandwidth | | | +--ro te-bandwidth
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--ro generic? te-bandwidth | | | | +--ro generic? te-bandwidth
| | | +--ro setup-priority? uint8 | | | +--ro setup-priority? uint8
| | | +--ro hold-priority? uint8 | | | +--ro hold-priority? uint8
| | | +--ro signaling-type? identityref | | | +--ro signaling-type? identityref
| | | +--ro disjointness?
| | | | te-types:te-path-disjointness
| | | +--ro path-metric-bounds | | | +--ro path-metric-bounds
| | | | +--ro path-metric-bound* [metric-type] | | | | +--ro path-metric-bound* [metric-type]
| | | | +--ro metric-type identityref | | | | +--ro metric-type identityref
| | | | +--ro upper-bound? uint64 | | | | +--ro upper-bound? uint64
| | | +--ro path-affinities | | | +--ro path-affinities
| | | | +--ro constraint* [usage] | | | | +--ro constraint* [usage]
| | | | +--ro usage identityref | | | | +--ro usage identityref
| | | | +--ro value? admin-groups | | | | +--ro value? admin-groups
| | | +--ro path-srlgs | | | +--ro path-srlgs
| | | +--ro usage? identityref | | | +--ro usage? identityref
skipping to change at page 119, line 12 skipping to change at page 121, line 14
| | | +--ro (algorithm)? | | | +--ro (algorithm)?
| | | +--:(metric) {path-optimization-metric}? | | | +--:(metric) {path-optimization-metric}?
| | | | +--ro optimization-metric* [metric-type] | | | | +--ro optimization-metric* [metric-type]
| | | | | +--ro metric-type | | | | | +--ro metric-type
| | | | | | identityref | | | | | | identityref
| | | | | +--ro weight? | | | | | +--ro weight?
| | | | | | uint8 | | | | | | uint8
| | | | | +--ro explicit-route-exclude-objects | | | | | +--ro explicit-route-exclude-objects
| | | | | | +--ro route-object-exclude-object* | | | | | | +--ro route-object-exclude-object*
| | | | | | [index] | | | | | | [index]
| | | | | | +--ro index uint32 | | | | | | +--ro index uint32
| | | | | | +--ro (type)? | | | | | | +--ro (type)?
| | | | | | +--:(numbered) | | | | | | +--:(num-unnum-hop)
| | | | | | | +--ro numbered-hop | | | | | | | +--ro num-unnum-hop
| | | | | | | +--ro address? | | | | | | | +--ro node-id?
| | | | | | | | te-types:te-node-id
| | | | | | | +--ro link-tp-id?
| | | | | | | | te-types:te-tp-id | | | | | | | | te-types:te-tp-id
| | | | | | | +--ro hop-type? | | | | | | | +--ro hop-type?
| | | | | | | | te-hop-type | | | | | | | | te-hop-type
| | | | | | | +--ro direction? | | | | | | | +--ro direction?
| | | | | | | te-link-direction | | | | | | | te-link-direction
| | | | | | +--:(as-number) | | | | | | +--:(as-number)
| | | | | | | +--ro as-number-hop | | | | | | | +--ro as-number-hop
| | | | | | | +--ro as-number? binary | | | | | | | +--ro as-number? binary
| | | | | | | +--ro hop-type? | | | | | | | +--ro hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--:(unnumbered)
| | | | | | | +--ro unnumbered-hop
| | | | | | | +--ro node-id?
| | | | | | | | te-types:te-node-id
| | | | | | | +--ro link-tp-id?
| | | | | | | | te-types:te-tp-id
| | | | | | | +--ro hop-type?
| | | | | | | | te-hop-type
| | | | | | | +--ro direction?
| | | | | | | te-link-direction
| | | | | | +--:(label) | | | | | | +--:(label)
| | | | | | +--ro label-hop | | | | | | | +--ro label-hop
| | | | | | +--ro te-label | | | | | | | +--ro te-label
| | | | | | +--ro (technology)? | | | | | | | +--ro (technology)?
| | | | | | | +--:(generic) | | | | | | | | +--:(generic)
| | | | | | | +--ro generic? | | | | | | | | +--ro generic?
| | | | | | | rt- | | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | | +--ro direction? | | | | | | | +--ro direction?
| | | | | | te-label-direction | | | | | | | te-label-direction
| | | | | | +--:(srlg)
| | | | | | +--ro srlg
| | | | | | +--ro srlg? uint32
| | | | | +--ro explicit-route-include-objects | | | | | +--ro explicit-route-include-objects
| | | | | +--ro route-object-include-object* | | | | | +--ro route-object-include-object*
| | | | | [index] | | | | | [index]
| | | | | +--ro index uint32 | | | | | +--ro index uint32
| | | | | +--ro (type)? | | | | | +--ro (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--ro numbered-hop | | | | | | +--ro num-unnum-hop
| | | | | | +--ro address? | | | | | | +--ro node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--ro link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--ro hop-type? | | | | | | +--ro hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--ro direction? | | | | | | +--ro direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--ro as-number-hop | | | | | | +--ro as-number-hop
| | | | | | +--ro as-number? binary | | | | | | +--ro as-number? binary
| | | | | | +--ro hop-type? | | | | | | +--ro hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--ro unnumbered-hop
| | | | | | +--ro node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--ro link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--ro hop-type?
| | | | | | | te-hop-type
| | | | | | +--ro direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--ro label-hop | | | | | +--ro label-hop
| | | | | +--ro te-label | | | | | +--ro te-label
| | | | | +--ro (technology)? | | | | | +--ro (technology)?
| | | | | | +--:(generic) | | | | | | +--:(generic)
| | | | | | +--ro generic? | | | | | | +--ro generic?
| | | | | | rt- | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--ro direction? | | | | | +--ro direction?
| | | | | te-label-direction | | | | | te-label-direction
skipping to change at page 121, line 23 skipping to change at page 123, line 12
| | | | +--ro accumulative-value? uint64 | | | | +--ro accumulative-value? uint64
| | | +--ro path-affinities | | | +--ro path-affinities
| | | | +--ro constraint* [usage] | | | | +--ro constraint* [usage]
| | | | +--ro usage identityref | | | | +--ro usage identityref
| | | | +--ro value? admin-groups | | | | +--ro value? admin-groups
| | | +--ro path-srlgs | | | +--ro path-srlgs
| | | | +--ro usage? identityref | | | | +--ro usage? identityref
| | | | +--ro values* srlg | | | | +--ro values* srlg
| | | +--ro path-route-objects | | | +--ro path-route-objects
| | | +--ro path-route-object* [index] | | | +--ro path-route-object* [index]
| | | +--ro index uint32 | | | +--ro index uint32
| | | +--ro (type)? | | | +--ro (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--ro numbered-hop | | | | +--ro num-unnum-hop
| | | | +--ro address? te-types:te-tp-id
| | | | +--ro hop-type? te-hop-type
| | | | +--ro direction? te-link-direction
| | | +--:(as-number)
| | | | +--ro as-number-hop
| | | | +--ro as-number? binary
| | | | +--ro hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--ro unnumbered-hop
| | | | +--ro node-id? | | | | +--ro node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--ro link-tp-id? te-types:te-tp-id | | | | +--ro link-tp-id? te-types:te-tp-id
| | | | +--ro hop-type? te-hop-type | | | | +--ro hop-type? te-hop-type
| | | | +--ro direction? te-link-direction | | | | +--ro direction? te-link-direction
| | | +--:(as-number)
| | | | +--ro as-number-hop
| | | | +--ro as-number? binary
| | | | +--ro hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--ro label-hop | | | +--ro label-hop
| | | +--ro te-label | | | +--ro te-label
| | | +--ro (technology)? | | | +--ro (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--ro generic? | | | | +--ro generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--ro direction? | | | +--ro direction?
| | | te-label-direction | | | te-label-direction
| | +--ro connectivity-matrix* [id] | | +--ro connectivity-matrix* [id]
| | +--ro id uint32 | | +--ro id uint32
| | +--ro from | | +--ro from
| | | +--ro tp-ref? leafref | | | +--ro tp-ref? leafref
| | | +--ro label-restriction* [index] | | | +--ro label-restrictions
| | | +--ro index uint32 | | | +--ro label-restriction* [index]
| | | +--ro inclusive-exclusive? enumeration | | | +--ro restriction? enumeration
| | | +--ro label-start | | | +--ro index uint32
| | | | +--ro te-label | | | +--ro label-start
| | | | +--ro (technology)? | | | | +--ro te-label
| | | | | +--:(generic) | | | | +--ro (technology)?
| | | | | +--ro generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--ro generic?
| | | | +--ro direction? te-label-direction | | | | | rt-types:generalized-
| | | +--ro label-end label
| | | | +--ro te-label | | | | +--ro direction?
| | | | +--ro (technology)? | | | | te-label-direction
| | | | | +--:(generic) | | | +--ro label-end
| | | | | +--ro generic? | | | | +--ro te-label
| | | | | rt-types:generalized-label | | | | +--ro (technology)?
| | | | +--ro direction? te-label-direction | | | | | +--:(generic)
| | | +--ro range-bitmap? binary | | | | | +--ro generic?
| | | | | rt-types:generalized-
label
| | | | +--ro direction?
| | | | te-label-direction
| | | +--ro range-bitmap? binary
| | +--ro to | | +--ro to
| | | +--ro tp-ref? leafref | | | +--ro tp-ref? leafref
| | | +--ro label-restriction* [index] | | | +--ro label-restrictions
| | | +--ro index uint32 | | | +--ro label-restriction* [index]
| | | +--ro inclusive-exclusive? enumeration | | | +--ro restriction? enumeration
| | | +--ro label-start | | | +--ro index uint32
| | | | +--ro te-label | | | +--ro label-start
| | | | +--ro (technology)? | | | | +--ro te-label
| | | | | +--:(generic) | | | | +--ro (technology)?
| | | | | +--ro generic? | | | | | +--:(generic)
| | | | | rt-types:generalized-label | | | | | +--ro generic?
| | | | +--ro direction? te-label-direction | | | | | rt-types:generalized-
| | | +--ro label-end label
| | | | +--ro te-label | | | | +--ro direction?
| | | | +--ro (technology)? | | | | te-label-direction
| | | | | +--:(generic) | | | +--ro label-end
| | | | | +--ro generic? | | | | +--ro te-label
| | | | | rt-types:generalized-label | | | | +--ro (technology)?
| | | | +--ro direction? te-label-direction | | | | | +--:(generic)
| | | +--ro range-bitmap? binary | | | | | +--ro generic?
| | | | | rt-types:generalized-
label
| | | | +--ro direction?
| | | | te-label-direction
| | | +--ro range-bitmap? binary
| | +--ro is-allowed? boolean | | +--ro is-allowed? boolean
| | +--ro underlay {te-topology-hierarchy}? | | +--ro underlay {te-topology-hierarchy}?
| | | +--ro enabled? boolean | | | +--ro enabled? boolean
| | | +--ro primary-path | | | +--ro primary-path
| | | | +--ro network-ref? | | | | +--ro network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--ro path-element* [path-element-id] | | | | +--ro path-element* [path-element-id]
| | | | +--ro path-element-id uint32 | | | | +--ro path-element-id uint32
| | | | +--ro index? uint32 | | | | +--ro index? uint32
| | | | +--ro (type)? | | | | +--ro (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--ro numbered-hop | | | | | +--ro num-unnum-hop
| | | | | +--ro address?
| | | | | | te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction?
| | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--ro unnumbered-hop
| | | | | +--ro node-id? | | | | | +--ro node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--ro link-tp-id? | | | | | +--ro link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type | | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? | | | | | +--ro direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--ro label-hop | | | | +--ro label-hop
| | | | +--ro te-label | | | | +--ro te-label
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--ro generic? | | | | | +--ro generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--ro direction? | | | | +--ro direction?
| | | | te-label-direction | | | | te-label-direction
| | | +--ro backup-path* [index] | | | +--ro backup-path* [index]
| | | | +--ro index uint32 | | | | +--ro index uint32
| | | | +--ro network-ref? | | | | +--ro network-ref?
| | | | | -> /nw:networks/network/network-id | | | | | -> /nw:networks/network/network-id
| | | | +--ro path-element* [path-element-id] | | | | +--ro path-element* [path-element-id]
| | | | +--ro path-element-id uint32 | | | | +--ro path-element-id uint32
| | | | +--ro index? uint32 | | | | +--ro index? uint32
| | | | +--ro (type)? | | | | +--ro (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--ro numbered-hop | | | | | +--ro num-unnum-hop
| | | | | +--ro address?
| | | | | | te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction?
| | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(unnumbered)
| | | | | +--ro unnumbered-hop
| | | | | +--ro node-id? | | | | | +--ro node-id?
| | | | | | te-types:te-node-id | | | | | | te-types:te-node-id
| | | | | +--ro link-tp-id? | | | | | +--ro link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--ro hop-type? te-hop-type | | | | | +--ro hop-type? te-hop-type
| | | | | +--ro direction? | | | | | +--ro direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number)
| | | | | +--ro as-number-hop
| | | | | +--ro as-number? binary
| | | | | +--ro hop-type? te-hop-type
| | | | +--:(label) | | | | +--:(label)
| | | | +--ro label-hop | | | | +--ro label-hop
| | | | +--ro te-label | | | | +--ro te-label
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--ro generic? | | | | | +--ro generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--ro direction? | | | | +--ro direction?
| | | | te-label-direction | | | | te-label-direction
skipping to change at page 125, line 25 skipping to change at page 127, line 4
| | | +--ro tunnel-name string | | | +--ro tunnel-name string
| | | +--ro sharing? boolean | | | +--ro sharing? boolean
| | +--ro path-constraints | | +--ro path-constraints
| | | +--ro te-bandwidth | | | +--ro te-bandwidth
| | | | +--ro (technology)? | | | | +--ro (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--ro generic? te-bandwidth | | | | +--ro generic? te-bandwidth
| | | +--ro setup-priority? uint8 | | | +--ro setup-priority? uint8
| | | +--ro hold-priority? uint8 | | | +--ro hold-priority? uint8
| | | +--ro signaling-type? identityref | | | +--ro signaling-type? identityref
| | | +--ro disjointness?
| | | | te-types:te-path-disjointness
| | | +--ro path-metric-bounds | | | +--ro path-metric-bounds
| | | | +--ro path-metric-bound* [metric-type] | | | | +--ro path-metric-bound* [metric-type]
| | | | +--ro metric-type identityref | | | | +--ro metric-type identityref
| | | | +--ro upper-bound? uint64 | | | | +--ro upper-bound? uint64
| | | +--ro path-affinities | | | +--ro path-affinities
| | | | +--ro constraint* [usage] | | | | +--ro constraint* [usage]
| | | | +--ro usage identityref | | | | +--ro usage identityref
| | | | +--ro value? admin-groups | | | | +--ro value? admin-groups
| | | +--ro path-srlgs | | | +--ro path-srlgs
| | | +--ro usage? identityref | | | +--ro usage? identityref
skipping to change at page 126, line 8 skipping to change at page 127, line 26
| | | +--ro (algorithm)? | | | +--ro (algorithm)?
| | | +--:(metric) {path-optimization-metric}? | | | +--:(metric) {path-optimization-metric}?
| | | | +--ro optimization-metric* [metric-type] | | | | +--ro optimization-metric* [metric-type]
| | | | | +--ro metric-type | | | | | +--ro metric-type
| | | | | | identityref | | | | | | identityref
| | | | | +--ro weight? | | | | | +--ro weight?
| | | | | | uint8 | | | | | | uint8
| | | | | +--ro explicit-route-exclude-objects | | | | | +--ro explicit-route-exclude-objects
| | | | | | +--ro route-object-exclude-object* | | | | | | +--ro route-object-exclude-object*
| | | | | | [index] | | | | | | [index]
| | | | | | +--ro index | | | | | | +--ro index uint32
| | | | | | | uint32
| | | | | | +--ro (type)? | | | | | | +--ro (type)?
| | | | | | +--:(numbered) | | | | | | +--:(num-unnum-hop)
| | | | | | | +--ro numbered-hop | | | | | | | +--ro num-unnum-hop
| | | | | | | +--ro address? | | | | | | | +--ro node-id?
| | | | | | | | te-types:te-node-
id
| | | | | | | +--ro link-tp-id?
| | | | | | | | te-types:te-tp-id | | | | | | | | te-types:te-tp-id
| | | | | | | +--ro hop-type? | | | | | | | +--ro hop-type?
| | | | | | | | te-hop-type | | | | | | | | te-hop-type
| | | | | | | +--ro direction? | | | | | | | +--ro direction?
| | | | | | | te-link-direction | | | | | | | te-link-direction
| | | | | | +--:(as-number) | | | | | | +--:(as-number)
| | | | | | | +--ro as-number-hop | | | | | | | +--ro as-number-hop
| | | | | | | +--ro as-number? binary | | | | | | | +--ro as-number? binary
| | | | | | | +--ro hop-type? | | | | | | | +--ro hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--:(unnumbered)
| | | | | | | +--ro unnumbered-hop
| | | | | | | +--ro node-id?
| | | | | | | | te-types:te-node-
id
| | | | | | | +--ro link-tp-id?
| | | | | | | | te-types:te-tp-id
| | | | | | | +--ro hop-type?
| | | | | | | | te-hop-type
| | | | | | | +--ro direction?
| | | | | | | te-link-direction
| | | | | | +--:(label) | | | | | | +--:(label)
| | | | | | +--ro label-hop | | | | | | | +--ro label-hop
| | | | | | +--ro te-label | | | | | | | +--ro te-label
| | | | | | +--ro (technology)? | | | | | | | +--ro (technology)?
| | | | | | | +--:(generic) | | | | | | | | +--:(generic)
| | | | | | | +--ro generic? | | | | | | | | +--ro generic?
| | | | | | | rt- | | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | | +--ro direction? | | | | | | | +--ro direction?
| | | | | | te-label- | | | | | | | te-label-
direction direction
| | | | | | +--:(srlg)
| | | | | | +--ro srlg
| | | | | | +--ro srlg? uint32
| | | | | +--ro explicit-route-include-objects | | | | | +--ro explicit-route-include-objects
| | | | | +--ro route-object-include-object* | | | | | +--ro route-object-include-object*
| | | | | [index] | | | | | [index]
| | | | | +--ro index | | | | | +--ro index uint32
| | | | | | uint32
| | | | | +--ro (type)? | | | | | +--ro (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--ro numbered-hop | | | | | | +--ro num-unnum-hop
| | | | | | +--ro address? | | | | | | +--ro node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--ro link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--ro hop-type? | | | | | | +--ro hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--ro direction? | | | | | | +--ro direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--ro as-number-hop | | | | | | +--ro as-number-hop
| | | | | | +--ro as-number? binary | | | | | | +--ro as-number? binary
| | | | | | +--ro hop-type? | | | | | | +--ro hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--ro unnumbered-hop
| | | | | | +--ro node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--ro link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--ro hop-type?
| | | | | | | te-hop-type
| | | | | | +--ro direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--ro label-hop | | | | | +--ro label-hop
| | | | | +--ro te-label | | | | | +--ro te-label
| | | | | +--ro (technology)? | | | | | +--ro (technology)?
| | | | | | +--:(generic) | | | | | | +--:(generic)
| | | | | | +--ro generic? | | | | | | +--ro generic?
| | | | | | rt- | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--ro direction? | | | | | +--ro direction?
| | | | | te-label- | | | | | te-label-
skipping to change at page 128, line 28 skipping to change at page 129, line 31
| | | +--ro accumulative-value? uint64 | | | +--ro accumulative-value? uint64
| | +--ro path-affinities | | +--ro path-affinities
| | | +--ro constraint* [usage] | | | +--ro constraint* [usage]
| | | +--ro usage identityref | | | +--ro usage identityref
| | | +--ro value? admin-groups | | | +--ro value? admin-groups
| | +--ro path-srlgs | | +--ro path-srlgs
| | | +--ro usage? identityref | | | +--ro usage? identityref
| | | +--ro values* srlg | | | +--ro values* srlg
| | +--ro path-route-objects | | +--ro path-route-objects
| | +--ro path-route-object* [index] | | +--ro path-route-object* [index]
| | +--ro index uint32 | | +--ro index uint32
| | +--ro (type)? | | +--ro (type)?
| | +--:(numbered) | | +--:(num-unnum-hop)
| | | +--ro numbered-hop | | | +--ro num-unnum-hop
| | | +--ro address?
| | | | te-types:te-tp-id
| | | +--ro hop-type? te-hop-type
| | | +--ro direction?
| | | te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(unnumbered)
| | | +--ro unnumbered-hop
| | | +--ro node-id? | | | +--ro node-id?
| | | | te-types:te-node-id | | | | te-types:te-node-id
| | | +--ro link-tp-id? | | | +--ro link-tp-id?
| | | | te-types:te-tp-id | | | | te-types:te-tp-id
| | | +--ro hop-type? te-hop-type | | | +--ro hop-type? te-hop-type
| | | +--ro direction? | | | +--ro direction?
| | | te-link-direction | | | te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(label) | | +--:(label)
| | +--ro label-hop | | +--ro label-hop
| | +--ro te-label | | +--ro te-label
| | +--ro (technology)? | | +--ro (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--ro generic? | | | +--ro generic?
| | | rt- | | | rt-
types:generalized-label types:generalized-label
| | +--ro direction? | | +--ro direction?
| | te-label-direction | | te-label-direction
skipping to change at page 130, line 18 skipping to change at page 131, line 14
| +--rw switching-capability* | +--rw switching-capability*
| [switching-capability encoding] | [switching-capability encoding]
| +--rw switching-capability identityref | +--rw switching-capability identityref
| +--rw encoding identityref | +--rw encoding identityref
| +--rw te-bandwidth | +--rw te-bandwidth
| +--rw (technology)? | +--rw (technology)?
| +--:(generic) | +--:(generic)
| +--rw generic? te-bandwidth | +--rw generic? te-bandwidth
+--rw local-link-connectivities +--rw local-link-connectivities
| +--rw number-of-entries? uint16 | +--rw number-of-entries? uint16
| +--rw label-restriction* [index] | +--rw label-restrictions
| | +--rw index uint32 | | +--rw label-restriction* [index]
| | +--rw inclusive-exclusive? enumeration | | +--rw restriction? enumeration
| | +--rw label-start | | +--rw index uint32
| | | +--rw te-label | | +--rw label-start
| | | +--rw (technology)? | | | +--rw te-label
| | | | +--:(generic) | | | +--rw (technology)?
| | | | +--rw generic? | | | | +--:(generic)
| | | | rt-types:generalized-label | | | | +--rw generic?
| | | +--rw direction? te-label-direction | | | | rt-types:generalized-label
| | +--rw label-end | | | +--rw direction? te-label-direction
| | | +--rw te-label | | +--rw label-end
| | | +--rw (technology)? | | | +--rw te-label
| | | | +--:(generic) | | | +--rw (technology)?
| | | | +--rw generic? | | | | +--:(generic)
| | | | rt-types:generalized-label | | | | +--rw generic?
| | | +--rw direction? te-label-direction | | | | rt-types:generalized-label
| | +--rw range-bitmap? binary | | | +--rw direction? te-label-direction
| | +--rw range-bitmap? binary
| +--rw is-allowed? boolean | +--rw is-allowed? boolean
| +--rw underlay {te-topology-hierarchy}? | +--rw underlay {te-topology-hierarchy}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
| | +--rw primary-path | | +--rw primary-path
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? | | | | +--rw node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--rw link-tp-id? te-types:te-tp-id | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction | | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
| | +--rw backup-path* [index] | | +--rw backup-path* [index]
| | | +--rw index uint32 | | | +--rw index uint32
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? | | | | +--rw node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--rw link-tp-id? te-types:te-tp-id | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction | | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
skipping to change at page 132, line 41 skipping to change at page 133, line 28
| | +--rw tunnel-name string | | +--rw tunnel-name string
| | +--rw sharing? boolean | | +--rw sharing? boolean
| +--rw path-constraints | +--rw path-constraints
| | +--rw te-bandwidth | | +--rw te-bandwidth
| | | +--rw (technology)? | | | +--rw (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--rw generic? te-bandwidth | | | +--rw generic? te-bandwidth
| | +--rw setup-priority? uint8 | | +--rw setup-priority? uint8
| | +--rw hold-priority? uint8 | | +--rw hold-priority? uint8
| | +--rw signaling-type? identityref | | +--rw signaling-type? identityref
| | +--rw disjointness?
| | | te-types:te-path-disjointness
| | +--rw path-metric-bounds | | +--rw path-metric-bounds
| | | +--rw path-metric-bound* [metric-type] | | | +--rw path-metric-bound* [metric-type]
| | | +--rw metric-type identityref | | | +--rw metric-type identityref
| | | +--rw upper-bound? uint64 | | | +--rw upper-bound? uint64
| | +--rw path-affinities | | +--rw path-affinities
| | | +--rw constraint* [usage] | | | +--rw constraint* [usage]
| | | +--rw usage identityref | | | +--rw usage identityref
| | | +--rw value? admin-groups | | | +--rw value? admin-groups
| | +--rw path-srlgs | | +--rw path-srlgs
| | +--rw usage? identityref | | +--rw usage? identityref
skipping to change at page 133, line 24 skipping to change at page 134, line 9
| | +--rw (algorithm)? | | +--rw (algorithm)?
| | +--:(metric) {path-optimization-metric}? | | +--:(metric) {path-optimization-metric}?
| | | +--rw optimization-metric* [metric-type] | | | +--rw optimization-metric* [metric-type]
| | | | +--rw metric-type | | | | +--rw metric-type
| | | | | identityref | | | | | identityref
| | | | +--rw weight? | | | | +--rw weight?
| | | | | uint8 | | | | | uint8
| | | | +--rw explicit-route-exclude-objects | | | | +--rw explicit-route-exclude-objects
| | | | | +--rw route-object-exclude-object* | | | | | +--rw route-object-exclude-object*
| | | | | [index] | | | | | [index]
| | | | | +--rw index uint32 | | | | | +--rw index uint32
| | | | | +--rw (type)? | | | | | +--rw (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--rw numbered-hop | | | | | | +--rw num-unnum-hop
| | | | | | +--rw address? | | | | | | +--rw node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--rw as-number-hop | | | | | | +--rw as-number-hop
| | | | | | +--rw as-number? binary | | | | | | +--rw as-number? binary
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--rw unnumbered-hop
| | | | | | +--rw node-id?
| | | | | | | te-types:te-node-id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type?
| | | | | | | te-hop-type
| | | | | | +--rw direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--rw label-hop | | | | | | +--rw label-hop
| | | | | +--rw te-label | | | | | | +--rw te-label
| | | | | +--rw (technology)? | | | | | | +--rw (technology)?
| | | | | | +--:(generic) | | | | | | | +--:(generic)
| | | | | | +--rw generic? | | | | | | | +--rw generic?
| | | | | | rt- | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | te-label-direction | | | | | | te-label-direction
| | | | | +--:(srlg)
| | | | | +--rw srlg
| | | | | +--rw srlg? uint32
| | | | +--rw explicit-route-include-objects | | | | +--rw explicit-route-include-objects
| | | | +--rw route-object-include-object* | | | | +--rw route-object-include-object*
| | | | [index] | | | | [index]
| | | | +--rw index uint32 | | | | +--rw index uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address? | | | | | +--rw node-id?
| | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number) | | | | +--:(as-number)
| | | | | +--rw as-number-hop | | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary | | | | | +--rw as-number? binary
| | | | | +--rw hop-type? | | | | | +--rw hop-type?
| | | | | te-hop-type | | | | | te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id?
| | | | | | te-types:te-node-id
| | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id
| | | | | +--rw hop-type?
| | | | | | te-hop-type
| | | | | +--rw direction?
| | | | | te-link-direction
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label-direction | | | | te-label-direction
skipping to change at page 135, line 35 skipping to change at page 136, line 7
| | | +--ro accumulative-value? uint64 | | | +--ro accumulative-value? uint64
| | +--ro path-affinities | | +--ro path-affinities
| | | +--ro constraint* [usage] | | | +--ro constraint* [usage]
| | | +--ro usage identityref | | | +--ro usage identityref
| | | +--ro value? admin-groups | | | +--ro value? admin-groups
| | +--ro path-srlgs | | +--ro path-srlgs
| | | +--ro usage? identityref | | | +--ro usage? identityref
| | | +--ro values* srlg | | | +--ro values* srlg
| | +--ro path-route-objects | | +--ro path-route-objects
| | +--ro path-route-object* [index] | | +--ro path-route-object* [index]
| | +--ro index uint32 | | +--ro index uint32
| | +--ro (type)? | | +--ro (type)?
| | +--:(numbered) | | +--:(num-unnum-hop)
| | | +--ro numbered-hop | | | +--ro num-unnum-hop
| | | +--ro address? te-types:te-tp-id
| | | +--ro hop-type? te-hop-type
| | | +--ro direction? te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(unnumbered)
| | | +--ro unnumbered-hop
| | | +--ro node-id? | | | +--ro node-id?
| | | | te-types:te-node-id | | | | te-types:te-node-id
| | | +--ro link-tp-id? te-types:te-tp-id | | | +--ro link-tp-id? te-types:te-tp-id
| | | +--ro hop-type? te-hop-type | | | +--ro hop-type? te-hop-type
| | | +--ro direction? te-link-direction | | | +--ro direction? te-link-direction
| | +--:(as-number)
| | | +--ro as-number-hop
| | | +--ro as-number? binary
| | | +--ro hop-type? te-hop-type
| | +--:(label) | | +--:(label)
| | +--ro label-hop | | +--ro label-hop
| | +--ro te-label | | +--ro te-label
| | +--ro (technology)? | | +--ro (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--ro generic? | | | +--ro generic?
| | | rt-types:generalized- | | | rt-types:generalized-
label label
| | +--ro direction? | | +--ro direction?
| | te-label-direction | | te-label-direction
| +--rw local-link-connectivity* [link-tp-ref] | +--rw local-link-connectivity* [link-tp-ref]
| +--rw link-tp-ref | +--rw link-tp-ref
| | -> ../../../../../nt:termination-point/tp-id | | -> ../../../../../nt:termination-point/tp-id
| +--rw label-restriction* [index] | +--rw label-restrictions
| | +--rw index uint32 | | +--rw label-restriction* [index]
| | +--rw inclusive-exclusive? enumeration | | +--rw restriction? enumeration
| | +--rw label-start | | +--rw index uint32
| | | +--rw te-label | | +--rw label-start
| | | +--rw (technology)? | | | +--rw te-label
| | | | +--:(generic) | | | +--rw (technology)?
| | | | +--rw generic? | | | | +--:(generic)
| | | | rt-types:generalized-label | | | | +--rw generic?
| | | +--rw direction? te-label-direction | | | | rt-types:generalized-label
| | +--rw label-end | | | +--rw direction? te-label-direction
| | | +--rw te-label | | +--rw label-end
| | | +--rw (technology)? | | | +--rw te-label
| | | | +--:(generic) | | | +--rw (technology)?
| | | | +--rw generic? | | | | +--:(generic)
| | | | rt-types:generalized-label | | | | +--rw generic?
| | | +--rw direction? te-label-direction | | | | rt-types:generalized-label
| | +--rw range-bitmap? binary | | | +--rw direction? te-label-direction
| +--rw is-allowed? boolean | | +--rw range-bitmap? binary
| +--rw is-allowed? boolean
| +--rw underlay {te-topology-hierarchy}? | +--rw underlay {te-topology-hierarchy}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
| | +--rw primary-path | | +--rw primary-path
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address?
| | | | | te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction?
| | | | te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? | | | | +--rw node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--rw link-tp-id? | | | | +--rw link-tp-id?
| | | | | te-types:te-tp-id | | | | | te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-link-direction | | | | te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt- | | | | rt-
types:generalized-label types:generalized-label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
| | +--rw backup-path* [index] | | +--rw backup-path* [index]
| | | +--rw index uint32 | | | +--rw index uint32
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address?
| | | | | te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction?
| | | | te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? | | | | +--rw node-id?
| | | | | te-types:te-node-id | | | | | te-types:te-node-id
| | | | +--rw link-tp-id? | | | | +--rw link-tp-id?
| | | | | te-types:te-tp-id | | | | | te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-link-direction | | | | te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt- | | | | rt-
types:generalized-label types:generalized-label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
skipping to change at page 139, line 15 skipping to change at page 139, line 10
| | +--rw tunnel-name string | | +--rw tunnel-name string
| | +--rw sharing? boolean | | +--rw sharing? boolean
| +--rw path-constraints | +--rw path-constraints
| | +--rw te-bandwidth | | +--rw te-bandwidth
| | | +--rw (technology)? | | | +--rw (technology)?
| | | +--:(generic) | | | +--:(generic)
| | | +--rw generic? te-bandwidth | | | +--rw generic? te-bandwidth
| | +--rw setup-priority? uint8 | | +--rw setup-priority? uint8
| | +--rw hold-priority? uint8 | | +--rw hold-priority? uint8
| | +--rw signaling-type? identityref | | +--rw signaling-type? identityref
| | +--rw disjointness?
| | | te-types:te-path-disjointness
| | +--rw path-metric-bounds | | +--rw path-metric-bounds
| | | +--rw path-metric-bound* [metric-type] | | | +--rw path-metric-bound* [metric-type]
| | | +--rw metric-type identityref | | | +--rw metric-type identityref
| | | +--rw upper-bound? uint64 | | | +--rw upper-bound? uint64
| | +--rw path-affinities | | +--rw path-affinities
| | | +--rw constraint* [usage] | | | +--rw constraint* [usage]
| | | +--rw usage identityref | | | +--rw usage identityref
| | | +--rw value? admin-groups | | | +--rw value? admin-groups
| | +--rw path-srlgs | | +--rw path-srlgs
| | +--rw usage? identityref | | +--rw usage? identityref
skipping to change at page 139, line 39 skipping to change at page 139, line 32
| | +--rw (algorithm)? | | +--rw (algorithm)?
| | +--:(metric) {path-optimization-metric}? | | +--:(metric) {path-optimization-metric}?
| | | +--rw optimization-metric* [metric-type] | | | +--rw optimization-metric* [metric-type]
| | | | +--rw metric-type | | | | +--rw metric-type
| | | | | identityref | | | | | identityref
| | | | +--rw weight? | | | | +--rw weight?
| | | | | uint8 | | | | | uint8
| | | | +--rw explicit-route-exclude-objects | | | | +--rw explicit-route-exclude-objects
| | | | | +--rw route-object-exclude-object* | | | | | +--rw route-object-exclude-object*
| | | | | [index] | | | | | [index]
| | | | | +--rw index | | | | | +--rw index uint32
| | | | | | uint32
| | | | | +--rw (type)? | | | | | +--rw (type)?
| | | | | +--:(numbered) | | | | | +--:(num-unnum-hop)
| | | | | | +--rw numbered-hop | | | | | | +--rw num-unnum-hop
| | | | | | +--rw address? | | | | | | +--rw node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id | | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | | te-hop-type | | | | | | | te-hop-type
| | | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | | te-link-direction | | | | | | te-link-direction
| | | | | +--:(as-number) | | | | | +--:(as-number)
| | | | | | +--rw as-number-hop | | | | | | +--rw as-number-hop
| | | | | | +--rw as-number? binary | | | | | | +--rw as-number? binary
| | | | | | +--rw hop-type? | | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--:(unnumbered)
| | | | | | +--rw unnumbered-hop
| | | | | | +--rw node-id?
| | | | | | | te-types:te-node-
id
| | | | | | +--rw link-tp-id?
| | | | | | | te-types:te-tp-id
| | | | | | +--rw hop-type?
| | | | | | | te-hop-type
| | | | | | +--rw direction?
| | | | | | te-link-direction
| | | | | +--:(label) | | | | | +--:(label)
| | | | | +--rw label-hop | | | | | | +--rw label-hop
| | | | | +--rw te-label | | | | | | +--rw te-label
| | | | | +--rw (technology)? | | | | | | +--rw (technology)?
| | | | | | +--:(generic) | | | | | | | +--:(generic)
| | | | | | +--rw generic? | | | | | | | +--rw generic?
| | | | | | rt- | | | | | | | rt-
types:generalized-label types:generalized-label
| | | | | +--rw direction? | | | | | | +--rw direction?
| | | | | te-label- | | | | | | te-label-
direction direction
| | | | | +--:(srlg)
| | | | | +--rw srlg
| | | | | +--rw srlg? uint32
| | | | +--rw explicit-route-include-objects | | | | +--rw explicit-route-include-objects
| | | | +--rw route-object-include-object* | | | | +--rw route-object-include-object*
| | | | [index] | | | | [index]
| | | | +--rw index | | | | +--rw index uint32
| | | | | uint32
| | | | +--rw (type)? | | | | +--rw (type)?
| | | | +--:(numbered) | | | | +--:(num-unnum-hop)
| | | | | +--rw numbered-hop | | | | | +--rw num-unnum-hop
| | | | | +--rw address? | | | | | +--rw node-id?
| | | | | | te-types:te-node-
id
| | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id | | | | | | te-types:te-tp-id
| | | | | +--rw hop-type? | | | | | +--rw hop-type?
| | | | | | te-hop-type | | | | | | te-hop-type
| | | | | +--rw direction? | | | | | +--rw direction?
| | | | | te-link-direction | | | | | te-link-direction
| | | | +--:(as-number) | | | | +--:(as-number)
| | | | | +--rw as-number-hop | | | | | +--rw as-number-hop
| | | | | +--rw as-number? binary | | | | | +--rw as-number? binary
| | | | | +--rw hop-type? | | | | | +--rw hop-type?
| | | | | te-hop-type | | | | | te-hop-type
| | | | +--:(unnumbered)
| | | | | +--rw unnumbered-hop
| | | | | +--rw node-id?
| | | | | | te-types:te-node-
id
| | | | | +--rw link-tp-id?
| | | | | | te-types:te-tp-id
| | | | | +--rw hop-type?
| | | | | | te-hop-type
| | | | | +--rw direction?
| | | | | te-link-direction
| | | | +--:(label) | | | | +--:(label)
| | | | +--rw label-hop | | | | +--rw label-hop
| | | | +--rw te-label | | | | +--rw te-label
| | | | +--rw (technology)? | | | | +--rw (technology)?
| | | | | +--:(generic) | | | | | +--:(generic)
| | | | | +--rw generic? | | | | | +--rw generic?
| | | | | rt- | | | | | rt-
types:generalized-label types:generalized-label
| | | | +--rw direction? | | | | +--rw direction?
| | | | te-label- | | | | te-label-
skipping to change at page 142, line 17 skipping to change at page 141, line 36
| | +--ro accumulative-value? uint64 | | +--ro accumulative-value? uint64
| +--ro path-affinities | +--ro path-affinities
| | +--ro constraint* [usage] | | +--ro constraint* [usage]
| | +--ro usage identityref | | +--ro usage identityref
| | +--ro value? admin-groups | | +--ro value? admin-groups
| +--ro path-srlgs | +--ro path-srlgs
| | +--ro usage? identityref | | +--ro usage? identityref
| | +--ro values* srlg | | +--ro values* srlg
| +--ro path-route-objects | +--ro path-route-objects
| +--ro path-route-object* [index] | +--ro path-route-object* [index]
| +--ro index uint32 | +--ro index uint32
| +--ro (type)? | +--ro (type)?
| +--:(numbered) | +--:(num-unnum-hop)
| | +--ro numbered-hop | | +--ro num-unnum-hop
| | +--ro address?
| | | te-types:te-tp-id
| | +--ro hop-type? te-hop-type
| | +--ro direction?
| | te-link-direction
| +--:(as-number)
| | +--ro as-number-hop
| | +--ro as-number? binary
| | +--ro hop-type? te-hop-type
| +--:(unnumbered)
| | +--ro unnumbered-hop
| | +--ro node-id? | | +--ro node-id?
| | | te-types:te-node-id | | | te-types:te-node-id
| | +--ro link-tp-id? | | +--ro link-tp-id?
| | | te-types:te-tp-id | | | te-types:te-tp-id
| | +--ro hop-type? te-hop-type | | +--ro hop-type? te-hop-type
| | +--ro direction? | | +--ro direction?
| | te-link-direction | | te-link-direction
| +--:(as-number)
| | +--ro as-number-hop
| | +--ro as-number? binary
| | +--ro hop-type? te-hop-type
| +--:(label) | +--:(label)
| +--ro label-hop | +--ro label-hop
| +--ro te-label | +--ro te-label
| +--ro (technology)? | +--ro (technology)?
| | +--:(generic) | | +--:(generic)
| | +--ro generic? | | +--ro generic?
| | rt- | | rt-
types:generalized-label types:generalized-label
| +--ro direction? | +--ro direction?
| te-label-direction | te-label-direction
skipping to change at page 144, line 29 skipping to change at page 143, line 42
| | +--rw remote-te-node-id? te-types:te-node-id | | +--rw remote-te-node-id? te-types:te-node-id
| | +--rw remote-te-link-tp-id? te-types:te-tp-id | | +--rw remote-te-link-tp-id? te-types:te-tp-id
| +--rw is-abstract? empty | +--rw is-abstract? empty
| +--rw name? string | +--rw name? string
| +--rw underlay {te-topology-hierarchy}? | +--rw underlay {te-topology-hierarchy}?
| | +--rw enabled? boolean | | +--rw enabled? boolean
| | +--rw primary-path | | +--rw primary-path
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? te-types:te-node-id | | | | +--rw node-id? te-types:te-node-id
| | | | +--rw link-tp-id? te-types:te-tp-id | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction | | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
| | +--rw backup-path* [index] | | +--rw backup-path* [index]
| | | +--rw index uint32 | | | +--rw index uint32
| | | +--rw network-ref? | | | +--rw network-ref?
| | | | -> /nw:networks/network/network-id | | | | -> /nw:networks/network/network-id
| | | +--rw path-element* [path-element-id] | | | +--rw path-element* [path-element-id]
| | | +--rw path-element-id uint32 | | | +--rw path-element-id uint32
| | | +--rw index? uint32 | | | +--rw index? uint32
| | | +--rw (type)? | | | +--rw (type)?
| | | +--:(numbered) | | | +--:(num-unnum-hop)
| | | | +--rw numbered-hop | | | | +--rw num-unnum-hop
| | | | +--rw address? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(unnumbered)
| | | | +--rw unnumbered-hop
| | | | +--rw node-id? te-types:te-node-id | | | | +--rw node-id? te-types:te-node-id
| | | | +--rw link-tp-id? te-types:te-tp-id | | | | +--rw link-tp-id? te-types:te-tp-id
| | | | +--rw hop-type? te-hop-type | | | | +--rw hop-type? te-hop-type
| | | | +--rw direction? te-link-direction | | | | +--rw direction? te-link-direction
| | | +--:(as-number)
| | | | +--rw as-number-hop
| | | | +--rw as-number? binary
| | | | +--rw hop-type? te-hop-type
| | | +--:(label) | | | +--:(label)
| | | +--rw label-hop | | | +--rw label-hop
| | | +--rw te-label | | | +--rw te-label
| | | +--rw (technology)? | | | +--rw (technology)?
| | | | +--:(generic) | | | | +--:(generic)
| | | | +--rw generic? | | | | +--rw generic?
| | | | rt-types:generalized- | | | | rt-types:generalized-
label label
| | | +--rw direction? | | | +--rw direction?
| | | te-label-direction | | | te-label-direction
skipping to change at page 146, line 32 skipping to change at page 145, line 34
| +--rw interface-switching-capability* | +--rw interface-switching-capability*
| | [switching-capability encoding] | | [switching-capability encoding]
| | +--rw switching-capability identityref | | +--rw switching-capability identityref
| | +--rw encoding identityref | | +--rw encoding identityref
| | +--rw max-lsp-bandwidth* [priority] | | +--rw max-lsp-bandwidth* [priority]
| | +--rw priority uint8 | | +--rw priority uint8
| | +--rw te-bandwidth | | +--rw te-bandwidth
| | +--rw (technology)? | | +--rw (technology)?
| | +--:(generic) | | +--:(generic)
| | +--rw generic? te-bandwidth | | +--rw generic? te-bandwidth
| +--rw label-restriction* [index] | +--rw label-restrictions
| | +--rw index uint32 | | +--rw label-restriction* [index]
| | +--rw inclusive-exclusive? enumeration | | +--rw restriction? enumeration
| | +--rw label-start | | +--rw index uint32
| | | +--rw te-label | | +--rw label-start
| | | +--rw (technology)? | | | +--rw te-label
| | | | +--:(generic) | | | +--rw (technology)?
| | | | +--rw generic? rt-types:generalized-label | | | | +--:(generic)
| | | +--rw direction? te-label-direction | | | | +--rw generic?
| | +--rw label-end | | | | rt-types:generalized-label
| | | +--rw te-label | | | +--rw direction? te-label-direction
| | | +--rw (technology)? | | +--rw label-end
| | | | +--:(generic) | | | +--rw te-label
| | | | +--rw generic? rt-types:generalized-label | | | +--rw (technology)?
| | | +--rw direction? te-label-direction | | | | +--:(generic)
| | +--rw range-bitmap? binary | | | | +--rw generic?
| | | | rt-types:generalized-label
| | | +--rw direction? te-label-direction
| | +--rw range-bitmap? binary
| +--rw link-protection-type? enumeration | +--rw link-protection-type? enumeration
| +--rw max-link-bandwidth | +--rw max-link-bandwidth
| | +--rw te-bandwidth | | +--rw te-bandwidth
| | +--rw (technology)? | | +--rw (technology)?
| | +--:(generic) | | +--:(generic)
| | +--rw generic? te-bandwidth | | +--rw generic? te-bandwidth
| +--rw max-resv-link-bandwidth | +--rw max-resv-link-bandwidth
| | +--rw te-bandwidth | | +--rw te-bandwidth
| | +--rw (technology)? | | +--rw (technology)?
| | +--:(generic) | | +--:(generic)
skipping to change at page 148, line 23 skipping to change at page 147, line 28
| +--ro interface-switching-capability* | +--ro interface-switching-capability*
| | [switching-capability encoding] | | [switching-capability encoding]
| | +--ro switching-capability identityref | | +--ro switching-capability identityref
| | +--ro encoding identityref | | +--ro encoding identityref
| | +--ro max-lsp-bandwidth* [priority] | | +--ro max-lsp-bandwidth* [priority]
| | +--ro priority uint8 | | +--ro priority uint8
| | +--ro te-bandwidth | | +--ro te-bandwidth
| | +--ro (technology)? | | +--ro (technology)?
| | +--:(generic) | | +--:(generic)
| | +--ro generic? te-bandwidth | | +--ro generic? te-bandwidth
| +--ro label-restriction* [index] | +--ro label-restrictions
| | +--ro index uint32 | | +--ro label-restriction* [index]
| | +--ro inclusive-exclusive? enumeration | | +--ro restriction? enumeration
| | +--ro label-start | | +--ro index uint32
| | | +--ro te-label | | +--ro label-start
| | | +--ro (technology)? | | | +--ro te-label
| | | | +--:(generic) | | | +--ro (technology)?
| | | | +--ro generic? rt-types:generalized-label | | | | +--:(generic)
| | | +--ro direction? te-label-direction | | | | +--ro generic?
| | +--ro label-end | | | | rt-types:generalized-label
| | | +--ro te-label | | | +--ro direction? te-label-direction
| | | +--ro (technology)? | | +--ro label-end
| | | | +--:(generic) | | | +--ro te-label
| | | | +--ro generic? rt-types:generalized-label | | | +--ro (technology)?
| | | +--ro direction? te-label-direction | | | | +--:(generic)
| | +--ro range-bitmap? binary | | | | +--ro generic?
| | | | rt-types:generalized-label
| | | +--ro direction? te-label-direction
| | +--ro range-bitmap? binary
| +--ro link-protection-type? enumeration | +--ro link-protection-type? enumeration
| +--ro max-link-bandwidth | +--ro max-link-bandwidth
| | +--ro te-bandwidth | | +--ro te-bandwidth
| | +--ro (technology)? | | +--ro (technology)?
| | +--:(generic) | | +--:(generic)
| | +--ro generic? te-bandwidth | | +--ro generic? te-bandwidth
| +--ro max-resv-link-bandwidth | +--ro max-resv-link-bandwidth
| | +--ro te-bandwidth | | +--ro te-bandwidth
| | +--ro (technology)? | | +--ro (technology)?
| | +--:(generic) | | +--:(generic)
skipping to change at page 151, line 27 skipping to change at page 150, line 27
The companion module, ietf-te-topology-state, is redundant and SHOULD The companion module, ietf-te-topology-state, is redundant and SHOULD
NOT be supported by implementations that support NMDA. NOT be supported by implementations that support NMDA.
As the structure of the module ietf-te-topology-state mirrors that of As the structure of the module ietf-te-topology-state mirrors that of
the module ietf-te-topology. The YANG tree of the module ietf-te- the module ietf-te-topology. The YANG tree of the module ietf-te-
topology-state is not depicted separately. topology-state is not depicted separately.
B.1. TE Topology State YANG Module B.1. TE Topology State YANG Module
<CODE BEGINS> file "ietf-te-topology-state@2018-06-02.yang" This module references [RFC6001], [RFC8345], and [I-D.ietf-teas-yang-
te].
<CODE BEGINS> file "ietf-te-topology-state@2018-06-15.yang"
module ietf-te-topology-state { module ietf-te-topology-state {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology-state"; namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology-state";
prefix "tet-s"; prefix "tet-s";
import ietf-te-types { import ietf-te-types {
prefix "te-types"; prefix "te-types";
reference
"I-D.ietf-teas-yang-te: A YANG Data Model for Traffic
Engineering Tunnels and Interfaces";
} }
import ietf-te-topology { import ietf-te-topology {
prefix "tet"; prefix "tet";
} }
import ietf-network-state { import ietf-network-state {
prefix "nw-s"; prefix "nw-s";
reference "RFC 8345: A YANG Data Model for Network Topologies";
} }
import ietf-network-topology-state { import ietf-network-topology-state {
prefix "nt-s"; prefix "nt-s";
reference "RFC 8345: A YANG Data Model for Network Topologies";
} }
organization organization
"IETF Traffic Engineering Architecture and Signaling (TEAS) "IETF Traffic Engineering Architecture and Signaling (TEAS)
Working Group"; Working Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/teas/> "WG Web: <http://tools.ietf.org/wg/teas/>
WG List: <mailto:teas@ietf.org> WG List: <mailto:teas@ietf.org>
Editor: Xufeng Liu Editor: Xufeng Liu
<mailto:xufeng.liu.ietf@gmail.com> <mailto:xufeng.liu.ietf@gmail.com>
skipping to change at page 152, line 32 skipping to change at page 151, line 41
<mailto:tsaad@cisco.com> <mailto:tsaad@cisco.com>
Editor: Himanshu Shah Editor: Himanshu Shah
<mailto:hshah@ciena.com> <mailto:hshah@ciena.com>
Editor: Oscar Gonzalez De Dios Editor: Oscar Gonzalez De Dios
<mailto:oscar.gonzalezdedios@telefonica.com>"; <mailto:oscar.gonzalezdedios@telefonica.com>";
description "TE topology state model"; description "TE topology state model";
revision "2018-06-02" { revision "2018-06-15" {
description "Initial revision"; description "Initial revision";
reference "RFC XXXX: YANG Data Model for TE Topologies"; reference "RFC XXXX: YANG Data Model for TE Topologies";
// RFC Ed.: replace XXXX with actual RFC number and remove // RFC Ed.: replace XXXX with actual RFC number and remove
// this note // this note
} }
/* /*
* Groupings * Groupings
*/ */
grouping te-node-connectivity-matrix-attributes { grouping te-node-connectivity-matrix-attributes {
skipping to change at page 153, line 15 skipping to change at page 152, line 23
container from { container from {
description description
"Reference to source link termination point."; "Reference to source link termination point.";
leaf tp-ref { leaf tp-ref {
type leafref { type leafref {
path "../../../../../../nt-s:termination-point/nt-s:tp-id"; path "../../../../../../nt-s:termination-point/nt-s:tp-id";
} }
description description
"Relative reference to a termination point."; "Relative reference to a termination point.";
} }
uses tet:connectivity-label-restriction-list; uses te-types:label-set-info;
} }
container to { container to {
description description
"Reference to destination link termination point."; "Reference to destination link termination point.";
leaf tp-ref { leaf tp-ref {
type leafref { type leafref {
path "../../../../../../nt-s:termination-point/nt-s:tp-id"; path "../../../../../../nt-s:termination-point/nt-s:tp-id";
} }
description description
"Relative reference to a termination point."; "Relative reference to a termination point.";
} }
uses tet:connectivity-label-restriction-list; uses te-types:label-set-info;
} }
uses tet:connectivity-matrix-entry-path-attributes; uses tet:connectivity-matrix-entry-path-attributes;
} // te-node-connectivity-matrix-attributes } // te-node-connectivity-matrix-attributes
grouping te-node-tunnel-termination-point-llc-list { grouping te-node-tunnel-termination-point-llc-list {
description description
"Local link connectivity list of a tunnel termination "Local link connectivity list of a tunnel termination
point on a TE node."; point on a TE node.";
list local-link-connectivity { list local-link-connectivity {
key "link-tp-ref"; key "link-tp-ref";
description description
"The termination capabilities between "The termination capabilities between
tunnel-termination-point and link termination-point. tunnel-termination-point and link termination-point.
The capability information can be used to compute The capability information can be used to compute
the tunnel path. the tunnel path.
The Interface Adjustment Capability Descriptors (IACD) The Interface Adjustment Capability Descriptors (IACD)
[RFC6001] on each link-tp can be derived from this (defined in RFC 6001) on each link-tp can be derived from
local-link-connectivity list."; this local-link-connectivity list.";
reference reference
"RFC6001: Generalized MPLS (GMPLS) Protocol Extensions "RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
for Multi-Layer and Multi-Region Networks (MLN/MRN)."; for Multi-Layer and Multi-Region Networks (MLN/MRN).";
leaf link-tp-ref { leaf link-tp-ref {
type leafref { type leafref {
path "../../../../../nt-s:termination-point/nt-s:tp-id"; path "../../../../../nt-s:termination-point/nt-s:tp-id";
} }
description description
"Link termination point."; "Link termination point.";
} }
uses tet:connectivity-label-restriction-list; uses te-types:label-set-info;
uses tet:connectivity-matrix-entry-path-attributes; uses tet:connectivity-matrix-entry-path-attributes;
} // local-link-connectivity } // local-link-connectivity
} // te-node-tunnel-termination-point-config } // te-node-tunnel-termination-point-config
/* /*
* Data nodes * Data nodes
*/ */
augment "/nw-s:networks/nw-s:network/nw-s:network-types" { augment "/nw-s:networks/nw-s:network/nw-s:network-types" {
description description
"Introduce new network type for TE topology."; "Introduce new network type for TE topology.";
skipping to change at page 157, line 15 skipping to change at page 156, line 22
leaf src-tp-ref { leaf src-tp-ref {
type leafref { type leafref {
path "../../../../../nw-s:node[nw-s:node-id = " path "../../../../../nw-s:node[nw-s:node-id = "
+ "current()/../../../../nt-s:source/" + "current()/../../../../nt-s:source/"
+ "nt-s:source-node]/" + "nt-s:source-node]/"
+ "nt-s:termination-point/nt-s:tp-id"; + "nt-s:termination-point/nt-s:tp-id";
require-instance true; require-instance true;
} }
description description
"Reference to another TE termination point on the "Reference to another TE termination point on the
same souruce node."; same source node.";
} }
leaf des-tp-ref { leaf des-tp-ref {
type leafref { type leafref {
path "../../../../../nw-s:node[nw-s:node-id = " path "../../../../../nw-s:node[nw-s:node-id = "
+ "current()/../../../../nt-s:destination/" + "current()/../../../../nt-s:destination/"
+ "nt-s:dest-node]/" + "nt-s:dest-node]/"
+ "nt-s:termination-point/nt-s:tp-id"; + "nt-s:termination-point/nt-s:tp-id";
require-instance true; require-instance true;
} }
description description
skipping to change at page 159, line 38 skipping to change at page 158, line 38
organization organization
"Example Organization"; "Example Organization";
contact contact
"Editor: Example Author"; "Editor: Example Author";
description description
"This module defines a topology data model for the example "This module defines a topology data model for the example
technology."; technology.";
revision 2018-06-02 { revision 2018-06-15 {
description description
"Initial revision."; "Initial revision.";
reference reference
"Example reference."; "Example reference.";
} }
/* /*
* Data nodes * Data nodes
*/ */
augment "/nw:networks/nw:network/nw:network-types/" augment "/nw:networks/nw:network/nw:network-types/"
skipping to change at page 162, line 39 skipping to change at page 161, line 39
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
description "Augment link termination point."; description "Augment link termination point.";
container attributes { container attributes {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf attribute-5 { leaf attribute-5 {
type uint8; type uint8;
description "Attribute 4 for example technology."; description "Attribute 5 for example technology.";
} }
} }
} }
augment "/nw:networks/nw:network/nt:link/tet:te/" augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes" { + "tet:te-link-attributes" {
when "../../../nw:network-types/tet:te-topology/" when "../../../nw:network-types/tet:te-topology/"
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
description "Augment link attributes."; description "Augment link attributes.";
container attributes { container attributes {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf attribute-6 { leaf attribute-6 {
type uint8; type uint8;
description "Attribute 4 for example technology."; description "Attribute 6 for example technology.";
} }
} }
} }
/* /*
* Augment TE bandwidth. * Augment TE bandwidth.
*/ */
augment "/nw:networks/tet:te/tet:templates/" augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/" + "tet:link-template/tet:te-link-attributes/"
+ "tet:interface-switching-capability/tet:max-lsp-bandwidth/" + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/tet:te/tet:templates/" augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/" + "tet:link-template/tet:te-link-attributes/"
+ "tet:max-link-bandwidth/" + "tet:max-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/tet:te/tet:templates/" augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/" + "tet:link-template/tet:te-link-attributes/"
+ "tet:max-resv-link-bandwidth/" + "tet:max-resv-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/tet:te/tet:templates/" augment "/nw:networks/tet:te/tet:templates/"
+ "tet:link-template/tet:te-link-attributes/" + "tet:link-template/tet:te-link-attributes/"
+ "tet:unreserved-bandwidth/" + "tet:unreserved-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:te-node-attributes/tet:connectivity-matrices/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
skipping to change at page 165, line 21 skipping to change at page 164, line 21
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:te-node-attributes/tet:connectivity-matrices/" + "tet:te-node-attributes/tet:connectivity-matrices/"
+ "tet:connectivity-matrix/" + "tet:connectivity-matrix/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
skipping to change at page 165, line 43 skipping to change at page 164, line 43
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:information-source-entry/tet:connectivity-matrices/" + "tet:information-source-entry/tet:connectivity-matrices/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
skipping to change at page 166, line 23 skipping to change at page 165, line 23
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:information-source-entry/tet:connectivity-matrices/" + "tet:information-source-entry/tet:connectivity-matrices/"
+ "tet:connectivity-matrix/" + "tet:connectivity-matrix/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
skipping to change at page 166, line 45 skipping to change at page 165, line 45
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:tunnel-termination-point/tet:client-layer-adaptation/" + "tet:tunnel-termination-point/tet:client-layer-adaptation/"
+ "tet:switching-capability/tet:te-bandwidth/tet:technology" { + "tet:switching-capability/tet:te-bandwidth/tet:technology" {
skipping to change at page 167, line 25 skipping to change at page 166, line 25
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:tunnel-termination-point/tet:local-link-connectivities/" + "tet:tunnel-termination-point/tet:local-link-connectivities/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
when "../../../../../../../nw:network-types/tet:te-topology/" when "../../../../../../../nw:network-types/tet:te-topology/"
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nw:node/tet:te/" augment "/nw:networks/nw:network/nw:node/tet:te/"
+ "tet:tunnel-termination-point/tet:local-link-connectivities/" + "tet:tunnel-termination-point/tet:local-link-connectivities/"
+ "tet:local-link-connectivity/" + "tet:local-link-connectivity/"
+ "tet:path-constraints/tet:te-bandwidth/tet:technology" { + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
skipping to change at page 168, line 26 skipping to change at page 167, line 26
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nt:link/tet:te/" augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes/" + "tet:te-link-attributes/"
+ "tet:interface-switching-capability/tet:max-lsp-bandwidth/" + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
skipping to change at page 169, line 7 skipping to change at page 168, line 7
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nt:link/tet:te/" augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes/" + "tet:te-link-attributes/"
+ "tet:max-link-bandwidth/" + "tet:max-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
skipping to change at page 169, line 29 skipping to change at page 168, line 29
+ "ex-topo:example-topology" { + "ex-topo:example-topology" {
description description
"Augmentation parameters apply only for networks with "Augmentation parameters apply only for networks with
example topology type."; example topology type.";
} }
case "example" { case "example" {
container example { container example {
description "Attributes for example technology."; description "Attributes for example technology.";
leaf bandwidth-1 { leaf bandwidth-1 {
type uint32; type uint32;
description "Attribute 11 for example technology."; description "Bandwidth 1 for example technology.";
} }
} }
} }
description "Augment TE bandwidth."; description "Augment TE bandwidth.";
} }
augment "/nw:networks/nw:network/nt:link/tet:te/" augment "/nw:networks/nw:network/nt:link/tet:te/"
+ "tet:te-link-attributes/" + "tet:te-link-attributes/"
+ "tet:max-resv-link-bandwidth/" + "tet:max-resv-link-bandwidth/"
+ "tet:te-bandwidth/tet:technology" { + "tet:te-bandwidth/tet:technology" {
skipping to change at page 170, line 11