<?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.43 (Ruby 3.2.3) -->
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-many-teas-power-steering-02" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="PCPPS">A Power Conserving Path Placement Strategy (PCPPS)</title>
    <seriesInfo name="Internet-Draft" value="draft-many-teas-power-steering-02"/>
    <author initials="C." surname="Barth" fullname="Colby Barth">
      <organization>HPE</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>Jonathan.barth@hpe.com</email>
      </address>
    </author>
    <author initials="T." surname="Li" fullname="Tony Li">
      <organization>HPE</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>tony.li@tony.li</email>
      </address>
    </author>
    <author initials="V. P." surname="Beeram" fullname="Vishnu Pavan Beeram">
      <organization>HPE</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>vbeeram@hpe.com</email>
      </address>
    </author>
    <author initials="R." surname="Bonica" fullname="Ron Bonica">
      <organization>HPE</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>ronald.bonica@hpe.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="09"/>
    <area>Internet</area>
    <workgroup>TEAS WG</workgroup>
    <keyword>Power</keyword>
    <abstract>
      <?line 54?>

<t>This document introduces a Power Conserving Path Placement Strategy (PCPPS). During periods of low demand, PCPPS concentrates traffic onto a small set of network resources.
This causes other network resources to become idle or nearly idle. When demand increases, PCPPS redistributes traffic as required.</t>
    </abstract>
  </front>
  <middle>
    <?line 59?>

<section anchor="intro">
      <name>Introduction</name>
      <t>This document introduces a Power Conserving Path Placement Strategy (PCPPS). During periods of low demand, PCPPS concentrates traffic onto a small set of network resources.
