<?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.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-opsawg-scheduling-oam-tests-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.29.0 -->
  <front>
    <title abbrev="Scheduling OAM YANG">A YANG Data Model for Network Diagnosis using Scheduled Sequences of OAM Tests</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-scheduling-oam-tests-01"/>
    <author fullname="Luis M. Contreras">
      <organization>Telefonica</organization>
      <address>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>
    <author fullname="Victor Lopez">
      <organization>Nokia</organization>
      <address>
        <email>victor.lopez@nokia.com</email>
      </address>
    </author>
    <date year="2025" month="July" day="07"/>
    <area>Operations and Management</area>
    <workgroup>Operations and Management Area Working Group</workgroup>
    <keyword>OAM</keyword>
    <keyword>Scheduling</keyword>
    <keyword>Test sequences</keyword>
    <abstract>
      <?line 46?>

<t>This document defines a YANG data model for network diagnosis on-demand relying upon Operations, Administration, and Maintenance (OAM) tests. This document defines both 'oam-unitary-test' and 'oam-test-sequence' YANG modules to manage the lifecycle of network diagnosis procedures, primarily intended for use by an SDN controller or network orchestrator, rather than by individual network nodes.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://vlopezalvarez.github.io/draft-ietf-opsawg-scheduling-oam-tests/draft-ietf-opsawg-scheduling-oam-tests.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-opsawg-scheduling-oam-tests/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Operations and Management Area Working Group Working Group mailing list (<eref target="mailto:opsawg@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/opsawg/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/opsawg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/vlopezalvarez/draft-ietf-opsawg-scheduling-oam-tests"/>.</t>
    </note>
  </front>
  <middle>
    <?line 50?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Operations, Administration, and Maintenance (OAM) tasks are fundamental functions of the network management (see, e.g., <xref target="RFC7276"/>). Given the emergence of data models and their utilization in Service Provider's network management and the need to automate the overall service management lifecycle <xref target="RFC8969"/>, the management of OAM operations becomes also essential. Relevant data models are still missing to cover specific needs.</t>
      <t>Specifically, OAM functions provide the means to identify and isolate faults, measure and report of performance (see section 4.2, <xref target="RFC6632"/>. For example, <xref target="RFC5860"/> defines the three main areas involved in OAM:</t>
      <ul spacing="normal">
        <li>
          <t>Fault management, which allows network operators to quickly identify and isolate faults in the network. Examples of these mechanisms for fault detection and isolation are: continuity check, link trace, and loopback.</t>
        </li>
        <li>
          <t>Performance management enables monitoring network performance and diagnosing performance issues (i.e., degradation). Some of the measurements such as frame delay measurement, frame delay variation measurement, and frame loss measurement.</t>
        </li>
        <li>
          <t>Security management defines mechanisms to protect OAM communications from unauthorized access and tampering.</t>
        </li>
      </ul>
      <t><xref target="RFC7276"/> presents OAM tools for detecting and isolating failures in networks and for performance monitoring, some examples are:</t>
      <ul spacing="normal">
        <li>
          <t>Continuity Check: This function verifies that a path exists between two points in a network and that the path is operational.</t>
        </li>
        <li>
          <t>Loopback: This function allows a device to loop back a received packet back to the sender for diagnostic purposes. There are multiple technologies for this function, like IP Ping, VCCV Ping, LSP Ping or Ethernet Loopback.</t>
        </li>
        <li>
          <t>Link Trace: This function allows a network operator to trace a path through a network from one device to another. Some technologies following this approach are Y.1731 Linktrace <xref target="ITU-T-Y1731"/> or IP traceroute.</t>
        </li>
        <li>
          <t>Performance Monitoring: This function allows a network operator to monitor the performance of a network and to identify and diagnose performance issues. Protocols like TWAMP, or Y.1731 DMM/SLM <xref target="ITU-T-Y1731"/> can obtain performance measurements.</t>
        </li>
      </ul>
      <t>More recently, Incident Management <xref target="I-D.ietf-nmop-network-incident-yang"/> focuses on
   of incident diagnosis, which can be favored by dynamic invocation of OAM tests.</t>
      <t><xref target="RFC8531"/>, <xref target="RFC8532"/>, <xref target="RFC8533"/>, and <xref target="RFC8913"/> defined YANG models for OAM technologies:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="RFC8531"/> "A YANG Data Model for MPLS-TP OAM": defines a YANG data model for connection-oriented OAM protocols. The main aim of this document is to define a generic YANG data model that can be used to configure, control, and monitor connection-oriented OAM protocols such as MPLS-TP OAM, PBB-TE OAM, and G.7713.1 OAM.</t>
        </li>
        <li>
          <t><xref target="RFC8532"/> "A YANG Data Model for Connectionless OAM Protocols": provides a generic YANG data model that can be used to configure, control, and monitor connectionless OAM protocols such as BFD (Bidirectional Forwarding Detection), LBM (Loopback Messaging), and VCCV (Virtual Circuit Connectivity Verification).</t>
        </li>
        <li>
          <t><xref target="RFC8533"/> "A YANG Data Model for BFD, LBM, and VCCV OAM Protocols": provides a YANG data model that can be used to retrieve information related to OAM protocols such as Bidirectional Forwarding Detection (BFD), Loopback Messaging (LBM), and Virtual Circuit Connectivity Verification (VCCV).</t>
        </li>
        <li>
          <t><xref target="RFC8913"/> "A YANG Data Model for Two-Way Active Measurement Protocol (TWAMP)": specifies a YANG data model for client and server implementations of the Two-Way Active Measurement Protocol (TWAMP).</t>
        </li>
      </ul>
      <t>These OAM related YANG data models defined the parameters required for each of the different tests that are used in network elements today. This work aims to reuse and build upon existing YANG models for OAM technologies, such as those defined in <xref target="RFC8531"/>, <xref target="RFC8532"/>, and <xref target="RFC8533"/>. By leveraging these foundational models, this document specifies a YANG data model for scheduling and coordinating sequences of OAM tests, enabling more advanced and automated network diagnosis procedures. In addition to reusing the device-level OAM YANG models from <xref target="RFC8531"/>, <xref target="RFC8532"/>, and <xref target="RFC8533"/>, this document builds upon the generic scheduling framework defined in <xref target="I-D.ietf-netmod-schedule-yang"/>. The <tt>ietf-schedule</tt> module provides reusable groupings and mechanisms for specifying periods of time, recurrence rules, and scheduling status. These constructs are directly imported and used in the OAM unitary test and OAM test sequence models defined in this document, enabling precise scheduling, repetition, and conflict reporting for OAM tasks in a network-wide context.</t>
      <t>The YANG data model resulting from this document will conform to the Network Management Datastore Architecture (NMDA) <xref target="RFC8342"/>.</t>
      <section anchor="terminology-and-notations">
        <name>Terminology and Notations</name>
        <t>This document assumes that the reader is familiar with the contents of <xref target="RFC7950"/> "The YANG 1.1 Data Modeling Language".</t>
        <t>Following terms are used for the representation of this data model.</t>
        <ul spacing="normal">
          <li>
            <t>OAM unitary test: A set of parameters that define a type of OAM test to be invoked. As an example, it includes the type test, configuration parameters, and target results.</t>
          </li>
          <li>
            <t>OAM test sequence: A set of OAM unitary tests that are run based on a set of time constraints, number of repetitions, order, and reporting outputs.</t>
          </li>
        </ul>
        <t>Tree diagrams used in this document follow the notation defined in <xref target="RFC8340"/>.</t>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</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  <xref target="RFC2119"/>, <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here.</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 will be prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown 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">oamut</td>
              <td align="left">ietf-oam-unitary-tests</td>
              <td align="left">RFCXXXX</td>
            </tr>
            <tr>
              <td align="left">oamts</td>
              <td align="left">ietf-oam-test-sequence</td>
              <td align="left">RFCXXXX</td>
            </tr>
            <tr>
              <td align="left">yang</td>
              <td align="left">ietf-yang-types</td>
              <td align="left">
                <xref target="RFC6991"/></td>
            </tr>
          </tbody>
        </table>
        <ul empty="true">
          <li>
            <t>RFC Editor Note:
Please replace XXXX with the RFC number assigned to this document if the document becomes a RFC. Please remove this note in that case.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="network-wide-oam-use-cases">
      <name>Network-wide OAM Use Cases</name>
      <t>This document covers how to use OAM for network-wide use cases. Following, some illustrative examples are presented.</t>
      <section anchor="troubleshooting">
        <name>Troubleshooting</name>
        <t>After the detection of a problem <xref target="I-D.ietf-nmop-terminology"/> in the network, OAM tests are performed to find the root cause for the detected problem. However, a detected problem can be caused by a variety of factors, such as a misconfiguration, hardware failure, or a software bug. OAM tests can help to find the root cause by testing specific components of the network and looking for anomalies or issues. Also, the reliability and efficiency of the tests depend on the nature of the test itself.</t>
        <t>There are a variety of OAM tests that can be executed as a function of the target scenario. For example, if the issue is related to a Layer 2 capability, specific tests can be designed and run to check the status of the path via Ethernet Linktrace and later run an Ethernet Loopback to a concrete network element. These tests can be coupled with others to test if any filtering is in place by varying, e.g., some Layer 2 fields or checking the configuration of relevant nodes.  If these tests are correct, the operator may want to check the availability of the service (or its delivered performance).</t>
        <t>Even though the troubleshooting process may be different depending on the problem detected, there are certain common procedures or logics that can be executed in order to narrow down the cause of the problem and thus help locating candidate root cause.</t>
      </section>
      <section anchor="birth-certificate">
        <name>Birth Certificate</name>
        <t>The aim of a birth certificate process is to validate that all relevant parameters are set appropriately in accordance with the target network service. The birth certificate process is done once the configuration of the network elements is completed, and they are ready for service.</t>
        <t>If the birth certificate is successful, it means that the network service is functioning correctly (that is, measured service is matching the expected service) and meets the requirements defined by the operator. The process requires running a set of OAM tasks (e.g., tests) to verify that the service is performing as expected.</t>
        <t>The set of OAM tests conducted as part of a birth certificate process depends on the network service that is tested.  For example, if the service is a Virtual Private Network (VPN). Two-Way Active Measurement Protocol (TWAMP) Light <xref target="RFC5357"/> will be used, while if the service is an E-LINE, ITU-T Y.1731 Ethernet CFM tests <xref target="ITU-T-Y1731"/> will be executed.</t>
        <t>Typically, once the birth certificate process has been completed and the OAM tests have been executed, the test results are stored as part of the documentation process performed by the operator. Many of these tasks take place during pre-deployment phases.</t>
      </section>
      <section anchor="proactive-supervision">
        <name>Proactive Supervision</name>
        <t>Some network services require to fulfill strict Service Level Agreements (SLAs).  An SLA defines the performance parameters that the service must fulfill in order to meet the requirements of the customer or end user (e.g., IP Connectivity Provisioning Profile (CPP) <xref target="RFC7297"/> and Network Slice Service <xref target="RFC9543"/>).</t>
        <t>As part of service fulfillment and assurance (e.g., Section 2.3.3 of <xref target="RFC4176"/>), proactive verification is undertaken to assess whether SLAs are met and implement appropriate adjustment measures when service distortion is observed. Proactive supervision requires running tests both end-to-end, but also on service components to identify early symptoms and resolve issues before they impact the customer or end user, or to prevent or minimize the impact of the end user. Mitigation action may be enforced to alliviate the impact of networks incidents and nullify the impact on services that are delivered via that network.</t>
        <t>Proactive testing might be done via OAM tests. These tests can be run periodically at regular intervals depending on the specific SLA requirements and the network operator procedures. These procedures may require documenting the test results for future auditing processes with the customers (eventually, negotiated and agreed with a customer as part of service assurance).</t>
      </section>
      <section anchor="performance-based-path-routing">
        <name>Performance-based Path Routing</name>
        <t>Path Computation Elements (PCEs) are used to compute end-to-end paths in a network <xref target="RFC4655"/>. PCEs are used for Traffic Engineering (TE) purposes (e.g., optimize network performance, reduce congestion, and improve the overall user experience).</t>
        <t>There are different algorithms to calculate a path in the network for some of them the PCE requires traffic engineering information. TE information includes data such as link metrics, bandwidth availability, and routing constraints. By using this information, the PCE can compute the optimal path for a particular service <xref target="RFC8233"/>, taking into account its constraints and requirements. In addition to TE Metric Extensions in OSPF <xref target="RFC7471"/> or IS-IS <xref target="RFC7810"/>, OAM techniques also allow obtaining link metrics like delay and loss which can be used in the PCE algorithms.</t>
      </section>
    </section>
    <section anchor="modelling-the-scheduling-of-oam-tests">
      <name>Modelling the Scheduling of OAM Tests</name>
      <t>This document specifies two models: OAM unitary test and OAM test sequence models.</t>
      <section anchor="oam-unitary-test">
        <name>OAM Unitary Test</name>
        <t>The OAM unitary test model encompasses parameters that define a specific type of OAM test to be performed. The YANG model includes a container named "oam-unitary-tests" that serves as a container for activating OAM unitary tests for network diagnosis procedures. Inside the container, there is a list called "oam-unitary-test" representing a list of specific OAM unitary tests. The list key is defined as "name", which provides a unique name for each test. Each OAM test in the list references a test type with its concrete parameters. The test types are out of the scope of this document. Moreover, each OAM unitary test has two temporal parameters: "period-of-time" and "recurrence". Both are imported from the "ietf-schedule" module from <xref target="I-D.ietf-netmod-schedule-yang"/>. "period-of-time" identifies the period values that contain a precise period of time, while "recurrence" identifies the properties that contain a recurrence rule specification. "unitary-test-status" enumerates the state of the OAM unitary test.</t>
        <t><xref target="oam-uni-test-tree-st"/> shows the structure of OAM unitary test module:</t>
        <figure anchor="oam-uni-test-tree-st">
          <name>Tree Structure of OAM Unitary Test</name>
          <artwork align="center"><![CDATA[
module: ietf-oam-unitary-test
  +--rw oam-unitary-tests
     +--rw oam-unitary-test* [name]
        +--rw name                      string
        +--rw ne-config* [ne-id]
        |  +--rw ne-id    rt-types:router-id
        |  +--rw (test-type)
        +--rw period-description?       string
        +--rw period-start              yang:date-and-time
        +--rw time-zone-identifier?     sys:timezone-name
        +--rw (period-type)?
        |  +--:(explicit)
        |  |  +--rw period-end?         yang:date-and-time
        |  +--:(duration)
        |     +--rw duration?           duration
        +--rw recurrence-description?   string
        +--rw frequency                 identityref
        +--rw interval?                 uint32
        +--rw unitary-test-status?      enumeration
]]></artwork>
        </figure>
        <t>(Note: alignment with <xref target="I-D.ietf-netmod-schedule-yang"/> will continue with the progress of that document).
The 'unitary-test-status' state machine is shown in <xref target="st-unitary-test-status"/>. The state machine includes the following states:</t>
        <ul spacing="normal">
          <li>
            <t>"planned": The initial state where the test is planned.</t>
          </li>
          <li>
            <t>"configured": The state where the test is being configured.</t>
          </li>
          <li>
            <t>"ready": The state where the test is ready to be executed.</t>
          </li>
          <li>
            <t>"on-going": The state where the test is currently running.</t>
          </li>
          <li>
            <t>"stop": The state where the test is manually stopped.</t>
          </li>
          <li>
            <t>"error": The state where an error occurs during the test.</t>
          </li>
          <li>
            <t>"finished": The final state where the test is completed.</t>
          </li>
        </ul>
        <figure anchor="st-unitary-test-status">
          <name>OAM Unitary Test State Machine</name>
          <artwork align="center"><![CDATA[
   +---------+      +----------+      +---------+
+->| planned |----->|configured|----->|  ready  |
|  +---------+      +----------+      +---------+
|                        |                |
|                        |                V
|            +-------+   |          +----------+
|      +-----| error |<--+----------| on-going |
|      |     +-------+              +----------+
|      |                                  |
|      V                                  |
|  +---------+      +--------+            |
+--| finished|<-----|  stop  |<------------+
   +---------+      +--------+            |
       A                                  |
       |                                  |
       +----------------------------------+

]]></artwork>
        </figure>
      </section>
      <section anchor="oam-test-sequence">
        <name>OAM Test Sequence</name>
        <t>The OAM test sequence model consists of a collection of OAM unitary tests that are executed based on specified time constraints, repetitions, ordering, and reporting outputs. These sequences provide a structured approach to running multiple OAM tests in a coordinated manner.</t>
        <t>Each OAM test sequence references an OAM unitary test type with its concrete parameters. Each OAM test sequence has two temporal parameters: "period-of-time" and "recurrence". Both are imported from the "ietf-schedule" module from <xref target="I-D.ietf-netmod-schedule-yang"/>. "period-of-time" identifies the period values that contain a precise period of time, while "recurrence" identifies theproperties that contain a recurrence rule specification. "unitary-test-status" enumerates the state of the OAM test. Finally, "test-sequence-status" shows the state of the OAM test sequence.</t>
        <t><xref target="oam-test-sequence-tree-st"/> shows the structure of OAM test sequence module:</t>
        <figure anchor="oam-test-sequence-tree-st">
          <name>OAM test sequence</name>
          <artwork align="center"><![CDATA[
module: ietf-oam-test-sequence
  +--rw oam-test-sequence
     +--rw test-sequence* [name]
        +--rw name                      string
        +--rw test-ref* [name]
        |  +--rw name             string
        |  +--rw (test-type)
        |  +--rw numexecutions?   uint32
        +--rw period-description?       string
        +--rw period-start              yang:date-and-time
        +--rw time-zone-identifier?     sys:timezone-name
        +--rw (period-type)?
        |  +--:(explicit)
        |  |  +--rw period-end?         yang:date-and-time
        |  +--:(duration)
        |     +--rw duration?           duration
        +--rw recurrence-first
        |  +--rw utc-start-time?   yang:date-and-time
        |  +--rw duration?         uint32
        +--rw (recurrence-bound)?
        |  +--:(until)
        |  |  +--rw utc-until?          yang:date-and-time
        |  +--:(count)
        |     +--rw count?              uint32
        +--rw recurrence-description?   string
        +--rw frequency                 identityref
        +--rw interval?                 uint32
        +--rw test-sequence-status?     enumeration

]]></artwork>
        </figure>
        <t>The 'test-sequence-status' state machine is shown in <xref target="st-test-sequence-status"/>. The state machine includes the following states:</t>
        <ul spacing="normal">
          <li>
            <t>"planned": The initial state where the test is planned.</t>
          </li>
          <li>
            <t>"configured": The state where the test is being configured.</t>
          </li>
          <li>
            <t>"ready": The state where the test is ready to be executed.</t>
          </li>
          <li>
            <t>"on-going": The state where the test is currently running.</t>
          </li>
          <li>
            <t>"stop": The state where the test is manually stopped.</t>
          </li>
          <li>
            <t>"success": The state when all unitary tests were successful.</t>
          </li>
          <li>
            <t>"failure": The state when one or more tests in the sequence got an error.</t>
          </li>
          <li>
            <t>"error": The state where an error occurs during the test.</t>
          </li>
        </ul>
        <figure anchor="st-test-sequence-status">
          <name>OAM test sequence state machine</name>
          <artwork align="center"><![CDATA[
    +---------+      +----------+      +---------+
 +->| planned |----->|configured|----->|  ready  |
 |  +---------+      +----------+      +---------+
 |    A   A                 |              |
 |    |   |                 |              V
 |    |   |     +-------+   |          +----------+
 |    |   ------| error |<--+----------| on-going |
 |    |         +-------+              +----------+
 |    |                                    |
 |    |                                    |
 | +---------+      +--------+             |
 | | failure |<-----|  stop  |<------------+
 | +---------+      +--------+             |
 |                                         |
 | +---------+                             |
 +-| success |<----------------------------+
   +---------+

]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="yang-data-models-for-scheduling-oam-tests">
      <name>YANG Data Models for Scheduling OAM Tests</name>
      <section anchor="yang-model-for-scheduling-oam-unitary-test">
        <name>YANG Model for Scheduling OAM Unitary Test</name>
        <sourcecode markers="true"><![CDATA[ file ietf-oam-unitary-test@2024-11-08.yang
module ietf-oam-unitary-test {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-oam-unitary-test";
  prefix "oamut";

  // Import OAM models from RFCs RFC8531, RFC8532 and RFC8533

  // reference ietf-netmod-schedule-yang
  import ietf-schedule {
    prefix schedule;
    reference
      "RFC XXXX: A Common YANG Data Model for Scheduling";
  }

  import ietf-routing-types {
    prefix rt-types;
    reference
      "RFC 8294: Common YANG Data Types for the Routing Area";
  }

  organization
    "IETF OPSAWG (Operations and Management Area Working Group)";

  contact
    "WG Web:   <https://datatracker.ietf.org/wg/opsawg/>
     WG List:  <mailto:opsawg@ietf.org>
     Author: Luis Miguel Contreras Murillo
          <luismiguel.contrerasmurillo@telefonica.com>
     Author: Victor Lopez
          <victor.lopez@nokia.com>";
  description
    "This module defines the 'ietf-oam-unitary-test' YANG model for
     activation of network diagnosis procedures.

    Copyright (c) 2024 IETF Trust and the persons identified as
    authors of the code.  All rights reserved.

    Redistribution and use in source and binary forms, with or
    without modification, is permitted pursuant to, and subject
    to the license terms contained in, the Revised BSD License
    set forth in Section 4.c of the IETF Trust's Legal Provisions
    Relating to IETF Documents
      (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
     for full legal notices.";

  // RFC Ed.: update the date below with the date of RFC
  // publication and remove this note.
  // RFC Ed.: replace XXXX with actual RFC number and remove
  // this note.

  revision "2024-11-08" {
    description
      "Initial version";
    reference
      "RFCXXXX: A YANG Data Model for Network Diagnosis by Scheduling
       Sequences of OAM Tests";
       // Update with the correct RFC number when assigned
  }

  grouping oam-unitary-test {
    description
        "Specifies a grouping for OAM unitary test for network
        diagnosis procedures.";

    leaf name {
      type string;
      description
        "Defines the name of the test.";
    }

    list ne-config {
      key ne-id;
      description "List of node configurations required to enable the
        unitary tests.";

      leaf ne-id {
        type rt-types:router-id;
        description
          "A 32-bit number in the dotted-quad format that is used
            to uniquely identify a node within an autonomous system
            the ne-id. This identifier is used for both IPv4 and IPv6.";
      }
      choice test-type {
        mandatory true;
        description
          "Choose the type of test. Pending to add the schema-mount solution";
          // Import OAM models from RFCs RFC8531, RFC8532 and RFC8533
      }
    }
  }

  container oam-unitary-tests {
    description
      "Container for OAM unitary tests activation for network
      diagnosis procedures.";

    list oam-unitary-test {
      key name;
      description
        "List of OAM unitary tests activation for network diagnosis
        procedures.";

      uses oam-unitary-test;

      uses schedule:period-of-time;

      uses schedule:recurrence;

      leaf unitary-test-status {
        config false;
        type enumeration {
          enum "planned" {
            description
              "The test is planned.";
          }
          enum "configure" {
            description
              "The test is configured.";
          }
          enum "ready" {
            description
              "The test status is ready.";
          }
          enum "ongoing" {
            description
              "The test is ongoing.";
          }
          enum "stop" {
            description
              "The test is stopped.";
          }
          enum "finish" {
            description
              "The test is finished.";
          }
          enum "error" {
            description
              "The test has an error.";
          }
        }
        description
          "Status of the test.";
      }
    }
  }
}

]]></sourcecode>
      </section>
      <section anchor="yang-model-for-oam-test-sequence">
        <name>YANG Model for OAM Test Sequence</name>
        <sourcecode markers="true"><![CDATA[ file ietf-oam-test-sequence@2024-11-08.yang

module ietf-oam-test-sequence {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-oam-test-sequence";
  prefix "oamts";

  import ietf-oam-unitary-test {
    prefix "oamut";
    // Update the reference with the correct RFC number or other
    // reference when assigned
    // reference "RFCXXXX";
  }

  // reference ietf-netmod-schedule-yang
  import ietf-schedule { prefix "schedule"; }

  organization
    "IETF OPSAWG (Operations and Management Area Working Group)";

  contact
    "WG Web:   <https://datatracker.ietf.org/wg/opsawg/>
     WG List:  <mailto:opsawg@ietf.org>
     Author: Luis Miguel Contreras Murillo
          <luismiguel.contrerasmurillo@telefonica.com>
     Author: Victor Lopez
          <victor.lopez@nokia.com>";
  description
    "This module defines the 'oam-test-sequence-test' YANG model for
    management of network diagnosis procedures.

    Copyright (c) 2024 IETF Trust and the persons identified as
    authors of the code.  All rights reserved.

    Redistribution and use in source and binary forms, with or
    without modification, is permitted pursuant to, and subject
    to the license terms contained in, the Revised BSD License
    set forth in Section 4.c of the IETF Trust's Legal Provisions
    Relating to IETF Documents
      (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
     for full legal notices.";

  // RFC Ed.: update the date below with the date of RFC
  // publication and remove this note.
  // RFC Ed.: replace XXXX with actual RFC number and remove
  // this note.

  revision "2024-11-08" {
    description "Initial version";
    reference "RFCXXXX";
    // Update with the correct RFC number when assigned
  }

  // Data model definition

  container oam-test-sequence {
    description
      "Container for executing a sequence of ietf-oam-unitary-tests
      N times.";

    list test-sequence {
      key "name";
      description "List of test sequences.";

      leaf name {
        type string;
        description "Unique name for the test sequence.";
      }

      list test-ref {
        key "name";
        description "References to the ietf-oam-unitary-tests.";

        uses "oamut:oam-unitary-test";

        leaf numexecutions {
          type uint32;
          default 1;
          description
            "Number of times the test sequence should be
            executed.";
        }
      }

      uses schedule:period-of-time;

      uses schedule:recurrence-utc;

      leaf test-sequence-status {
        config false;
        type enumeration {
          enum "planned" {
            description
              "The test sequence is planned.";
          }
          enum "configured" {
            description
              "The test sequence is configured.";
          }
          enum "ready" {
            description
              "The test sequence is ready.";
          }
          enum "ongoing" {
            description
              "The test sequence status is ongoing.";
          }
          enum "stop" {
            description
              "The test sequenceis stopped.";
          }
          enum "success" {
            description
              "All tests in the sequence were successful.";
          }
          enum "failure" {
            description
              "One or more tests in the sequence got an error.";
          }
          enum "error" {
            description
              "The test sequence status has an error.";
          }
        }

        description
          "Status of the test sequence execution.";
      }
    }
  }
}

]]></sourcecode>
      </section>
    </section>
    <section anchor="using-device-mode-within-oam-scheduling-models">
      <name>Using Device Mode Within OAM Scheduling Models</name>
      <t>This section discusses the issues related to reusing device models already defined in IETF within the context of scheduling OAM tests. There are two main approaches to enable OAM scheduling models:</t>
      <ul spacing="normal">
        <li>
          <t>Importing YANG model into the OAM scheduling models. This approach will copy the device model into the OAM unitary test model to enable the configuration and utilization of the desired OAM test. This approach requires to recreate new YANG models for each new test type or variation of the device models.</t>
        </li>
        <li>
          <t>Schema-mount allows mounting a data model at a specified location of another (parent) schema. The main difference with importing the YANG modules is that they don't have to be prepared for mounting; any existing modules such as "ietf-twamp" can be mounted without any modifications.</t>
        </li>
      </ul>
      <t>As an exmaple, we will use <xref target="RFC8913"/>, which defines a YANG data model for TWAMP, to illustrate how device models could be used.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <section anchor="conflict-resolution-and-reporting-among-scheduled-oam-tasks">
        <name>Conflict Resolution and Reporting Among Scheduled OAM Tasks</name>
        <t>When multiple OAM tasks are scheduled to run concurrently or overlap in time, conflicts may arise due to resource contention or operational constraints. This document leverages the scheduling status groupings defined in the common schedule YANG module (see [RFC XXXX: A Common YANG Data Model for Scheduling]) to detect and report such conflicts.</t>
        <t>The YANG models defined in this document (both for unitary and sequence tests) uses the <tt>unitary-test-status</tt> and <tt>test-sequence-status</tt> grouping to indicate the current scheduling state of each OAM task. If a conflict is detected (e.g., two tests require exclusive access to the same resource at the same time), the <tt>unitary-test-status</tt> and <tt>test-sequence-status</tt> leaf will reflect this by reporting a value such as <tt>error</tt>, reporting the conflict.</t>
        <t>Operators and management systems SHOULD monitor the scheduling status of OAM tasks and take appropriate action if a conflict is reported. The resolution of conflicts (e.g., rescheduling, prioritization, or cancellation) is implementation-dependent, but MUST be clearly reported via the YANG model status leaves.</t>
        <t>When a new <tt>unitary-test</tt> or <tt>test-sequence</tt> are scheduled, he request MAY be rejected depending on the server's capability to evaluate the scheduling impact and detect conflicts prior to execution.</t>
      </section>
      <section anchor="coverage-of-input-parameters-and-output-results">
        <name>Coverage of Input Parameters and Output Results</name>
        <t>The YANG models defined in this document are designed to schedule OAM tests at a network-wide level. The input parameters required to configure and execute specific OAM functions (such as test type, target, and configuration options) are referenced or reused from the existing device-level OAM YANG models (e.g., <xref target="RFC8531"/>, <xref target="RFC8532"/>, <xref target="RFC8533"/>, <xref target="RFC8913"/>). This approach avoids duplication and ensures consistency with established models.</t>
        <t>Similarly, the output results of OAM tests—such as test status, performance metrics, and diagnostic information—are expected to be reported using the mechanisms and data nodes defined in those foundational YANG modules. The scheduling models in this document provide references to these results and enable their collection and correlation across multiple tests and devices, but do not redefine the detailed input/output parameters of each OAM function.</t>
        <t>In summary, this document focuses on the scheduling, coordination, and status tracking of OAM tests, while relying on existing YANG models for the detailed specification of test parameters and results.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The YANG module targeted in this document defines a schema for data that is designed to be accessed via network management protocols such as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>.  The lowest NETCONF layer is the secure transport layer, and the mandatory-to-implement secure transport is Secure Shell (SSH) <xref target="RFC6242"/>. The lowest RESTCONF layer is HTTPS, and the mandatory-to-implement secure transport is TLS <xref target="RFC5246"/>.</t>
      <t>The NETCONF access control model <xref target="RFC6536"/> provides the means to restrict access for particular NETCONF or RESTCONF users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content.</t>
      <t>There are a number of data nodes defined in this YANG module that are writable/creatable/deletable (i.e., config true, which is the default).  These data nodes may be considered sensitive or vulnerable in some network environments.  Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations.</t>
      <t>In which refers to the scheduling of the tests, security considerations in <xref target="I-D.ietf-netmod-schedule-yang"/> are also applicable here.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>TBC</t>
    </section>
    <section anchor="implementation-status">
      <name>Implementation Status</name>
      <t>This section will be used to track the status of the implementations of the model. It is aimed at being removed if the document becomes RFC.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5860">
          <front>
            <title>Requirements for Operations, Administration, and Maintenance (OAM) in MPLS Transport Networks</title>
            <author fullname="M. Vigoureux" initials="M." role="editor" surname="Vigoureux"/>
            <author fullname="D. Ward" initials="D." role="editor" surname="Ward"/>
            <author fullname="M. Betts" initials="M." role="editor" surname="Betts"/>
            <date month="May" year="2010"/>
            <abstract>
              <t>This document lists architectural and functional requirements for the Operations, Administration, and Maintenance of MPLS Transport Profile. These requirements apply to pseudowires, Label Switched Paths, and Sections. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5860"/>
          <seriesInfo name="DOI" value="10.17487/RFC5860"/>
        </reference>
        <reference anchor="RFC8531">
          <front>
            <title>Generic YANG Data Model for Connection-Oriented Operations, Administration, and Maintenance (OAM) Protocols</title>
            <author fullname="D. Kumar" initials="D." surname="Kumar"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document presents a base YANG data model for connection-oriented Operations, Administration, and Maintenance (OAM) protocols. It provides a technology-independent abstraction of key OAM constructs for such protocols. The model presented here can be extended to include technology-specific details. This guarantees uniformity in the management of OAM protocols and provides support for nested OAM workflows (i.e., performing OAM functions at different levels through a unified interface).</t>
              <t>The YANG data model in this document conforms to the Network Management Datastore Architecture.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8531"/>
          <seriesInfo name="DOI" value="10.17487/RFC8531"/>
        </reference>
        <reference anchor="RFC8532">
          <front>
            <title>Generic YANG Data Model for the Management of Operations, Administration, and Maintenance (OAM) Protocols That Use Connectionless Communications</title>
            <author fullname="D. Kumar" initials="D." surname="Kumar"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="R. Rahman" initials="R." surname="Rahman"/>
            <author fullname="S. Raghavan" initials="S." surname="Raghavan"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document presents a base YANG Data model for the management of Operations, Administration, and Maintenance (OAM) protocols that use connectionless communications. The data model is defined using the YANG data modeling language, as specified in RFC 7950. It provides a technology-independent abstraction of key OAM constructs for OAM protocols that use connectionless communication. The base model presented here can be extended to include technology-specific details.</t>
              <t>There are two key benefits of this approach: First, it leads to uniformity between OAM protocols. Second, it supports both nested OAM workflows (i.e., performing OAM functions at the same level or different levels through a unified interface) as well as interactive OAM workflows (i.e., performing OAM functions at the same level through a unified interface).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8532"/>
          <seriesInfo name="DOI" value="10.17487/RFC8532"/>
        </reference>
        <reference anchor="RFC8533">
          <front>
            <title>A YANG Data Model for Retrieval Methods for the Management of Operations, Administration, and Maintenance (OAM) Protocols That Use Connectionless Communications</title>
            <author fullname="D. Kumar" initials="D." surname="Kumar"/>
            <author fullname="M. Wang" initials="M." surname="Wang"/>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="R. Rahman" initials="R." surname="Rahman"/>
            <author fullname="S. Raghavan" initials="S." surname="Raghavan"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document presents a retrieval method YANG data model for connectionless Operations, Administration, and Maintenance (OAM) protocols. It provides technology-independent RPC operations for OAM protocols that use connectionless communication. The retrieval methods model herein presented can be extended to include technology- specific details. There are two key benefits of this approach: First, it leads to uniformity between OAM protocols. Second, it supports both nested OAM workflows (i.e., performing OAM functions at different or the same levels through a unified interface) as well as interactive OAM workflows (i.e., performing OAM functions at the same levels through a unified interface).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8533"/>
          <seriesInfo name="DOI" value="10.17487/RFC8533"/>
        </reference>
        <reference anchor="RFC8913">
          <front>
            <title>Two-Way Active Measurement Protocol (TWAMP) YANG Data Model</title>
            <author fullname="R. Civil" initials="R." surname="Civil"/>
            <author fullname="A. Morton" initials="A." surname="Morton"/>
            <author fullname="R. Rahman" initials="R." surname="Rahman"/>
            <author fullname="M. Jethanandani" initials="M." surname="Jethanandani"/>
            <author fullname="K. Pentikousis" initials="K." role="editor" surname="Pentikousis"/>
            <date month="November" year="2021"/>
            <abstract>
              <t>This document specifies a data model for client and server
implementations of the Two-Way Active Measurement Protocol (TWAMP).
This document defines the TWAMP data model through Unified Modeling
Language (UML) class diagrams and formally specifies it using the
YANG data modeling language (RFC 7950). The data model is compliant
with the Network Management Datastore Architecture (NMDA).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8913"/>
          <seriesInfo name="DOI" value="10.17487/RFC8913"/>
        </reference>
        <reference anchor="I-D.ietf-netmod-schedule-yang">
          <front>
            <title>A Common YANG Data Model for Scheduling</title>
            <author fullname="Qiufang Ma" initials="Q." surname="Ma">
              <organization>Huawei</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Lancaster University</organization>
            </author>
            <date day="4" month="July" year="2025"/>
            <abstract>
              <t>   This document defines common types and groupings that are meant to be
   used for scheduling purposes such as event, policy, services, or
   resources based on date and time.  For the sake of better modularity,
   the YANG module includes a set of recurrence related groupings with
   varying levels of representation (i.e., from basic to advanced) to
   accommodate a variety of requirements.  It also defines groupings for
   validating requested schedules and reporting scheduling status.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-schedule-yang-08"/>
        </reference>
        <reference anchor="RFC8342">
          <front>
            <title>Network Management Datastore Architecture (NMDA)</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model. This document updates RFC 7950.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8342"/>
          <seriesInfo name="DOI" value="10.17487/RFC8342"/>
        </reference>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </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="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="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="RFC5357">
          <front>
            <title>A Two-Way Active Measurement Protocol (TWAMP)</title>
            <author fullname="K. Hedayat" initials="K." surname="Hedayat"/>
            <author fullname="R. Krzanowski" initials="R." surname="Krzanowski"/>
            <author fullname="A. Morton" initials="A." surname="Morton"/>
            <author fullname="K. Yum" initials="K." surname="Yum"/>
            <author fullname="J. Babiarz" initials="J." surname="Babiarz"/>
            <date month="October" year="2008"/>
            <abstract>
              <t>The One-way Active Measurement Protocol (OWAMP), specified in RFC 4656, provides a common protocol for measuring one-way metrics between network devices. OWAMP can be used bi-directionally to measure one-way metrics in both directions between two network elements. However, it does not accommodate round-trip or two-way measurements. This memo specifies a Two-Way Active Measurement Protocol (TWAMP), based on the OWAMP, that adds two-way or round-trip measurement capabilities. The TWAMP measurement architecture is usually comprised of two hosts with specific roles, and this allows for some protocol simplifications, making it an attractive alternative in some circumstances. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5357"/>
          <seriesInfo name="DOI" value="10.17487/RFC5357"/>
        </reference>
        <reference anchor="RFC8233">
          <front>
            <title>Extensions to the Path Computation Element Communication Protocol (PCEP) to Compute Service-Aware Label Switched Paths (LSPs)</title>
            <author fullname="D. Dhody" initials="D." surname="Dhody"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="V. Manral" initials="V." surname="Manral"/>
            <author fullname="Z. Ali" initials="Z." surname="Ali"/>
            <author fullname="K. Kumaki" initials="K." surname="Kumaki"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>In certain networks, such as, but not limited to, financial information networks (e.g., stock market data providers), network performance criteria (e.g., latency) are becoming as critical to data path selection as other metrics and constraints. These metrics are associated with the Service Level Agreement (SLA) between customers and service providers. The link bandwidth utilization (the total bandwidth of a link in actual use for the forwarding) is another important factor to consider during path computation.</t>
              <t>IGP Traffic Engineering (TE) Metric Extensions describe mechanisms with which network performance information is distributed via OSPF and IS-IS, respectively. The Path Computation Element Communication Protocol (PCEP) provides mechanisms for Path Computation Elements (PCEs) to perform path computations in response to Path Computation Client (PCC) requests. This document describes the extension to PCEP to carry latency, delay variation, packet loss, and link bandwidth utilization as constraints for end-to-end path computation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8233"/>
          <seriesInfo name="DOI" value="10.17487/RFC8233"/>
        </reference>
        <reference anchor="RFC7471">
          <front>
            <title>OSPF Traffic Engineering (TE) Metric Extensions</title>
            <author fullname="S. Giacalone" initials="S." surname="Giacalone"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="A. Atlas" initials="A." surname="Atlas"/>
            <author fullname="S. Previdi" initials="S." surname="Previdi"/>
            <date month="March" year="2015"/>
            <abstract>
              <t>In certain networks, such as, but not limited to, financial information networks (e.g., stock market data providers), network performance information (e.g., link propagation delay) is becoming critical to data path selection.</t>
              <t>This document describes common extensions to RFC 3630 "Traffic Engineering (TE) Extensions to OSPF Version 2" and RFC 5329 "Traffic Engineering Extensions to OSPF Version 3" to enable network performance information to be distributed in a scalable fashion. The information distributed using OSPF TE Metric Extensions can then be used to make path selection decisions based on network performance.</t>
              <t>Note that this document only covers the mechanisms by which network performance information is distributed. The mechanisms for measuring network performance information or using that information, once distributed, are outside the scope of this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7471"/>
          <seriesInfo name="DOI" value="10.17487/RFC7471"/>
        </reference>
        <reference anchor="RFC7810">
          <front>
            <title>IS-IS Traffic Engineering (TE) Metric Extensions</title>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="S. Giacalone" initials="S." surname="Giacalone"/>
            <author fullname="D. Ward" initials="D." surname="Ward"/>
            <author fullname="J. Drake" initials="J." surname="Drake"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="May" year="2016"/>
            <abstract>
              <t>In certain networks, such as, but not limited to, financial information networks (e.g., stock market data providers), network- performance criteria (e.g., latency) are becoming as critical to data-path selection as other metrics.</t>
              <t>This document describes extensions to IS-IS Traffic Engineering Extensions (RFC 5305) such that network-performance information can be distributed and collected in a scalable fashion. The information distributed using IS-IS TE Metric Extensions can then be used to make path-selection decisions based on network performance.</t>
              <t>Note that this document only covers the mechanisms with which network-performance information is distributed. The mechanisms for measuring network performance or acting on that information, once distributed, are outside the scope of this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7810"/>
          <seriesInfo name="DOI" value="10.17487/RFC7810"/>
        </reference>
        <reference anchor="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC6242">
          <front>
            <title>Using the NETCONF Protocol over Secure Shell (SSH)</title>
            <author fullname="M. Wasserman" initials="M." surname="Wasserman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>This document describes a method for invoking and running the Network Configuration Protocol (NETCONF) within a Secure Shell (SSH) session as an SSH subsystem. This document obsoletes RFC 4742. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6242"/>
          <seriesInfo name="DOI" value="10.17487/RFC6242"/>
        </reference>
        <reference anchor="RFC5246">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2008"/>
            <abstract>
              <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5246"/>
          <seriesInfo name="DOI" value="10.17487/RFC5246"/>
        </reference>
        <reference anchor="RFC6536">
          <front>
            <title>Network Configuration Protocol (NETCONF) Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2012"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF protocol access for particular users to a pre-configured subset of all available NETCONF protocol operations and content. This document defines such an access control model. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6536"/>
          <seriesInfo name="DOI" value="10.17487/RFC6536"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="ITU-T-Y1731" target="https://www.itu.int/rec/T-REC-Y.1731/en">
          <front>
            <title>OAM Functions and Mechanisms for Ethernet-based Networks</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="June" day="13"/>
          </front>
        </reference>
        <reference anchor="RFC7276">
          <front>
            <title>An Overview of Operations, Administration, and Maintenance (OAM) Tools</title>
            <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
            <author fullname="N. Sprecher" initials="N." surname="Sprecher"/>
            <author fullname="E. Bellagamba" initials="E." surname="Bellagamba"/>
            <author fullname="Y. Weingarten" initials="Y." surname="Weingarten"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>Operations, Administration, and Maintenance (OAM) is a general term that refers to a toolset for fault detection and isolation, and for performance measurement. Over the years, various OAM tools have been defined for various layers in the protocol stack.</t>
              <t>This document summarizes some of the OAM tools defined in the IETF in the context of IP unicast, MPLS, MPLS Transport Profile (MPLS-TP), pseudowires, and Transparent Interconnection of Lots of Links (TRILL). This document focuses on tools for detecting and isolating failures in networks and for performance monitoring. Control and management aspects of OAM are outside the scope of this document. Network repair functions such as Fast Reroute (FRR) and protection switching, which are often triggered by OAM protocols, are also out of the scope of this document.</t>
              <t>The target audience of this document includes network equipment vendors, network operators, and standards development organizations. This document can be used as an index to some of the main OAM tools defined in the IETF. At the end of the document, a list of the OAM toolsets and a list of the OAM functions are presented as a summary.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7276"/>
          <seriesInfo name="DOI" value="10.17487/RFC7276"/>
        </reference>
        <reference anchor="RFC8969">
          <front>
            <title>A Framework for Automating Service and Network Management with YANG</title>
            <author fullname="Q. Wu" initials="Q." role="editor" surname="Wu"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="D. Lopez" initials="D." surname="Lopez"/>
            <author fullname="C. Xie" initials="C." surname="Xie"/>
            <author fullname="L. Geng" initials="L." surname="Geng"/>
            <date month="January" year="2021"/>
            <abstract>
              <t>Data models provide a programmatic approach to represent services and networks. Concretely, they can be used to derive configuration information for network and service components, and state information that will be monitored and tracked. Data models can be used during the service and network management life cycle (e.g., service instantiation, service provisioning, service optimization, service monitoring, service diagnosing, and service assurance). Data models are also instrumental in the automation of network management, and they can provide closed-loop control for adaptive and deterministic service creation, delivery, and maintenance.</t>
              <t>This document describes a framework for service and network management automation that takes advantage of YANG modeling technologies. This framework is drawn from a network operator perspective irrespective of the origin of a data model; thus, it can accommodate YANG modules that are developed outside the IETF.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8969"/>
          <seriesInfo name="DOI" value="10.17487/RFC8969"/>
        </reference>
        <reference anchor="RFC6632">
          <front>
            <title>An Overview of the IETF Network Management Standards</title>
            <author fullname="M. Ersue" initials="M." role="editor" surname="Ersue"/>
            <author fullname="B. Claise" initials="B." surname="Claise"/>
            <date month="June" year="2012"/>
            <abstract>
              <t>This document gives an overview of the IETF network management standards and summarizes existing and ongoing development of IETF Standards Track network management protocols and data models. The document refers to other overview documents, where they exist and classifies the standards for easy orientation. The purpose of this document is, on the one hand, to help system developers and users to select appropriate standard management protocols and data models to address relevant management needs. On the other hand, the document can be used as an overview and guideline by other Standard Development Organizations or bodies planning to use IETF management technologies and data models. This document does not cover Operations, Administration, and Maintenance (OAM) technologies on the data-path, e.g., OAM of tunnels, MPLS Transport Profile (MPLS-TP) OAM, and pseudowire as well as the corresponding management models. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6632"/>
          <seriesInfo name="DOI" value="10.17487/RFC6632"/>
        </reference>
        <reference anchor="I-D.ietf-nmop-network-incident-yang">
          <front>
            <title>A YANG Data Model for Network Incident Management</title>
            <author fullname="Tong Hu" initials="T." surname="Hu">
              <organization>CMCC</organization>
            </author>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Nigel Davis" initials="N." surname="Davis">
              <organization>Ciena</organization>
            </author>
            <author fullname="Chong Feng" initials="C." surname="Feng">
         </author>
            <date day="6" month="July" year="2025"/>
            <abstract>
              <t>   A network incident refers to an unexpected interruption of a network
   service, degradation of a network service quality, or sub-health of a
   network service.  Different data sources including alarms, metrics,
   and other anomaly information can be aggregated into a few of network
   incidents through data correlation analysis and the service impact
   analysis.

   This document defines a YANG Module for the network incident
   lifecycle management.  This YANG module is meant to provide a
   standard way to report, diagnose, and help resolve network incidents
   for the sake of network service health and probable cause analysis.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-network-incident-yang-05"/>
        </reference>
        <reference anchor="I-D.ietf-nmop-terminology">
          <front>
            <title>Some Key Terms for Network Fault and Problem Management</title>
            <author fullname="Nigel Davis" initials="N." surname="Davis">
              <organization>Ciena</organization>
            </author>
            <author fullname="Adrian Farrel" initials="A." surname="Farrel">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Thomas Graf" initials="T." surname="Graf">
              <organization>Swisscom</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Chaode Yu" initials="C." surname="Yu">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="18" month="June" year="2025"/>
            <abstract>
              <t>   This document sets out some terms that are fundamental to a common
   understanding of network fault and problem management within the
   IETF.

   The purpose of this document is to bring clarity to discussions and
   other work related to network fault and problem management, in
   particular to YANG models and management protocols that report, make
   visible, or manage network faults and problems.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-nmop-terminology-19"/>
        </reference>
        <reference anchor="RFC7297">
          <front>
            <title>IP Connectivity Provisioning Profile (CPP)</title>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="C. Jacquenet" initials="C." surname="Jacquenet"/>
            <author fullname="N. Wang" initials="N." surname="Wang"/>
            <date month="July" year="2014"/>
            <abstract>
              <t>This document describes the Connectivity Provisioning Profile (CPP) and proposes a CPP template to capture IP/MPLS connectivity requirements to be met within a service delivery context (e.g., Voice over IP or IP TV). The CPP defines the set of IP transfer parameters to be supported by the underlying transport network together with a reachability scope and bandwidth/capacity needs. Appropriate performance metrics, such as one-way delay or one-way delay variation, are used to characterize an IP transfer service. Both global and restricted reachability scopes can be captured in the CPP.</t>
              <t>Such a generic CPP template is meant to (1) facilitate the automation of the service negotiation and activation procedures, thus accelerating service provisioning, (2) set (traffic) objectives of Traffic Engineering functions and service management functions, and (3) improve service and network management systems with 'decision- making' capabilities based upon negotiated/offered CPPs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7297"/>
          <seriesInfo name="DOI" value="10.17487/RFC7297"/>
        </reference>
        <reference anchor="RFC9543">
          <front>
            <title>A Framework for Network Slices in Networks Built from IETF Technologies</title>
            <author fullname="A. Farrel" initials="A." role="editor" surname="Farrel"/>
            <author fullname="J. Drake" initials="J." role="editor" surname="Drake"/>
            <author fullname="R. Rokui" initials="R." surname="Rokui"/>
            <author fullname="S. Homma" initials="S." surname="Homma"/>
            <author fullname="K. Makhijani" initials="K." surname="Makhijani"/>
            <author fullname="L. Contreras" initials="L." surname="Contreras"/>
            <author fullname="J. Tantsura" initials="J." surname="Tantsura"/>
            <date month="March" year="2024"/>
            <abstract>
              <t>This document describes network slicing in the context of networks built from IETF technologies. It defines the term "IETF Network Slice" to describe this type of network slice and establishes the general principles of network slicing in the IETF context.</t>
              <t>The document discusses the general framework for requesting and operating IETF Network Slices, the characteristics of an IETF Network Slice, the necessary system components and interfaces, and the mapping of abstract requests to more specific technologies. The document also discusses related considerations with monitoring and security.</t>
              <t>This document also provides definitions of related terms to enable consistent usage in other IETF documents that describe or use aspects of IETF Network Slices.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9543"/>
          <seriesInfo name="DOI" value="10.17487/RFC9543"/>
        </reference>
        <reference anchor="RFC4176">
          <front>
            <title>Framework for Layer 3 Virtual Private Networks (L3VPN) Operations and Management</title>
            <author fullname="Y. El Mghazli" initials="Y." role="editor" surname="El Mghazli"/>
            <author fullname="T. Nadeau" initials="T." surname="Nadeau"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="K. Chan" initials="K." surname="Chan"/>
            <author fullname="A. Gonguet" initials="A." surname="Gonguet"/>
            <date month="October" year="2005"/>
            <abstract>
              <t>This document provides a framework for the operation and management of Layer 3 Virtual Private Networks (L3VPNs). This framework intends to produce a coherent description of the significant technical issues that are important in the design of L3VPN management solutions. The selection of specific approaches, and making choices among information models and protocols are outside the scope of this document. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4176"/>
          <seriesInfo name="DOI" value="10.17487/RFC4176"/>
        </reference>
        <reference anchor="RFC4655">
          <front>
            <title>A Path Computation Element (PCE)-Based Architecture</title>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <author fullname="J.-P. Vasseur" initials="J.-P." surname="Vasseur"/>
            <author fullname="J. Ash" initials="J." surname="Ash"/>
            <date month="August" year="2006"/>
            <abstract>
              <t>Constraint-based path computation is a fundamental building block for traffic engineering systems such as Multiprotocol Label Switching (MPLS) and Generalized Multiprotocol Label Switching (GMPLS) networks. Path computation in large, multi-domain, multi-region, or multi-layer networks is complex and may require special computational components and cooperation between the different network domains.</t>
              <t>This document specifies the architecture for a Path Computation Element (PCE)-based model to address this problem space. This document does not attempt to provide a detailed description of all the architectural components, but rather it describes a set of building blocks for the PCE architecture from which solutions may be constructed. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4655"/>
          <seriesInfo name="DOI" value="10.17487/RFC4655"/>
        </reference>
      </references>
    </references>
    <?line 640?>

<section anchor="examples">
      <name>Examples</name>
      <t>This section includes a non-exhaustive list of examples to illustrate the use of the models defined in this document.</t>
      <section anchor="ex-create-twp-oam">
        <name>Create a TWAMP OAM test</name>
        <t><xref target="RFC8913"/> defines a YANG model for TWAMP. There is an example for TWAMP. The following example contains the information for the four configurations (Control-Client, Server, Session-Sender and Session-Reflector).</t>
        <t>An example of a request message body to create a TWAMP OAM test is shown in <xref target="create-twp-oam"/>. Session-Sender and Session-Reflector as expanded for illustrative purposes. The TWAMP Test scheduled in this configuration is a one-hour performance monitoring test that runs daily at 9 AM UTC. This test session is configured to start on October 17, 2023, at 09:00 UTC and recur at the same time every day. The duration of each test run is one hour, as specified by the ISO 8601 format "PT1H", with the test status marked as "scheduled". The test provides insight into network performance by monitoring the selected parameters, allowing for the detection of any potential degradations in service quality over time.</t>
        <figure anchor="create-twp-oam">
          <name>Example of a Message Body to Create a TWAMP OAM test</name>
          <sourcecode type="json"><![CDATA[
{
  "ietf-oam-unitary-test:oam-unitary-tests": {
    "oam-unitary-test": [
      {
        "name": "TWAMP-Test-scheduled-daily",
        "test-type": "twamp-test",
        "period-description": "TWAMP Test Period",
        "period-start": "2023-10-17T09:00:00Z",
        "time-zone-identifier": "UTC",
        "period-type": {
          "duration": {
            "duration": "PT1H"
          }
        },
        "recurrence-description": "Daily at 9 AM UTC",
        "frequency": "oam-types:daily",
        "interval": 1,
        "unitary-test-status": "scheduled",
        "ne-config": [
          {
            "ne-id": "203.0.113.3",
            "twamp": {
              "session-sender": {
                "admin-state": true,
                "test-session": [
                  {
                    "name": "Test1",
                    "ctrl-connection-name": "RouterA",
                    "fill-mode": "zero",
                    "number-of-packets": 900,
                    "periodic-interval": 1,
                    "sent-packets": 2,
                    "rcv-packets": 2,
                    "last-sent-seq": 1,
                    "last-rcv-seq": 1
                  },
                  {
                    "name": "Test2",
                    "ctrl-connection-name": "RouterA",
                    "fill-mode": "random",
                    "number-of-packets": 900,
                    "lambda": 1,
                    "max-interval": 2,
                    "sent-packets": 21,
                    "rcv-packets": 21,
                    "last-sent-seq": 20,
                    "last-rcv-seq": 20
                  }
                ]
              }
            }
          },
          {
            "ne-id": "203.0.113.4",
            "twamp": {
              "session-reflector": {
                "admin-state": true,
                "test-session": [
                  {
                    "sid": 1232,
                    "sender-ip": "203.0.113.3",
                    "sender-udp-port": 54000,
                    "reflector-ip": "203.0.113.4",
                    "reflector-udp-port": 55000,
                    "parent-connection-client-ip": "203.0.113.1",
                    "parent-connection-client-tcp-port": 16341,
                    "parent-connection-server-ip": "203.0.113.2",
                    "parent-connection-server-tcp-port": 862,
                    "test-packet-dscp": 32,
                    "sent-packets": 2,
                    "rcv-packets": 2,
                    "last-sent-seq": 1,
                    "last-rcv-seq": 1
                  },
                  {
                    "sid": 178943,
                    "sender-ip": "203.0.113.1",
                    "sender-udp-port": 54001,
                    "reflector-ip": "192.0.2.2",
                    "reflector-udp-port": 55001,
                    "parent-connection-client-ip": "203.0.113.1",
                    "parent-connection-client-tcp-port": 16341,
                    "parent-connection-server-ip": "203.0.113.2",
                    "parent-connection-server-tcp-port": 862,
                    "test-packet-dscp": 32,
                    "sent-packets": 21,
                    "rcv-packets": 21,
                    "last-sent-seq": 20,
                    "last-rcv-seq": 20
                  }
                ]
              }
            }
          }
        ]
      }
    ]
  }
}
]]></sourcecode>
        </figure>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
IyLMtuKrMz0N2Om0KlGzmTvpRZ1l6ClGXc2o0UFDNWq/UVbe91/8c/QiahLW
Rqe167UNttq5USNyrcAkEmtBXoGyca8c/afq9K9TneZJQSp5a6LqKmKEEiTf
3wW+XhB653fD63+Gp1J6EFjDbKT92EPY6LU30jtgj0zL/aijVy0lrxfy/346
Zx+f46q+ztlUOnuZmi+cNFjYDfIIa399INyq/vVV+lP/+8P1PwlZalflqPem
MHiFDboQJ1YBORi1W50CsQo+42VFM452kI3wPK+slvn7VFGnT95X2VP31yjV
/VVKZi17qk8baekc11L4uvuq++R9p/Bd9EpXJxBt63bV0tVRnX7Urf3c+ul2
cFvhO6qBXPjaxEyrWxXMe7Z8108/zOsLPwIQZaW1YGx/2kpxU+fsY6pr+XqT
zd6kdbYPC7MjrZWvTxyWDx7YcxByaLRVrul2/A/7GXy7//bgUL06/OHoZPqd
olilXv/BX3e2dp4E29vB1osxbvsiU/cXVp8HLBwEeIQBFd/t8fY38IxO5Swx
mmxYF9kEK09IZSsnnxbpJCsnJFL0NjrEBuQEzpDOr8ATePT4sToi7Y0G6h9C
ffd6v1RyDHUkX3ZIC5Szp1LdqqdqrUYHBVlFVA21kAZqoTJPv6GHtlWRHYZ4
zgRPnuApt30OUe47D+5mjkb8ZdDqW8IG5CRNAwDjO7kBgBc7L59Mut2fUWPm
3IWEm1C2QgeEn9eOmhxSVse3p9O9n39QG/dJerjJU0faacSC8BDa+FnPJvD1
W5NIDgMrMET/oy5cWsOrc5PN8DseGFR8k+BhR/UtZtir8kkrYaKU2+PMgZIo
kNL9uWSB6pjz/Xmp7b69e1rAVg+dlIDSYH/mv+8IxZ5ky/igIARZZX6k48Pe
1fHQd+7DPHK3xi/PpqcbnfC8te/ny1VBoV4b0SZm/HvCqTvPirp0edFgpkuK
9TDqG/rNqT6nX3JxkwAOxmtivDq2ioKZhPpxf+80RgIWyay2qbMw3B7EmDKv
CzmbMUsy5F0YyYC5WehABQ8Qv6NjHIZtbRkjCYheJBWdDgJppubTDHIMu6YT
f1RfDhZj9GVGEWx4+NaEIGAgCUfdvNOXCVrkXk0PgNSoLFXHyGqAioONpjbr
WWSG71D3sFRv9DlFPEt0aCnjl8xSAAmVPhAnj7hl1YZZCxU2o730ngJ0gDFC
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
J8kaIJ2VAAA=

-->

</rfc>
