<?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.18 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-wqb-control-schedule-framework-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.22.0 -->
  <front>
    <title abbrev="Schedule Framework">A Framework for the Control Scheduling of Network Resources</title>
    <seriesInfo name="Internet-Draft" value="draft-wqb-control-schedule-framework-00"/>
    <author fullname="Qiufang Ma" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>maqiufang1@huawei.com</email>
      </address>
    </author>
    <author fullname="Qin Wu">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>bill.wu@huawei.com</email>
      </address>
    </author>
    <author fullname="Mohamed Boucadair">
      <organization>Orange</organization>
      <address>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <date year="2024" month="July" day="25"/>
    <area>AREA</area>
    <workgroup>OPSAWG</workgroup>
    <keyword>schedule</keyword>
    <keyword>framework</keyword>
    <keyword>YANG module</keyword>
    <abstract>
      <?line 70?>

<t>This document presents a framework that elucidates various
scheduling scenarios and identifies the entities involved in
requesting scheduled changes of network resources or policy/action execution.
It also addresses additional challenges such as conflict resolution, priority
handling, and synchronization of scheduled tasks, ultimately enhancing the
reliability and performance of network services.</t>
      <t>This document also describes the applicability of various network management tools and data models may be used,
to meet the requirements of a set of representative use cases.</t>
    </abstract>
  </front>
  <middle>
    <?line 82?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Scheduling-related tasks are usually considered for efficient and deterministic
network management. Such scheduling may be characterized as simple recurrent tasks
such as planned activation/deactivation of some network accesses, or can be
more complex such as scheduling placement of requests and planned invocation
of resources to satisfy service demands or adhere to local networks policies.
Many common building blocks are required for all these cases for adequate
management of schedules and related scheduled actions.</t>
      <t>This document presents a framework for the scheduled use of
resources within network environments, utilizing the IETF YANG models
designed for scheduling of network resources.</t>
      <t>The framework describes how IETF data models (e.g., <xref target="I-D.ietf-netmod-schedule-yang"/>) can streamline
the management and orchestration of network events, policies, services,
and resources based on precise date and time parameters. By leveraging these
YANG modules, this framework facilitates interoperable and
efficient scheduling mechanisms that enhance the predictability,
coordination, and optimization of network operations.</t>
      <t>The document also provides guidelines for implementing
scheduling capabilities across diverse network architectures, ensuring
that resources are allocated and utilized in a timely and effective manner.</t>
      <t>In addition, the document outlines several challenges that must be considered when
deploying control mechanisms for scheduling network resources, including:</t>
      <ul spacing="normal">
        <li>
          <t>Discover where and what scheduling state is held.</t>
        </li>
        <li>
          <t>Specify to apply schedule policies and detect and resolve conflicts.</t>
        </li>
        <li>
          <t>Ensure synchronization of scheduled resources across distributed systems.</t>
        </li>
        <li>
          <t>Establish a scalable and resilient scheduling system.</t>
        </li>
        <li>
          <t>Ensure that a scheduling system can scale to accommodate complex networks
with numerous resources and scheduling requests.</t>
        </li>
        <li>
          <t>Ensure that the a scheduling system remains operational and can recover from
failures or disruptions, providing redundancy, failover mechanisms, and
robust error handling.</t>
        </li>
        <li>
          <t>Secure scheduled resources.</t>
        </li>
        <li>
          <t>Identify what mechanisms and policies could be applied to protect scheduling data
and operations from unauthorized access and ensuring that only authorized
entities can create, modify, or retrieve schedules.</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Editors Note: pointers to sections where each of these items is described will
be provided in future version.</t>
        </li>
      </ul>
      <t>Key use cases highlight how the proposed framework can be used for scheduling
scenarios. The applicable IETF YANG modules are described, as well as
other dependencies that are needed.</t>
      <ul empty="true">
        <li>
          <t>[Editors Note] In future versions of this document, an appendix will also
provide JSON examples.</t>
        </li>
      </ul>
      <section anchor="problem-statement">
        <name>Problem Statement</name>
        <t>Efficient and coordinated use of resources
is paramount for maintaining optimal performance and reliability of many network environments. Networks are
increasingly complex, supporting a wide variety of services and applications that
require precise timing and resource allocation. Despite advancements in networking
techniques and the richness of protocols machinery, there is still a lack of reference architectures for scheduling
resources based on specific date and time parameters. This gap often leads to
inefficiencies, conflicts, and suboptimal utilization of network capabilities.</t>
        <t>Typically, network administrators rely upon disparate and often proprietary tools