This causes other network resources to become idle or nearly idle. When demand increases, PCPPS redistributes traffic as required.</t>
      <t>PCPPS can be implemented in either a centralized or distributed traffic engineering model. This document focuses on distributed implementations.</t>
      <t>An independent sleep management component is configured with power saving criteria. When it detects network resources that satisfy these criteria, it powers them down. When it receives a request from PCPPS, it powers them up again. The sleep management component is beyond the scope of this document.</t>
      <t>Network operators can control the degree to which traffic is concentrated onto a small set of network resources. They can configure constraints that prevent traffic flows from being assigned to a path that does not satisfy their requirements. They can also configure the degree to which power conservation is prioritized in path placement.</t>
    </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 BCP14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="term">
      <name>Terminology</name>
      <t>This document uses the following terms:</t>
      <ul spacing="normal">
        <li>
          <t>Path - An ordered set of links that connect a source node to a destination node. In a robust network, there are many paths from a particular source to a particular destination.</t>
        </li>
        <li>
          <t>Traffic flow - A set of packets that have the same source and destination, and traverse the same path. Packets on an MPLS <xref target="RFC3031"/> Label Switched Path (LSP) are an example of a traffic flow.</t>
        </li>
        <li>
          <t>Constraint - A rule that prevents a traffic flow from traversing some set of paths. For example, a constraint might prevent a particular traffic flow from traversing a path that contains low-speed links.</t>
        </li>
        <li>
          <t>Optimization metric - The CSPF path placement algorithm uses the optimization metric to compute the best path between a source and a destination.  An optimization metric is associated with the objective function <xref target="RFC4657"/> for which CSPF is optimizing (e.g., delay).</t>
        </li>
        <li>
          <t>Sleep Status - An attribute of a hardware component. A component that is ASLEEP may consume power, but not enough to operate normally. A component that is AWAKE consumes enough power to operate normally. Sleep status is also an attribute of an IGP adjacency. See Sleeping Adjacency, below.</t>
        </li>
        <li>
          <t>Power-sleep-capable - An interface attribute. If an interface is power-sleep-capable, it can be transitioned into the ASLEEP state. Otherwise, it cannot be transitioned into the ASLEEP state.</t>
        </li>
        <li>
          <t>Power Savings Potential (PSP) - The PSP for a component is the difference between power consumption while AWAKE and power consumption while ASLEEP.</t>
        </li>
        <li>
          <t>Sleeping Adjacency - An IGP adjacency whose endpoints are ASLEEP. A sleeping adjacency cannot pass traffic until it returns to the AWAKE state. It can be returned to the AWAKE state by waking its endpoints.</t>
        </li>
        <li>
          <t>Sleeping bandwidth - An attribute of a LAG TE link that reflects lost capacity when LAG members are powered down.</t>
        </li>
      </ul>
    </section>
    <section anchor="cspf">
      <name>Constraint-based Shortest Path Forwarding (CSPF)</name>
      <t>PCPPS leverages Constraint-based Shortest Path Forwarding (CSPF). CSPF can be centralized or distributed. When it is centralized, a Path Computation Element (PCE) calculates a path for every flow in the network. When it is distributed, each node calculates a path for each flow that originates on it.</t>
      <t>As stated in <xref target="term"/>, many paths can connect a source node to a destination node. CSPF computes a path:</t>
      <ul spacing="normal">
        <li>
          <t>that does not violate any of the flow's constraints</t>
        </li>
        <li>
          <t>whose links have sufficient unreserved bandwidth to support the flow</t>
        </li>
        <li>
          <t>whose links have the lowest cumulative optimization metric</t>
        </li>
      </ul>
      <t>CSPF requires the following inputs:</t>
      <ul spacing="normal">
        <li>
          <t>Information regarding traffic flows (e.g., source, destination, required bandwidth, constraints)</t>
        </li>
        <li>
          <t>The network topology (i.e., nodes, node attributes, links, and link attributes)</t>
        </li>
      </ul>
      <t>CSPF acquires this information from a Traffic Engineering Data Base (TED). Typically, an Interior Gateway Protocol (IGP) or the Border Gateway Protocol-Link State (BGP-LS) populates the TED.</t>
    </section>
    <section anchor="pcpps-and-cspf">
      <name>PCPPS and CSPF</name>
      <t>As stated in <xref target="cspf"/>, PCPPS leverages CSPF. When employing PCPPS the resulting TE path:</t>
      <ul spacing="normal">
        <li>
          <t><bcp14>MUST NOT</bcp14> contain any sleeping adjacencies</t>
        </li>
        <li>
          <t><bcp14>MUST NOT</bcp14> violate constraints</t>
        </li>
        <li>
          <t><bcp14>MUST</bcp14> HAVE the lowest cumulative PCPPS metric.</t>
        </li>
      </ul>
      <t>The cumulative PCPPS metric is the sum of PCPPS metrics for each adjacency on the path. See <xref target="metric"/> for details.</t>
      <t>If CSPF cannot compute a path, it considers paths that include sleeping adjacencies. If such a path exists, it sends a request to the sleep management component. It then retries the path computation, using the newly awakened adjacency.</t>
    </section>
    <section anchor="metric">
      <name>The PCPPS Metric</name>
      <t>The following paragraphs describe an example algorithm that can be used to compute the PCPPS metric for an adjacency. Compliant implementations can use this algorithm or another algorithm to compute the PCPPS.</t>
      <t>The PCPPS metric is the sum of the following:</t>
      <ul spacing="normal">
        <li>
          <t>The adjacency's optimization metric.</t>
        </li>
        <li>
          <t>The cumulative PSP of each of the adjacency's endpoints (i.e., interfaces) adjusted by policy.</t>
        </li>
      </ul>
      <t>An interface's PSP is equal to 0 if any of the following conditions exist:</t>
      <ul spacing="normal">
        <li>
          <t>The interface is not power-sleep-capable</t>
        </li>
        <li>
          <t>On point to point interfaces, if the interface on the other side of the adjacency is not power-sleep-capable</t>
        </li>
      </ul>
      <t>Otherwise, its cumulative PSP is equal to the interface's PSP plus the PSP of the interface's Parent Power Groups, recursively.  Adjusting the cumulative PSP according to a policy produces an overall PCPPS metric that respects both power consumption and the optimization metric.</t>
      <t>If two paths have identical cumulative PCPPS metrics, the tie can be broken based on a symmetric max-fill policy. This policy should cause traffic to consolidate rather than disperse.</t>
      <t>To avoid re-use of links that are already idle prefer links with a utilization above a configured threshold.</t>
    </section>
    <section anchor="pcpps-inputs">
      <name>PCPPS Inputs</name>
      <section anchor="powersleepcap">
        <name>Power-Sleep Capability</name>
        <t>Each TED interface entry includes a Power-Sleep Capability Bit. This bit determines whether the interface can be powered down when idle or nearly idle.</t>
        <t>For interfaces on the local node, this bit is administratively assigned and advertised by an IGP. For interfaces on a remote node, this bit is learned from an IGP. See <xref target="I-D.many-lsr-power-group"/>.</t>
      </section>
      <section anchor="powersavpot">
        <name>Interface Power Savings Potential (PSP)</name>
        <t>Each TED interface entry includes a PSP value, measured in milliwatts. This value represents the interface PSP. It does not include the PSPs of the  Power Groups to which it is a member.</t>
        <t>For interfaces on the local node, this value is administratively assigned or learned from hardware. It is  advertised by an IGP. For interfaces on a remote node, this value is learned from an IGP. See <xref target="I-D.many-lsr-power-group"/>.</t>
      </section>
      <section anchor="powergroup">
        <name>Power Groups</name>
        <t>Each TED interface entry includes zero or more references to a Power Group.  See <xref target="powergroups"/> for a description of Power Groups.</t>
        <t>For Power Groups on the local node, this data is administratively assigned or learned from hardware. It is advertised by an IGP. For Power Groups on a remote node, this data is learned from an IGP. See <xref target="I-D.many-lsr-power-group"/>.</t>
      </section>
      <section anchor="sleeping-adjacencies">
        <name>Sleeping Adjacencies</name>
        <t>If CSPF cannot compute a path, it considers paths that include sleeping adjacencies. If such a path exists, it sends a request to the sleep management component. It then retries the path computation, using the newly awakened adjacency.</t>
        <t>The TED includes an entry that describes each sleeping adjacency. These entries are distinguishable from those that describe non-sleeping adjacencies.</t>
      </section>
      <section anchor="unidirectional-sleeping-bandwidth">
        <name>Unidirectional Sleeping Bandwidth</name>
        <t>Each TED interface entry includes a unidirectional sleeping bandwidth value, measured in bits per second. This value represents the sleeping bandwidth on a link. This is useful for IS-IS adjacencies formed over LAGs.</t>
        <t>For interfaces on the local node, this value is administratively assigned or learned from hardware. It is advertised by an IGP. For interfaces on a remote node, this value is learned from an IGP. See <xref target="I-D.many-lsr-power-group"/>.</t>
      </section>
    </section>
    <section anchor="powergroups">
      <name>Power Groups</name>
      <section anchor="example-architecture">
        <name>Example Architecture</name>
        <figure anchor="lc1">
          <name>Line Card 1</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="480" width="552" viewBox="0 0 552 480" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 40,240 L 40,336" fill="none" stroke="black"/>
                <path d="M 96,144 L 96,192" fill="none" stroke="black"/>
                <path d="M 128,240 L 128,336" fill="none" stroke="black"/>
                <path d="M 168,240 L 168,336" fill="none" stroke="black"/>
                <path d="M 200,144 L 200,192" fill="none" stroke="black"/>
                <path d="M 216,344 L 216,368" fill="none" stroke="black"/>
                <path d="M 224,32 L 224,80" fill="none" stroke="black"/>
                <path d="M 256,240 L 256,336" fill="none" stroke="black"/>
                <path d="M 296,240 L 296,336" fill="none" stroke="black"/>
                <path d="M 328,32 L 328,80" fill="none" stroke="black"/>
                <path d="M 352,144 L 352,192" fill="none" stroke="black"/>
                <path d="M 384,240 L 384,336" fill="none" stroke="black"/>
                <path d="M 424,240 L 424,336" fill="none" stroke="black"/>
                <path d="M 456,144 L 456,192" fill="none" stroke="black"/>
                <path d="M 480,344 L 480,368" fill="none" stroke="black"/>
                <path d="M 512,240 L 512,336" fill="none" stroke="black"/>
                <path d="M 232,32 L 320,32" fill="none" stroke="black"/>
                <path d="M 232,80 L 320,80" fill="none" stroke="black"/>
                <path d="M 152,112 L 248,112" fill="none" stroke="black"/>
                <path d="M 304,112 L 400,112" fill="none" stroke="black"/>
                <path d="M 104,144 L 192,144" fill="none" stroke="black"/>
                <path d="M 360,144 L 448,144" fill="none" stroke="black"/>
                <path d="M 104,192 L 192,192" fill="none" stroke="black"/>
                <path d="M 360,192 L 448,192" fill="none" stroke="black"/>
                <path d="M 48,240 L 120,240" fill="none" stroke="black"/>
                <path d="M 176,240 L 248,240" fill="none" stroke="black"/>
                <path d="M 304,240 L 376,240" fill="none" stroke="black"/>
                <path d="M 432,240 L 504,240" fill="none" stroke="black"/>
                <path d="M 48,336 L 120,336" fill="none" stroke="black"/>
                <path d="M 176,336 L 248,336" fill="none" stroke="black"/>
                <path d="M 304,336 L 376,336" fill="none" stroke="black"/>
                <path d="M 432,336 L 504,336" fill="none" stroke="black"/>
                <path d="M 108,344 L 120,368" fill="none" stroke="black"/>
                <path d="M 200,192 L 220,232" fill="none" stroke="black"/>
                <path d="M 364,344 L 376,368" fill="none" stroke="black"/>
                <path d="M 456,192 L 476,232" fill="none" stroke="black"/>
                <path d="M 76,232 L 96,192" fill="none" stroke="black"/>
                <path d="M 40,368 L 52,344" fill="none" stroke="black"/>
                <path d="M 332,232 L 352,192" fill="none" stroke="black"/>
                <path d="M 312,368 L 324,344" fill="none" stroke="black"/>
                <circle cx="40" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="40" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="96" cy="144" r="6" class="closeddot" fill="black"/>
                <circle cx="96" cy="192" r="6" class="closeddot" fill="black"/>
                <circle cx="128" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="128" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="168" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="168" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="200" cy="144" r="6" class="closeddot" fill="black"/>
                <circle cx="200" cy="192" r="6" class="closeddot" fill="black"/>
                <circle cx="224" cy="32" r="6" class="closeddot" fill="black"/>
                <circle cx="224" cy="80" r="6" class="closeddot" fill="black"/>
                <circle cx="256" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="256" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="296" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="296" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="328" cy="32" r="6" class="closeddot" fill="black"/>
                <circle cx="328" cy="80" r="6" class="closeddot" fill="black"/>
                <circle cx="352" cy="144" r="6" class="closeddot" fill="black"/>
                <circle cx="352" cy="192" r="6" class="closeddot" fill="black"/>
                <circle cx="384" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="384" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="424" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="424" cy="336" r="6" class="closeddot" fill="black"/>
                <circle cx="456" cy="144" r="6" class="closeddot" fill="black"/>
                <circle cx="456" cy="192" r="6" class="closeddot" fill="black"/>
                <circle cx="512" cy="240" r="6" class="closeddot" fill="black"/>
                <circle cx="512" cy="336" r="6" class="closeddot" fill="black"/>
                <g class="text">
                  <text x="280" y="52">LC1</text>
                  <text x="256" y="68">100</text>
                  <text x="296" y="68">watts</text>
                  <text x="256" y="100">/</text>
                  <text x="296" y="100">\</text>
                  <text x="152" y="132">|</text>
                  <text x="408" y="132">|</text>
                  <text x="144" y="164">FE1</text>
                  <text x="400" y="164">FE2</text>
                  <text x="128" y="180">300</text>
                  <text x="168" y="180">watts</text>
                  <text x="384" y="180">300</text>
                  <text x="424" y="180">watts</text>
                  <text x="84" y="260">INTCOMP1</text>
                  <text x="212" y="260">INTCOMP2</text>
                  <text x="340" y="260">INTCOMP3</text>
                  <text x="468" y="260">INTCOMP4</text>
                  <text x="60" y="276">15</text>
                  <text x="96" y="276">watts</text>
                  <text x="188" y="276">20</text>
                  <text x="224" y="276">watts</text>
                  <text x="316" y="276">15</text>
                  <text x="352" y="276">watts</text>
                  <text x="444" y="276">20</text>
                  <text x="480" y="276">watts</text>
                  <text x="64" y="292">400</text>
                  <text x="100" y="292">Gbps</text>
                  <text x="192" y="292">800</text>
                  <text x="228" y="292">Gbps</text>
                  <text x="320" y="292">400</text>
                  <text x="356" y="292">Gbps</text>
                  <text x="448" y="292">800</text>
                  <text x="484" y="292">Gbps</text>
                  <text x="80" y="308">(optics</text>
                  <text x="192" y="308">(no</text>
                  <text x="336" y="308">(optics</text>
                  <text x="448" y="308">(no</text>
                  <text x="88" y="324">included)</text>
                  <text x="216" y="324">optics)</text>
                  <text x="344" y="324">included)</text>
                  <text x="472" y="324">optics)</text>
                  <text x="28" y="388">INT1</text>
                  <text x="124" y="388">INT2</text>
                  <text x="212" y="388">INT3</text>
                  <text x="292" y="388">INT4</text>
                  <text x="380" y="388">INT5</text>
                  <text x="476" y="388">INT6</text>
                  <text x="16" y="404">0</text>
                  <text x="48" y="404">watts</text>
                  <text x="112" y="404">0</text>
                  <text x="144" y="404">watts</text>
                  <text x="200" y="404">5</text>
                  <text x="232" y="404">watts</text>
                  <text x="280" y="404">0</text>
                  <text x="312" y="404">watts</text>
                  <text x="368" y="404">0</text>
                  <text x="400" y="404">watts</text>
                  <text x="464" y="404">5</text>
                  <text x="496" y="404">watts</text>
                  <text x="20" y="420">No</text>
                  <text x="60" y="420">optics</text>
                  <text x="116" y="420">No</text>
                  <text x="156" y="420">optics</text>
                  <text x="220" y="420">Optics</text>
                  <text x="284" y="420">No</text>
                  <text x="324" y="420">optics</text>
                  <text x="372" y="420">No</text>
                  <text x="412" y="420">optics</text>
                  <text x="484" y="420">Optics</text>
                  <text x="20" y="452">Line</text>
                  <text x="60" y="452">Card</text>
                  <text x="88" y="452">1</text>
                  <text x="120" y="452">(LC1)</text>
                  <text x="180" y="452">consumes</text>
                  <text x="232" y="452">100</text>
                  <text x="272" y="452">watts</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
                               *------------*
                               |     LC1    |
                               |  100 watts |
                               *------------*
                                   /    \
                      -------------      -------------
                      |                               |
               *------------*                  *------------*
               |    FE1     |                  |    FE2     |
               |  300 watts |                  |  300 watts |
               *------------*                  *------------*
              /              \                /              \
             /                \              /                \
        *----------*    *----------*    *----------*    *----------* 
        | INTCOMP1 |    | INTCOMP2 |    | INTCOMP3 |    | INTCOMP4 |
        | 15 watts |    | 20 watts |    | 15 watts |    | 20 watts | 
        | 400 Gbps |    | 800 Gbps |    | 400 Gbps |    | 800 Gbps |
        | (optics  |    | (no      |    | (optics  |    | (no      |
        | included)|    |  optics) |    | included)|    |  optics) |
        *----------*    *----------*    *----------*    *----------*    
         /       \            |            /     \             |
        /         \           |           /       \            |       
     INT1        INT2       INT3      INT4       INT5        INT6
     0 watts     0 watts    5 watts   0 watts    0 watts     5 watts
     No optics   No optics  Optics    No optics  No optics   Optics

    Line Card 1 (LC1) consumes 100 watts
]]></artwork>
          </artset>
        </figure>
        <t><xref target="lc1"/> depicts a line card (LC1). LC1 contains two forwarding engines (FE1 and FE2) and four 
