Ballot for draft-ietf-mpls-stamp-pw

Discuss

Éric Vyncke
Gorry Fairhurst
Gunter Van de Velde
Roman Danyliw

Yes

Jim Guichard
Mohamed Boucadair

No Objection

Andy Newton
Deb Cooley
Mike Bishop

No Record

Charles Eckel
Christopher Inacio
Ketan Talaulikar
Mahesh Jethanandani
Tommy Jensen

Summary: Has 4 DISCUSSes. Needs 5 more YES or NO OBJECTION positions to pass.

Éric Vyncke
Discuss
Discuss (2026-08-28 for -11) Sent
# Éric Vyncke INT AD comments for draft-ietf-mpls-stamp-pw-11
CC @evyncke

Thank you for the work put into this document.

Please find below some blocking DISCUSS points (easy to address), some non-blocking COMMENT points/nits (replies would be appreciated even if only for my own education).

Special thanks to Tony Li for the shepherd's detailed write-up including the WG consensus *but it lacks* the justification of the intended status.

Other thanks to Jen Linkova, the Internet directorate reviewer (at my request), please consider this recent int-dir review:
https://datatracker.ietf.org/doc/review-ietf-mpls-stamp-pw-11-intdir-telechat-linkova-2026-08-28/ (several comments are valid and not repeated in my own review)

I hope that this review helps to improve the document,

Regards,

-éric

Note: this ballot comments follow the Markdown syntax of https://github.com/mnot/ietf-comments/tree/main, i.e., they can be processed by a tool to create github issues.

## DISCUSS (blocking)

As noted in https://datatracker.ietf.org/doc/statement-iesg-handling-ballot-positions-20220121/, a DISCUSS ballot is a request to have a discussion on the points below; I really think that the document would be improved with a change here, but can be convinced otherwise.

### Section 4.3

Let's be very clear about that the receiver must silently drop all STAMP packets whose "TTL" is not 255. This is mostly obvious to many readers, but let's be accurate.

### Section 6 or 6.1

The (semi-obvious) swap of src/dst <address, port> must be explicitly specified *outside* of the Figure (as the figures are not normative).

Also a convenient place to add that replies are not generated if the incoming "TTL" is not 255.
Comment (2026-08-28 for -11) Sent
## COMMENTS (non-blocking)

### Title

Should the title be specific about "point-to-point LSP" applicability ?

### Abstract 

s/This document describes/This document *specifies*/ as it is PS.

s/is also described/is also *specified*/ for the same reason.

Please consider Jen's comments on the abstract as well as they are sensible.

### Section 1

s/This document describes/This document *specifies*/

Add an informative reference to L2TPv3.

As I am not an MPLS expert, I won't raise the issue to a DISCUSS-level but what is `when using STAMP without an IP/UDP header` ? Jen Linkova's review also mention this issue.

Having a simplified Figure 2 (from section 5.1) would tremendously help the reader to understand the concept.

### Section 3.1

s/The base STAMP test packet payloads can be encapsulated using an UDP/The base STAMP test packet payloads can be *transported* using an UDP/ as encapsulation usually refers to a tunnel. Also applicable to other places where 'encapsulation' is used rather than 'transport'.

### Section 3.3

What is the relationship between the section title `STAMP Test Session Identifier` and the section text `STAMP session identifier`.

### Section 5.1

Thanks for Figure 2, it really helps. But, the figure could be improved by marking the MPLS and the G-ACh headers (possibly in the text) else it is unclear what "Version" and "Reserved" fields are until reading the end of the section.

### Section 7.3

Please justify the "SHOULD" in `As specified in Section 9 of [RFC5085], the ICMP and MPLS LSP PING applications SHOULD be rate-limited to below 5% of the bit-rate of the associated PW. ` per BCP14, all SHOULD must have a guidance about when the should can be ignored or what are the consequences. Alternatively, consider using a plain English 'should'.

## NITS (non-blocking / cosmetic)

### Use of SVG graphics

To make a much nicer HTML rendering, suggest using the aasvg tool to generate SVG graphics. It is worth a try especially if the I-D uses the Kramdown file format ;-)
Gorry Fairhurst
Discuss
Discuss (2026-09-01 for -15) Sent
# Gorry Fairhurst WIT AD comments  (UPDATED)

Thank you for the work that has been put into this document.

Please find below some blocking DISCUSS points (easy to address), some non-blocking COMMENT points/nits (replies would be appreciated even if only for my own education).

I hope that this review helps to improve the document. This review as updated 22 Aug after a revised I-D was issued

