Internet-Draft STAMP CoS ECN Update June 2025
White, et al. Expires 26 December 2025 [Page]
Workgroup:
IP Performance Measurement
Internet-Draft:
draft-whimir-ippm-stamp-cos-ecn-00
Updates:
8972 (if approved)
Published:
Intended Status:
Standards Track
Expires:
Authors:
G. White
CableLabs
G. Mirsky
Ericsson
X. Min
ZTE Corp.

Update of the Simple Two-way Active Measurement Protocol Class-of-Service Extension - ECN

Abstract

The Simple Two-Way Active Measurement Protocol (STAMP) enables one-way and round-trip measurement of network metrics between IP hosts, and has a facility for defining optional extensions. This document updates the definition of the Class of Service TLV (originally defined in RFC 8972) to enable the measurement of manipulation of the value of the Explicit Congestion Notification (ECN) field of the IP header by middleboxes between two STAMP hosts, and to enable discovery and measurement of paths that provide differential treatment of packets depending on the value of their ECN field.

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 26 December 2025.

Table of Contents

1. Introduction

[RFC8972] defined several extensions to the Simple Two-way Active Measurement Protocol (STAMP). Among those is a Class of Service (CoS) TLV that enables measurements that utilize the Differentiated Services Code Point (DSCP) marking in both directions. Also, the CoS TLV supports outbound measurements that utilize the Explicit Congestion Notification (ECN) field, but it lacked support for such measurements on the return path. Experience deploying STAMP and its extensions demonstrated that it is helpful to an operator to monitor ECN's consistency in both directions. This specification updates the definition of the CoS TLV in a backward compatible manner to support monitoring of ECN in the return path of the STAMP test session.

2. Conventions Used in This Document

2.1. Acronyms

CoS:
Class of Service
DSCP:
Differentiated Services Code Point
ECN:
Explicit Congestion Notification
STAMP:
Simple Two-way Active Measurement Protocol

2.2. 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.

3. Class of Service TLV

The STAMP Session-Sender MAY include a CoS TLV in the STAMP test packet. The format of the CoS TLV is presented 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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |STAMP TLV Flags|    CoS Type   |           Length              |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |   DSCP1   |   DSCP2   |EC2|RPD|EC1|RPE|     Reserved          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 1: Class of Service TLV

Where the fields are defined as follows.

A STAMP Session-Reflector that receives a test packet with the CoS TLV MUST include the CoS TLV in the reflected test packet. The Session-Reflector MUST copy the value of the DSCP and ECN fields of the IP header of the received STAMP test packet into the DSCP2 and EC2 fields, respectively, in the CoS TLV in the reflected test packet.

The Session-Reflector MUST use the local policy to verify whether the use of the value of the DSCP1 field is permitted in the domain. If it is, the Session-Reflector MUST set the DSCP field's value in the IP header of the reflected test packet equal to the value of the DSCP1 field of the received test packet. Otherwise, the Session-Reflector MUST use the DSCP value of the received STAMP packet and set the value of the RPD field to 0b01. Upon receiving the reflected packet, if the value of the RPD field is 0b00, the Session-Sender will save the DSCP value for analysis of the CoS in the reverse direction. If the value of the RPD field in the received reflected packet is 0b01, only CoS in the forward direction can be analyzed.

The Session-Reflector MUST set the ECN value in the IP header of the reflected STAMP test packet to the value of the EC1 field. The Session-Reflector MUST set the RPE field in the CoS TLV in the reflected test packet to the value 0b01. As a result, the Session-Sender can detect whether the recommended value for ECN field in the reflected packet was used by inspecting the value of the RPE field in the received reflected test packet.

3.1. Interoperability with RFC 8972

The extended CoS TLV defined in this draft is backward compatible with the specification in Section 4.4 of [RFC8972]. The handling of the DSCP1, DSCP2, EC2 and RPD fields defined here is identical to the handling defined for the equivalent fields in Section 4.4 of [RFC8972].

