| Internet-Draft | IPv6 Rate Hop-by-Hop Option | June 2026 |
| Xiong & Zhu | Expires 25 December 2026 | [Page] |
This document defines a new IPv6 Hop-by-Hop Option that enables Minimum Rate Limit Discovery along the forward path between a source host and a destination host. Each router along the path can update the option with the minimum of its local Maximum Rate (MRate) and the recorded value. The discovered rate can then be communicated back to the source via a return mechanism, enabling the source to adapt its transmission rate to match the bottleneck link capacity and queue buffer.¶
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 25 December 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.¶
In IPv6 networks, applications often need to determine the bottleneck rate along a network path to avoid network congestion such as:¶
Adaptive Streaming: Video streaming applications can adjust their bitrate to match the available bandwidth, reducing buffering and improving quality of experience.¶
Bulk Data Transfer: File transfer protocols can optimize their window sizes and pacing rates based on the discovered bottleneck rate.¶
Real-time Communications: Interactive applications can avoid congestion by limiting their transmission to the discovered rate.¶
Network Diagnostics: Network operators can use this mechanism to identify bottleneck links in their infrastructure.¶
This document specifies a new IPv6 Hop-by-Hop (HBH) Option to record the minimum MRate along the forward path between a source and a destination host. The source host creates a packet with this Option and initializes the Min-MRate field with the value of the Rate for the outbound link that will be used to forward the packet towards the destination host. The transit nodes along the path can compute the new minimal MRate and compare with the Min-MRate field. Then it will replace the Min-MRate field if it is lower than the latter one.¶
This method has the potential to complete MaxRate Discovery in a single round-trip time, even over paths that have successive links, each with a lower MRate. The proposed Hop-by-Hop Option provides a lightweight, in-band mechanism for rate discovery that completes in one round-trip time, even over paths with multiple constrained links. This efficiency makes it suitable for dynamic rate adaptation in real-time applications.¶
HBH: Hop-by-Hop¶
MRate: Maximum Rate¶
RTT: Round-Trip Time¶
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.¶
+----------+ +-----------+
| Source | |Destination|
| Host | |Host |
+----------+ +-----------+
| ^
| |
v |
+----+ +----+ +----+ +----+ +----+
| R1 | <--> | R2 | <--> | R3 | <--> | R4 | <--> | R5 |
+----+ +----+ +----+ +----+ +----+
---->20Gbps ----> 10Gbps---->5Gbps---->10Gbps---->
|
<---------------------------------------------------+
Minimum MRate (e.g.,5Gbps)
Figure 1: An Example IPv6/SRv6 Path between the Source
Host and the Destination Host
¶
The Minimum MRate Discovery mechanism operates as follows:¶
The source host creates a packet with the Minimum MRate Hop-by-Hop Option. It initializes the Min-MRate field in section 4 with the maximum rate of its egress interface that will be used to forward the packet towards the destination.¶
Each transit router that processes the Hop-by-Hop Option examines the Min-MRate field. The router compares this value with the maximum rate which is computed based on the given slice and queue information.¶
If the router's limited maximum rate is lower than the current Min-MRate value, the router updates Min-MRate to the lower value. This ensures that Min-MRate always contains the minimum MRate encountered along the path so far.¶
When the packet reaches the destination, the Min-MRate field contains the bottleneck rate along the forward path.¶
The destination can then communicate this rate back to the source using a return mechanism (e.g., in a reverse-direction packet containing the same option). The Min-MRate can also be notified to the source with the rate notification as per xz-rtgwg-srv6-rate-notification.¶
The Minimum MRate Hop-by-Hop Option has the following format:¶
+---------------+---------------+---------------+---------------+
| Option Type |Option Data Len|R| Flags | Priority |
+---------------+---------------+-------------------------------+
| Minimal MRate |
----------------------------------------------------------------+
| Slice ID |
+---------------------------------------------------------------+
Figure 2: Format of the Minimum MRate Hop-by-Hop Option
¶
Option Type and Option Data Len (see Section 4.2 of [RFC8200]): TBD1.¶
Mininal MRate: 32bits. The minimum MRate recorded along the path in octets, reflecting the smallest recommended MRate that the packet experienced along the path.¶
R : 1bit. R-Flag. Set by the source to signal that the destination host should include the Min-MRate value when the destination host is to send a Rate Option back to the source host.¶
Priority: 8bits, the queue priority identifier. It identifies the queue or traffic class priority within the slice. Enables the nodes to compute the MRate within a specific queue.¶
Slice ID: 32bits, the slice identifier. It identifies the slice which the MRate applies. It could map to an SRv6 SID or a local policy identifier known to both head and transit nodes.¶
Consider a source (S) sending to a destination (D) via routers R1, R2, R3, R4 and R5. The links have the following maximum rates and minial MRates:¶
To be discussed in future versions of this document.¶
This document requests to register an IPv6 Hop-by-Hop Option type in the "Destination Options and Hop-by-Hop Options" registry within the "Internet Protocol Version 6 (IPv6) Parameters" registry group.¶