Regards, Gorry

## DISCUSS (blocking)

As noted in https://datatracker.ietf.org/doc/statement-iesg-handling-ballot-positions-20220121/, a DISCUSS ballot is a request to have a discussion on the points below; I really think that the document would be improved with a change here, but can be convinced otherwise.

Thank you for the detailed review provided by Vidhi in: https://datatracker.ietf.org/doc/review-ietf-mpls-stamp-pw-07-tsvart-telechat-goel-2026-08-19/
This TSV-ART review as very detailed, and rather than paraphrasing it here I shall refer to it in this DISCUSS, but I am happy to expand on that if it is useful. Note the full list includes some additional comments.

### Section 6
There appears to be no consideration  of the packet size / MTU considerations considering the addition of extra header octets. The document does not discuss test packet size and I suspect in ought to. 
- see details in https://datatracker.ietf.org/doc/review-ietf-mpls-stamp-pw-07-tsvart-telechat-goel-2026-08-19/
FOLLOW-UP: The current text in -08 speaks of considerations, can this be converted to requirements?
The text in rev -15 says: "... MUST be considered when selecting the test packet size"
- I appreciate the direction of the new text, thanks. However, I am not a fan of "MUST ... Consider" clauses. This is not something that has much normative weight. I agree a consideration is important, but I would like to discuss if there can be an an explanation of the considerations (and implications) to inform the decision.

### Section 6 or 7 
Some form of rate-limit or congestion control needs to be discussed for any IETF protocol that can be used on the general Internet. Section 5 of [RFC9780] makes a similar recommendation for a rate limiter on the packets passed to the control plane for processing, which ought to be noted here.
This could be a note for Section 6.
- I see new text, however this text does not explain how this can be achieved for the two use cases, not that this protection is for other traffic sharing a bottleneck on the path: "The congestion and bandwidth usage considerations for VCCV applications in Section 9 of [RFC5085] apply to STAMP test packets carried over PWs, including Format-2 packets that do not contain UDP." (in rev -08).
FOLLOW-UP: Some additional text is needed to explain the implications of the increase of load presented to the path under test, above and beyond the desire to provision sufficient capacity so that tests can evaluate the performance.

### Checksum for UDP with IPv6.
The usage of UDP checksums have been clarified and explained. I believe one case remains to be clarified. RFC 6936 Section 5 Requirement 5 requires a CRC or another packet-integrity mechanism. Unauthenticated STAMP test packets do not provide a packet-integrity mechanism and this is not justified. (Please see a similar DISCUSS topic from Gunter Van de Velde.)
Comment (2026-09-01 for -15) Sent
## COMMENTS (non-blocking)

### Section 1.1
The bulleted requirements use BCP 14 keywords for properties of the solution ("The G-ACh MUST support STAMP test packets with an IP/UDP header") rather than for implementation behaviour, and "Session-Reflector test packets MAY follow the reverse underlay path" reads oddly as a requirement. 
- Please do consider non-normative phrasing ("needs to") in this section, since the normative behaviour is specified in Sections 3 to 5 anyway. You could refer to these sections if you think it helps.

### Section 6 or 7
Please clarify the interaction between punt-path policing and loss measurement in Section 7 correctly points at the message throttling of Section 10 of [RFC5085], and the TTL-expiry method of Section 3.2 means every test packet is punted to the control plane at both ends. 
- This may be worth noting explicitly, as Section 9 of [RFC5085] does ("rate-limiting them can be harmful as it could translate to incorrectly declaring connectivity failures"), that policing on the punt path is indistinguishable from network loss to STAMP and will be reported as such.

Finally, thank you for the significant changes that were made after the TSV-ART review, I have checked these and would not have raised a DISCUSS position based on the text in rev -15.
Gunter Van de Velde
Discuss
Discuss (2026-09-01) Sent for earlier
# Gunter Van de Velde, RTG AD, comments for review of draft-ietf-mpls-stamp-pw-13

# Original Ballot (with DISCUSS): https://mailarchive.ietf.org/arch/msg/mpls/3Qs5vA5wjCX3iIhaMsJFJeexFVU/
# Revised Ballot: (remaining DISCUSS#1 and #2) https://mailarchive.ietf.org/arch/msg/mpls/qZ7VgaB3p8rfNAic83c3S9Z52OM/
# Revised Ballot#2: (remaining DISCUSS#2): https://mailarchive.ietf.org/arch/msg/mpls/fbkZgro0b2s2QZ61ld03Fy4lzUU/

# Updated Review:

Nice update to the draft.  The DISCUSS#1 item is sufficiently resolved to be considered closed. Thank you for the edits.

About DISCUSS#2 (zero-checksum) , may I propose some stronger procedural text as what is currently enclosed within this document? The offered text would update 6936, 8085, 8200 in addition to the prior existing updates to 8762, 8972. The proposed change introduces a very narrow update to allow zero-checksum for STAMP application. Doing this provides a clean procedure and makes this draft properly compliant to prior work. (without this section I will set a non-blocking ABSTAIN, instead of a blocking DISCUSS to respect the reality of running code. The result would be that I have no longer a blocking position).

Note that when this section is inserted, that abstract and Introduction should also announce the exception. The sentence saying Section 4.4 applies to “all STAMP sessions” should be removed. This newly proposed section would be a real normative change to IPv6 and UDP applicability, not an editorial clarification. I would therefore expect explicit INT/6MAN and transport review.

Suggested replacement text (disclaimer: an agent was to compose this text):

***
4.4.1. Constrained IPv6 UDP Zero-Checksum Mode

Section 8.1 of [RFC8200] permits IPv6 UDP zero-checksum mode for protocols that use UDP as a tunnel encapsulation. A Format-1 STAMP packet does not use UDP as a tunnel encapsulation; its UDP payload is a STAMP message. In addition, an unauthenticated STAMP message does not provide the CRC or other packet-integrity mechanism required for a non-tunnel payload by Requirement 5 of Section 5 of [RFC6936]. STAMP sequence numbers and timestamps are measurement fields and are not packet-integrity checks.

This section defines a narrow additional exception to Section 8.1 of [RFC8200], Requirement 5 of Section 5 of [RFC6936], and Section 3.4.1 of [RFC8085]. The exception applies only to Format-1 STAMP test packets used for the MPLS LSP and PW measurements specified in this document. It does not apply to general STAMP operation or to STAMP over the Internet.

Implementations supporting Format-1 STAMP over IPv6:

  *
MUST implement transmission and reception using a non-zero UDP checksum.
  *
MUST use a non-zero UDP checksum by default.
  *
SHOULD use a checksum complement as described in [RFC7820] when that mechanism is supported by the timestamping implementation.
  *
MAY support UDP zero-checksum mode when the timestamping implementation cannot update the UDP checksum or insert a checksum complement after updating the timestamp. This mode MUST be enabled by explicit operator configuration and MUST NOT be enabled automatically.

UDP zero-checksum mode is permitted only when all of the following conditions are met:

  1.
The Session-Sender, Session-Reflector, and the complete MPLS path between them are operated within a single administrative domain. UDP zero-checksum mode MUST NOT be used across the general Internet or across independently operated domains.
  2.
The STAMP test packet is associated with a pre-provisioned point-to-point LSP or PW and is received in the MPLS forwarding or OAM context provisioned for that STAMP session. A zero-checksum STAMP packet received through ordinary native IPv6 forwarding, without the expected MPLS session context, MUST be discarded.
  3.
Both endpoints are explicitly configured with the expected LSP or PW context, IPv6 source and destination addresses, UDP source and destination ports, and, when present, the STAMP Session Identifier. A receiver MUST enable zero-checksum processing only for this configured combination. Enabling zero-checksum processing for all traffic arriving on an interface or for an unrestricted UDP port range is not permitted.
  4.
The receiver MUST continue to accept and validate packets carrying a non-zero UDP checksum on a UDP port for which zero-checksum processing has been enabled, as required by Section 4 of [RFC6936].
  5.
Before processing a zero-checksum packet as STAMP, the receiver MUST verify the expected MPLS context, IPv6 source and destination addresses, UDP source and destination ports, UDP Length, IPv6 Payload Length, STAMP packet length and format, and the configured STAMP session. A packet that fails any check MUST be discarded and SHOULD be counted for operational monitoring.
  6.
IPv6 fragmentation MUST NOT be used for a STAMP packet carrying a zero UDP checksum. A fragmented zero-checksum STAMP packet MUST be discarded.
  7.
Zero-checksum STAMP packets MUST be locally consumed as OAM traffic at the configured Session-Sender or Session-Reflector. They MUST NOT be forwarded toward an attachment circuit, delivered as customer traffic, passed to another UDP application, or forwarded outside the administrative domain.
  8.
Packet filters MUST be deployed at the boundaries of the administrative domain to prevent zero-checksum STAMP packets from entering or leaving the domain. Appropriate source-address, destination-address, UDP-port, and MPLS-context filters SHOULD also be applied at the STAMP endpoints.
  9.
