Internet-Draft Congestion Avoidance Using Segment Routi October 2026
He & Deng Expires 16 April 2027 [Page]
Workgroup:
RTGWG Working Group
Internet-Draft:
draft-he-rtgwg-sr-ca-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
X. He
China Telecom
L. Deng
China Telecom

Congestion Avoidance Using Segment Routing

Abstract

This document describes a generic solution of congestion avoidance, which is aimed at providing local link congestion avoidance within the Segment Routing (SR) framework. Based on the concept of Topology Independent Loop-Free Alternate (TI- LFA) Fast Reroute (FRR), the selected shortest path can bypass the congested link while avoiding the formation of micro-loops. The advantage of this solution is that it does not require any protocol extension.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 16 April 2027.

▲

Table of Contents

1. Introduction

The emerging services including enhanced Mobile Broadband (eMBB) and Ultra-Reliable Low Latency Communication (uRLLC) have imposed stringent requirements on IP bearer network performance, demanding significantly reduced latency, minimized jitter, and minimal packet loss. However, Frequent network congestion incidents degrade network performance and introduce the uncertainty in service delivery. Seeking uncongested paths for these applications has become indispensable.

This document outlines a local congestion avoidance mechanism that leverages Segment Routing (SR) in the event of a congestion occurrence involving a directly connected link. This mechanism is designed for standard link-state Interior Gateway Protocol (IGP) shortest path scenarios. Non-SR mechanisms for local congestion avoidance are beyond the scope of this document. Non-local congestion avoidance is addressed in other documents, such as[I-D.ietf-fann-problem-statement], [I-D.zzhang-rtgwg-router-info] and [I-D.cheng-rtgwg-adaptive-routing-framework].

RFC9855 presents Topology Independent Loop-Free Alternate (TI- LFA) Fast Reroute (FRR), which is aimed at providing protection of node and Adjacency segments within the Segment Routing (SR) framework. It describes the capability providing a loop-free backup path that is effective across all network topologies. TI-LFA [RFC9855] paths are activated from the instant the PLR detects a failure in a local link and remain in effect until the IGP convergence at the PLR is fully achieved. Consequently, they are not susceptible to micro-loops that may arise due to variations in the IGP convergence times across different nodes which these paths traverse. This ensures a stable and predictable routing environment, minimizing disruptions typically associated with asynchronous network behavior.

For each destination (as specified by the IGP) in the network, TI-LFA pre-installs a backup forwarding entry for each protected destination ready to be activated upon detection of the failure of a link used to reach the destination.

Similarly, TI-LFA mechanism is also applicable to the congestion case. TI-LFA paths can be activated from the instant the PLR detects a congestion in a local link and remain in effect until the congestion is fully eliminated. The only difference lies in that in congstion scenarios, IGP convergence does not occur. Therefore, the Forwarding Information Base (FIB) in each router (including local node detecting the congestion) remains unchanged. Upon detection of the congestion recovery of the link, the backup forwarding entry for the specified protected destination can be inactivated, and this link will resume use for the traffic to reach the destination.

This document describes a generic solution of congestion avoidance, which is aimed at providing local link congestion avoidance within the Segment Routing (SR) framework. Based on the concept of TI-LFA FRR, the selected shortest path can bypass the congested link while avoiding the formation of micro-loops.

2. Conventions

2.1. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

2.2. Terminology

Abbreviations and Notations used in this document:

DLFA: Directed Loop-Free Alternate

FRR: Fast Reroute

IGP: Interior Gateway Protocol

LFA: Loop-Free Alternate

LSDB: Link State Database

PLR: Point of Local Repair

RL: Repair List

RLFA: Remote Loop-Free Alternate

SID: Segment Identifier

SPF: Shortest Path First

SR: Segment Routing

SRv6: Segment Routing over IPv6

TI-LFA: Topology Independent Loop-Free Alternate

The main notations used in this document are defined as follows:

3. Congestion avoidance using TI-LFA Repair Path

The TI-LFA repair path consists of an outgoing interface and a list of segments (a Repair List (RL)) to insert on the SR header in accordance with the data plane used. The RL encodes the explicit path to the destination, which avoids the congested link (corresponds to the protected link). At the same time, the RL is guaranteed to be loop-free.

The TI-LFA repair path is found by intersecting P(S, X) and Q(D, X) with the post-convergence path to D and computing the explicit SR- based path EP(P, Q) from a node P in P(S, X) to a node Q in Q(D, X) when these nodes are not adjacent along the post-convergence path. The TI-LFA RL is expressed generally as [Node-SID(P), EP(P, Q)].

The post-convergence path in this document designates the shortest path from the source to its destination that can bypass the congested link, as if this link fails. Actually, when a link encounters congestion, IGP convergence does not occur,and the FIB in each router (including local node detecting the congestion) remains unchanged.

Take Figure 1 as an example. The target is to find a TI-LFA backup for the traffic from S to D, considering the congested link S-N1.

     S --------- N1--------- D
     |\                      |
     | \                     |
     |  \                    |
     |   N2----- R1**********R2
     |           *
     N3 **********

       ***** : link with high metric (100)
       ----- : link with metric 1