to manage scheduling for various network activities such as maintenance events,
policy enforcement, and resource allocation. These tools genrally operate in
isolation, lacking interoperability and integration with other network management
systems. As a result, administrators face significant challenges in coordinating
schedules, resolving conflicts, and ensuring that critical tasks are executed
without disruption. The absence of a unified scheduling framework exacerbates
these issues, leading to increased operational overhead and potential service
degradation (e.g., lack of integration with service impact analysis).</t>
        <t>Furthermore, the dynamic nature of some networks demands a flexible and adaptive
scheduling solution that can respond to changing conditions and requirements.
Existing scheduling approaches are often rigid and static, unable to accommodate
the fluid demands of network services and applications. This rigidity hinders the
ability to optimize resource use and respond proactively to network events,
impacting the overall efficiency and effectiveness of network
operations.</t>
        <t>To address these challenges, there is a clear need for a standardized framework
that can provide a cohesive approach to scheduling network resources. Such a
framework leverages existing YANG models to ensure compatibility and ease
of integration with current network management practices. By standardizing the
scheduling process, network operators can achieve greater predictability,
reduce conflicts, and optimize the use of network resources, thereby
enhancing the performance and reliability of their networks.</t>
      </section>
      <section anchor="background">
        <name>Background</name>
        <t>There is an existing framework <xref target="RFC8413"/> for the use of scheduled resources.
This document outlines a framework detailing the architecture for supporting
the scheduled reservation of Traffic Engineering (TE) resources. It focuses
on the conceptual and architectural aspects, without delving into
specific protocols or protocol extensions required to implement this
service.</t>
        <t>More recently, several specifications include a provision for scheduling.
Examples of such specifications are (but not limited to) <xref target="I-D.ietf-opsawg-ucl-acl"/>,
<xref target="I-D.contreras-opsawg-scheduling-oam-tests"/>, and <xref target="I-D.ietf-tvr-schedule-yang"/>.
The development of <xref target="I-D.ietf-netmod-schedule-yang"/> is intended to be served
as common building blocks and provides a common schedule YANG module that can be
reused in scheduling contexts such as event, policy, services, or resources based
on date and time.</t>
        <t>Combined, <xref target="I-D.ietf-netmod-schedule-yang"/> and other documents built on top of
it (e.g., <xref target="I-D.ietf-opsawg-ucl-acl"/>, <xref target="I-D.contreras-opsawg-scheduling-oam-tests"/>,
and <xref target="I-D.ietf-tvr-schedule-yang"/>) provide powerful capabilities for the control and
scheduling of network resources for several use cases, including key examples
outlined in this document.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" 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.</t>
      <?line -18?>

<t>The following terms are used in this document:</t>
      <ul spacing="normal">
        <li>
          <dl>
            <dt>Schedule Service Requester:</dt>
            <dd>
              <t>An entity that issues a scheduling request of network events, policies, services,
and resources.</t>
            </dd>
          </dl>
        </li>
        <li>
          <dl>
            <dt>Schedule Service Responder:</dt>
            <dd>
              <t>An entity that handles scheduling requests from a Schedule Service Requester.</t>
            </dd>
          </dl>
        </li>
        <li>
          <dl>
            <dt>Schedule Manager:</dt>
            <dd>
              <t>A functional entity that is managing the scheduling operations.</t>
            </dd>
          </dl>
        </li>
        <li>
          <dl>
            <dt>Policy Engine:</dt>
            <dd>
              <t>A functional entity that is responsible for enforcing a set of polices or rules
in the network.</t>
            </dd>
          </dl>
        </li>
      </ul>
    </section>
    <section anchor="an-architecture">
      <name>An Architecture</name>
      <t><xref target="arch"/> presents the referenced architecture for the control scheduling of
network resources.</t>
      <figure anchor="arch">
        <name>An Architecture for the Scheduled Network Scenarios</name>
        <artwork align="center"><![CDATA[
          +-------------------------------------------------+
          |            Schedule Service Requester           |
          +-----+------------------------------------^------+
                |                                    |
                |Request                             |Response
                |                                    |
          +-----v------------------------------------+------+
          |            Schedule Service Responder           |
          |                                                 |
          |   +---------+                     +---------+   |
          |   |         |                     |         |   |
          |   | Schedule|                     | Conflict|   |
          |   | Manager |                     | Resolver|   |
          |   |         |                     |         |   |
          |   +---------+                     +---------+   |
          |                                                 |
          |   +---------+                     +---------+   |
          |   |         |                     |         |   |
          |   | Resource|                     | Policy  |   |
          |   | Manager |                     | Engine  |   |
          |   |         |                     |         |   |
          |   +---------+                     +---------+   |
          |                                                 |
          +----------------------+--------------------------+
                                 |
                                 |
                                 |
                                 |
     +---------------------------+-----------------------------+
     |              Network Resources and Inventory            |
     +---------------------------------------------------------+
]]></artwork>
      </figure>
      <section anchor="functional-components">
        <name>Functional Components</name>
        <section anchor="scheduled-service-requester">
          <name>Scheduled Service Requester</name>
          <t>The entity requesting a resource schedule change can vary widely. For example,