Receipt of a zero-checksum packet MUST NOT create or delete a STAMP session or change routing, MPLS, PW, protection, or service-forwarding state. Any resulting state update MUST be bounded to the measurement state of the already configured STAMP session.
  10.
An unauthenticated measurement obtained using UDP zero-checksum mode MUST NOT be the sole input to an automated action that changes forwarding, protection, or service state. A non-zero UDP checksum, together with any integrity protection required by the deployment, MUST be used when STAMP measurements directly control such actions.
  11.
Zero-checksum STAMP traffic MUST be rate-limited and actively monitored. The implementation SHOULD provide counters for received, accepted, and discarded zero-checksum packets. If the operator can no longer ensure that the path and endpoints satisfy the restrictions in this section, zero-checksum mode MUST be disabled.

Except for the explicit exception to Requirement 5 described above, all applicable implementation and usage requirements in Sections 4 and 5 of [RFC6936] remain in force. Requirement 3 of Section 5 of [RFC6936] is not applicable because STAMP does not encapsulate an inner IPv4 or IPv6 packet. Middleboxes within the controlled domain that process these packets MUST comply with Requirements 8 through 10 of Section 5 of [RFC6936].

This exception accepts a residual risk that corruption of an unauthenticated STAMP message can be interpreted as packet loss, reordering, or an incorrect delay measurement. The use of a controlled MPLS environment, lower-layer error detection, strict session demultiplexing, packet filtering, absence of IP fragmentation, and rate limiting reduces the probability and operational scope of such corruption but does not provide packet integrity. Because a STAMP packet carries only measurement information and no customer payload, and because measurements obtained in this mode are prohibited from directly changing forwarding state, the consequences are confined to the accuracy or availability of the affected measurement session. The operator explicitly accepts this residual risk when enabling zero-checksum mode.
***

Thoughts?

Kind Regards,
Gunter Van de Velde
Routing AD
Roman Danyliw
Discuss
Discuss (2026-08-28 for -11) Sent
**  Section 3.2.  Format-2
      -  For encapsulating the STAMP test packet payloads over a G-ACh
         without adding IP/UDP headers, two new channel types are
         defined in this document: one for the Session-Sender test
         packets (see Section 5.2) and one for the Session-Reflector
         test packets (see Section 6.2).

If the STAMP test packet payload alone is sent, and no IP/UDP headers are present, it seems as if certain fields would not be possible to populate in the STAMP (RFC8762) protocol fields and extensions (RFC8972).  There may be other examples, but I see at least two instances:

-- Section 4.3/RFC8762 describes how the Session-Sender TTL should be populated based on the TTL from the IP packet sent

-- Section 4.2/RFC8972 describes how port information from the originating packet is used to populated fields in the Location TLV

Additionally, Section 4.2 of RFC8762 (“The node MUST compare the value in the Length field of the UDP header and the length of the base STAMP test packet in the mode, …”) suggests that the UDP Length field is needed to parse/processing extensions.
Comment (2026-08-28 for -11) Sent
Thank you to Russ Houlsey for the GENART review.

** Section 1.1.  Does the link to VCCV more detail?

-- Section 1.1 says “The G-ACh types for STAMP test packets with or without IP/UDP headers are also used to demultiplex the VCCV Control Channel for PWs.  Signaling extensions for the VCCV Control Channel for PWs used by STAMP are outside the scope of this document.”

-- However, Section 5.3 of RFC5085 says “A remote PE MUST NOT send VCCV messages before  the capability of supporting the control channel(s) (and connectivity verification type(s) to be used over them) is signaled.  Then, it can do so only on a control channel and using the connectivity verification type(s) from the ones indicated.”

Given the guidance in RFC5085, does more detail need to be provided?

** Section 4.1.  What role does this section play?  At least one of the use cases seems to conflict with normative guidance.  For example:

-- Section 4.1 says “The STAMP test packet payloads are encapsulated with an IP/UDP       header without a G-ACh header …”  However, in Section 5.1 and 6.1 say “The G-ACh header [RFC5586] with the channel type for IPv4 or IPv6 MUST immediately follow the bottom of the label stack” .

** Section 4.5
   *  For IPv6, as described in Section 3.1 of [RFC7510], a UDP checksum
      value of zero is allowed for IP-based MPLS encapsulation in
      networks under a single administrative domain.

Why is this reference relevant?  RFC7510 specifies guidance for MPLS inside (encapsulated) IP.  Isn’t the technique used here IP inside MPLS?

