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 |