a network administrator may seek to restrict or limit access to specific network
resources based on day or time to optimize performance and enhance security.</t>
          <t>Additionally, higher-layer Operations Support System (OSS) components may impose
restrictions on network resources in response to changing network conditions,
ensuring service continuity and compliance with operational policies. Automated
systems and AI-driven components can also request dynamic adjustments based on
real-time data, facilitating predictive maintenance and optimizing resource
usage to maintain peak network efficiency.</t>
        </section>
        <section anchor="scheduled-service-responder">
          <name>Scheduled Service Responder</name>
          <t>This component is responsibile handling scheduling orders. That is, this entity manages and coordinates
all network scheduling activities. The extact internal structure of this entity is deployment-specific; however this
document describes an example internla decomposition of this entity:</t>
          <ul spacing="normal">
            <li>
              <dl>
                <dt>Resource Manager:</dt>
                <dd>
                  <t>Manages the network resources that are subject to scheduling.</t>
                </dd>
              </dl>
            </li>
            <li>
              <dl>
                <dt>Schedule Manager:</dt>
                <dd>
                  <t>Handles creation, modification, deletion, and querying of schedules.</t>
                </dd>
              </dl>
            </li>
            <li>
              <dl>
                <dt>Conflict Resolver:</dt>
                <dd>
                  <t>Detects and resolves scheduling conflicts based on predefined
policies and priorities.</t>
                </dd>
              </dl>
            </li>
            <li>
              <dl>
                <dt>Policy Engine:</dt>
                <dd>
                  <t>Enforces scheduling policies and rules, ensuring compliance with
organizational requirements.</t>
                </dd>
              </dl>
            </li>
          </ul>
          <t>Examples of a schedule service responder may be a network controller, network
management system or the network device itself.</t>
        </section>
      </section>
      <section anchor="functional-interfaces">
        <name>Functional Interfaces</name>
        <t>To support the scheduling of network resources effectively, several
functional interfaces are required. These interfaces interconnect
different components of the network scheduling
system, ensuring seamless integration and operation, these include:</t>
        <ul spacing="normal">
          <li>
            <dl>
              <dt>Schedule Service Requester and Responder API:</dt>
              <dd>
                <t>Schedule resource order creation,
order modification, and deletion requests and responses. Querying of
current and upcoming schedules, conflict and alert notifications.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt>Schedule Service Responder and Network API:</dt>
              <dd>
                <t>Manages interactions with
the network resources, inventory systems, planning systems, etc. Capable of querying
available resources, allocating and deallocating resources based on
current schedule plan, and monitoring resource utilization.</t>
              </dd>
            </dl>
          </li>
        </ul>
      </section>
      <section anchor="data-sources">
        <name>Data Sources</name>
        <t>When scheduling network resources, a variety of data sources are
required to accurately assess the network state and make informed
scheduling decisions. Here are some example data sources that will be
required:</t>
        <ul spacing="normal">
          <li>
            <dl>
              <dt>Network Topology Information:</dt>
              <dd>
                <t>Connection details about the physical
and logical layout of the network, including nodes, ports/links,
and interconnections.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt>Network Resource Inventory:</dt>
              <dd>
                <t>A comprehensive list of deployed network
resources that are not currently in service, but may be available if
enabled.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt>Current Network Utilization:</dt>
              <dd>
                <t>Real-time data on the current usage of
network resources, including bandwidth consumption, CPU load,
memory usage, and power consumption.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt>Historic Network Utilization:</dt>
              <dd>
                <t>Past data on the current usage of network
resources, including bandwidth consumption, CPU load, memory usage,
and power consumption.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt>Scheduled Maintenance and Planned Outages:</dt>
              <dd>
                <t>Information on planned
maintenance activities, scheduled downtimes, and service windows.</t>
              </dd>
            </dl>
          </li>
        </ul>
        <t>It is critical to leverage these diverse data sources, so network
administrators and automated systems can make well-informed scheduling
decisions that optimize resource utilization, maintain network
performance, and ensure service reliability.</t>
      </section>
      <section anchor="state-management">
        <name>State Management</name>
        <t>The scheduling state is maintained in the schedule manager, which is responsible
for the creation, deletion, modification, and query of scheduling information.</t>
        <t>Groupings "schedule-status" and "schedule-status-with-name" in the "ietf-schedule"