interface complexes (INTCOMP1 through INTCOMP4). INTCOMP1 supports two interfaces (INT1 and INT2). 
Likewise, INTCOMP3 supports two interfaces (INT4 and INT5). INTCOMP2 and INTCOMP4 support one interface
each (INT3 and INT6).</t>
        <t>An interface complex includes PHY, MAC, encryption, gearbox, and other related circuitry. 
INTCOMP1 and INTCOMP3 also contain optics. INTCOMP2 and INTCOMP4 do not contain optics. Therefore, the interfaces that they support have their own optics.</t>
        <t>INTCOMP1 and INTCOMP3 provide 400 Gbps of forwarding capacity each, while INTCOMP2 and INTCOMP4 provide 800 Gbps of forwarding capacity each.</t>
        <t>Each hardware component has a PSP. LC1's PSP is 10 watts while FE1 and FE2 have  PSPs of 300 watts. INTCOMP1 and INTCOMP3 have PSPs of 15 watts, while INTCOMP2 and INTCOMP4 have PSPs of 20 watts.
INT3 and INT6 contain optics that have PSPs of 5 watts. INT1, 
INT2, INT4 and INT5 do not have separate optics. Therefore, they have a PSP of 0 watts.</t>
        <t>INT1 and INT2 depend upon INTCOMP1. If INTCOMP1 fails, so do INT1 and INT2. Likewise, INT3 
