<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-yu-ccamp-rdnm-yang-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="RDNM YANG">YANG Data Models for Transport Network Rich-Detail Network Management (RDNM)</title>
    <seriesInfo name="Internet-Draft" value="draft-yu-ccamp-rdnm-yang-00"/>
    <author initials="C." surname="Yu" fullname="Chaode Yu">
      <organization>Huawei Technologies</organization>
      <address>
        <email>yuchaode@huawei.com</email>
      </address>
    </author>
    <author initials="X." surname="Zhao" fullname="Xing Zhao">
      <organization>CAICT</organization>
      <address>
        <email>zhaoxing@caict.ac.cn</email>
      </address>
    </author>
    <author initials="Y." surname="Tan" fullname="Yanxia Tan">
      <organization>China Unicom</organization>
      <address>
        <email>tanyx11@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="N." surname="Davis" fullname="Nigel Davis">
      <organization>Ciena</organization>
      <address>
        <email>ndavis@ciena.com</email>
      </address>
    </author>
    <author initials="D." surname="King" fullname="Daniel King">
      <organization>Old Dog Consulting</organization>
      <address>
        <email>daniel@olddog.co.uk</email>
      </address>
    </author>
    <date year="2025" month="April" day="08"/>
    <area>Routing</area>
    <workgroup>Common Control and Measurement Plane</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 116?>

<t>This document defines two extension YANG data models augmenting to TE topology and TE tunnel modules, based on the RDNM (Rich-Detail Network Management) requirements in transport networks.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target=" https://github.com/YuChaode/rdnm-yang/draft-yu-ccamp-rdnm-yang.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-yu-ccamp-rdnm-yang/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Common Control and Measurement Plane Working Group mailing list (<eref target="mailto:ccamp@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ccamp/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ccamp/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ https://github.com/YuChaode/rdnm-yang"/>.</t>
    </note>
  </front>
  <middle>
    <?line 120?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref target="RFC8795"/> defines a YANG data module for technology generic, and it is augmented by some other technology specific data modules, e.g. OTN topology data model in <xref target="I-D.draft-ietf-ccamp-otn-topo-yang"/>.</t>
      <t><xref target="I-D.draft-ietf-teas-yang-te"/> defines a YANG data model for the provisioning and management of Traffic Engineering (TE) tunnels, Label Switched Paths (LSPs), and interfaces. Similarly, it could be also augmented by some other technology specific data modules to implement a specific layer of TE tunnel.</t>
      <t>According to <xref target="I-D.draft-ietf-ccamp-transport-nbi-app-statement"/>, it is good to used the current TE data model system to manage an abstracted network topology. In <xref target="I-D.draft-gstk-ccamp-actn-optical-transport-mgmt"/>, it is called Abstracted Control (AC) approach.</t>
      <t>In <xref target="I-D.draft-gstk-ccamp-actn-optical-transport-mgmt"/>, it also raised another management approach, which is called Rich-Detail Network Management (RDNM). RDNM is designed to continue to deliver FCAPS capabilities within the context of ACTN.</t>
      <t><xref target="ITU-T_G.805"/> describes transport network from the viewpoint of the information transfer capability, provides a generic functional architecture which is also implementation independent. This recommendation is the implementation basis of most of the vendors' or operators' systems.</t>
      <t>To provide traditional FCAPS functionalities, we need to align with the modelling of traditional approach, which is suggested to be <xref target="TMF-814"/>. Therefore, some more TMF attributes would be introduced. To avoid introducing non-backward-compatible (NBC) changes, we would like to provide some extension YANG data models, based on the current model architecture.</t>
      <t>Some extensions, which are generic for all network layers, are defined in the RDNM topology and RDNM tunnel models. Layer-specific RDNM extensions can be found in other YANG data modules.</t>
      <section anchor="terminology-and-notations">
        <name>Terminology and Notations</name>
        <t>Note: to be added on demand.</t>
      </section>
      <section anchor="requirements-notation">
        <name>Requirements Notation</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
<?line -6?>
        </t>
      </section>
      <section anchor="tree-diagram">
        <name>Tree Diagram</name>
        <t>A simplified graphical representation of the data model is used in this document.
The meaning of the symbols in this diagram is defined in <xref target="RFC8340"/>.</t>
      </section>
      <section anchor="prefix-in-data-node-names">
        <name>Prefix in Data Node Names</name>
        <t>In this document, names of data nodes and other data model objects
  are prefixed using the standard prefix associated with the
  corresponding YANG imported modules, as showned in the following table.</t>
        <table anchor="tab-prefixes">
          <name>Prefixes and corresponding YANG modules</name>
          <thead>
            <tr>
              <th align="left">Prefix</th>
              <th align="left">Yang Module</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">nw</td>
              <td align="left">ietf-network</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">nt</td>
              <td align="left">ietf-network-topology</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">tet</td>
              <td align="left">ietf-te-topology</td>
              <td align="left">
                <xref target="RFC8795"/></td>
            </tr>
            <tr>
              <td align="left">yang</td>
              <td align="left">ietf-yang-types</td>
              <td align="left">
                <xref target="RFC6991"/></td>
            </tr>
            <tr>
              <td align="left">inet</td>
              <td align="left">ietf-inet-types</td>
              <td align="left">
                <xref target="RFC6991"/></td>
            </tr>
            <tr>
              <td align="left">te</td>
              <td align="left">ietf-te</td>
              <td align="left">RFCYYYY</td>
            </tr>
            <tr>
              <td align="left">te-types</td>
              <td align="left">ietf-te-types</td>
              <td align="left">
                <xref target="RFC8776"/></td>
            </tr>
            <tr>
              <td align="left">rdnmt</td>
              <td align="left">ietf-rdnm-topology</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">rdnm-tnl</td>
              <td align="left">ietf-rdnm-tunnel</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">rdnm-types</td>
              <td align="left">ietf-rdnm-types</td>
              <td align="left">RFC XXXX</td>
            </tr>
          </tbody>
        </table>
        <t>RFC Editor Note:
Please replace XXXX with the RFC number assigned to this document.
Please replace YYYY with the RFC number assigned to the TE tunnel draft.
Please remove this note.</t>
      </section>
    </section>
    <section anchor="mapping-of-actn-modelling-objects-with-tmf-objects">
      <name>Mapping of ACTN modelling objects with TMF objects</name>
      <t><xref target="ITU-T_G.805"/> describes the network as a transport network from the viewpoint of the information transfer capability. More specifically, the functional and structural architecture of transport networks are described independently of networking technology. It also defines various types of reference points, such as the Access Point (AP), Connection Point (CP), and Trail Connection Point (TCP), and the processing between reference points, which is called adaptation. A transport entity that transmits information such as trails and connections between reference points. For the details, we can refer to descriptions in chapter 3 of <xref target="ITU-T_G.805"/> and Figure 1 to Figure 3.</t>
      <t>One disadvantage of <xref target="ITU-T_G.805"/> is it is too complicated. So TMF simplifies the modelling system of <xref target="ITU-T_G.805"/>. The adaptation is changed to be the capabilities of reference points. The reference points is so that changed to some other terminologies, e.g. PTP and FTP etc. This simplification still can be mapped to <xref target="ITU-T_G.805"/>. So that a lot of vendors and operators choose TMF modelling in their system.</t>
      <t>Based on the TMF modelling, CORBA/XML interface was defined to provide FCAPS interfaces. These interfaces were widely used in the operators' network.</t>
      <t>The transport ACTN is also initially designed to simplify network configurations. To have a unified modelling with IP technology, many new modelling terms of TE were introduced and build up a new modelling system. Theoretically, these new modelling objects should be a part of, or can be mapped to the reference points or adaptation defined by <xref target="ITU-T_G.805"/>. However, in the existing IETF documents, there is not sufficient details can be found.</t>
      <t>If the transport ACTN interface wants to support the complete FCAPS capability, there could be two approaches. The first approach is the ACTN interface build up a new alarm/performance monitoring mechanism,  based on its abstract control modelling. Just like what have been done in <xref target="ITU-T_G.874"/> and <xref target="ITU-T_G.875"/>.</t>
      <t>The second approach is reusing the traditional alarm/performance monitoring mechanism, so that the ACTN modelling needs to be mapped to the traditional modelling.</t>
      <t>Currently, there is not sufficient theoretical support for the first approach, and there is not such a attempt is tried in IETF. For the second approach, one of the advantage is it can inherit the functions integrated before. So that there would not be two much efforts need to pay for the new integration.</t>
      <t>In this document, we would like to follow the second approach. Table 2 provides a mapping between the ACTN objects and TMF objects.</t>
      <table anchor="tab-mapping">
        <name>Mapping of ACTN objects with TMF objects</name>
        <thead>
          <tr>
            <th align="left">ACTN Object</th>
            <th align="left">TMF Object</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Network</td>
            <td align="left">NA</td>
          </tr>
          <tr>
            <td align="left">Node</td>
            <td align="left">Management Element</td>
          </tr>
          <tr>
            <td align="left">Link</td>
            <td align="left">Topology Link</td>
          </tr>
          <tr>
            <td align="left">TP</td>
            <td align="left">PTP</td>
          </tr>
          <tr>
            <td align="left">TTP</td>
            <td align="left">CTP/FTP</td>
          </tr>
          <tr>
            <td align="left">Tunnel</td>
            <td align="left">SNC/XC</td>
          </tr>
          <tr>
            <td align="left">NE</td>
            <td align="left">Management Element</td>
          </tr>
          <tr>
            <td align="left">component</td>
            <td align="left">equipment holder/equipment</td>
          </tr>
          <tr>
            <td align="left">Client signal</td>
            <td align="left">NA</td>
          </tr>
          <tr>
            <td align="left">Ethernet Client signal</td>
            <td align="left">NA</td>
          </tr>
          <tr>
            <td align="left">NA</td>
            <td align="left">Protection Group</td>
          </tr>
          <tr>
            <td align="left">NA</td>
            <td align="left">Equipment Protection Group</td>
          </tr>
        </tbody>
      </table>
      <t>The ONF TAPI also defines a new set of terms, which are different from the definitions of the <xref target="ITU-T_G.805"/>. But it provides the mapping of TAPI objects to ITU-T objects in Figure 3-2 of <xref target="ONF_TR-547"/>. In the appendix of this document, we also compare the ACTN object modelling and TAPI object modelling, which can be used as a reference for a possible integration of these two interfaces in a same MDSC.</t>
    </section>
    <section anchor="model-relationship">
      <name>Model relationship</name>
      <t>The current ACTN topology models for transport technology follows the relationship as bellow:</t>
      <figure anchor="fig-actn-topology">
        <name>Relationship of ACTN topology</name>
        <artwork type="ascii-art"><![CDATA[
          +----------------------+
          |  network topology    |
          +----------------------+
                      ^
                      |augmenting
                      |
          +----------------------+
          |     TE topology      |
          +----------------------+
             ^      ^       ^
             |  augmenting  |
  augmenting |      |       |
   +--------------+ |       |
   | ETH topology | |       |
   +--------------+ |       |
                    |       |augmenting
          +--------------+  |
          | OTN topology |  |
          +--------------+  |
                            |
              +--------------+
              | WDM topology |
              +--------------+

]]></artwork>
      </figure>
      <t>TE topology model was aimed to define common attributes for all the technologies.  OTN topology and WDM topology, etc., they are all augmenting TE topology model to provide layer-specific extensions.</t>
      <t>Although most of the objects in ACTN and TMF can be mapped to each other, the parameters of the objects cannot be completely matched. In other words, the current ACTN object needs to be extended with some properties to support the full functionality of a traditional object.</t>
      <t>But in the traditional transport standards there is not such a saying of  TE-related modelling. If we want to extend the current IETF data models to have full modelling of traditional approach, which is called RDNM extension by us, we suggest to define the common attributes for all the technologies in a RDNM extension model.</t>
      <t>For layer-specific RDNM extensions could reference existing way and define in a separated layer-specific RDNM extension document. So in the RDNM approach, the ACTN topology architecture will be extended to be:</t>
      <figure anchor="fig-actn-rdnm-topology">
        <name>Relationship of RDNM ACTN topology</name>
        <artwork type="ascii-art"><![CDATA[
       +----------------------+
       |  network topology    |
       +----------------------+
                   ^
                   |
                   |
       +----------------------+           +----------------------+
       |     TE topology      |<----------|      RDNM Extension  |
       +----------------------+           +----------------------+
          ^      ^       ^                     ^      ^       ^
          |      |       |                     |      |       |
          |      |       |                     |      |       |
+--------------+ |       |         +----------------+ |       |
| ETH topology | |       |         | ETH RDNM EXT   | |       |
+--------------+ |       |         +----------------+ |       |
                 |       |                            |       |
       +--------------+  |                +--------------+    |
       | OTN topology |  |                | OTN RDNM EXT |    |
       +--------------+  |                +--------------+    |
                         |                                    |
           +--------------+                     +--------------+
           | WDM topology |                     | WDM RDNM EXT |
           +--------------+                     +--------------+
]]></artwork>
      </figure>
      <t>It is also same for the TE tunnel architecture. The whole architecture after RDNM tunnel extensions will be:</t>
      <figure anchor="fig-actn-rdnm-tunnel">
        <name>Relationship of RDNM ACTN tunnel</name>
        <artwork type="ascii-art"><![CDATA[
   +----------------------+           +----------------------+
   |      TE Tunnel       |<----------|      RDNM Extension  |
   +----------------------+           +----------------------+
        ^      ^       ^                   ^      ^       ^
        |      |       |                   |      |       |
        |      |       |                   |      |       |
+------------+ |       |       +----------------+ |       |
| ETH Tunnel | |       |       | ETH RDNM EXT   | |       |
+------------+ |       |       +----------------+ |       |
               |       |                          |       |
     +--------------+  |              +--------------+    |
     | OTN Tunnel   |  |              | OTN RDNM EXT |    |
     +--------------+  |              +--------------+    |
                       |                                  |
           +--------------+                 +--------------+
           | WDM Tunnel   |                 | WDM RDNM EXT |
           +--------------+                 +--------------+
]]></artwork>
      </figure>
    </section>
    <section anchor="rdnm-extension-for-topology">
      <name>RDNM Extension for Topology</name>
      <t>For the some objects, although it is defined in IETF, but the way of abstraction is not so implementation friendly,  especially for TTP.</t>
      <section anchor="rdnm-extension-for-te-topology">
        <name>RDNM extension for TE topology</name>
        <t>(To be added)</t>
      </section>
      <section anchor="the-modelling-and-usage-of-ttp">
        <name>The modelling and usage of TTP</name>
        <t>According to the description of <xref target="RFC8795"/>, TTP is an element of a TE topology representing one or several potential transport service termination points, (i.e., service client adaptation points, such as a WDM/OCh transponder).</t>
        <t>In the ITU-T standard, such an adaptation point can be the termination point of an end-to-end connection, or the source or sink point of the intermediate cross-connection. A physical port can generate a lot of logical objects. For example, a 100G line port can function as 80 lower-order ODU0 adaptation points, 40 ODU1 adaptation points, or even the adaptation point of an OCh tunnel. Considering  the data volume in large-scale network, it is not wise to expose all these points. Because that most of them are potentially existing, they are probably not used at the end.</t>
        <t>In the document of TE topology, it is not indicated  whether the TTPs should be provided at day 0 or not. And it is also hard to find the correlation with the physical port.</t>
        <t>In this document, we suggest not to provide the potential TTPs but the existing TTPs who have been used by connections at any time. If the client want to retrieve these potential TTPs, a single RPC can help to do so. This RPC should return the existing and potential TTPs at the same time.</t>
        <t>The key of TTP is tunnel-tp-id which is a binary type. For the potential TTPs, it is no need to allocate a tunnel-tp-id for them. But the server can provide a name for these TTPs, this name should follow the pattern defined by TMF. When the client want to reference a potential TTP, it can reference the name of this TTP, and then the server will allocated a tunnel-tp-id for it after the connection created. And this TTP is no more than a potential TTP but an existing TTP, it should appear in the TTP list of topology.</t>
        <artwork type="ascii-art"><![CDATA[
rpcs:
   +---x query-ttp-by-tps
      +--ro input
      |  +--ro tp-list* [tp-id]
      |     +--ro tp-id    leafref
      +--ro output
         +--ro result?        enumeration
         +--ro result-list* [tp-id]
            +--ro tp-id      leafref
            +--ro ttp-list*
               +--ro tunnel-tp-id?   leafref
               +--ro ttp-name?       string
               +--ro using-status?   enumeration
]]></artwork>
      </section>
    </section>
    <section anchor="rdnm-extensions-for-te-tunnel">
      <name>RDNM Extensions for TE Tunnel</name>
      <section anchor="modelling-of-point-to-multi-points-and-multi-points-to-multi-points-te-tunnel">
        <name>Modelling of Point to Multi-Points and Multi-Points to Multi-Points TE Tunnel</name>
        <t>The current TE tunnel model only supports point-to-point scenario. Therefore, only one source and sink structure is defined on the tunnel node. In the transport technology, there are point-to-multipoint scenarios and multipoint-to-multipoint connection scenarios. For example, multicast service.</t>
        <t>We suggest to extend the current TE tunnel model to support the multi-point scenario. Considering the TTPs was not generate before the tunnel created, the client can reference by the TTP by name.</t>
      </section>
      <section anchor="restoration">
        <name>Restoration</name>
        <section anchor="lock-of-restoration">
          <name>Lock of restoration</name>
          <t>In some maintenance scenarios, people may need to freeze the restoration capability of a TE tunnel. For example, after obtaining the customers' consent, the carrier can choose not to restore services during the TE tunnel cutover. This prevents unstable services flapping caused by repeated fiber cuts during the cutover. The unstable services flapping would also affects existing services.</t>
          <t>Section 3.2.8.11 in <xref target="ITU-T_G.808"/> mentions the freezing operation of protection and rerouting switching. Therefore, compared with traditional path management, the current TE tunnel model also needs to add freezing capability to the  protection and restoration structure.</t>
        </section>
        <section anchor="lock-of-restoration-reversion">
          <name>Lock of restoration reversion</name>
          <t>For some cutover scenario, services may be rerouted to a new trail before the cutover operation. During the cutover, the fiber may be frequently plug in and plug out due to commissioning. To make sure that the new route will not go back to the original route and if the tunnel is restoration reversion, there would be a requirement the freeze the restoration reversion function. This is also a functionality defined by ITU-T and it's missing in the current TE tunnel.</t>
        </section>
        <section anchor="scheduling-of-reversion-time">
          <name>Scheduling of reversion time</name>
          <t>Maintenance job usually is taken place in a fixed time window, for example at night when people are not using the network frequently as daytime. So that there will not be impact as large as operating at daytime if the maintenance job is failed. Operator can choose to revert the services to the original path at night, so that the restoration reversion would not have big impact on the network.</t>
        </section>
        <section anchor="priority-of-restoration">
          <name>Priority of restoration</name>
          <t>In some operator, they configure different restoration priority to different tunnels or services. When multiple services need to be restored at a same time, high-priority services preferentially occupy resources, and low-priority services can be rerouted only after the rerouting of high-priority services is complete.</t>
        </section>
        <section anchor="yang-for-restoration-extension">
          <name>YANG for restoration extension</name>
          <artwork type="ascii-art"><![CDATA[
augment /te:te/te:tunnels/te:tunnel/te:restoration:
   +--rw restoration-lock?             boolean
   +--rw restoration-reversion-lock?   boolean
   +--rw scheduled-reversion-time?     yang:date-and-time
   +--rw restoration-priority?         enumeration
]]></artwork>
        </section>
      </section>
      <section anchor="ttp-hop">
        <name>TTP hop</name>
        <t>The current TE tunnel data model can support to specify explicit node/LTP included/excluded. However, for finer grain object, such as TTP, it is not supported to specify.</t>
        <t>For example, in the scenario where lower-order and higher-order ODUk tunnel are both existing, sometimes multiple lower-order ODUk tunnels need to multiplex a higher-order ODUk tunnel. The client can specify the higher-order ODUk tunnel's TTP to be included in the lower-order ODUk tunnel's creation request. If the lower-order ODUk doesn't need to multiplex a higher-order ODUk tunnel, the client can specify the higher-order ODUk tunnel's TTP to be excluded in the lower-order ODUk tunnel's creation request.</t>
        <t>There can be two ways to specify this TTP. This higher-order ODUk TTP can be existing in the topology if it has been occupied by a higher-order ODUk tunnel. Then in the TTP hop, the client can specify the ttp-id of this TTP. This TTP can also be nonexisting in the topology or idle for tunnel creation. And then then client can specify the name of TTP in the creation request.</t>
        <artwork type="ascii-art"><![CDATA[
augment /te:te/te:tunnels/te:tunnel/te:primary-paths/te:primary-path
        /te:explicit-route-objects-always
        /te:route-object-include-exclude/te:type:
   +--:(ttp-hop)
      +--rw ttp-hop
         +--rw node-id?    nw:node-id
         +--rw (id-or-name)?
            +--:(id)
            |  +--rw ttp-id?     binary
            +--:(name)
               +--rw ttp-name?   string
augment /te:te/te:tunnels/te:tunnel/te:secondary-paths
        /te:secondary-path/te:explicit-route-objects-always
        /te:route-object-include-exclude/te:type:
   +--:(ttp-hop)
      +--rw ttp-hop
         +--rw node-id?    nw:node-id
         +--rw (id-or-name)?
            +--:(id)
            |  +--rw ttp-id?     binary
            +--:(name)
               +--rw ttp-name?   string
augment /te:te/te:tunnels/te:tunnel/te:primary-paths/te:primary-path
        /te:primary-reverse-path/te:explicit-route-objects-always
        /te:route-object-include-exclude/te:type:
   +--:(ttp-hop)
      +--rw ttp-hop
         +--rw node-id?    nw:node-id
         +--rw (id-or-name)?
            +--:(id)
            |  +--rw ttp-id?     binary
            +--:(name)
               +--rw ttp-name?   string
augment /te:te/te:tunnels/te:tunnel/te:secondary-reverse-paths
        /te:secondary-reverse-path/te:explicit-route-objects-always
        /te:route-object-include-exclude/te:type:
   +--:(ttp-hop)
      +--rw ttp-hop
         +--rw node-id?    nw:node-id
         +--rw (id-or-name)?
            +--:(id)
            |  +--rw ttp-id?     binary
            +--:(name)
               +--rw ttp-name?   string
]]></artwork>
      </section>
    </section>
    <section anchor="tree-diagram-1">
      <name>Tree Diagram</name>
      <section anchor="rdnm-topology">
        <name>RDNM Topology</name>
        <t><xref target="fig-tet-rdnm-tree"/> below shows the tree diagram of the YANG data model defined in module "ietf-rdnm-topology".</t>
        <figure anchor="fig-tet-rdnm-tree">
          <name>Tree of RDNM Topology</name>
          <artwork type="ascii-art" name="ietf-rdnm-topology.tree"><![CDATA[
module: ietf-rdnm-topology

  augment /nw:networks/nw:network/nw:node/tet:te:
    +--rw (layer-specific-extension)?
       +--:(generic)
  augment /nw:networks/nw:network/nw:node/nt:termination-point
            /tet:te:
    +--rw (layer-specific-extension)?
       +--:(generic)
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point:
    +--rw (layer-specific-extension)?
       +--:(generic)
  augment /nw:networks/nw:network/nt:link/tet:te:
    +--rw (layer-specific-extension)?
       +--:(generic)

  rpcs:
    +---x query-ttp-by-tps
       +---w input
       |  +---w tp-list* [tp-id]
       |     +---w tp-id    leafref
       +--ro output
          +--ro result?        enumeration
          +--ro result-list* [tp-id]
             +--ro tp-id       leafref
             +--ro ttp-list* []
                +--ro tunnel-tp-id?   leafref
                +--ro ttp-name?       string
                +--ro using-status?   enumeration
]]></artwork>
        </figure>
      </section>
      <section anchor="rdnm-tunnel">
        <name>RDNM Tunnel</name>
        <t><xref target="fig-rdnm-tnl-tree"/> below shows the tree diagram of the YANG data model defined in module "ietf-rdnm-tunnel".</t>
        <figure anchor="fig-rdnm-tnl-tree">
          <name>Tree of RDNM Tunnel</name>
          <artwork type="ascii-art" name="ietf-rdnm-tunnel.tree"><![CDATA[
module: ietf-rdnm-tunnel

  augment /te:te/te:tunnels/te:tunnel:
    +--rw alias?                   string
    +--ro create-time?             yang:date-and-time
    +--ro active-time?             yang:date-and-time
    +--rw source-endpoints
    |  +--rw source-endpoint* []
    |     +--rw node-id?
    |     |       -> /nw:networks/network/node/node-id
    |     +--rw (endpoint-tp)?
    |     |  +--:(ltp)
    |     |  |  +--rw tp-id?            leafref
    |     |  +--:(ttp)
    |     |     +--rw (id-or-name)?
    |     |        +--:(id)
    |     |        |  +--rw ttp-id?     leafref
    |     |        +--:(name)
    |     |           +--rw ttp-name?   leafref
    |     +--rw protection-role?        enumeration
    +--rw destination-endpoints
       +--rw destination-endpoint* []
          +--rw node-id?
          |       -> /nw:networks/network/node/node-id
          +--rw (endpoint-tp)?
          |  +--:(ltp)
          |  |  +--rw tp-id?            leafref
          |  +--:(ttp)
          |     +--rw (id-or-name)?
          |        +--:(id)
          |        |  +--rw ttp-id?     leafref
          |        +--:(name)
          |           +--rw ttp-name?   leafref
          +--rw protection-role?        enumeration
  augment /te:te/te:tunnels/te:tunnel/te:restoration:
    +--rw restoration-lock?             boolean
    +--rw restoration-reversion-lock?   boolean
    +--rw scheduled-reversion-time?     yang:date-and-time
    +--rw restoration-priority?         enumeration
    +--rw restoration-layer?            enumeration
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="yang-data-model">
      <name>YANG Data Model</name>
      <section anchor="rdnm-topology-1">
        <name>RDNM Topology</name>
        <figure anchor="fig-tet-rdnm-yang">
          <name>RDNM Topology YANG module</name>
          <sourcecode type="yang" markers="true" name="ietf-rdnm-topology@2025-02-22.yang"><![CDATA[
module ietf-rdnm-topology {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-rdnm-topology";
  prefix rdnmt;

  import ietf-network {
    prefix "nw";
  }

  import ietf-network-topology {
    prefix "nt";
  }

  import ietf-te-topology {
    prefix "tet";
  }
  
  organization
    "IETF CCAMP Working Group";
  contact
    "WG Web: <http://tools.ietf.org/wg/ccamp/>
     WG List: <mailto:ccamp@ietf.org>

     Editor: Chaode Yu
             <mailto:yuchaode@huawei.com>
             Xing Zhao 
             <mailto:zhaoxing@caict.ac.cn>
             Yanxia Tan
             <mailto:tanyx11@chinaunicom.cn>
             Nigel Davis
             <mailto:ndavis@ciena.com>
             Daniel King
             <mailto:daniel@olddog.co.uk>";

  description
    "This module provide some extensions to TE topology model, based
    on transport Rich-Detail Network Management requirement";

  revision 2025-02-22 {
    description
      "Revision 1.0";
    reference
      "draft-yu-ccamp-rdnm-yang-00";
  }
  
  augment "/nw:networks/nw:network/nw:node/tet:te" {
    description 
      "Generic Rich-Detail Network Management extensions for 
      te node";
    
    uses node-rdnm-ext-grouping;
  }
  
  augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
        + "tet:te" {
    description 
      "Generic Rich-Detail Network Management extensions for 
      termination point";
    
    uses tp-rdnm-ext-grouping;
  }
  
  augment "/nw:networks/nw:network/nw:node/tet:te" +
          "/tet:tunnel-termination-point" {
    description 
      "Generic Rich-Detail Network Management extensions for 
      te node";
    
    uses ttp-rdnm-ext-grouping;
  }  
  
  augment "/nw:networks/nw:network/nt:link/tet:te" {
    description 
      "Generic Rich-Detail Network Management extensions for link";
    
    uses link-rdnm-ext-grouping;
  }
  
  grouping node-rdnm-ext-grouping {
    description
      "Generic extension of node.";
      
    choice layer-specific-extension {
      description
        "The layer rate information.";
        
      case generic {
      
      }
    }
  }
  
  grouping tp-rdnm-ext-grouping {
    description
      "Generic extension of TP.";
      
    choice layer-specific-extension {
      description
        "The layer rate information.";
        
      case generic {
      
      }
    }
  }
  
  grouping ttp-rdnm-ext-grouping {
    description
      "Generic extension of TTP.";
      
    choice layer-specific-extension {
      description
        "The layer rate information.";
        
      case generic {
      
      }
    }
  }
  
  grouping link-rdnm-ext-grouping {
    description
      "Generic extension of link.";
      
    choice layer-specific-extension {
      description
        "The layer rate information.";
        
      case generic {
      }
    }
  }
  
  rpc query-ttp-by-tps {
    description
      "Query all the TTPs on the LTPs";
      
    input {
      list tp-list {
        description
          "the LTPs to retrieve.";
          
        key tp-id;
        leaf tp-id {
          type leafref {
            path "/nw:networks/nw:network/nw:node" + 
                 "/nt:termination-point/nt:tp-id";
          }
          
          description "the identifier of TP to querey";
        }
      }
    }
    
    output {
      leaf result {
        type enumeration {
          enum failed;
          enum partially-successful;
          enum successful;
        }
        
        description "the result of retrieval";
      }
      
      list result-list {
        description
          "The result list.";
          
        key tp-id;
        
        leaf tp-id {
          type leafref {
            path "/nw:networks/nw:network/nw:node" + 
                 "/nt:termination-point/nt:tp-id";
          }
          
          description "the identifier of TP queried and returns TTPs";
        }
        
        list ttp-list {
          description
            "the TTPs list for this LTP.";
            
          leaf tunnel-tp-id {
            type leafref {
              path "/nw:networks/nw:network/nw:node/tet:te" + 
                   "/tet:tunnel-termination-point/tet:tunnel-tp-id";
            }
            
            description "Identifier of TTP which is existing in the 
            topology. It is not required to return if it is not 
            existing in the topology.";
          }
          
          leaf ttp-name {
            type string;
            description "Name of TTP. If the ttp is idle, the default 
            name should be provided by the server and follow the 
            naming pattern of TMF814.";
          }
          leaf using-status {
            type enumeration {
              enum idle;
              enum bidirectional-used;
            }
          }
        }
      }
    }
  
  }
  
}
]]></sourcecode>
        </figure>
      </section>
      <section anchor="rdnm-tunnel-1">
        <name>RDNM Tunnel</name>
        <figure anchor="fig-rdnm-tunnel">
          <name>RDNM Tunnel YANG module</name>
          <sourcecode type="yang" markers="true" name="ietf-rdnm-tunnel@2025-02-22.yang"><![CDATA[
module ietf-rdnm-tunnel {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-rdnm-tunnel";
  prefix rdnm-tnl;
  
  import ietf-te {
    prefix "te";
  }
  
  import ietf-yang-types {
    prefix "yang";
  }

  import ietf-rdnm-types {
    prefix "rdnm-types";
  }  
  
  import ietf-network {
    prefix "nw";
  }  
  
  import ietf-network-topology {
    prefix "nt";
  }

  import ietf-te-topology {
    prefix "tet";
  }  
  
  organization
    "IETF CCAMP Working Group";
  contact
    "WG Web: <http://tools.ietf.org/wg/ccamp/>
     WG List: <mailto:ccamp@ietf.org>

     Editor: Chaode Yu
             <mailto:yuchaode@huawei.com>
             Xing Zhao 
             <mailto:zhaoxing@caict.ac.cn>
             Yanxia Tan
             <mailto:tanyx11@chinaunicom.cn>
             Nigel Davis
             <mailto:ndavis@ciena.com>
             Daniel King
             <mailto:daniel@olddog.co.uk>";

  description
    "This module provide some extensions to TE topology model, based
    on transport Rich-Detail Network Management requirement";

  revision 2025-02-22 {
    description
      "Revision 1.0";
    reference
      "draft-yu-ccamp-rdnm-yang-00";
  }

  augment "/te:te/te:tunnels/te:tunnel" {
    description
      "Extensions for TE tunnel structure, includes alias, time 
      management and another option of specifying source and 
      destination.";
  
    leaf alias {
      type string;
      description 
        "alias of TE tunnel";
    }
  
    uses time-state-grouping;
    
    container source-endpoints {
      description
        "Source endpoints.";
      list source-endpoint {
        uses endpoint-grouping;
        description
          "List of source endpoints.";
      }
    }
    
    container destination-endpoints {
      description
        "Destination endpoints.";
      list destination-endpoint {
        uses endpoint-grouping;
        description
          "List of destination endpoints.";
      }
    }
  }
  
  augment  "/te:te/te:tunnels/te:tunnel/te:restoration" {
    description
      "Extensions of TE tunnel restoration.";
      
    leaf restoration-lock {
      type boolean;
      
      description
        "a lock to control whether the restoration can take effect or
        not, it is useful in the maintenance scenrios, such as in
        cutover";
    }
    
    leaf restoration-reversion-lock {
      type boolean;
      description
        "a lock to control whether the reversion of restoration can
        take effect or not.";
    }
    
    leaf scheduled-reversion-time {
      type yang:date-and-time;
      
      description
        "a time when the reversion of restoration can take effect.";
    }
    
    leaf restoration-priority {
      type enumeration {
        enum high;
        enum medium;
        enum low;
      }
      
      description
        "when there are multiple services need to be restored, the 
        higher estoration priority services can occupied the idle 
        resource in priority, it is used to control the restoration 
        sequence.";
    }
    
    leaf restoration-layer {
      type enumeration {
        enum odu;
        enum wdm;
      }
      
      description
        "the layer of topolgy prefered to be operated when restoration
        is needed.";
    }
  }
  
  augment  "/te:te/te:tunnels/te:tunnel/te:primary-paths"
           + "/te:primary-path/te:explicit-route-objects"
           + "/te:route-object-include-exclude/te:type"    {
    description 
      "a TTP hop";
    case ttp-hop {
      uses rdnm-types:explicit-ttp-hop;
    }
  }
  
  augment  "/te:te/te:tunnels/te:tunnel/te:secondary-paths"
           + "/te:secondary-path/te:explicit-route-objects"
           + "/te:route-object-include-exclude/te:type"    {
    description 
      "a TTP hop";
    case ttp-hop {
      uses rdnm-types:explicit-ttp-hop;
    }
  }  
  
  augment  "/te:te/te:tunnels/te:tunnel/te:primary-paths"
           + "/te:primary-path/te:primary-reverse-path"
           + "/te:explicit-route-objects"
           + "/te:route-object-include-exclude/te:type"    {
    description 
      "a TTP hop";
    case ttp-hop {
      uses rdnm-types:explicit-ttp-hop;
    }
  }
  
  augment  "/te:te/te:tunnels/te:tunnel/te:secondary-reverse-paths"
           + "/te:secondary-reverse-path"
           + "/te:explicit-route-objects"
           + "/te:route-object-include-exclude/te:type"    {
    description 
      "a TTP hop";
    case ttp-hop {
      uses rdnm-types:explicit-ttp-hop;
    }
  }    
  
  grouping time-state-grouping {
    description
      "time management of TE tunnel.";
      
    leaf create-time {
      type yang:date-and-time;
      config false;
      description
        "the time when the tunnel was created";

    }
    
    leaf active-time {
      type yang:date-and-time;
      config false;
      description
        "the lastest time when the tunnel was activated";
    }    
  }
  
  grouping endpoint-grouping {
    description
      "Source/destination endpoint information of TE tunnel.";
      
    leaf node-id {
      type leafref {
        path "/nw:networks/nw:network/nw:node/nw:node-id";
      }
      description
        "Identifier of node for this endpoint.";
    }
    
    choice endpoint-tp {
      description
        "The client can choose to specify LTP or TTP to create TE 
        tunnel.";
        
      case ltp {
        leaf tp-id {
          type leafref {
            path "/nw:networks/nw:network/nw:node/nt:termination-point"
            + "/nt:tp-id";
          }
          description
            "identifier of LTP for this endpoint.";
        }
      }
      
      case ttp {
        choice id-or-name {
          description
            "The client can choose to specify the identifier or the 
            name of TTP to create TE tunnel.";
            
          case id {
            leaf ttp-id {
              type leafref {
                path "/nw:networks/nw:network/nw:node/tet:te"
                + "/tet:tunnel-termination-point/tet:tunnel-tp-id";
              }
              description
                "the identifier of TTP for this endpoint.";
            }
          }
          
          case name {
            leaf ttp-name {
              type leafref {
                path "/nw:networks/nw:network/nw:node/tet:te"
                + "/tet:tunnel-termination-point/tet:name";
              }
              description
                "the name of TTP for this endpoint.";
            }
          }
        }
      }
    }
    
    leaf protection-role {
      type enumeration {
        enum work;
        enum protect;
      }
      description
        "role of this endpoint in multipoints scenario";
    }
  }
  
}
]]></sourcecode>
        </figure>
      </section>
      <section anchor="rdnm-types">
        <name>RDNM Types</name>
        <figure anchor="fig-rdnm-types-yang">
          <name>RDNM Types YANG module</name>
          <sourcecode type="yang" markers="true" name="ietf-rdnm-types@2025-02-22.yang"><![CDATA[
module ietf-rdnm-types {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-rdnm-types";
  prefix rdnm-types;
  
  organization
    "IETF CCAMP Working Group";
  contact
    "WG Web: <http://tools.ietf.org/wg/ccamp/>
     WG List: <mailto:ccamp@ietf.org>

     Editor: Chaode Yu
             <mailto:yuchaode@huawei.com>
             Xing Zhao 
             <mailto:zhaoxing@caict.ac.cn>
             Yanxia Tan
             <mailto:tanyx11@chinaunicom.cn>
             Nigel Davis
             <mailto:ndavis@ciena.com>
             Daniel King
             <mailto:daniel@olddog.co.uk>";

  description
    "This module defines Rich-Detail Network Management (RDNM) YANG types.";


  revision 2025-02-22 {
    description
      "Revision 1.0";
    reference
      "draft-yu-ccamp-rdnm-yang-00";
  }  
    
  grouping explicit-ttp-hop {
    container ttp-hop {
      description 
        "TTP Hop";
        
      leaf node-id {
        type nw:node-id;
        description
          "identifier of node for this TTP hop.";
      }
    
      choice id-or-name {
        description 
          "The server can choose to display the identifier or 
          the name of TTP.";
          
        case id {
          leaf ttp-id {
            type binary;
          }
          description
            "the identifier of TTP for this TTP hop.";
        }
        case name {
          leaf ttp-name {
            type string;
          }
          description
            "the name of TTP for this TTP hop.";
        }
      }
    }
  }
  
}
]]></sourcecode>
        </figure>
      </section>
    </section>
    <section anchor="manageability-considerations">
      <name>Manageability Considerations</name>
      <t>&lt;Add any manageability considerations&gt;</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>&lt;Add any security considerations&gt;</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>&lt;Add any IANA considerations&gt;</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8795">
          <front>
            <title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="T. Saad" initials="T." surname="Saad"/>
            <author fullname="H. Shah" initials="H." surname="Shah"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8795"/>
          <seriesInfo name="DOI" value="10.17487/RFC8795"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="RFC8345">
          <front>
            <title>A YANG Data Model for Network Topologies</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <author fullname="N. Bahadur" initials="N." surname="Bahadur"/>
            <author fullname="H. Ananthakrishnan" initials="H." surname="Ananthakrishnan"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories. The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8345"/>
          <seriesInfo name="DOI" value="10.17487/RFC8345"/>
        </reference>
        <reference anchor="RFC6991">
          <front>
            <title>Common YANG Data Types</title>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <date month="July" year="2013"/>
            <abstract>
              <t>This document introduces a collection of common data types to be used with the YANG data modeling language. This document obsoletes RFC 6021.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6991"/>
          <seriesInfo name="DOI" value="10.17487/RFC6991"/>
        </reference>
        <reference anchor="RFC8776">
          <front>
            <title>Common YANG Data Types for Traffic Engineering</title>
            <author fullname="T. Saad" initials="T." surname="Saad"/>
            <author fullname="R. Gandhi" initials="R." surname="Gandhi"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>This document defines a collection of common data types and groupings in YANG data modeling language. These derived common types and groupings are intended to be imported by modules that model Traffic Engineering (TE) configuration and state capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8776"/>
          <seriesInfo name="DOI" value="10.17487/RFC8776"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="TMF-814" target="https://www.tmforum.org/resources/interface/tmf814-mtnm-solution-set-idl-version-r4-5/">
          <front>
            <title>MTNM Solution Set (IDL) R4.5</title>
            <author>
              <organization>TM Forum (TMF)</organization>
            </author>
            <date year="2014"/>
          </front>
          <seriesInfo name="TMF-814" value=""/>
        </reference>
        <reference anchor="ONF_TR-547" target="https://opennetworking.org/wp-content/uploads/2020/08/TR-547-TAPI-v2.1.3-Reference-Implementation-Agreement-1.pdf">
          <front>
            <title>TAPI v2.1.3 Reference Implementation Agreement</title>
            <author>
              <organization>Open Networking Foundation (ONF)</organization>
            </author>
            <date year="2020" month="July"/>
          </front>
          <seriesInfo name="ONF TR-547 TAPI RIA v1.0" value=""/>
        </reference>
        <reference anchor="ITU-T_G.805" target="https://www.itu.int/rec/T-REC-G.805-200003-I/en">
          <front>
            <title>Generic functional architecture of transport networks</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2000" month="March"/>
          </front>
          <seriesInfo name="ITU-T Recommendation G.805" value=""/>
        </reference>
        <reference anchor="ITU-T_G.808" target="https://www.itu.int/rec/T-REC-G.808-201611-I/en">
          <front>
            <title>Terms and definitions for network protection and restoration</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2016" month="November"/>
          </front>
          <seriesInfo name="ITU-T Recommendation G.808" value=""/>
        </reference>
        <reference anchor="ITU-T_G.874" target="https://www.itu.int/rec/T-REC-G.874-202010-I/en">
          <front>
            <title>Management aspects of optical transport network elements</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2020" month="October"/>
          </front>
          <seriesInfo name="ITU-T Recommendation G.874" value=""/>
        </reference>
        <reference anchor="ITU-T_G.875" target="https://www.itu.int/rec/T-REC-G.875-202006-I/en">
          <front>
            <title>Optical transport network%3AProtocol-neutral management information model for the network element view</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2020" month="June"/>
          </front>
          <seriesInfo name="ITU-T Recommendation G.875" value=""/>
        </reference>
        <reference anchor="I-D.draft-ietf-ccamp-otn-topo-yang">
          <front>
            <title>A YANG Data Model for Optical Transport Network Topology</title>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Xufeng Liu" initials="X." surname="Liu">
              <organization>Alef Edge</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Oscar Gonzalez de Dios" initials="O. G." surname="de Dios">
              <organization>Telefonica</organization>
            </author>
            <date day="7" month="November" year="2024"/>
            <abstract>
              <t>   This document defines a YANG data model for representing, retrieving,
   and manipulating Optical Transport Network (OTN) topologies.  It is
   independent of control plane protocols and captures topological and
   resource-related information pertaining to OTN.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-otn-topo-yang-20"/>
        </reference>
        <reference anchor="I-D.draft-ietf-teas-yang-te">
          <front>
            <title>A YANG Data Model for Traffic Engineering Tunnels, Label Switched Paths and Interfaces</title>
            <author fullname="Tarek Saad" initials="T." surname="Saad">
              <organization>Cisco Systems Inc</organization>
            </author>
            <author fullname="Rakesh Gandhi" initials="R." surname="Gandhi">
              <organization>Cisco Systems Inc</organization>
            </author>
            <author fullname="Xufeng Liu" initials="X." surname="Liu">
              <organization>Alef Edge</organization>
            </author>
            <author fullname="Vishnu Pavan Beeram" initials="V. P." surname="Beeram">
              <organization>Juniper Networks</organization>
            </author>
            <author fullname="Igor Bryskin" initials="I." surname="Bryskin">
              <organization>Individual</organization>
            </author>
            <date day="9" month="October" year="2024"/>
            <abstract>
              <t>   This document defines a YANG data model for the provisioning and
   management of Traffic Engineering (TE) tunnels, Label Switched Paths
   (LSPs), and interfaces.  The model covers data that is independent of
   any technology or dataplane encapsulation and is divided into two
   YANG modules that cover device-specific, and device independent data.

   This model covers data for configuration, operational state, remote
   procedural calls, and event notifications.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-teas-yang-te-37"/>
        </reference>
        <reference anchor="I-D.draft-ietf-ccamp-transport-nbi-app-statement">
          <front>
            <title>Transport Northbound Interface Applicability Statement</title>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei</organization>
            </author>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei</organization>
            </author>
            <author fullname="Yunbin Xu" initials="Y." surname="Xu">
              <organization>CAICT</organization>
            </author>
            <date day="10" month="July" year="2023"/>
            <abstract>
              <t>   This document provides an analysis of the applicability of the YANG
   models defined by the IETF (in particular in the Traffic Engineering
   Architecture and Signaling (TEAS) and Common Control and Measurement
   Plane (CCAMP) working groups) to support ODU transit services,
   transparent client services, and Ethernet Private Line/Ethernet
   Virtual Private Line (EPL/EVPL) services over Optical Transport
   Network (OTN) in single and multi-domain network scenarios.

   This document also describes how existing YANG models can be used
   through several worked examples and JSON fragments.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-transport-nbi-app-statement-17"/>
        </reference>
        <reference anchor="I-D.draft-gstk-ccamp-actn-optical-transport-mgmt">
          <front>
            <title>Integrating YANG Configuration and Management into an Abstraction and Control of TE Networks (ACTN) System for Optical Networks</title>
            <author fullname="Yanxia Tan" initials="" surname="Tan">
              <organization>China Unicom</organization>
            </author>
            <author fullname="XingZhao" initials="" surname="XingZhao">
              <organization>CAICT</organization>
            </author>
            <author fullname="Chaode Yu" initials="C." surname="Yu">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Adrian Farrel" initials="A." surname="Farrel">
              <organization>Old Dog Consulting</organization>
            </author>
            <date day="18" month="October" year="2024"/>
            <abstract>
              <t>   Many network technologies are operated as Traffic Engineered (TE)
   networks.  Optical networks are a particular case, and have complex
   technology-specific details.

   Abstraction and Control of TE Networks (ACTN) is a management
   architecture that abstracts TE network resources to provide a limited
   network view for customers to request and self-manage connectivity
   services.  It also provides functional components to orchestrate and
   operate the network.

   Management of legacy optical networks is often provided via Fault,
   Configuration, Accounting, Performance, and Security (known as FCAPS)
   using mechanisms such as the Multi-Technology Operations System
   Interface (MTOSI) and the Common Object Request Broker Architecture
   (CORBA).  FCAPS can form a critical part of configuration management
   and service assurance for network operations.  However, the ACTN
   architecture as described in RFC 8453 does not include consideration
   of FCAPS.

   This document enhances the ACTN architecture as applied to optical
   networks by introducing support for FCAPS.  It considers which
   elements of existing IETF YANG work can be used to solve existing
   scenarios and emerging technologies, and what new work may be needed.
   In doing so, this document adds fine-grained network management to
   the ACTN architecture.  This enhanced architecture may then be used
   to evolve networks from CORBA and MTOSI FCAPS interfaces to IETF-
   based YANG and RESTful API capabilities.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-gstk-ccamp-actn-optical-transport-mgmt-05"/>
        </reference>
      </references>
    </references>
    <?line 1123?>

<section anchor="appendix">
      <name>Appendix</name>
      <section anchor="mapping-between-actn-tmf-tapi-modelling">
        <name>Mapping Between ACTN &amp; TMF &amp; TAPI Modelling</name>
        <table anchor="tab-mapping2">
          <name>Mapping of ACTN &amp; TMF &amp; TAPI Modelling</name>
          <thead>
            <tr>
              <th align="left">ACTN Object</th>
              <th align="left">TMF Object</th>
              <th align="left">TAPI Object</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Network</td>
              <td align="left">NA</td>
              <td align="left">topology</td>
            </tr>
            <tr>
              <td align="left">Node</td>
              <td align="left">Management Element</td>
              <td align="left">node</td>
            </tr>
            <tr>
              <td align="left">Link</td>
              <td align="left">Topology Link</td>
              <td align="left">link</td>
            </tr>
            <tr>
              <td align="left">TP</td>
              <td align="left">PTP</td>
              <td align="left">SIP/NEP</td>
            </tr>
            <tr>
              <td align="left">TTP</td>
              <td align="left">CTP/FTP</td>
              <td align="left">CEP</td>
            </tr>
            <tr>
              <td align="left">Tunnel</td>
              <td align="left">SNC/XC</td>
              <td align="left">connection</td>
            </tr>
            <tr>
              <td align="left">NE</td>
              <td align="left">Management Element</td>
              <td align="left">device</td>
            </tr>
            <tr>
              <td align="left">component</td>
              <td align="left">equipment holder/equipment</td>
              <td align="left">equipment/holder</td>
            </tr>
            <tr>
              <td align="left">Client signal</td>
              <td align="left">NA</td>
              <td align="left">connectivity service</td>
            </tr>
            <tr>
              <td align="left">Ethernet Client signal</td>
              <td align="left">NA</td>
              <td align="left">connectivity service</td>
            </tr>
            <tr>
              <td align="left">NA</td>
              <td align="left">Protection Group</td>
              <td align="left">NA</td>
            </tr>
            <tr>
              <td align="left">NA</td>
              <td align="left">Equipment Protection Group</td>
              <td align="left">NA</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document was prepared using kramdown.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="Z." surname="Liu" fullname="Zhoulong Liu">
        <organization>Huawei Technologies</organization>
        <address>
          <email>liuzhoulong@huawei.com</email>
        </address>
      </contact>
      <contact initials="I." surname="Busi" fullname="Italo Busi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>Italo.Busi@huawei.com</email>
        </address>
      </contact>
      <contact initials="A." surname="Guo" fullname="Aihua Guo">
        <organization>Futurewei Technologies</organization>
        <address>
          <email>aihuaguo.ietf@gmail.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
QlLVfQajAAA=

-->

</rfc>
