| Internet-Draft | Flow Control Detection | March 2026 |
| Liu & Liu | Expires 3 September 2026 | [Page] |
[I-D.ietf-rtgwg-net-notif-ps] establishes usecases and requirements for fast notification delivery for network events (e.g., failure, congestion or state change) in modern network applications.¶
This document proposes a proactive detection mechanism that enables the flow control notification message generating downstream node to be aware of the nearest upstream node capable of processing the message . The mechanism operates in the data plane, uses probe packets that follow the same path as data traffic, and maintains state only where needed. While proposed for flow control, the same mechanism may support other fast notification use cases that require distributed recipient node discovery.¶
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 3 September 2026.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
[I-D.ietf-rtgwg-net-notif-ps] establishes requirements for sub-millisecond to millisecond fast notification delivery for network events (e.g., failure, congestion or state change) in modern network applications.¶
An example where this fast network notification problem arises is flow control in wide-area networks (WANs). With the growth of intelligent computing services, scenarios such as disaggregated computing and real-time inference require the lossless transmission of large volumes of bursty traffic over WANs. To achieve lossless data transmission over WAN, there're some recent works aiming to deploy flow control mechanisms in WAN to avoid packet loss in case of congestion, e.g, [I-D.ruan-spring-priority-flow-control-sid] discusses how to deploy PFC(Priority-based Flow Control, [IEEE802.1Qbb]) in WAN based on SRv6 data plane, and [I-D.liu-rtgwg-srv6-cc] proposes the method of precise/fine-grained flow control to achieve flow control at the network slice [RFC9543] level.¶
As in [I-D.ietf-rtgwg-net-notif-ps], the fast network notification recipient nodes include adjacent routers/switches, non-adjacent routers/switches, ingress nodes, end hosts, and controllers.¶
To deploy flow control mechanism in WAN, the node facing congestion needs to generate a flow control message and sends it to the upstream point which is able to perform the flow control action (e.g, stop sending the corresponding traffic or reducing the sending rate). In this case, the recipient node may be the adjacent router/switch, non-adjacent router/switch or the ingress node.¶
To control the sending of the flow control message, one of the following mechanisms may be used:¶
Based on the above considerations, this document proposes a proactive detection mechanism for the distributed decision mechanism, letting the congested node to know precisely which upstream point should the flow control message be sent to. Besides flow control in WAN, this mechanism potentially can support other types of network fast notification use cases if the distributed decision mechanism is required.¶
The detailed flow control mechanism itself on the recipient node is out of the scope of this document.¶
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.¶
+----------+ +----------+
| Data | | Data |
| center A | | center B |
+----------+ +----------+
| Congestion ^
| | |
v v |
+----+ --> +----+ --> +----+ --> +----+ --> +----+
| R1 | | R2 | | R3 | | R4 | | R5 |
+----+ +----+ +----+ +----+ +----+
As shown in Figure 1, data center A and data center B are connected via a path(R1-R2-R3-R4-R5) in WAN.¶
R1,R2,R4 and R5 are able to perform the function of flow control, and R3 is a legacy device which doesn't support any flow control technology.¶
When congestion occurs at R4, R4 generates a flow control message (e.g, the PFC pause frame defined in [IEEE802.1Qbb], the congestion notification message defined in [I-D.liu-rtgwg-srv6-cc]) to the nearest upstream stream node that is able to perform flow control, i.e, node R2.¶
R2 receives the notification and performs the flow control based on the content of the notification message and local capacity. If R2 cannot handle the congestion, a flow control message is forwarded further upstream to R1.¶
For the distributed decision mechanism, what is needed is a lightweight, data-plane method that allows each notification message generating node to be aware of the identity of the nearest upstream point capable of handling a specific class of fast notifications. This discovery should be:¶
The basic concept of the proactive control point detection method in this document is to send a control point detection packet along the packet forwarding path.¶
When receiving the control detection packet, the node that is capable of flow control updates the packet with its own information(e.g, the interface address or the corresponding SRv6 ajacency SID of the interface), so the detection packet will always carry the information of the nearest upstream node that's capable of flow control and the node receiving the detection packet would store this information and use it as the destination of the flow control message when congestion occurs.¶
A new Hop-by-Hop option (Section 4.3 of [RFC8200]) type is defined in this document to carry the fields above for control point detection. Its format is shown in Figure 2.¶
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option Type | Opt Data Len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Type | Upstream Type | Context Type | Reversed |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Upstream Point Info (4 or 16 octets) ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ Context (optional) ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The packet fields defined above can be carried in-band or out-band as long as the packet is forwarded along the same path of the normal traffic flow.¶
As in Figure 1, the traffic of network slice 1 is forwarded along an SRv6 path, the corresponding SID list is <SID-R12,SID-R23,SID-R45>, whereas SID-R12 is the adjacency SID of R1 for the adjacency between R1 and R2, SID-R23 and SID-R45 are also the corresponding adj-SID on R2 and R4.¶
And precise flow control is enabled in the network to control the congestion at the network slice level.¶
R1,R2,R4 and R5 are able to perform flow control at the network slice level, and R3 is a legacy device which doesn't support any flow control technology.¶
To detect the flow control point along the path of slice 1, R1 sends a flow control detection packet in band with the traffic of slice 1, since R1 is capable of flow control, R1 puts SID-R12 into the Upstream Point Info.¶
When R2 receives the packet, it stores the mapping between slice 1 and SID-R12, and updates the Upstream Point Info with its own information, i.e, SID-R23.¶
Since R3 doesn't recognize the flow control detection packet, it just forwards the packet based on the SID-list and slice-ID of the packet.¶
When R4 receives the packet, it stores the mapping between slice 1 and SID-R23, and updates the Upstream Point Info with its own information, i.e, SID-R45.¶
When R5 receives the packet, it stores the mapping between slice 1 and SID-R45, and since R5 is the endpoint, it stops processing the packet further.¶
When congestion occurs at R4 in slice 1, R4 would generate a flow control message for slice 1, and based on the local information, R4 finds the information of upstream flow control point, i.e, SID-R23, and uses it as the destination of the flow control message.¶
When R2 receives the flow control message with DA set as local adj-SID SID-R23, R2 perform the flow control for slice 1 on the port related with SID-R23 based on the context of the flow control message.¶
If R2 is not able to control the congestion and generates a flow control message further, R2 would send the message with DA set to SID-R12 based on the local information.¶
The proactive control point detection mechanism described in this document is not limited to flow control in WAN. It provides a generic recipient discovery primitive for fast network notification scenarios for the distributed decision method, especially when intended recipient node is a non-adjacent node on the forwarding path.¶
Future version of this document will discuss more about other fast network notification usecases.¶
The security considerations with IPv6 Hop-by-Hop Options header are described in [RFC8200],, [RFC7045][RFC9098], [RFC9099], [RFC9673]. This document introduces a new IPv6 Hop-by-Hop option which is either processed in the fast path or ignored by network nodes, thus it does not introduce additional security issues.¶
This document requests IANA to assign a new option type from "Destination Options and Hop-by-Hop Options" registry [IANA-HBH].¶
Hex Value Binary Value Description Reference
act chg rest
--------------------------------------------------------
TBA 00 0 tba Control Point [this document]
Detection Option
¶