Consider a case when an implementation that supports this specification performs as Session-Sender, and the intended Session-Reflector's support of the CoS TLV is according to Section 4.4 of [RFC8972]. If the operator requires monitoring ECN in the reverse direction, the value of the EC1 field will be set to a non-zero value. Because the Session-Reflector would treat the EC1 field as part of the Reserved field, it would ignore its value as per Section 4.4 of [RFC8972]. Further, the Session-Reflector would treat the RPE field as part of the Reserved field and thus it would send the value 0b00 in the reflected STAMP packet, rather than sending the value 0b01. Consequently, the Session-Sender will determine that the ECN value in the IP header of the reflected test packet was not set as requested.

Also, this specification supports the case when the Session-Reflector supports the extended CoS TLV as defined in this specification and the Session-Sender supports the CoS TLV according to Section 4.4 of [RFC8972]. In that scenario, the Session-Sender will set its [RFC8972] Reserved field to zeros. The Session-Reflector will interpret the first two bits of that field as the EC1 field, as shown in Figure 1 and thus will set the value of the ECN field in the IP header of the reflected packet to 0b00. Further the Session-Reflector will set the RPE field to 0b01. The Session-Sender will treat the RPE field as part of the Reserved field and will ignore its value.

4. IANA Considerations

This document includes no request to IANA.

5. Security Considerations

This document extends the functionality of the CoS TLV ([RFC8972]) and inherits all the security considerations applicable to the base STAMP specification [RFC8762] and [RFC8972].

As this specification defines a mechanism to set ECN values, this document inherits all the security considerations discussed in [RFC3168] and [RFC9330]. Monitoring and optional control of ECN for a reflected STAMP test packet using the extended CoS TLV may be used across the Internet such that the Session-Sender and the Session-Reflector are located in different domains.

6. References

6.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>.
[RFC2474]
Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, DOI 10.17487/RFC2474, , <https://www.rfc-editor.org/info/rfc2474>.
[RFC3168]
Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of Explicit Congestion Notification (ECN) to IP", RFC 3168, DOI 10.17487/RFC3168, , <https://www.rfc-editor.org/info/rfc3168>.
[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>.
[RFC8762]
Mirsky, G., Jun, G., Nydell, H., and R. Foote, "Simple Two-Way Active Measurement Protocol", RFC 8762, DOI 10.17487/RFC8762, , <https://www.rfc-editor.org/info/rfc8762>.
[RFC8972]
Mirsky, G., Min, X., Nydell, H., Foote, R., Masputra, A., and E. Ruffini, "Simple Two-Way Active Measurement Protocol Optional Extensions", RFC 8972, DOI 10.17487/RFC8972, , <https://www.rfc-editor.org/info/rfc8972>.
[RFC9330]
Briscoe, B., Ed., De Schepper, K., Bagnulo, M., and G. White, "Low Latency, Low Loss, and Scalable Throughput (L4S) Internet Service: Architecture", RFC 9330, DOI 10.17487/RFC9330, , <https://www.rfc-editor.org/info/rfc9330>.

6.2. Informative References

[RFC8311]
Black, D., "Relaxing Restrictions on Explicit Congestion Notification (ECN) Experimentation", RFC 8311, DOI 10.17487/RFC8311, , <https://www.rfc-editor.org/info/rfc8311>.
[RFC9331]
De Schepper, K. and B. Briscoe, Ed., "The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)", RFC 9331, DOI 10.17487/RFC9331, , <https://www.rfc-editor.org/info/rfc9331>.

Acknowledgements

TBD

Contributors

Karthik Sundaresan, William Hawkins III

Authors' Addresses

Greg White
CableLabs
858 Coal Creek Circle
Louisville, Colorado 80027
United States of America
Greg Mirsky
Ericsson
Xiao Min
ZTE Corp.
Nanjing
China