YANG module <xref target="I-D.ietf-netmod-schedule-yang"/> define common parameters for scheduling
management, including status exposure.</t>
      </section>
      <section anchor="policy-and-enforcement">
        <name>Policy and Enforcement</name>
        <t>Policies are a set of rules to administer, manage, and control access to network
resources. For example, the following shows an example of a scheduled ACL policy:</t>
        <artwork><![CDATA[
drop TCP traffic source-port 16384 time 2025-12-01T08:00:00Z
/2025-12-15T18:00:00Z
]]></artwork>
        <t>A set of scheduling policies and rules are maintained by the policy engine,
which is responsible for the policy enforcement. Policies are triggered to execute
at a certain time based on the scheduling parameters. Each policy might be executed
multiple times, depending on the its scheduling type (one-shot vs. recurrence).</t>
      </section>
      <section anchor="synchronization">
        <name>Synchronization</name>
        <t>It is critical to ensure all network schedule entities, including
controllers and management systems are synchronized to a common time
reference. System instability and unpredictability might be caused if
there is any time inconsistencies between entities that request/respond to
policies or events based on time-varying parameters. Several methods are
available to achieve this.</t>
      </section>
    </section>
    <section anchor="applicable-models-interfaces-and-dependencies">
      <name>Applicable Models, Interfaces and Dependencies</name>
      <section anchor="schedule-modules">
        <name>YANG Data Models</name>
        <t>This document is not intended to define any YANG modules, but shows how existing
schedule-related YANG modules could fit into this framework. The following provides
a list of applicable YANG modules that can be used to exchange data between schedule
service requester and responder:</t>
        <ul spacing="normal">
          <li>
            <t><xref target="I-D.ietf-netmod-schedule-yang"/> defines "ietf-schedule" YANG
module for scheduling that works as common building blocks for YANG modules
described in this section. The module doesn't define any
protocol-accessible nodes but a set of reusable groupings applicable to be used
in any scheduling contexts.</t>
          </li>
          <li>
            <t>The "ietf-ucl-acl" YANG module defined in <xref target="I-D.ietf-opsawg-ucl-acl"/> augments
the IETF Access Ccontrol List (ACL) model <xref target="RFC8519"/> with schedule parameters to allow each Access
Control Entry (ACE) to be activated based on date and time conditions.</t>
          </li>
          <li>
            <t>The "ietf-tvr-node" YANG module in <xref target="I-D.ietf-tvr-schedule-yang"/> which is
a device model, is designed to manage a single node with scheduled
attributes (e.g., powered on/off).</t>
          </li>
          <li>
            <t>The "ietf-tvr-topology" YANG module in <xref target="I-D.ietf-tvr-schedule-yang"/> is used
to manage the network topology with time-varying attributes
(e.g., node/link availability, link bandwidth, or delay).</t>
          </li>
          <li>
            <t>The "ietf-oam-unitary-test" in <xref target="I-D.contreras-opsawg-scheduling-oam-tests"/>
defines how to perform scheduled network diagnosis using
(Operations, Administration, and Maintenance) OAM unitary test.</t>
          </li>
          <li>
            <t>The "ietf-oam-test-sequence" in <xref target="I-D.contreras-opsawg-scheduling-oam-tests"/>
is defined to perform a collection of OAM unitary tests based on date and time
constraints.</t>
          </li>
        </ul>
      </section>
      <section anchor="procedures">
        <name>Procedures</name>
        <section anchor="generating-schedule">
          <name>Generating Schedule</name>
          <t>TODO</t>
        </section>
        <section anchor="distributing-schedule">
          <name>Distributing Schedule</name>
          <t>TODO</t>
        </section>
        <section anchor="executing-schedule">
          <name>Executing Schedule</name>
          <t>Schedules execution means that a component (e.g., device) undertakes an action (e.g., allocates and deallocates resources) at specified
time points. The schedule executor should fully understand the consequences of the schedule execution. For example, when a schedule's execution affects the network topology, the addition
and deletion of the topology need to be considered carefully.</t>
          <t>A link coming up or a node joining a topology should not have any functional change until the
change is proven to be fully operational. The routing tables or paths could be pre-computed
but should not be installed before all of the topology changes are confired to be operational.
The benefits of this pre-computation appear to be very small. The network may choose to not do
any pre-installation or pre-computation in reaction to topological additions, at a small cost
of some operational efficiency.</t>
          <t>Topological deletions are an entirely different matter. If a link or node is to be removed from
the topology, then the network should act before the anticipated change to route traffic around
the expected topological loss. Specifically, at some point before the topology change, the routing
tables or paths should be pre-computated and installed before the topology change take place.
The time necessary will vary depending on the exact network and configuration. When using IGP or other
distributed routing protocols, the affected links may be set to a high metric to direct traffic
to alternate paths. This type of change does require some time to propagate through the network,
so the metric change should be initiated far enough in advance that the network converges before the
actual topological change.</t>
        </section>
      </section>
      <section anchor="other-dependencies">
        <name>Other Dependencies</name>
        <t>This sections presents some outstanding dependencies that need to be considered