depends upon INTCOMP2. If INTCOMP2 fails, so does INT3.</t>
        <t>INTCOMP1 and INTCOMP2 depend on FE1. If FE1 fails, so do INTCOMP1, INTCOMP2, INT1, INT2, and INT3. Likewise, 
INTCOMP3 and INTCOMP4 depend on FE2. If FE2 fails, so do INTCOMP3, INTCOMP4, INT4, INT5, and INT6.</t>
        <t>FE1 and FE2 depend on LC1. If LC1 fails, so do all of the forwarding engines, interface complexes, 
and interfaces in the diagram.</t>
      </section>
      <section anchor="definition">
        <name>Definition</name>
        <t>In <xref target="lc1"/>, LC1, FE1, FE2, INTCOMP1, INTCOMP2, INTCOMP3, and INTCOMP4 are all Power Groups.  Each Power Group, except for LC1, has exactly one parent.  LC1 does not have a parent.  Many Power Groups can have the same parent.</t>
        <t>Each Power Group has one or more components and each component
has a PSP.  The PSP associated with  a Power Group is equal to the
sum of the PSPs associated with its components.  A Power Group's PSP does not include the PSPs of its ancestors or its children.</t>
        <t>The parent-child relationship reflects dependency.  One Power Group
is the child of another if any one of the child components depends
upon any one of the parent components.</t>
        <t>A network device's PSP characteristics can be described
