<?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.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-zzd-spring-schedule-sr-policy-00" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.1 -->
  <front>
    <title abbrev="Schedule SR Policy">Schedule for Segment Routing Policy</title>
    <seriesInfo name="Internet-Draft" value="draft-zzd-spring-schedule-sr-policy-00"/>
    <author initials="L." surname="Zhang" fullname="Li Zhang" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>Beiqing Road</street>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhangli344@huawei.com</email>
      </address>
    </author>
    <author initials="J." surname="Dong" fullname="Jie Dong">
      <organization>Huawei</organization>
      <address>
        <email>jie.dong@huawei.com</email>
      </address>
    </author>
    <author initials="T." surname="Zhou" fullname="Tianran Zhou">
      <organization>Huawei</organization>
      <address>
        <email>zhoutianran@huawei.com</email>
      </address>
    </author>
    <date year="2024" month="September" day="29"/>
    <area>General</area>
    <workgroup>SPRING</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 43?>

<t>This document defines the Segment Routing (SR) Policy extension for schedule (called SR-Schedule). It applies to both Segment Routing over IPv6 (SRv6) and SR-MPLS. This document specifies the framework of SR policy schedule including the SR-Schedule definition, acquisition, computation, enforcement, and the handling behaviors on the headend.</t>
    </abstract>
  </front>
  <middle>
    <?line 47?>

<section anchor="intro">
      <name>Introduction</name>
      <t>Segment Routing (SR) policy <xref target="RFC9256"/> is a set of candidate SR paths consisting of one or more segment lists and necessary path attributes. It enables instantiation of an ordered list of segments with a specific intent for traffic steering. <xref target="I-D.ietf-idr-segment-routing-te-policy"/> specifies how BGP may be used to distribute SR Policy candidate paths. It introduces a BGP SAFI with new NLRI to advertise a candidate path of a Segment Routing (SR) Policy.</t>
      <t><xref target="I-D.ietf-tvr-use-cases"/> introduces a set of use cases where the topology or attributes of the network changes predictably. The topology changes may influence tha validity of some paths, and lead to path reselection or even recalculation. However, the reselection or recalculation takes a period of time, which will influence packet forwarding and cause problems such as packet disorder and packet loss. However, on a network with predictable topology changes, the headend knows future topology changes, it can schedule the forwarding paths in advance, and steer flows to different set of paths based on time to prevent packet forwarding from being influenced by topology changes.</t>
      <t>In the scenario of SR-policy-based TE paths, the resource allocation efficiency is a big challenge. Some flows just last for a short time, but the TE paths resources for the flows are usually reserved for a long time and cannot be used by other services. Therefore, the SR policy originator can generate a policy with time-limited paths and resources, the headend schedules these paths over time to improve the utilization of resources.</t>
      <t>This document extends SR Policy to include the schedule time of candidate paths/SR lists and applies to both SRv6 and SR-MPLS.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</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?>