when deploying the scheduling mechanism. This may not be exhaustive.</t>
        <section anchor="access-control">
          <name>Access Control</name>
          <t>Access control ensures only authorized control entities can have access to schedule
information, including querying, creation, modification, and deletion of schedules.
Unauthorized access may lead to unintended consequences.</t>
          <t>The Network Access Control Model (NACM) <xref target="RFC8341"/> provides standard mechanisms
to restrict access for particular uses to a preconfigured subset of all available
NETCONF or RESTCONF protocol operations and content.</t>
        </section>
        <section anchor="atomic-operations">
          <name>Atomic Operations</name>
          <t>Atomic operations are guaranteed to be either executed completely or not executed
at all. Deployments based on scheduling must ensure schedule changes based on
recurrence rules are applied as atomic transactions. Either all changes are
successfully applied, or none at all. For example, a network policy may be
scheduled to be active every Tuesday in January of 2025. If the schedule is changed
to every Wednesday in January 2025, the recurrence set is changed from
January 7, 14, 21, 28 to January 1, 8, 15, 22, 29. If some occurrences can
not be applied successfully (e.g., January 1 cannot be scheduled because of conflict),
the others in the recurrence set will not be applied as well.</t>
          <t>In addition, the scheduling management of network events, policies, services, and
resources may involve operations that are performed at particular future time(s).
Multiple operations might be involved for each instance in the recurrence set,
either all operations are successfully performed, or none at all.</t>
        </section>
        <section anchor="rollback-mechanism">
          <name>Rollback Mechanism</name>
          <t>Rollback mechanism is useful to ensure that in case of an error, the system can
revert back to its previous state. Deployments are required to save the
checkpoints (manually or automatically) of network scheduling activities that
can be used for rollback when necessary, to maintain network stability.</t>
        </section>
        <section anchor="inter-dependency">
          <name>Inter-dependency</name>
          <t>Enfrocement of some secheduled actions may depend on other schedules actions.
Means to identify such dependency are needed.</t>
        </section>
      </section>
    </section>
    <section anchor="manageability-considerations">
      <name>Manageability Considerations</name>
      <section anchor="multiple-schedule-service-requesters">
        <name>Multiple Schedule Service Requesters</name>
        <t>This document does not make any assumption about the number of schedule service