Figure 1: Sample Topology with TI-LFA

As a result, the TI-LFA RL of S for destination D considering the congested link S-N1 is: [Node-SID(R1), Adj-SID(R1-R2)].

3.1. FRR Path Using a Direct Neighbor

When a direct neighbor is in P(S, X) and Q(D, x), and the link to that direct neighbor is on the post-convergence path, the outgoing interface is set to that neighbor and the repair segment list is empty.

This is comparable to a post-convergence LFA FRR repair [RFC5286].

3.2. FRR Path Using a PQ Node

When a remote node R is in P(S, X) and Q(D, X) and on the post- convergence path, the RL is made of a single node segment to R, and the outgoing interface is set to the outgoing interface used to reach R.

This is comparable to a post-convergence RLFA repair tunnel [RFC7490].

3.3. FRR Path Using a P Node and Q Node That Are Adjacent

When a node P is in P(S, X) and a node Q is in Q(D, X), and both are on the post-convergence path and are adjacent to each other, the RL is made of two segments: a node segment to P (to be processed first), followed by an Adjacency segment from P to Q.

This is comparable to a post-convergence Directed Loop-Free Alternate (DLFA) repair tunnel [I-D.bryant-ipfrr-tunnels].

3.4. Connecting Distant P and Q Nodes Along Post-Convergence Paths

In some cases, there is no adjacent P and Q node along the post-convergence path. A list of Adjacency SIDs can be used to encode the path between P and Q. However, the PLR can perform additional computations to compute a shorter list of segments that represent a loop-free path from P to Q. How these computations are done is out of the scope of this document and is left to implementation.

4. Congestion Detection and FIB Modification

Typically, We only need to provide congestion avoidance backup paths for loss or delay sensitive services. First, the PLR is required to configure TI-LFA based on link protection for the destination prefixes of those protected traffic flows (for VPN services, they can be IP addresses of Egress PEs ). Then the corresponding TI-LFA RLs are automatically generated based on local Link State Database (LSDB) and installed into FIB as backup path.

A link congestion event can be quickly detected by the hardware (e.g., ASIC) at milliseconds or even microseconds interval. Though a transient congestion can be detected due to the instantaneous queue size reaching a threshold, it may be a noisy signal of congestion, which should not be used as a typical congestion event. Preferably, a persistent congestion event lasting for at least tens of milliseconds is of value for the protected traffic flows. On the other hand, transient congestion could lead to frequent switchover of the protected traffic between the primary link and backup path, and this will excessively consume the processing resources required for packet encapsulation and decapsulation. Therefore, a persistent congestion can be most likely detected based on the average queue length exceeding a threshold, and used as the trigger for traffic switching. The Exponentially Weighted Moving Average (EWMA) is widely adopted to estimate the average queue length, and is recommended for use in this document. The specific specification of capturing a reliable congestion is out of the scope of this document.

Upon detection of a congestion event, the PLR MUST set in FIB the forwarding entries corresponding to the protected destination prefixes at "invalid" state. At the moment, TI-LFA paths can be activated and remain in effect until the forwarding entries get available again. Upon detection of the congestion recovery of the link, the PLR MUST set in FIB the forwarding entries corresponding to the protected destination prefixes at "valid" state. The mechanisms for disabling the forwarding entries in FIB upon detection of congestion and enabling the forwarding entries in FIB upon detection of congestion recovery depend on implementations, and are outside the scope of this document.

To prevent frequent switchover of traffic flows between the protected link and backup path, the PLR is required to support a persistent timer before the protected trffic flows are switched to the protected link upon detection of the congestion recovery of the link. The time for the persistent timer should be configurable.

5. Example Application of TI-LFA for End-to-End Congestion Avoidance

An example application of TI-LFA backup path for end-to-end congestion avoidance is shown in Figure 2. It is a commonly deployed topology.

     S --------- N1--------- D
     |           |           |
     |           |           |
     |           |           |
     N2----------R1---------R2
Figure 2: Sample Topology with TI-LFA for End-to-End Congestion Avoidance

In the above topology, all links have the same metric. The traffic flow with loss or delay-sensitivity from the source (S) to the destination (D) selects the shortest path: [S -> N1 -> D]. To realize end-to-end congestion avoidance, both link S-N1 and link N1-D need to be protected when they encounter congestion.

Asuming that link S-N1 is congested, the TI-LFA backup from S to D is computed as follows.

As a result, the TI-LFA RL of source S for destination D considering the congested link S-N1 is: Node-SID(R1).

The post-convergence path from S to D has two equal cost paths:

In SRv6 network, when the protected traffic flow is switched to TI-LFA backup path, the node S serving as the PLR needs to support the H.Encaps behavior, and adds the outer IPv6 header to the original IPv6 packet unmodified (with the exception of IPv6 Hop Limit that is decremented), with the source IPv6 address being the address of the node S (e.g., assigned to its loopback) and the destination IPv6 address being the SID of the node R1. The SID of the node R1 may be End.DT6, End.DT46 or End with USD flavor.