** Section 8
   The measures specified in Section 7 of [RFC8762] to mitigate attacks
   using the registered UDP port number also apply.

Does this guidance apply when Format-2 is used?
Jim Guichard
Yes
Mohamed Boucadair
Yes
Comment (2026-08-27 for -10) Sent
Hi Rakesh, Patrice, Eddie, and Xiao Min,

Thank you for the effort put into this well-written specification. I appreciate in particular the good OPS cons section.

Thanks to Giuseppe Fioccola for the OSPDIR review, Carlos Pignataro for PERFMETRDIR, and the authors for engaging and addressing the various comments.

I only have nits:

# Consider clarifying the update to 8972 

OLD:
   This document updates RFC 8972: STAMP Test Session Identifier.

NEW:
   This document updates RFC 8972 by updating the STAMP Test Session Identifier for LSPs and PWs.

# Please s/port/port number through the document.

# Help readers by adding a forward reference that points to the section where this is specified: 

CURRENT:
      -  For encapsulating the STAMP test packet payloads over a G-ACh
         without adding IP/UDP headers, two new channel types are
         defined in this document: one for the Session-Sender test
         packets and one for the Session-Reflector test packets.

# Section 3

CURRENT:
   When using a destination
   UDP port number other than the default port number 862, the possible impact on the
   network MUST be carefully studied and agreed on by all users of the
   network domain where the test has been planned, as described in
   Section 4.1 of [RFC8762].

I know this mirrors what is in 8762, but I think this text is better positioned in the OPS considerations section.

Cheers,
Med
Andy Newton
No Objection
Deb Cooley
No Objection
Comment (2026-09-01 for -15) Not sent
Thanks to Yaron Sheffer for their (multiple) secdir reviews.
Mike Bishop
No Objection
Comment (2026-08-31 for -14) Sent
# IESG review of draft-ietf-mpls-stamp-pw-14

CC @MikeBishop

## Comments

I support Gorry's DISCUSS points.

### Section 7.3, paragraph 1
```
     applies to both Format-1 and Format-2 STAMP test packets and MUST
     include the encapsulation overhead specified in Section 7.3.
```
This *is* Section 7.3. If you renumbered, correct the number. If you mean
something in this section, be more specific.

## Nits

All comments below are about very minor potential issues that you may choose to
address in some way - or ignore - as you see fit. Some were flagged by
automated tools (via https://github.com/larseggert/ietf-reviewtool), so there
will likely be some false positives. There is no need to let me know what you
did with these suggestions.

### Typos

#### Section 4.4, paragraph 14
```
-          affectig measurements when using UDP zero-checksum.
+          affecting measurements when using UDP zero-checksum.
+                 +
```

#### Section 6.1, paragraph 4
```
-    When addind the G-ACh header [RFC5586] with the channel type
-              ^
+    When adding the G-ACh header [RFC5586] with the channel type
+              ^
```

#### Section 7.5, paragraph 5
```
-    are incorercttly MPLS forwarded to the egress node, it could lead to
-              - -        ^
+    are incorrectly MPLS-forwarded to the egress node, it could lead to
+             +          ^
```

### Section 4.4, paragraph 3
```
     checksum complement [RFC7820], the following exceptions permit to
     enabe UDP zero-checksum for IPv4 and IPv6:
```
s/enabe/enable/, and "permit to enable" is awkward. Consider "can be used to
enable"?

### Grammar/style

#### Section 7.3, paragraph 3
```
ress node, it could lead to an invalid measurements of the LSP. 8. Security C
                            ^^^^^^^^^^^^^^^^^^^^^^^
```
The plural noun "measurements" cannot be used with the article "an". Did you
mean "an invalid measurement" or "invalid measurements"?

#### Section 7.5, paragraph 2
```
NOT assign SSIDs [RFC8972] in a predictable manner. To avoid predictability,
                           ^^^^^^^^^^^^^^^^^^^^^^^
```
Consider replacing this phrase with the adverb "predictably" to avoid
wordiness.

## Notes

This review is in the ["IETF Comments" Markdown format][ICMF]. You can use the
[`ietf-comments` tool][ICT] to automatically convert this review into
individual GitHub issues. Review generated by the [`ietf-reviewtool`][IRT].

[ICMF]: https://github.com/mnot/ietf-comments/blob/main/format.md
[ICT]: https://github.com/mnot/ietf-comments
[IRT]: https://github.com/larseggert/ietf-reviewtool
Charles Eckel
No Record
Christopher Inacio
No Record
Ketan Talaulikar
No Record
Mahesh Jethanandani
No Record
Tommy Jensen
No Record