requester entities that interact with schedule service responder. This means that
multiple schedule service requesters may send requests to the responder to schedule
the same network resources, which may lead to conflicts. If scheduling conflicts
occur, some predefined policies or priorities may be useful to reflect how
schedules from different sources should be prioritized.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Time synchronization may potentially lead to security threats, e.g., attackers
may modify the system time and it thus causes time inconsistencies and affects the
normal functionalities for managing and coordinating network scheduling activities.
In addition, care must be taken when defining recurrences occurring very often and
frequent that can be an additional source of attacks by keeping the
system permanently busy with the management of scheduling.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <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="25" month="June" year="2024"/>
            <abstract>
              <t>   This document defines a common schedule YANG module which is designed
   to be applicable for scheduling purposes such as event, policy,
   services, or resources based on date and time.  For the sake of
   better modularity, the module includes basic, intermediate, and
   advanced versions of recurrence related groupings.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-schedule-yang-02"/>
        </reference>
        <reference anchor="RFC8413">
          <front>
            <title>Framework for Scheduled Use of Resources</title>
            <author fullname="Y. Zhuang" initials="Y." surname="Zhuang"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <author fullname="H. Chen" initials="H." surname="Chen"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Time-Scheduled (TS) reservation of Traffic Engineering (TE) resources can be used to provide resource booking for TE Label Switched Paths so as to better guarantee services for customers and to improve the efficiency of network resource usage at any moment in time, including network usage that is planned for the future. This document provides a framework that describes and discusses the architecture for supporting scheduled reservation of TE resources. This document does not describe specific protocols or protocol extensions needed to realize this service.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8413"/>
          <seriesInfo name="DOI" value="10.17487/RFC8413"/>
        </reference>
        <reference anchor="I-D.ietf-opsawg-ucl-acl">
          <front>
            <title>A YANG Data Model and RADIUS Extension for Policy-based Network Access Control</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="25" month="June" year="2024"/>
            <abstract>
              <t>   This document defines a YANG data model for policy-based network
   access control, which provides consistent and efficient enforcement
   of network access control policies based on group identity.
   Moreover, this document defines a mechanism to ease the maintenance
   of the mapping between a user group identifier and a set of IP/MAC
   addresses to enforce policy-based network access control.

   In addition, the document defines a Remote Authentication Dial-in
   User Service (RADIUS) attribute that is used to communicate the user
   group identifier as part of identification and authorization
   information.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-ucl-acl-05"/>
        </reference>
        <reference anchor="I-D.contreras-opsawg-scheduling-oam-tests">
          <front>
            <title>A YANG Data Model for Network Diagnosis by Scheduling Sequences of OAM Tests</title>
            <author fullname="Luis M. Contreras" initials="L. M." surname="Contreras">
              <organization>Telefonica</organization>
            </author>
            <author fullname="Victor Lopez" initials="V." surname="Lopez">
              <organization>Nokia</organization>
            </author>
            <date day="8" month="July" year="2024"/>
            <abstract>
              <t>   This document defines a YANG data model for network diagnosis on-
   demand using Operations, Administration, and Maintenance (OAM) tests.
   This document defines both 'oam-unitary-test' and 'oam-test-sequence'
   data models to enable activation of network diagnosis procedures.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-contreras-opsawg-scheduling-oam-tests-02"/>
        </reference>
        <reference anchor="I-D.ietf-tvr-schedule-yang">
          <front>
            <title>YANG Data Model for Scheduled Attributes</title>
            <author fullname="Yingzhen Qu" initials="Y." surname="Qu">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Acee Lindem" initials="A." surname="Lindem">
              <organization>LabN Consulting, L.L.C.</organization>
            </author>
            <author fullname="Eric Kinzie" initials="E." surname="Kinzie">
              <organization>LabN Consulting, L.L.C.</organization>
            </author>
            <author fullname="Don Fedyk" initials="D." surname="Fedyk">
              <organization>LabN Consulting, L.L.C.</organization>
            </author>
            <author fullname="Marc Blanchet" initials="M." surname="Blanchet">
              <organization>Viagenie</organization>
            </author>
            <date day="22" month="July" year="2024"/>
            <abstract>
              <t>   The YANG model in this document includes three modules, and can be
   used to manage network resources and topologies with scheduled
   attributes, such as predictable link loss and link connectivity as a
   function of time.  The intent is to have this information be utilized
   by Time-Variant Routing systems.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tvr-schedule-yang-02"/>
        </reference>
        <reference anchor="RFC8519">
          <front>
            <title>YANG Data Model for Network Access Control Lists (ACLs)</title>
            <author fullname="M. Jethanandani" initials="M." surname="Jethanandani"/>
            <author fullname="S. Agarwal" initials="S." surname="Agarwal"/>
            <author fullname="L. Huang" initials="L." surname="Huang"/>
            <author fullname="D. Blair" initials="D." surname="Blair"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document defines a data model for Access Control Lists (ACLs). An ACL is a user-ordered set of rules used to configure the forwarding behavior in a device. Each rule is used to find a match on a packet and define actions that will be performed on the packet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8519"/>
          <seriesInfo name="DOI" value="10.17487/RFC8519"/>
        </reference>
        <reference anchor="RFC8341">
          <front>
            <title>Network Configuration Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol 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 or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
              <t>This document obsoletes RFC 6536.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="91"/>
          <seriesInfo name="RFC" value="8341"/>
          <seriesInfo name="DOI" value="10.17487/RFC8341"/>
        </reference>
      </references>
    </references>
    <?line 544?>

<section anchor="use-cases-with-detailed-code-examples">
      <name>Use Cases with detailed Code Examples</name>
      <section anchor="scheduling-oam-tests-attestation">
        <name>Scheduling OAM Tests (Attestation)</name>
        <t>Operations, Administration, and Maintenance (OAM) are important networking functions
for network monitoring and troubleshooting, as well as service-level agreements
and performance monitoring. Some actions might need to be executed repeatedly or
at a specific future time to carry out diagnostics. Scheduling-based OAM tools
are able to invoke a specific OAM unitary test or a sequence of OAM tests based
on some time-varying parameters, e.g., at a precise future time or repeatedly
occur at specific intervals.</t>
        <t>Suppose the following fictional module is used:</t>
        <artwork><![CDATA[
module example-oam-tests {
  yang-version 1.1;
  namespace "urn:example:oam-tests";
  prefix "ex-oam";

  import ietf-schedule {
    prefix "schedule";
  }
  list oam-test {
    key "test-name";
    leaf test-name {
      type string;
    }
    uses schedule:recurrence-utc;
  }
}
]]></artwork>
        <t>The following indicates the example of a scheduling OAM traceroute test that is