</section>
    </section>
    <section anchor="sr-schedule-definition-for-sr-policy">
      <name>SR-Schedule Definition for SR Policy</name>
      <t>The Segment Routing policy architecture is specified in <xref target="RFC9256"/>. An SR Policy is associated with one or more candidate paths. A candidate path is either dynamic, explicit, or composite. The related concepts with the SR-Schedule definition in this document are listed as follows.</t>
      <t>An explicit/dynamic candidate path is expressed as a Segment-List or a set of Segment-Lists directly or by computation. If a candidate path is associated with a set of Segment-Lists, each Segment-List is associated with weight for weighted load balancing. The default weight is 1.</t>
      <t>A composite candidate path is defined in <xref target="RFC9256"/>.</t>
      <section anchor="Section3.1">
        <name>SR-Schedule of a Segment List</name>
        <t>A segment list represents a specific source-routed path to send traffic from the headend to the endpoint of the corresponding SR policy <xref target="RFC9256"/>. The SR-Schedule of a segment list is defined as the valid period of the path between a source node and a destination node.</t>
      </section>
      <section anchor="Section3.2">
        <name>SR-Schedule of a Candidate Path</name>
        <t>In the case of an explicit/dynamic candidate path, if it is expressed as a single Segment-List, then the SR-Schedule of the candidate path is the same as that of the SR-Schedule of the segment list as described in <xref target="Section3.1"/>.</t>
        <t>In the case of an explicit/dynamic candidate path, if it is expressed as a set of Segment-Lists (for load-balancing), then the SR-Schedule of the candidate path is defined as the valid period of all the Segment-Lists in the set.</t>
      </section>
    </section>
    <section anchor="the-framework-of-sr-schedule-for-sr-policy">
      <name>The Framework of SR-Schedule for SR Policy</name>
      <figure anchor="ref-to-fig1">
        <name>Framework of SR-Schedule for SR Policy</name>
        <artwork><![CDATA[
The framework of SR-Schedule for SR Policy includes schedule information acquisition, SR-Schedule computation, SR-Schedule enforcement, and handling behaviors on the headend.

                           +------------------+
                           | Network Manager  | 
                           +------------------+
                                     |
                         Schedule information acquisition
                                     |
                           +--------\|/-------+
              +------------|Network Controller| SR-Schedule computation
              |            +--------/|\-------+
              |                      |
SR-Schedule enforcement   Schedule information acquisition
              |                      |
           +-\|/-+       +-----------|-----------+   +-----+
 Handling  |Head |-------|    Segment Routing    |---|End  |
 behaviors |end  |       |    Network Domain     |   |Point|
           +-----+       +-----------------------+   +-----+
]]></artwork>
      </figure>
      <section anchor="schedule-information-acquisition">
        <name>Schedule Information Acquisition</name>
        <t>The SR-Schedule of a segment list is defined as the valid period of the path, see <xref target="Section3.1"/>.