by any number of equivalent Power Group hierarchies.  The paragraphs below
demonstrate how two equivalent Power Group hierarchies can describe the PSP characteristics of the line card in <xref target="lc1"/>.</t>
        <table anchor="lcpg">
          <name>A Fine-Grained Power Group Hierarchy</name>
          <thead>
            <tr>
              <th align="left">Identifier</th>
              <th align="left">Parent</th>
              <th align="left">PSP</th>
              <th align="left">Hardware Components</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">1</td>
              <td align="left">None</td>
              <td align="left">100 watts</td>
              <td align="left">LC1</td>
            </tr>
            <tr>
              <td align="left">2</td>
              <td align="left">1</td>
              <td align="left">300 watts</td>
              <td align="left">FE1</td>
            </tr>
            <tr>
              <td align="left">3</td>
              <td align="left">1</td>
              <td align="left">300 watts</td>
              <td align="left">FE2</td>
            </tr>
            <tr>
              <td align="left">4</td>
              <td align="left">2</td>
              <td align="left">15 watts</td>
              <td align="left">INTCOMP1</td>
            </tr>
            <tr>
              <td align="left">5</td>
              <td align="left">2</td>
              <td align="left">20 watts</td>
              <td align="left">INTCOMP2</td>
            </tr>
            <tr>
              <td align="left">6</td>
              <td align="left">3</td>
              <td align="left">15 watts</td>
              <td align="left">INTCOMP3</td>
            </tr>
            <tr>
              <td align="left">7</td>
              <td align="left">3</td>
              <td align="left">20 watts</td>
              <td align="left">INTCOMP4</td>
            </tr>
          </tbody>
        </table>
        <t><xref target="lcpg"/> describes the PSP characteristics of the line card