executed at 3:00 AM, every other day, from December 1, 2025 in UTC.
The JSON encoding is used only for illustration purposes.</t>
        <artwork><![CDATA[
{
    "example-oam-tests:oam-test": [
        {
            "test-name": "traceroute",
            "recurrence-first": {
                "utc-start-time": "2025-12-01T03:00:00Z"
            },
            "frequency": "ietf-schedule:daily",
            "interval": 2
        }
    ]
}
]]></artwork>
      </section>
      <section anchor="time-variant-networking-energy-efficient">
        <name>Time Variant Networking (Energy Efficient)</name>
        <t>Tidal network is a typical scenario of Energy Efficient case. The tidal network
means the volume of traffic in the network changes
periodically like the ocean tide. This changes are mainly affected by
human activities. Therefore, this tidal effect is obvious in human-populated
areas, such as campuses and airport.</t>
        <t>In the context of a tidal network, If the network maintains all the devices
up to guarantee the maximum throughput all the time, a lot of power will be
wasted. The energy-saving methods may include the deactivation of some or all
components of network nodes. These activities have the potential to alter
network topology and impact data routing in a variety of ways.  Interfaces on
network nodes can be selectively disabled or enabled based on traffic patterns,
thereby reducing the energy consumption of nodes during periods of low network
traffic.</t>
        <t>The controlling of the interface states of each node can be achieved by using the ietf-tvr-node YANG module defined in <xref target="I-D.ietf-tvr-schedule-yang"/>.</t>
        <t>The following indicates the example of a scheduling node that is powered on from 12 AM, December 1, 2025 to 12 AM, December 1, 2026 in UTC and its interface named interface1 is scheduled to enable at 7:00 AM and disabled at 1:00 AM, every day, from December 1, 2025 to December 1, 2026 in UTC.
The JSON encoding is used only for illustration purposes.</t>
        <artwork><![CDATA[
{
   "ietf-tvr-node:node-schedule":[
      {
         "node-id":12345678,
         "node-power-schedule":{
            "power-default":false,
            "schedules":[
               {
                  "schedule-id":111111,
                  "period-start":"2025-12-01T00:00:00Z",
                  "period-end":"2026-12-01T00:00:00Z",
                  "attr-value":{
                     "power-state":true
                  }
               }
            ]
         },
         "interface-schedule":[
            {
               "name":"interace1",
               "default-available":false,
               "default-bandwidth":1000000000,
               "attribute-schedule":{
                  "schedules":[
                     {
                        "schedule-id":222222,
                        "recurrence-first":{
                           "utc-start-time":"2025-12-01T07:00:00Z",
                           "duration":64800
                        },
                        "utc-until":"2026-12-01T00:00:00Z",
                        "frequency":"ietf-schedule:daily",
                        "interval":1,
                        "attr-value":{
                           "available":true
                        }
                     }
                  ]
               }
            }
         ]
      }
   ]
}
]]></artwork>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact fullname="Li Zhang">
        <organization>Huawei</organization>
        <address>
          <email>zhangli344@huawei.com</email>
        </address>
      </contact>
      <contact fullname="Daniel King">
        <organization>Lancaster University</organization>
        <address>
          <postal>
            <country>United Kingdom</country>
          </postal>
          <email>d.king@lancaster.ac.uk</email>
        </address>
      </contact>
      <contact fullname="Charalampos (Haris) Rotsos">
        <organization>Lancaster University</organization>
        <address>
          <email>c.rotsos@lancaster.ac.uk</email>
        </address>
      </contact>
      <contact fullname="Peng Liu">
        <organization>China Mobile</organization>
        <address>
          <email>liupengyjy@chinamobile.com</email>
        </address>
      </contact>
      <contact fullname="Tony Li">
        <organization>Juniper Networks</organization>
        <address>
          <email>tony.li@tony.li</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81d63LbRpb+30/RS/8Ya0Iqku0kHs4tiiwnyliWx5I3lZnK
