IP Performance Measurement Group G. Fioccola Internet-Draft Huawei Technologies Intended status: Informational 21 June 2024 Expires: 23 December 2024 On-Path Telemetry for Active Performance Measurements draft-fioccola-ippm-on-path-active-measurements-00 Abstract This document describes how to employ active test packets in combination with Hybrid Methods to perform On-path Active Performance Measurements. This procedure allows Hop-By-Hop measurements in addition to the Edge-To-Edge measurements. 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 23 December 2024. Copyright Notice Copyright (c) 2024 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. Fioccola Expires 23 December 2024 [Page 1] Internet-Draft on-path-active-pm June 2024 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 2. On-path Telemetry Options with Active Measurement Tools . . . 3 2.1. ICMP and ICMPv6 . . . . . . . . . . . . . . . . . . . . . 3 2.2. OWAMP, TWAMP and STAMP . . . . . . . . . . . . . . . . . 4 3. Telemetry Methods for On-path Active Metrics . . . . . . . . 5 3.1. Alternate-Marking . . . . . . . . . . . . . . . . . . . . 6 3.2. IOAM . . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. Example of On-path STAMP Performance Measurements . . . . . . 6 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . 7 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 8 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 8 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 9.1. Normative References . . . . . . . . . . . . . . . . . . 8 9.2. Informative References . . . . . . . . . . . . . . . . . 9 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 10 1. Introduction [RFC7799] defines the Active Metric or Method, which depends on a dedicated measurement packet stream and observations of the stream. Commonly, the packet stream of interest is generated as the basis of measurement and sometimes is also classified as a "synthetic" stream. The Source and Destination of the packet stream of interest are usually known a priori. The characteristics of the packet stream of interest are known at the Source, and may be communicated to the Destination as part of the method. An accompanying packet stream or streams may be generated to increase overall traffic load, though the loading stream(s) may not be measured. There are several active tools: Internet Control Message Protocol (ICMP) [RFC792], ICMP version 6 (ICMPv6) [RFC4443], One-way Active Measurement Protocol (OWAMP) [RFC4656], Two-Way Active Measurement Protocol (TWAMP) [RFC5357], Simple Two-way Active Measurement Protocol (STAMP) [RFC8762]. In a test session, the unidirectional or bidirectional packet flow is transmitted between a Source and a Destination. However, the performance of intermediate nodes and links that the test packets traverse are not visible. In several scenarios it is beneficial to perform Hop-By-Hop (HBH) and Edge-To-Edge (E2E) active measurements. Alternate Marking (AltMark) [RFC9341] and In Situ Operations, Administration, and Maintenance (IOAM) [RFC9197] are Hybrid Methods, which can be employed to perform HBH and E2E active measurements by using synthetic test packets and by leveraging the existing AltMark and IOAM options. AltMark and Fioccola Expires 23 December 2024 [Page 2] Internet-Draft on-path-active-pm June 2024 IOAM data fields can be encoded in the Options Headers (Hop-by-Hop or Destination), according to [RFC8200]. The AltMark IPv6 HBH option [RFC9343] and the IOAM IPv6 HBH option [RFC9486] can be coupled with a packet stream of interest and carried in each test packet to enable HBH measurements. Similarly to IPv6, MPLS packets can carry MPLS Network Action (MNA) Sub-Stack as defined in [I-D.ietf-mpls-mna-hdr]. 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119], RFC 8174 [RFC8174]. 2. On-path Telemetry Options with Active Measurement Tools As defined in [RFC7799], Hybrid Methods are characterized by the augmentation or modification of the stream of interest. AltMark and IOAM are two examples of Hybrid Methods. For IPv6, [RFC9343] and [RFC9486] define the IPv6 HBH options of AltMark and IOAM respectively. The next sections explains how the packets look like in case of ICMP, ICMPv6, OWAMP, TWAMP and STAMP. 2.1. ICMP and ICMPv6 ICMPv6 is an integral part of IPv6 and performs error reporting and diagnostic functions. The ICMPv6 Echo ("Ping") checks whether a specified IPv6 address is reachable and exports corresponding statistics. The packet also contains the IPv6 Extension Headers, if present. In particular it may contain an IPv6 HBH Option for On-Path Telemetry (e.g. AltMark [RFC9343] or IOAM [RFC9486]). +------------------------------------+ | IPv6 Header | +------------------------------------+ | IPv6 HBH Option | +------------------------------------+ | ICMPv6 Header + Data | +------------------------------------+ Figure 1: ICMPv6 Packet with IPv6 HbH Option Figure 1 represents an example ICMPv6 packet, which includes an IPv6 HBH option. The intermediate nodes can read and handle the IPv6 HBH Option if they are configured to do so. In this way, it can be possible to perform On-path measurements with ICMPv6. Fioccola Expires 23 December 2024 [Page 3] Internet-Draft on-path-active-pm June 2024 Note that the same applies to the MPLS data plane with MNA Sub-Stacks in the MPLS header, as showed in Figure 2. +------------------------------------+ | MPLS Header | +------------------------------------+ | MNA Sub-Stack | +------------------------------------+ | IP Header | +------------------------------------+ | ICMP Header + Data | +------------------------------------+ Figure 2: ICMP Packet with MNA Sub-Stack 2.2. OWAMP, TWAMP and STAMP The OWAMP protocol provides a way for measuring one-way metrics between network devices. OWAMP can be used bi-directionally to measure one-way metrics in both directions between two network elements. Since OWAMP does not accommodate round-trip or two-way measurements, it was also specified the TWAMP protocol, based on the OWAMP, that adds two-way or round-trip measurement capabilities. The TWAMP measurement architecture is usually comprised of two hosts with specific roles, and this allows for some protocol simplifications, making it an attractive alternative in some circumstances. Similarly to OWAMP, TWAMP control packets are carried by TCP, and test packets are carried by UDP. The port numbers can be changed by configuration. Over time, there has been interest in using a simpler mechanism for active performance monitoring that can provide deterministic behavior and inherent separation of vendor-specific control and test functions. Therefore, STAMP has been defined and it enables the measurement of both one-way and round-trip performance metrics, such as delay, delay variation, and packet loss. Figure 3 represents an example test packet, which includes an IPv6 HBH option. Note that the test packet can be an OWAMP test packet or a TWAMP test packet or a STAMP test packet, depending on whether it is considered an OWAMP session or a TWAMP session or a STAMP session. The intermediate nodes do not need to perform any processing of OWAMP or TWAMP or STAMP. But the intermediate nodes can read and handle the IPv6 HBH Option (i.e. [RFC9343], [RFC9486]), if they are configured to do so. Fioccola Expires 23 December 2024 [Page 4] Internet-Draft on-path-active-pm June 2024 +------------------------------------+ | IPv6 Header | +------------------------------------+ | IPv6 HBH Option | +------------------------------------+ | UDP Header | +------------------------------------+ | OWAMP/TWAMP/STAMP Packet | +------------------------------------+ Figure 3: OWAMP/TWAMP/STAMP Test Packet with IPv6 HbH Option Considering the example of STAMP, it is possible to explain what happens if it is used a STAMP test packet with the IPv6 HbH Option. The STAMP Session-Sender initiates a Session-Sender test packet and the STAMP Session-Reflector transmits a reply Session-Reflector test packet. The STAMP Session-Sender also adds the IPv6 HBH option in the Session-Sender test packets to enable HBH measurements in the forward direction. Intermediate nodes do not perform any STAMP processing, but must support the IPv6 HBH option related methodology. The STAMP Session-Reflector receives test packets transmitted from Session-Sender and acts according to the configuration. The Session- Reflector also adds the IPv6 HBH option in the reply Session- Reflector test packets to enable HBH measurements in the backward direction as well. Note that the same applies to the MPLS data plane with MNA Sub-Stacks in the MPLS header, as showed in Figure 4. +------------------------------------+ | MPLS Header | +------------------------------------+ | MNA Sub-Stack | +------------------------------------+ | IP Header | +------------------------------------+ | UDP Header | +------------------------------------+ | OWAMP/TWAMP/STAMP Packet | +------------------------------------+ Figure 4: OWAMP/TWAMP/STAMP Test Packet with MNA Sub-Stack 3. Telemetry Methods for On-path Active Metrics Fioccola Expires 23 December 2024 [Page 5] Internet-Draft on-path-active-pm June 2024 3.1. Alternate-Marking The Alternate Marking method can be used in combination with the active methods. [RFC9343] defines the Hop-by-Hop Options Header and the Destination Options Header to carry AltMark data fields. The addition of the AltMark IPv6 HBH option augments the active measurement method by enabling on-path HBH measurements together with the usual E2E measurements. It is worth highlighting that this approach is not adding any new functionalities to ICMPv6, OWAMP, TWAMP or STAMP. But it is only leveraging the existing AltMark mechanisms to measure the performance of intermediate nodes and links that the test packets traverse. it is possible to use YANG [I-D.ydt-ippm-alt-mark-yang] to configure and IPFIX [I-D.gfz-opsawg-ipfix-alt-mark] or YANG notifications [I-D.fz-ippm-on-path-telemetry-yang] to report AltMark telemetry information from each intermediate node to a collector. 3.2. IOAM IOAM can also be used in combination with the active methods. [RFC9486] defines the Hop-by-Hop Options Header and the Destination Options Header to carry IOAM data fields. [I-D.gandhi-ippm-stamp-ext-hdr] extends STAMP to reflect back from the Session-Reflector to the Session-Sender any IPv6 options and MPLS Network Action Sub-Stacks for hop-by-hop and edge-to-edge active measurements. [I-D.mcb-6man-icmpv6-loopback] can also be used for this purpose. It is also be possible to use IPFIX/YANG notifications/IOAM DEX to report AltMark telemetry information from each intermediate node to a collector. 4. Example of On-path STAMP Performance Measurements Figure 5 presents the STAMP Session-Sender, Intermediate-Node(s) and Session-Reflector with a measurement session. A measurement session is also referred to as a STAMP session and it is the bidirectional packet flow between one specific Session-Sender and one particular Session-Reflector for a time duration. The Intermediate-Nodes are nodes which do not necessarily need to perform any STAMP processing. Fioccola Expires 23 December 2024 [Page 6] Internet-Draft on-path-active-pm June 2024 The configuration and management of the STAMP Session-Sender, Intermediate-Node(s), Session-Reflector, and sessions are outside the scope of this document and can be achieved through various means, as mentioned in [RFC8762]. o------------------------------------------------------------o | Configuration and | | Management | o------------------------------------------------------------o || || || || || || || || || +--------------+ +--------------------+ +-----------------+ |Session-Sender| ... |Intermediate-Node(s)| ... |Session-Reflector| +--------------+ +------------- ------+ +-----------------+ <---------------------------- STAMP ----------------------------> Figure 5: HbH STAMP Reference Model If the Intermediate-Nodes support the AltMark method, the STAMP Session-Sender and Session-Reflector add the AltMark IPv6 HBH option [RFC9343] to the STAMP test packets. The intermediate nodes can apply the methodology according to [RFC9341] to perform loss and delay measurements. For Alternate Marking, the source node is the only one that writes the IPv6 HBH Option while the intermediate nodes can only read the IPv6 HBH Option, without modifying the packet. If the Intermediate-Nodes support the IOAM methods, the STAMP Session-Sender and Session-Reflector test packets carry the IOAM IPv6 HBH option for recording and collecting HBH and E2E operational and telemetry information for active measurement. The intermediate nodes process the IOAM data fields. For IOAM, the source node and the intermediate nodes modify the IPv6 HBH Option to include the needed information. As already mentioned, it is possible to use YANG to configure and IPFIX or YANG notifications to report telemetry information from each intermediate node to a collector. 5. IANA Considerations This document has no IANA actions. 6. Security Considerations The security considerations specified in [RFC4443], [RFC4656], [RFC5357], [RFC8762] apply to the stream of interest generated to enable the On-path Active performance measurements. Fioccola Expires 23 December 2024 [Page 7] Internet-Draft on-path-active-pm June 2024 In addition, the security considerations specified in [RFC9341] for AltMark and in [RFC9197] for IOAM also apply when using the Hybrid methods in combination with the Active tools. 7. Contributors TBD 8. Acknowledgements TBD 9. References 9.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4443] Conta, A., Deering, S., and M. Gupta, Ed., "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification", STD 89, RFC 4443, DOI 10.17487/RFC4443, March 2006, . [RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M. Zekauskas, "A One-way Active Measurement Protocol (OWAMP)", RFC 4656, DOI 10.17487/RFC4656, September 2006, . [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", RFC 5357, DOI 10.17487/RFC5357, October 2008, . [RFC792] Postel, J., "Internet Control Message Protocol", STD 5, RFC 792, DOI 10.17487/RFC0792, September 1981, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . Fioccola Expires 23 December 2024 [Page 8] Internet-Draft on-path-active-pm June 2024 [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", STD 86, RFC 8200, DOI 10.17487/RFC8200, July 2017, . [RFC8762] Mirsky, G., Jun, G., Nydell, H., and R. Foote, "Simple Two-Way Active Measurement Protocol", RFC 8762, DOI 10.17487/RFC8762, March 2020, . [RFC9197] Brockners, F., Ed., Bhandari, S., Ed., and T. Mizrahi, Ed., "Data Fields for In Situ Operations, Administration, and Maintenance (IOAM)", RFC 9197, DOI 10.17487/RFC9197, May 2022, . [RFC9341] Fioccola, G., Ed., Cociglio, M., Mirsky, G., Mizrahi, T., and T. Zhou, "Alternate-Marking Method", RFC 9341, DOI 10.17487/RFC9341, December 2022, . [RFC9343] Fioccola, G., Zhou, T., Cociglio, M., Qin, F., and R. Pang, "IPv6 Application of the Alternate-Marking Method", RFC 9343, DOI 10.17487/RFC9343, December 2022, . [RFC9486] Bhandari, S., Ed. and F. Brockners, Ed., "IPv6 Options for In Situ Operations, Administration, and Maintenance (IOAM)", RFC 9486, DOI 10.17487/RFC9486, September 2023, . 9.2. Informative References [I-D.fz-ippm-on-path-telemetry-yang] Fioccola, G. and T. Zhou, "On-path Telemetry YANG Data Model", Work in Progress, Internet-Draft, draft-fz-ippm- on-path-telemetry-yang-00, 19 June 2024, . [I-D.gandhi-ippm-stamp-ext-hdr] Gandhi, R. and T. Zhou, "Simple Two-Way Active Measurement Protocol (STAMP) Extensions for Reflecting STAMP Packet Headers", Work in Progress, Internet-Draft, draft-gandhi- ippm-stamp-ext-hdr-00, 6 February 2024, . Fioccola Expires 23 December 2024 [Page 9] Internet-Draft on-path-active-pm June 2024 [I-D.gfz-opsawg-ipfix-alt-mark] Graf, T., Fioccola, G., Zhou, T., Milan, F., and M. Nilo, "IPFIX Alternate-Marking Information", Work in Progress, Internet-Draft, draft-gfz-opsawg-ipfix-alt-mark-01, 24 April 2024, . [I-D.ietf-mpls-mna-hdr] Rajamanickam, J., Gandhi, R., Zigler, R., Song, H., and K. Kompella, "MPLS Network Action (MNA) Sub-Stack Solution", Work in Progress, Internet-Draft, draft-ietf-mpls-mna-hdr- 07, 17 June 2024, . [I-D.mcb-6man-icmpv6-loopback] Mizrahi, T., Zhou, T., Belkar, S., Cohen, R., and J. Iurman, "Internet Control Message Protocol (ICMPv6) Loopback", Work in Progress, Internet-Draft, draft-mcb- 6man-icmpv6-loopback-01, 3 June 2024, . [I-D.ydt-ippm-alt-mark-yang] Graf, T., Wang, M., Fioccola, G., Zhou, T., Min, X., Jun, G., Nilo, M., and L. Han, "A YANG Data Model for the Alternate Marking Method", Work in Progress, Internet- Draft, draft-ydt-ippm-alt-mark-yang-01, 4 March 2024, . [RFC7799] Morton, A., "Active and Passive Metrics and Methods (with Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799, May 2016, . Author's Address Giuseppe Fioccola Huawei Technologies Email: giuseppe.fioccola@huawei.com Fioccola Expires 23 December 2024 [Page 10]