| Internet-Draft | IS-IS, OSPF, BGP-LS, BGP for STAMP | July 2026 |
| Gandhi | Expires 19 January 2027 | [Page] |
The Simple Two-Way Active Measurement Protocol (STAMP), as defined in RFC 8762, can be utilized for active measurement without relying on a control channel to pre-signal session parameters. This document describes the extensions to IS-IS, OSPF, BGP-LS, and BGP protocols for signaling STAMP reflector parameters in a network. The STAMP reflector parameters can be used by the STAMP senders to set up appropriate performance measurement sessions for delay and packet loss metrics.¶
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 19 January 2027.¶
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.¶
The Simple Two-Way Active Measurement Protocol (STAMP) is designed to measure various performance metrics in IP networks without relying on a control channel to pre-signal session parameters, as specified in [RFC8762]. STAMP test packets are sent between a STAMP Session-Sender and a STAMP Session-Reflector to measure delay and packet loss along the path.¶
Due to the lack of control channel signaling, the Session-Sender cannot learn the STAMP parameters from the Session-Reflector. At the same time, introducing signaling per STAMP session results in additional scale challenges in the network.¶
This document describes the extensions to IS-IS, OSPF, BGP-LS, and BGP protocols for signaling STAMP reflector parameters in a network. The STAMP reflector parameters can be used by the STAMP senders to set up appropriate performance measurement sessions for delay and packet loss metrics.¶
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.¶
STAMP: Simple Two-Way Active Measurement Protocol¶
TLV: Type-Length-Value¶
In this document, IS-IS, OSPF, BGP-LS, and BGP protocol extensions are defined to signal the STAMP reflector parameters in a network. The signaled parameters are used by the STAMP senders to set up appropriate performance measurement sessions for delay and packet loss metrics.¶
The following STAMP reflector parameters are signaled:¶
* STAMP reflector IP address¶
* STAMP reflector UDP port (default 862)¶
* STAMP reflector Clock Sync Status¶
* STAMP reflector Minimum Receive Interval: Packets arriving faster than the minimum interval will likely be dropped by the reflector due to an inability to support the packet rate.¶
Even though the STAMP reflector is a property of the node and can be signaled as part of the node capability, in some cases it is advantageous to associate and advertise them with a prefix. In a multi-area network, routers may not know the identity of the prefix originator in a remote area or may not know the capabilities of such originator. Similarly, in a multi-domain network, the identity of the prefix originator and its capabilities may not be known to the ingress LSR.¶
For example, when re-advertising a prefix between two IS-IS protocol instances or re-advertising from another protocol to an IS-IS protocol instance, a router SHOULD preserve the STAMP parameters signaling for that prefix if it exists.¶
The exact mechanism used to exchange STAMP parameters between protocol instances running on an Autonomous System Border Router is outside of the scope of this document.¶
The format of the sub-TLV for advertising STAMP reflector parameters is shown in Figure 1.¶
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 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Flags: CI | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . | IPv4 or IPv6 Reflector Address (4 or 16 octets) | . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reflector Min Receive Interval| Reflector UDP Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 1-octet. Sub-TLV type for STAMP reflector.¶
Length: 1-octet. The length of the value field in octets excluding the header.¶
Flags: 2-octets. A bit field indicating various flags related to STAMP reflector.¶
I: Set to 1 when the IP address is IPv6, otherwise the IP address is IPv4.¶
C: Set to 1 to indicate the Clock status as In-Sync, otherwise the Clock status is Out-of-Sync.¶
IPv4 or IPv6 reflector address: STAMP reflector target IP address.¶
Reflector UDP Port: STAMP reflector UDP Port associated with the reflector address.¶
Reflector Minimum Receive Interval: STAMP reflector minimum receive interval in milli-seconds.¶
In this document, the IS-IS STAMP reflector extension is carried in IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability [RFC5305]. New STAMP reflector sub-TLV type is allocated for IS-IS (value TBA1 to be assigned by IANA).¶
Multiple instances of this sub-TLV MAY be included to advertise multiple reflector addresses and the associated parameters from a node.¶
The format of the sub-TLV for advertising STAMP reflector parameters 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 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags: C | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | IPv4 Reflector Address (4 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reflector Min Receive Interval| Reflector UDP Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 2-octets. Sub-TLV type for STAMP reflector.¶
Length: 2-octets. The length of the value field in octets excluding the header.¶
Flags: 2-octets. A bit field indicating various flags related to STAMP reflector.¶
C: Set to 1 to indicate the Clock status as In-Sync, otherwise the Clock status is Out-of-Sync.¶
IPv4 reflector address: STAMP reflector target IP address.¶
Reflector UDP Port: STAMP reflector UDP Port associated with the reflector address.¶
Reflector Minimum Receive Interval: STAMP reflector minimum receive interval in milli-seconds.¶
In this document, the OSPFv2 STAMP reflector extension is carried in OSPFv2 Extended Prefix TLV (Type 1) [RFC7684]. The Extended Prefix TLV allows specification of additional attributes associated with OSPFv2 prefixes (for example Sub-TLV 2 used for Prefix-SID). New STAMP reflector sub-TLV type is allocated for OSPFv2 (value TBA2 to be assigned by IANA).¶
Multiple instances of this sub-TLV MAY be included to advertise multiple reflector addresses and the associated parameters from a node.¶
The format of the sub-TLV for advertising STAMP reflector parameters is shown in Figure 3.¶
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 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags: CI | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . | IPv4 or IPv6 Reflector Address (4 or 16 octets) | . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reflector Min Receive Interval| Reflector UDP Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 2-octets. Sub-TLV type for STAMP reflector.¶
Length: 2-octets. The length of the value field in octets excluding the header.¶
Flags: 2-octets. A bit field indicating various flags related to STAMP reflector.¶
C: Set to 1 to indicate the Clock status as In-Sync, otherwise the Clock status is Out-of-Sync.¶
I: Set to 1 when the IP address is IPv6, otherwise the IP address is IPv4.¶
IPv4 or IPv6 reflector address: STAMP reflector target IP address.¶
Reflector UDP Port: STAMP reflector UDP Port associated with the reflector address.¶
Reflector Minimum Receive Interval: STAMP reflector minimum receive interval in milli-seconds.¶
In this document, the OSPFv3 STAMP reflector extension is carried in prefix-related TLVs within OSPFv3 Extended-LSAs [RFC8362]. New STAMP reflector sub-TLV type is allocated for OSPFv3 (value TBA3 to be assigned by IANA).¶
Multiple instances of this sub-TLV MAY be included to advertise multiple reflector addresses and the associated parameters from a node.¶
The format of the TLV for advertising STAMP reflector parameters is shown in Figure 4.¶
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 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags: CI | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . | IPv4 or IPv6 Reflector Address (4 or 16 octets) | . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reflector Min Receive Interval| Reflector UDP Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 1-octet. TLV type for STAMP reflector.¶
Length: 1-octet. The length of the value field in octets excluding the header.¶
Flags: 2-octets. A bit field indicating various flags related to STAMP reflector.¶
I: Set to 1 when the IP address is IPv6, otherwise the IP address is IPv4.¶
C: Set to 1 to indicate the Clock status as In-Sync, otherwise the Clock status is Out-of-Sync.¶
IPv4 or IPv6 reflector address: STAMP reflector target IP address.¶
Reflector UDP Port: STAMP reflector UDP Port associated with the reflector address.¶
Reflector Minimum Receive Interval: STAMP reflector minimum receive interval in milli-seconds.¶
In this document, the BGP-LS STAMP reflector extension is carried in BGP-LS NLRI and Attribute TLV [RFC9552]. New STAMP reflector TLV type is allocated for BGP-LS (value TBA4 to be assigned by IANA).¶
Multiple instances of this TLV MAY be included to advertise multiple reflector addresses and the associated parameters from a node.¶
The format of the TLV for advertising STAMP reflector parameters is shown in Figure 5.¶
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 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags | Type | Length | CI | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . | IPv4 or IPv6 Reflector Address (4 or 16 octets) | . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Reflector Min Receive Interval| Reflector UDP Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: 1-octet. TLV type for STAMP reflector.¶
Length: 1-octet. The length of the value field in octets excluding the header.¶
Flags: 1-octet. A bit field indicating various flags related to STAMP reflector.¶
I: Set to 1 when the IP address is IPv6, otherwise the IP address is IPv4.¶
C: Set to 1 to indicate the Clock status as In-Sync, otherwise the Clock status is Out-of-Sync.¶
IPv4 or IPv6 reflector address: STAMP reflector target IP address.¶
Reflector UDP Port: STAMP reflector UDP Port associated with the reflector address.¶
Reflector Minimum Receive Interval: STAMP reflector minimum receive interval in milli-seconds.¶
In this document, the BGP STAMP reflector extension is carried as a BGP Path Attribute TLV [RFC4271]. New STAMP reflector TLV type is allocated for BGP (value TBA5 to be assigned by IANA).¶
Multiple instances of this TLV MAY be included to advertise multiple reflector addresses and the associated parameters from a node.¶
The operational considerations specified in [RFC8762] apply to the extensions defined in this document. As STAMP reflector parameters are static in nature, no additional flooding churn is introduced by the extensions defined in this document.¶
The security considerations specified in [RFC8762], [RFC7684], and [RFC8362] apply to the extensions defined in this document.¶
IANA maintains the registry for the "IS-IS Sub-TLVs for TLVs Advertising Prefix Reachability". IANA is requested to allocate the following sub-TLV.¶
| Value | Description | Reference |
|---|---|---|
| TBA1 | STAMP Reflector | This document |
IANA maintains the registry for the "OSPFv2 Extended Prefix TLV Sub-TLVs". IANA is requested to allocate the following sub-TLV.¶
| Value | Description | Reference |
|---|---|---|
| TBA2 | STAMP Reflector | This document |
IANA maintains the registry for the "OSPFv3 Extended-LSA Sub-TLVs". IANA is requested to allocate the following sub-TLV.¶
| Value | Description | Reference |
|---|---|---|
| TBA3 | STAMP Reflector | This document |
IANA maintains the registry for the "BGP-LS NLRI and Attribute TLVs". IANA is requested to allocate the following TLV.¶
| Value | Description | Reference |
|---|---|---|
| TBA4 | STAMP Reflector | This document |
IANA maintains the registry for the "BGP Path Attributes". IANA is requested to allocate the following TLV.¶
| Value | Description | Reference |
|---|---|---|
| TBA5 | STAMP Reflector | This document |
IANA is requested to create a new registry called "STAMP Reflector Flags" under the "Interior Gateway Protocol (IGP) Parameters" registry group. The registry should track bit assignments for the STAMP Reflector Flags field of the STAMP Reflector sub-TLV.¶
TBA.¶