VjWBpogIBDhoQDLjeJ9ln2WfbM+tLwAhxZ5sza4qjkUQfTt9Lt+5dHs2m6m2
aEs715Mj/bwxa3tbN9d6WTe6XVl9XFdtU5f6IlvZvCuL6krXS/3StvTWa+vq
rsmsmyizWDT2BnqRN23sbKIy09qrutnOdVEta6XyOqvgy7nOG7NsZ7f/WMwy
HmjmpPls6ZvPDg6U6xbrwrkCXtpuoN3pyeVzrR9oU7oaxiyq3G4s/K9qJ1M9
sXnR1k1hSvxwevQV/AXLmZy+vnw+UVW3XthmrnKY01zBsM5WrnNz3TadVbCC
x8o01sz10euTI4UTuGrqbgOjnL+6OPru64m6tlt4nM+Vnmk/Xfw9zBg/fH/0
8mu9ruk7Zbp2VcOYM6W1XnZlyav/a9EtDVD0zODzurkyVfGTaWGVc/1NZ25t
gc+BKvAurwk/u7axtp3rw4NDfVEv21uYrj66sVVnp/r7btUZ/ayAl4qsxdez
ogW6vzTVj7B5U/1tASO6jr6pc+j40eHBweEj/tzBHsDLx6uioinZtSnKuV6b
f/BMD79c0bT2s3q9u5hKf9fdt5B//cQXRVnu33b3zPqsXsHfuf6q7jKTm6LZ
XcB5AwPblBzcZn/h23xZ0yvUvyJGLhZd6zc8Dvai0H9bwZvqThrJCD/hW2Xx
+MmT4dRjZ8+gvS31X4qR/l6YKjOutY1+UxU3tnFASpXQCZ62sGhsm0PHYdx8
/xoefVn65vsm2++uBwMfr0xjSrPe1E4//MY0hdvTr+vW1e5D5yGjZfsNNfuF
8V5ZEJEXRbfTO+027CDsso29lkUHquBq++P2ywxfWNP3IwS8rKst9LvT7bdd
VWxgyqLkXOy6hRb7ZfGl/K1UVTdraHUDikShZouf1Gw202YB3GyAm9XlqnAa
tF63BhWlN40FpdM6baLOAG1rWm3LLitQMzl9A5StO6dc1LwusxU+hYZVrgtU
d8WygHdRU+OHFj8U1U1d3sD2FpVq7D8661puzJoq1xlyF7wIirwSRd54RY6K
clOXRbb9FCYO9ND2rc06/G1fnbakcLXJc2jg4G34rcDvTIm9lqWljl2XrbRx
wG/VErpqqfuSOpnC4gvQzcAHMIu8JNHG1bhtla2a2m8DTi7OuDXu2k11V7YF
UNiWW1gtNM9wXbB2WGZZGNhm6JY6g+2jzagym67S2eamgEXuDzeEVpVbl4Hg
CjnNZgNT951CJ7IfoTPo3VxZat7Wdcl7AltnUOtb+Lw2W72wunM2n6q21mtQ
ftQ1bkrRUFPaBAMTa/GXxgpnEBdhSw1yQfNFdloXeY7W5IE+RVuZd7RBSkXb
PANCmNYTTKN+7VwH+7LFvXDAMQ18ibbdLpdFVtDacdoWhG9dVKB9i0ztrnBf
X+CWJqwoi8tQF2TQuPgJOoYtd8V6U+ISs65piDY4E+U5YgOiXuGbMPUb2uhP
cxs/0K7XaxuIbLKMGI0MeGYqGFOta1gWiDOM8zawWjI1GCPjfSGSkgDw7vjR
UUIyGlDRK573YZMcPHbLrWcVoAxQISexMPkKyIcvldC69HN0LC8FbtOZqZDS
6zUsZdEVZY7zWcDrshmy87wFsC3IDn6T+VkOb8AOqoS7EkngZfhNjvLBorrL
16OKxkO72BwZrV6qSIjbogXVGXbBVjcFiCYxLEhhCzLxk4geIzEPdoDtFYhR
cVXJGl0PNu5oG5qwTeYWZXBV33LfqUg9tPtX+1P97t2fT2fP9gvbLmfQJ3wZ
YeMWdNv793vELAg4zBpGtwqnmtAUyVg30AYVtOe8sNwbXqjf12lQHFPF9Pd0
WsDGQUcVEjorgIqouqlzUFRWbwwuDKTD7euvtrqEjhtzJZRzViUYEQZpceuS
bTIZ6h6yBUUFndSg1cyipP5VlN9UKC2q9sKtnVgTUpKW9glmmIMqFoU2BZgC
EBbMIytloscGJp2oX08OGjfylx2ozU1T34Bicfqqg7+Q2MzKpAjwNQQoySQz
s+FJoK0yWVM7YFgCB4nYw9YAQsnarkHKIEBvsBtaVSQ/ihRIEcoyCgGsgXmT
RBx4HjehZIsA9LIZadU16oAGlnJaBfM1JRKFddVdy+twtGM920ZTWHeuJfUX
lertylbA+5uy3tIqxW9KtmQgDzvCMIVJZ2WHOgMAhP4tguGshglg3w2z1S2O
niIC5A8NfLOyZb5PrS42wIqgwUBPoQ3bBjkP/BxUftZqz88AGIK5dtzRCVLd
3m+Yk73wO+kY/aJ+2gKmW/veYKqLsnArNHegPj0nYxewZwNO5qa9eRDhze5L
LOnQI6lmMBiofkkOvY2oIpAjzabBBQRxAlueTL/K06692didAWGDkVk0iBEr
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

-->

</rfc>