The valid period of a path can be limited by a variety of factors, for example the flow’s predicted variation, the predicted availability of nodes and links. The schedule information could be acquired from the Network Manager or network devices by YANG data model or routing protocol advertisement.</t>
      </section>
      <section anchor="sr-schedule-computation">
        <name>SR-Schedule Computation</name>
        <t>The schedule information is sent to the network controller or the headend where the SR-Schedule is computed. Depending upon the source of time constraint, the computation methods are different, which are described in the following subsections.</t>
        <section anchor="sr-schedule-computation-with-flow-constraint">
          <name>SR-Schedule Computation with Flow Constraint</name>
          <t>When the flow with predictable time limit requests a SR path and the topology is stable, the SR-Schedule calculation only needs to consider the time limit of the flow. During calculation, the controller needs to calculate the optimal path that meets flow requirements, and then generate the SR-Schedule based on the flow variation regularity.</t>
        </section>
        <section anchor="sr-schedule-computation-with-topology-constraint">
          <name>SR-Schedule Computation with Topology Constraint</name>
          <t>When the flow is constant but the network topology changes predictably, the SR-Schedule calculation only needs to consider the topology change. During calculation, multiple paths need to be calculated based on flow requirements. The valid time of each path is the intersection of the available time of all nodes and links in the path. There must be no gap between two paths adjacent in time to ensure the transmission will not be interrupted.</t>
        </section>
        <section anchor="sr-schedule-computation-with-mixed-constraint">
          <name>SR-Schedule Computation with Mixed Constraint</name>
          <t>When the requested flow has a predicable time limit and the topology also changes predictably, the SR-Schedule calculation needs to consider both the flow and topology time constraints. During calculation, the controller first obtains the period that needs to be covered according to the flow time constraint. Then, the controller calculates multiple paths that meet the flow's requirements. The valid time of each path is the intersection of the available time of all nodes and links in the path. There must be no gap between two paths adjacent in time to ensure the transmission will not be interrupted.</t>
        </section>
      </section>
      <section anchor="sr-schedule-enforcement">
        <name>SR-Schedule Enforcement</name>
        <t>SR Policy as per <xref target="RFC9256"/> does not include SR-Schedule in the SR Policy encoding structure.  As specified in <xref target="I-D.zzd-idr-sr-policy-scheduling"/>, the SR-Schedule is encoded in the SR policy structure as shown in <xref target="fig2"/> and <xref target="fig3"/>.  After the SR-Schedule computation, the SR-Schedule is enforced along with the SR Policy to the headend of the corresponding path.</t>
        <figure anchor="fig2">
          <name>SR Policy Structure with SR-Schedule at Candidate Path Level</name>
          <artwork><![CDATA[
SR Policy SAFI NLRI: <Distinguisher, Policy-Color, Endpoint>
      Attributes:
         Tunnel Encapsulation Attribute (23)
            Tunnel Type: SR Policy (15)
                Binding SID
                SRv6 Binding SID
                Preference
                Priority
                Policy Name
                Policy Candidate Path Name
                Explicit NULL Label Policy 
         -----> Scheduling Time Information (SR-Schedule)
                Segment List
                    Weight
                    Segment
                    Segment
                    ...
                ...
]]></artwork>
        </figure>
        <figure anchor="fig3">
          <name>SR Policy Structure with SR-Schedule at Segment List Level</name>
          <artwork><![CDATA[
SR Policy SAFI NLRI: <Distinguisher, Policy-Color, Endpoint>
      Attributes:
         Tunnel Encapsulation Attribute (23)
            Tunnel Type: SR Policy (15)
                Binding SID
                SRv6 Binding SID
                Preference
                Priority
                Policy Name
                Policy Candidate Path Name
                Explicit NULL Label Policy
                Segment List
          --------> Scheduling Time Information (SR-Schedule)
                    Weight
                    Segment
                    Segment
                    ...
                ...
]]></artwork>
        </figure>
      </section>
      <section anchor="handling-behaviors-on-the-headend">
        <name>Handling Behaviors on the Headend</name>
        <t>After the SR Policy with SR-Schedule is computed, the headend performs the handling behaviors.</t>
        <t>After obtaining the SR Policy with SR-Schedule, the headend needs to select the available paths at this moment according to the effective time of the candidate path and the segment list.</t>
        <t>When a packet arrives, the headend encapsulates the segment list of the forwarding path in the packet header based on the available paths.</t>
        <t>If no path is available at a certain time point, the SR Policy is considered malformed and should be logged with error.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t><xref target="RFC9256"/> specifies in detail the SR Policy construct (introduced in <xref target="RFC8402"/>) and its security considerations.  The additional SR-Schedule attribute information can be sensitive in some deployments and could influence SR path setup, selection and switching with adverse effect. The protocol extensions that include SR-Schedule need to take this into consideration. This document does not define any new protocol extensions and thus does not introduce any further security considerations.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
    </section>
    <section anchor="acknowledgement">
      <name>Acknowledgement</name>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9256" target="https://www.rfc-editor.org/info/rfc9256" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9256.xml">
          <front>
            <title>Segment Routing Policy Architecture</title>
            <author fullname="C. Filsfils" initials="C." surname="Filsfils"/>
            <author fullname="K. Talaulikar" initials="K." role="editor" surname="Talaulikar"/>
            <author fullname="D. Voyer" initials="D." surname="Voyer"/>
            <author fullname="A. Bogdanov" initials="A." surname="Bogdanov"/>
            <author fullname="P. Mattes" initials="P." surname="Mattes"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>Segment Routing (SR) allows a node to steer a packet flow along any path. Intermediate per-path states are eliminated thanks to source routing. SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. Packet flows are steered into an SR Policy on a node where it is instantiated called a headend node. The packets steered into an SR Policy carry an ordered list of segments associated with that SR Policy.</t>
              <t>This document updates RFC 8402 as it details the concepts of SR Policy and steering into an SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9256"/>
          <seriesInfo name="DOI" value="10.17487/RFC9256"/>
        </reference>
        <reference anchor="I-D.ietf-idr-segment-routing-te-policy" target="https://datatracker.ietf.org/doc/html/draft-ietf-idr-segment-routing-te-policy-26" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-idr-segment-routing-te-policy.xml">
          <front>
            <title>Advertising Segment Routing Policies in BGP</title>
            <author fullname="Stefano Previdi" initials="S." surname="Previdi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Ketan Talaulikar" initials="K." surname="Talaulikar">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Paul Mattes" initials="P." surname="Mattes">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Dhanendra Jain" initials="D." surname="Jain">
              <organization>Google</organization>
            </author>
            <date day="23" month="October" year="2023"/>
            <abstract>
              <t>This document introduces a BGP SAFI with two NLRIs to advertise a candidate path of a Segment Routing (SR) Policy. An SR Policy is an ordered list of segments (i.e., instructions) that represent a source-routed policy. An SR Policy consists of one or more candidate paths, each consisting of one or more segment lists. A headend may be provisioned with candidate paths for an SR Policy via several different mechanisms, e.g., CLI, NETCONF, PCEP, or BGP. This document specifies how BGP may be used to distribute SR Policy candidate paths. It defines sub-TLVs for the Tunnel Encapsulation Attribute for signaling information about these candidate paths. This documents updates RFC9012 with extensions to the Color Extended Community to support additional steering modes over SR Policy.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-idr-segment-routing-te-policy-26"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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-tvr-use-cases" target="https://datatracker.ietf.org/doc/html/draft-ietf-tvr-use-cases-09" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tvr-use-cases.xml">
          <front>
            <title>TVR (Time-Variant Routing) Use Cases</title>
            <author fullname="Edward J. Birrane" initials="E. J." surname="Birrane">
              <organization>JHU/APL</organization>
            </author>
            <author fullname="Nicolas Kuhn" initials="N." surname="Kuhn">
              <organization>Thales Alenia Space</organization>
            </author>
            <author fullname="Yingzhen Qu" initials="Y." surname="Qu">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Rick Taylor" initials="R." surname="Taylor">
              <organization>Ori Industries</organization>
            </author>
            <author fullname="Li Zhang" initials="L." surname="Zhang">
              <organization>Huawei</organization>
            </author>
            <date day="29" month="February" year="2024"/>
            <abstract>
              <t>This document introduces use cases where Time-Variant Routing (TVR) computations (i.e. routing computations taking into considerations time-based or scheduled changes to a network) could improve routing protocol convergence and/or network performance.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tvr-use-cases-09"/>
        </reference>
        <reference anchor="I-D.zzd-idr-sr-policy-scheduling" target="https://datatracker.ietf.org/doc/html/draft-zzd-idr-sr-policy-scheduling-05" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.zzd-idr-sr-policy-scheduling.xml">
          <front>
            <title>BGP SR Policy Extensions for Path Scheduling</title>
            <author fullname="Li Zhang" initials="L." surname="Zhang">
              <organization>Huawei</organization>
            </author>
            <author fullname="Tianran Zhou" initials="T." surname="Zhou">
              <organization>Huawei</organization>
            </author>
            <author fullname="Jie Dong" initials="J." surname="Dong">
              <organization>Huawei</organization>
            </author>
            <author fullname="Minxue Wang" initials="M." surname="Wang">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Nkosinathi Nzima" initials="N." surname="Nzima">
              <organization>MTN</organization>
            </author>
            <date day="29" month="August" year="2024"/>
            <abstract>
              <t>Segment Routing (SR) policy enables instantiation of an ordered list of segments with a specific intent for traffic steering. However, more and more cases require path scheduling to improve the network availability and resource utilization. This document proposes extensions to BGP SR Policy to indicate the scheduling time of each candidate path(segment list) and its associated attributes.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-zzd-idr-sr-policy-scheduling-05"/>
        </reference>
        <reference anchor="RFC8402" target="https://www.rfc-editor.org/info/rfc8402" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8402.xml">
          <front>
            <title>Segment Routing Architecture</title>
            <author fullname="C. Filsfils" initials="C." role="editor" surname="Filsfils"/>
            <author fullname="S. Previdi" initials="S." role="editor" surname="Previdi"/>
            <author fullname="L. Ginsberg" initials="L." surname="Ginsberg"/>
            <author fullname="B. Decraene" initials="B." surname="Decraene"/>
            <author fullname="S. Litkowski" initials="S." surname="Litkowski"/>
            <author fullname="R. Shakir" initials="R." surname="Shakir"/>
            <date month="July" year="2018"/>
            <abstract>
              <t>Segment Routing (SR) leverages the source routing paradigm. A node steers a packet through an ordered list of instructions, called "segments". A segment can represent any instruction, topological or service based. A segment can have a semantic local to an SR node or global within an SR domain. SR provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SR domain.</t>
              <t>SR can be directly applied to the MPLS architecture with no change to the forwarding plane. A segment is encoded as an MPLS label. An ordered list of segments is encoded as a stack of labels. The segment to process is on the top of the stack. Upon completion of a segment, the related label is popped from the stack.</t>
              <t>SR can be applied to the IPv6 architecture, with a new type of routing header. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address (DA) of the packet. The next active segment is indicated by a pointer in the new routing header.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8402"/>
          <seriesInfo name="DOI" value="10.17487/RFC8402"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