in <xref target="lc1"/> using a fine-grained Power Group hierarchy.  We call it
fine-grained because each Power Group contains only one component.<br/>
Therefore, each Power
Group's PSP is equal to the PSP of its one and only component.</t>
        <table anchor="lcpgmed">
          <name>A Less fine-grained Power Group Hierarchy</name>
          <thead>
            <tr>
              <th align="left">Identifier</th>
              <th align="left">Parent</th>
              <th align="left">PSP</th>
              <th align="left">Hardware Components</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">1</td>
              <td align="left">None</td>
              <td align="left">700 watts</td>
              <td align="left">LC1, FE1, FE2</td>
            </tr>
            <tr>
              <td align="left">2</td>
              <td align="left">1</td>
              <td align="left">15 watts</td>
              <td align="left">INTCOMP1</td>
            </tr>
            <tr>
              <td align="left">3</td>
              <td align="left">1</td>
              <td align="left">20 watts</td>
              <td align="left">INTCOMP2</td>
            </tr>
            <tr>
              <td align="left">4</td>
              <td align="left">1</td>
              <td align="left">15 watts</td>
              <td align="left">INTCOMP3</td>
            </tr>
            <tr>
              <td align="left">5</td>
              <td align="left">1</td>
              <td align="left">20 watts</td>
              <td align="left">INTCOMP4</td>
            </tr>
          </tbody>
        </table>
        <t><xref target="lcpgmed"/> describes the PSP characteristics of the line card