Asuming that link N1-D is congested, the TI-LFA backup from N1 to D is computed as follows.

An SR-explicit path is then computed from R1 (P node) to R2 (Q node) is: Adj-SID(R1-R2).

As a result, the TI-LFA RL of N1 for destination D considering the congested link N1-D is: [Node-SID(R1), Adj-SID(R1-R2)].

In SRv6 network, when the protected traffic flow is switched to TI-LFA backup path, the node N1 serving as the PLR needs to support the H.Encaps behavior, and add the outer IPv6 header to the original IPv6 packet unmodified (with the exception of IPv6 Hop Limit that is decremented), with the source IPv6 address being the address of the node N1 (e.g., assigned to its loopback) and the destination IPv6 address being the SID of the node R1. The SID of the node R1 may be End.DX6 or End.X with USD flavor, which has a cross-connect to R2.

6. IANA Considerations

This document has no IANA actions.

7. Security Considerations

The security considerations described in [RFC5286], [RFC7490] and [RFC9855] apply to this document. Similarly, as the solution described in this document is based on SR technology, the reader should be aware of the security considerations related to this technology (see [RFC8402]) and its data plane instantiations (see [RFC8660], [RFC8754], and [RFC8986]).

As transient congestion could lead to frequent switchover of the protected traffic between the primary link and backup path, and this will excessively consume the processing resources required for packet encapsulation and decapsulation, impacting forwarding performance. Therefore, cautious measures SHOULD be taken to avoid using instantaneous congestion as a trigger for traffic switchover as much as possible. AT the same time, to prevent frequent switchover of traffic flow between the protected link and backup path, the PLR SHOULD support a persistent timer before the protected trffic flows are switched to the protected link.

8. References

8.1. Normative References

[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC5286]
Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for IP Fast Reroute: Loop-Free Alternates", RFC 5286, DOI 10.17487/RFC5286, , <https://www.rfc-editor.org/info/rfc5286>.
[RFC7490]
Bryant, S., Filsfils, C., Previdi, S., Shand, M., and N. So, "Remote Loop-Free Alternate (LFA) Fast Reroute (FRR)", RFC 7490, DOI 10.17487/RFC7490, , <https://www.rfc-editor.org/info/rfc7490>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC8402]
Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, , <https://www.rfc-editor.org/info/rfc8402>.
[RFC8986]
Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer, D., Matsushima, S., and Z. Li, "Segment Routing over IPv6 (SRv6) Network Programming", RFC 8986, DOI 10.17487/RFC8986, , <https://www.rfc-editor.org/info/rfc8986>.
[RFC9855]
Bashandy, A., Litkowski, S., Filsfils, C., Francois, P., Decraene, B., and D. Voyer, "Topology Independent Fast Reroute Using Segment Routing", RFC 9855, DOI 10.17487/RFC9855, , <https://www.rfc-editor.org/info/rfc9855>.

8.2. Informative References

[I-D.bryant-ipfrr-tunnels]
Bryant, S., Filsfils, C., Previdi, S., and M. Shand, "IP Fast Reroute using tunnels", Work in Progress, Internet-Draft, draft-bryant-ipfrr-tunnels-03, , <https://datatracker.ietf.org/doc/html/draft-bryant-ipfrr-tunnels-03>.
[I-D.cheng-rtgwg-adaptive-routing-framework]
Cheng, W., Lin, C., Wang, K., Ye, J., Zhuang, R., and P. Huo, "Adaptive Routing Framework", Work in Progress, Internet-Draft, draft-cheng-rtgwg-adaptive-routing-framework-05, , <https://datatracker.ietf.org/doc/html/draft-cheng-rtgwg-adaptive-routing-framework-05>.
[I-D.ietf-fann-problem-statement]
Dong, J., McBride, M., Clad, F., Zhang, Z. J., Zhu, Y., Xu, X., Zhuang, R., Pang, R., Lu, H., Liu, Y., Contreras, L. M., Mehmet, D., and R. Rahman, "Fast Network Notifications Problem Statement", Work in Progress, Internet-Draft, draft-ietf-fann-problem-statement-00, , <https://datatracker.ietf.org/doc/html/draft-ietf-fann-problem-statement-00>.
[I-D.zzhang-rtgwg-router-info]
Zhang, Z. J., Wang, K., Lin, C., Vaidya, N., Tantsura, J., and Y. Liu, "Advertising Router Information", Work in Progress, Internet-Draft, draft-zzhang-rtgwg-router-info-06, , <https://datatracker.ietf.org/doc/html/draft-zzhang-rtgwg-router-info-06>.
[RFC8660]
Bashandy, A., Ed., Filsfils, C., Ed., Previdi, S., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing with the MPLS Data Plane", RFC 8660, DOI 10.17487/RFC8660, , <https://www.rfc-editor.org/info/rfc8660>.

Authors' Addresses

Xiaoming He
China Telecom
Lijie Deng
China Telecom