<?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.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-zhao-anima-automatic-congestion-relief-01" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Automatic Network Congestion Relief">Automatic Network Congestion Relief</title>
    <seriesInfo name="Internet-Draft" value="draft-zhao-anima-automatic-congestion-relief-01"/>
    <author initials="J." surname="Zhao" fullname="Jing Zhao" role="editor">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhaoj501@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="S." surname="Zhang" fullname="Shuai Zhang">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>zhangs633@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="M." surname="Han" fullname="Mengyao Han">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>hanmy12@chinaunicom.cn</email>
      </address>
    </author>
    <date year="2026" month="July" day="06"/>
    <area>Operations and Management Area</area>
    <workgroup>anima</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 48?>

<t>This document describes an automatic network congestion relief mechanism for congestion caused by sudden capacity reduction, such as fiber failures. The mechanism uses traffic modeling, real-time congestion monitoring, policy generation, policy propagation, traffic regulation, and policy reversion to redistribute selected traffic from a congested plane to a lightly loaded paired plane. The objective is to reduce manual intervention, shorten congestion mitigation time, and improve network resilience during failure conditions.</t>
    </abstract>
  </front>
  <middle>
    <?line 52?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Fiber failures and other transport-layer faults may suddenly reduce the available capacity of an inter-domain or inter-plane link group. When the remaining capacity is insufficient for the current traffic load, congestion may occur on the affected plane. In current operational practice, operators often need to inspect traffic conditions, identify high-impact flows or prefixes, and manually adjust routing policies to relieve congestion. This process may take a long time and may not meet the response-time requirements of large-scale carrier networks.</t>
      <t>This document introduces an automatic congestion relief mechanism based on traffic analysis and dynamic policy regulation. The mechanism is intended to identify the traffic that contributes most to congestion, calculate the amount of traffic that should be redistributed, generate a limited-scope routing adjustment policy, propagate the policy to the relevant device or peer, and withdraw the policy after the failed capacity is restored.</t>
      <t>The mechanism described in this document focuses on the congestion relief procedure itself. It is not intended to define a new general-purpose network automation framework. Instead, it describes a closed-loop technical approach that can be used as an operational practice for improving network resilience in scenarios where link capacity is reduced and congestion needs to be mitigated quickly.</t>
    </section>
    <section anchor="automatic-network-congestion-relief">
      <name>Automatic Network Congestion Relief</name>
      <section anchor="mechanism-overview">
        <name>Mechanism Overview</name>
        <t>The automatic network congestion relief mechanism is a device-assisted closed-loop process. It is triggered when the available capacity of a link or link group decreases and the utilization of the remaining capacity exceeds a predefined congestion threshold. The mechanism identifies traffic that can be moved, generates routing-priority adjustment policies, propagates these policies to the relevant routing peers or paired devices, monitors the result of the adjustment, and gradually removes the policies after the failure is recovered.</t>
        <t>The mechanism consists of three major functions:</t>
        <ul spacing="normal">
          <li>
            <t>Congestion detection and traffic analysis.</t>
          </li>
          <li>
            <t>Policy generation and traffic regulation.</t>
          </li>
          <li>
            <t>Policy reversion and stability control.</t>
          </li>
        </ul>
        <t>The following figure shows the logical relationship among the functions.</t>
        <figure anchor="fig-1">
          <name>Mechanism Framework Description</name>
          <artwork><![CDATA[
   +-+-+-+-+-+-+-+-+-+-+       +-+-+-+-+-+-+-+-+-+-+-+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | Traffic Modeling  |------>| Traffic Monitoring  |---->| Intelligent Policy Generation |
   +-+-+-+-+-+-+-+-+-+-+       +-+-+-+-+-+-+-+-+-+-+-+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                                                    |
                                                                    |
                               +-+-+-+-+-+-+-+-+-+-+-+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                               |   Policy Reversion  |<----|      Policy Regulation      |
                               +-+-+-+-+-+-+-+-+-+-+-+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                
]]></artwork>
        </figure>
        <t>Congestion detection and traffic analysis provide the basis for identifying high-impact traffic and determining whether a link or link group has entered a congestion state. Policy generation and traffic regulation calculate the required relief volume, select candidate prefixes or flows, generate a temporary routing adjustment policy, and propagate the policy to guide selected traffic to a paired plane. Policy reversion and stability control monitor the adjustment result, avoid traffic oscillation, and remove the temporary policy after the failed capacity is restored.</t>
      </section>
      <section anchor="congestion-detection-and-traffic-analysis">
        <name>Congestion Detection and Traffic Analysis</name>
        <t>Congestion detection and traffic analysis are used to understand the current traffic distribution, detect capacity reduction, and identify the traffic that contributes most to congestion. This part of the mechanism provides the input for later policy generation.</t>
        <section anchor="functional-inputs">
          <name>Functional Inputs</name>
          <t>The congestion relief mechanism relies on the following inputs:</t>
          <ul spacing="normal">
            <li>
              <t>Traffic statistics collected from the forwarding plane, including high-volume flows and traffic distribution.</t>
            </li>
            <li>
              <t>BGP RIB-out information used to correlate traffic with routing prefixes and outgoing paths.</t>
            </li>
            <li>
              <t>Link bandwidth and utilization information obtained through BGP-LS or other telemetry mechanisms.</t>
            </li>
            <li>
              <t>Interface statistics collected at a second-level interval.</t>
            </li>
            <li>
              <t>Operator-defined congestion thresholds and recovery thresholds.</t>
            </li>
            <li>
              <t>Information about paired planes or alternative paths that can receive redistributed traffic.</t>
            </li>
          </ul>
          <t>These inputs are used together to determine whether congestion exists, how much traffic needs to be moved, which traffic can be selected, and where the selected traffic can be redirected.</t>
        </section>
        <section anchor="traffic-modeling">
          <name>Traffic Modeling</name>
          <t>Traffic modeling is used to identify the traffic that has the largest impact on the monitored link or plane. The forwarding chip of the device performs real-time traffic sorting using full-flow data and identifies the Top N traffic flows.</t>
          <t>The intelligent component subscribes to BGP RIB-out information and correlates traffic statistics with routing prefixes and outgoing paths. This correlation allows the device to determine which prefixes are responsible for large traffic volumes and whether these prefixes can be adjusted through routing policy.</t>
          <t>The traffic model can include the following information:</t>
          <ul spacing="normal">
            <li>
              <t>Traffic volume of each high-impact flow or prefix.</t>
            </li>
            <li>
              <t>Corresponding routing prefix and outgoing path.</t>
            </li>
            <li>
              <t>Historical traffic pattern of the flow or prefix.</t>
            </li>
            <li>
              <t>Flow rate and traffic burst characteristics.</t>
            </li>
            <li>
              <t>Packet length distribution.</t>
            </li>
            <li>
              <t>Proportion of TCP and UDP traffic.</t>
            </li>
            <li>
              <t>Proportion of fragmented packets.</t>
            </li>
            <li>
              <t>Proportion of SYN packets.</t>
            </li>
          </ul>
          <t>The purpose of traffic modeling is not only to identify large flows, but also to provide a basis for controlled policy generation. For example, if several prefixes together can reduce the load of the affected plane below the congestion threshold, only those prefixes need to be adjusted. This avoids unnecessary routing changes and limits the impact of the mitigation action.</t>
        </section>
        <section anchor="congestion-detection">
          <name>Congestion Detection</name>
          <t>Congestion detection determines whether the monitored link or link group has entered a congestion state. The device obtains inter-domain link bandwidth and utilization information through BGP-LS extensions or other equivalent telemetry mechanisms. The device also collects local interface statistics at a second-level interval.</t>
          <t>When the utilization of the affected link or link group exceeds the configured congestion threshold, the device reports a congestion event and triggers policy generation.</t>
          <t>The detection function uses the following information when determining the congestion state:</t>
          <ul spacing="normal">
            <li>
              <t>Available capacity before and after a failure</t>
            </li>
            <li>
              <t>Current traffic load on the affected plane</t>
            </li>
            <li>
              <t>Current traffic load on the paired plane</t>
            </li>
            <li>
              <t>Congestion threshold configured by the operator</t>
            </li>
            <li>
              <t>Recovery threshold configured by the operator</t>
            </li>
            <li>
              <t>Duration of threshold violation</t>
            </li>
            <li>
              <t>Remaining capacity of the paired plane</t>
            </li>
          </ul>
          <t>To avoid unnecessary policy oscillation, the device uses dampening mechanisms such as hold-down timers, hysteresis thresholds, or minimum observation windows. A policy generation action is not triggered by a short-lived traffic spike unless the spike persists for a configured period.</t>
          <section anchor="bgp-ls-utilized-bandwidth-tlv">
            <name>BGP-LS Utilized Bandwidth TLV</name>
            <t>The device uses the Utilized Bandwidth information to describe inter-domain BGP Egress Peer Engineering (EPE) link bandwidth and bandwidth utilization.</t>
            <t>The BGP-LS Utilized Bandwidth TLV reuses the Maximum Link Bandwidth TLV (Type 1089) <xref target="RFC5305"/>. This TLV is used to describe the bandwidth and bandwidth utilization of inter-domain BGP EPE links.</t>
            <t>The format of the BGP-LS Utilized Bandwidth TLV is as follows.</t>
            <figure anchor="fig-2">
              <name>BGP-LS Utilized Bandwidth KEY TLV</name>
              <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |               Type            |             Length            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Utilized Bandwidth                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
             Figure 2: BGP-LS Utilized Bandwidth KEY TLV
]]></artwork>
            </figure>
          </section>
        </section>
      </section>
      <section anchor="policy-generation-and-traffic-regulation">
        <name>Policy Generation and Traffic Regulation</name>
        <t>Policy generation and traffic regulation are the core functions of the congestion relief mechanism. After congestion is detected, the device calculates the amount of traffic that needs to be redistributed, selects candidate prefixes or flows, generates a temporary routing adjustment policy, and propagates the policy so that selected traffic is redirected from the affected plane to the paired plane.</t>
        <section anchor="relief-traffic-calculation">
          <name>Relief Traffic Calculation</name>
          <t>The device compares the current load of the affected plane with the remaining available capacity and the configured congestion threshold. The difference between the current load and the acceptable load is used as the target amount of traffic that needs to be redistributed.</t>
          <t>The calculation can be expressed conceptually as follows:</t>
          <artwork><![CDATA[
Target relief traffic = Current traffic on affected plane - Acceptable traffic after capacity reduction
]]></artwork>
          <t>The acceptable traffic is determined by the remaining capacity of the affected plane and the operator-defined congestion threshold. For example, if a link group loses part of its capacity after a fiber failure, the mechanism calculates how much traffic needs to be moved away so that the utilization of the remaining capacity falls below the congestion threshold.</t>
          <t>The calculation also considers the capacity of the paired plane. The generated policy does not move more traffic than the paired plane can safely receive.</t>
        </section>
        <section anchor="candidate-prefix-selection">
          <name>Candidate Prefix Selection</name>
          <t>The device uses the Top N traffic model to identify high-impact flows or prefixes. Candidate traffic is selected based on traffic volume, prefix-to-path correlation, traffic stability, and whether the traffic can be redirected through routing-priority adjustment.</t>
          <t>The selection logic uses the following information:</t>
          <ul spacing="normal">
            <li>
              <t>Top N traffic ranking.</t>
            </li>
            <li>
              <t>Mapping between traffic and routing prefixes.</t>
            </li>
            <li>
              <t>BGP RIB-out information.</t>
            </li>
            <li>
              <t>Current outgoing path of the selected prefix.</t>
            </li>
            <li>
              <t>Historical stability of the traffic.</t>
            </li>
            <li>
              <t>Expected relief volume after adjustment.</t>
            </li>
            <li>
              <t>Remaining capacity of the paired plane.</t>
            </li>
          </ul>
          <t>The objective is to select a small number of high-impact prefixes or flows that can provide sufficient congestion relief. This prevents unnecessary adjustment of low-impact traffic and reduces the risk of disturbing existing routing policies.</t>
        </section>
        <section anchor="adjustment-policy-generation">
          <name>Adjustment Policy Generation</name>
          <t>After candidate traffic is selected, the device generates a temporary routing-priority adjustment policy. Since the routing prefixes sent to one network domain through RIB-out may be the same, the device can adjust routing attributes after identifying the Top N routing prefixes to be moved. The policy lowers the priority of selected prefixes on the affected plane and guides traffic to the paired plane.</t>
          <t>The generated policy is limited to selected prefixes, neighbors, or paths. It does not change unrelated routing policies or affect traffic that does not need to be moved.</t>
          <t>The generated policy includes the following information:</t>
          <ul spacing="normal">
            <li>
              <t>Selected prefixes or traffic identifiers.</t>
            </li>
            <li>
              <t>Affected neighbor or peer.</t>
            </li>
            <li>
              <t>Affected plane or link group.</t>
            </li>
            <li>
              <t>Target paired plane or alternative path.</t>
            </li>
            <li>
              <t>Routing attributes to be adjusted.</t>
            </li>
            <li>
              <t>Expected traffic relief volume.</t>
            </li>
            <li>
              <t>Policy lifetime or re-evaluation interval.</t>
            </li>
            <li>
              <t>Rollback condition.</t>
            </li>
          </ul>
          <t>The device does not simply move traffic blindly. It uses the traffic model and monitored utilization data to determine which traffic is moved, how much traffic is moved, and where the selected traffic is redirected.</t>
        </section>
        <section anchor="policy-propagation-and-traffic-regulation">
          <name>Policy Propagation and Traffic Regulation</name>
          <t>After the adjustment policy is generated, the device propagates the policy through the BGP RPD protocol or another policy distribution mechanism. The purpose of policy propagation is to deliver the temporary routing-priority adjustment to the relevant peer or paired device so that selected traffic can be redirected from the affected plane to the lightly loaded plane.</t>
          <t>The policy propagation function provides the following capabilities:</t>
          <ul spacing="normal">
            <li>
              <t>The policy is applied only to selected prefixes, neighbors, or paths.</t>
            </li>
            <li>
              <t>The policy preserves existing routing policies that are not related to the congestion relief action.</t>
            </li>
            <li>
              <t>The policy includes enough information for the receiving device to validate and apply the adjustment.</t>
            </li>
            <li>
              <t>The receiving device can reject the policy if it conflicts with local policy or capacity constraints.</t>
            </li>
            <li>
              <t>The originating device monitors the effect of the policy after it is applied.</t>
            </li>
          </ul>
          <t>After policy propagation, the device continues to monitor the utilization of both the affected plane and the paired plane. If the affected plane is still congested, the device can generate an additional limited-scope adjustment. If the paired plane approaches its own congestion threshold, the device stops further traffic movement or revises the policy.</t>
          <t>The end-to-end process is designed to complete within seconds in order to alleviate congestion quickly. The exact convergence time depends on implementation, network scale, policy distribution delay, and routing convergence behavior.</t>
        </section>
      </section>
      <section anchor="policy-reversion-and-stability-control">
        <name>Policy Reversion and Stability Control</name>
        <t>Policy reversion and stability control ensure that the congestion relief mechanism remains controlled during and after the adjustment. This part of the mechanism monitors the effect of policy enforcement, prevents routing or traffic oscillation, and gradually removes temporary policies after the failed capacity is restored.</t>
        <section anchor="closed-loop-monitoring">
          <name>Closed-loop Monitoring</name>
          <t>After the policy is applied, the device monitors the traffic distribution on both the affected plane and the paired plane. The monitoring result is used to determine whether the adjustment has achieved the expected relief effect.</t>
          <t>Closed-loop monitoring tracks the following information:</t>
          <ul spacing="normal">
            <li>
              <t>Utilization of the affected plane after policy enforcement.</t>
            </li>
            <li>
              <t>Utilization of the paired plane after receiving redistributed traffic.</t>
            </li>
            <li>
              <t>Actual traffic relief volume.</t>
            </li>
            <li>
              <t>Difference between expected and actual relief effect.</t>
            </li>
            <li>
              <t>New congestion events caused by traffic redistribution.</t>
            </li>
            <li>
              <t>Stability of the recovered link or link group.</t>
            </li>
          </ul>
          <t>If the actual relief effect is lower than expected, the mechanism can re-evaluate the traffic model and generate an additional limited-scope adjustment. If the paired plane becomes close to congestion, the mechanism can stop further adjustment or roll back part of the policy.</t>
        </section>
        <section anchor="policy-reversion">
          <name>Policy Reversion</name>
          <t>Policy reversion removes temporary congestion relief policies after the failed capacity is restored or after the congestion condition disappears.</t>
          <t>After the interrupted link recovers, the optimization policies are gradually withdrawn. With the revocation of the policies, network traffic progressively returns to the load-sharing state before the failure.</t>
          <t>The policy reversion process considers the following factors:</t>
          <ul spacing="normal">
            <li>
              <t>Whether the recovered link has remained stable for a configured observation period.</t>
            </li>
            <li>
              <t>Whether the affected plane has enough available capacity after recovery.</t>
            </li>
            <li>
              <t>Whether immediate reversion may cause traffic oscillation.</t>
            </li>
            <li>
              <t>Whether the paired plane needs to release redistributed traffic gradually.</t>
            </li>
            <li>
              <t>Whether the original routing policy has changed during the failure period.</t>
            </li>
          </ul>
          <t>A gradual reversion process helps avoid traffic oscillation. The device can withdraw policies in batches according to prefix priority, traffic volume, or operator-defined order. The device continues monitoring link utilization during reversion. If congestion reappears, the reversion process is paused or rolled back.</t>
        </section>
        <section anchor="oscillation-avoidance">
          <name>Oscillation Avoidance</name>
          <t>The congestion relief mechanism uses stability controls to prevent repeated policy generation and withdrawal. These controls are important because traffic redistribution can change utilization on both the affected plane and the paired plane.</t>
          <t>The following mechanisms can be used to reduce oscillation risk:</t>
          <ul spacing="normal">
            <li>
              <t>Separate congestion trigger and recovery thresholds.</t>
            </li>
            <li>
              <t>Hold-down timers before policy generation.</t>
            </li>
            <li>
              <t>Minimum observation windows for congestion detection.</t>
            </li>
            <li>
              <t>Maximum traffic volume that can be moved in one adjustment cycle.</t>
            </li>
            <li>
              <t>Maximum number of prefixes that can be adjusted at one time.</t>
            </li>
            <li>
              <t>Capacity verification of the paired plane before policy propagation.</t>
            </li>
            <li>
              <t>Gradual policy withdrawal after link recovery.</t>
            </li>
            <li>
              <t>Rollback when congestion reappears during reversion.</t>
            </li>
          </ul>
          <t>These controls allow the mechanism to behave as a controlled congestion relief capability rather than an unrestricted automatic routing change function.</t>
        </section>
        <section anchor="operational-guardrails">
          <name>Operational Guardrails</name>
          <t>Operators configure the congestion relief mechanism with explicit guardrails. These guardrails help ensure that automatic adjustment does not introduce instability or conflict with existing routing policies.</t>
          <t>The following operational practices are useful for deployment:</t>
          <ul spacing="normal">
            <li>
              <t>Configure congestion trigger and recovery thresholds separately.</t>
            </li>
            <li>
              <t>Set a minimum duration for congestion detection before triggering policy generation.</t>
            </li>
            <li>
              <t>Limit the maximum amount of traffic that can be moved in one adjustment cycle.</t>
            </li>
            <li>
              <t>Limit the maximum number of prefixes or policies that can be adjusted at one time.</t>
            </li>
            <li>
              <t>Configure paired-plane capacity checks before policy propagation.</t>
            </li>
            <li>
              <t>Record all generated, propagated, modified, and withdrawn policies.</t>
            </li>
            <li>
              <t>Provide an operator override function to stop automatic adjustment when necessary.</t>
            </li>
            <li>
              <t>Support audit and troubleshooting by recording the trigger reason, selected prefixes, expected relief volume, actual relief result, and rollback time.</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The automatic congestion relief mechanism changes routing priority and can affect traffic distribution. Therefore, it requires strict security and operational controls.</t>
      <t>Policy generation and propagation are protected by authentication and authorization mechanisms. A device does not accept congestion relief policies from an unauthenticated or unauthorized source. Policy messages are protected against tampering and replay attacks.</t>
      <t>The mechanism supports policy validation before applying a received policy. The receiving device verifies that the policy is within the allowed scope, does not conflict with local policy, and does not exceed configured capacity or traffic-movement limits.</t>
      <t>The mechanism provides audit logs for congestion detection, policy generation, policy propagation, policy application, and policy reversion. Operators can determine why a policy was generated, which prefixes or paths were affected, and when the policy was withdrawn.</t>
      <t>The mechanism supports manual override and emergency stop. If an automatically generated policy causes unexpected behavior, the operator can disable the policy and restore the original routing behavior.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no IANA requests.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC5305" target="https://www.rfc-editor.org/info/rfc5305" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5305.xml">
        <front>
          <title>IS-IS Extensions for Traffic Engineering</title>
          <author fullname="T. Li" initials="T." surname="Li"/>
          <author fullname="H. Smit" initials="H." surname="Smit"/>
          <date month="October" year="2008"/>
          <abstract>
            <t>This document describes extensions to the Intermediate System to Intermediate System (IS-IS) protocol to support Traffic Engineering (TE). This document extends the IS-IS protocol by specifying new information that an Intermediate System (router) can place in Link State Protocol Data Units (LSP). This information describes additional details regarding the state of the network that are useful for traffic engineering computations. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5305"/>
        <seriesInfo name="DOI" value="10.17487/RFC5305"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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
9S2pEd+NoAIzOGlH+l9gj8wQvVAAAA==

-->

</rfc>