in <xref target="lc1"/> using a less fine-grained Power Group hierarchy.  We call it
less fine-grained because Power Group 1 contains three components (LC1,
FE1 and FE2).  Its PSP is equal to the sum of the PSPs of LC1, FE1 and FE2 (i.e., 700 watts).</t>
        <t><xref target="mod"/> describes how a network device's power-sleep capability
determines which of the equivalent Power Group hierarchies it should
advertise.</t>
      </section>
      <section anchor="interfaces-and-power-groups">
        <name>Interfaces and Power Groups</name>
        <t>An interface is not part of a Power Group, even if it contains
optics and consumes power. However, an interface can reference
one or more Power Groups. When an interface references a Power Group, it <bcp14>MUST</bcp14> reference a
Power Group that contains the hardware that supports it.</t>
        <t>Interfaces that reference the same Power Group share common hardware dependencies. Therefore, CSPF may treat them as a group, either diverting traffic flows away from them all or routing traffic flows through them all.</t>
        <t>A Link Aggregation Group (LAG) interface requires support from multiple
interface complexes. Therefore a LAG interface references every Power Group
that contains hardware that supports it.</t>
      </section>
      <section anchor="mod">
        <name>Power-Sleep Capability and Power Group Hierarchies</name>
        <t>A network device <bcp14>SHOULD</bcp14> advertise the least fine-grained Power Group
hierarchy that can exercise its complete power-savings capability.</t>
        <t>Assume that a network contains line cards that are
power-sleep capable. Those line cards contain forwarding
engines and interface complexes that are also power-sleep
capable. This means that the line cards, forwarding 
engines and interface complexes can be powered on
and off independently of the chassis.</t>
        <t>In order to exercise its complete power savings capability, 
information regarding line card, forwarding engine and interface complex 
dependencies  is required. Therefore,
the line card must advertise the fine-grained Power Group hierarchy 
in <xref target="lcpg"/>.</t>
        <t>Now assume that another network contains line cards that are
power-sleep capable. Those line cards contain interface 
complexes that are also power-sleep capable. However, the forwarding
engines are not power-sleep capable.</t>
        <t>In order to exercise its complete power savings capability,<br/>
information regarding line card and interface complex
dependencies is required.
However, information regarding forwarding engine dependencies
is not required. Therefore, the line card could advertise
either the fine-grained Power Group hierarchy in <xref target="lcpg"/> or the less 
fine-grained Power Group hierarchy in <xref target="lcpgmed"/>.</t>
      </section>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <t>Network operators must exercise care when configuring interfaces to be power-sleep capable.</t>
      <t>The network must maintain sufficient bandwidth and redundancy, even when all power-sleep capable interfaces are ASLEEP.</t>
      <t>Furthermore, interfaces that provide access to critical resources require special consideration. Critical resources include, but are not limited to, the following:</t>
      <ul spacing="normal">
        <li>
          <t>Network Management</t>
        </li>
        <li>
          <t>Network Controllers</t>
        </li>
        <li>
          <t>BGP Route Reflectors</t>
        </li>
      </ul>
      <t>Putting an interface to sleep can cause protocol churn. For example, if an interface to the Designated Router (DR) on a multipoint interface is put to sleep, the backup DR becomes the DR.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TBD</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requires no IANA actions.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Les Ginsberg, Joel Halpern, Xiao Li, Zhang Li and Carlos Pignataro for their reviews and helpful comments.</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="RFC4657">
          <front>
            <title>Path Computation Element (PCE) Communication Protocol Generic Requirements</title>
            <author fullname="J. Ash" initials="J." role="editor" surname="Ash"/>
            <author fullname="J.L. Le Roux" initials="J.L." role="editor" surname="Le Roux"/>
            <date month="September" year="2006"/>
            <abstract>
              <t>The PCE model is described in the "PCE Architecture" document and facilitates path computation requests from Path Computation Clients (PCCs) to Path Computation Elements (PCEs). This document specifies generic requirements for a communication protocol between PCCs and PCEs, and also between PCEs where cooperation between PCEs is desirable. Subsequent documents will specify application-specific requirements for the PCE communication protocol. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4657"/>
          <seriesInfo name="DOI" value="10.17487/RFC4657"/>
        </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="RFC3031">
          <front>
            <title>Multiprotocol Label Switching Architecture</title>
            <author fullname="E. Rosen" initials="E." surname="Rosen"/>
            <author fullname="A. Viswanathan" initials="A." surname="Viswanathan"/>
            <author fullname="R. Callon" initials="R." surname="Callon"/>
            <date month="January" year="2001"/>
            <abstract>
              <t>This document specifies the architecture for Multiprotocol Label Switching (MPLS). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3031"/>
          <seriesInfo name="DOI" value="10.17487/RFC3031"/>
        </reference>
        <reference anchor="I-D.many-lsr-power-group">
          <front>
            <title>Using IS-IS To Advertise Power Group Membership</title>
            <author fullname="Colby Barth" initials="C." surname="Barth">
              <organization>HPE</organization>
            </author>
            <author fullname="Tony Li" initials="T." surname="Li">
              <organization>HPE</organization>
            </author>
            <author fullname="Vishnu Pavan Beeram" initials="V. P." surname="Beeram">
              <organization>HPE</organization>
            </author>
            <author fullname="Ron Bonica" initials="R. P." surname="Bonica">
              <organization>HPE</organization>
            </author>
            <date day="22" month="June" year="2026"/>
            <abstract>
              <t>   Many networks have a daily utilization pattern.  For example, a
   network might be busy during the day and less busy at night.

   If the network is robust, it has enough capacity to satisfy demand
   during peak hours and excess capacity during non-peak hours.  That
   excess capacity increases energy costs and environmental impact.

   [I-D.many-teas-power-steering] introduces a Power Conserving Path
   Placement Strategy (PCPPS).  When possible, PCPPS concentrates
   traffic onto a small set of network resources.  When traffic is
   concentrated onto a small set of network resources, other network
   resources become idle and can be powered down until they are needed
   again.  This solves the problem of excess capacity during non-peak
   hours.

   PCPPS uses information that is distributed by an IGP.  This document
   specifies the IS-IS encoding for that information.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-many-lsr-power-group-03"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
/g5TTaoz4kgAAA==

-->

</rfc>
