Skip to main content

On-Path Telemetry for Active Performance Measurements
draft-fioccola-ippm-on-path-active-measurements-00

Document Type Active Internet-Draft (individual)
Author Giuseppe Fioccola
Last updated 2024-06-21
RFC stream (None)
Intended RFC status (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-fioccola-ippm-on-path-active-measurements-00
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,
              <https://www.rfc-editor.org/info/rfc2119>.

   [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,
              <https://www.rfc-editor.org/info/rfc4443>.

   [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,
              <https://www.rfc-editor.org/info/rfc4656>.

   [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,
              <https://www.rfc-editor.org/info/rfc5357>.

   [RFC792]   Postel, J., "Internet Control Message Protocol", STD 5,
              RFC 792, DOI 10.17487/RFC0792, September 1981,
              <https://www.rfc-editor.org/info/rfc792>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

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,
              <https://www.rfc-editor.org/info/rfc8200>.

   [RFC8762]  Mirsky, G., Jun, G., Nydell, H., and R. Foote, "Simple
              Two-Way Active Measurement Protocol", RFC 8762,
              DOI 10.17487/RFC8762, March 2020,
              <https://www.rfc-editor.org/info/rfc8762>.

   [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, <https://www.rfc-editor.org/info/rfc9197>.

   [RFC9341]  Fioccola, G., Ed., Cociglio, M., Mirsky, G., Mizrahi, T.,
              and T. Zhou, "Alternate-Marking Method", RFC 9341,
              DOI 10.17487/RFC9341, December 2022,
              <https://www.rfc-editor.org/info/rfc9341>.

   [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,
              <https://www.rfc-editor.org/info/rfc9343>.

   [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,
              <https://www.rfc-editor.org/info/rfc9486>.

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,
              <https://datatracker.ietf.org/doc/html/draft-fz-ippm-on-
              path-telemetry-yang-00>.

   [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,
              <https://datatracker.ietf.org/doc/html/draft-gandhi-ippm-
              stamp-ext-hdr-00>.

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, <https://datatracker.ietf.org/doc/html/draft-
              gfz-opsawg-ipfix-alt-mark-01>.

   [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, <https://datatracker.ietf.org/doc/html/
              draft-ietf-mpls-mna-hdr-07>.

   [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,
              <https://datatracker.ietf.org/doc/html/draft-mcb-6man-
              icmpv6-loopback-01>.

   [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,
              <https://datatracker.ietf.org/doc/html/draft-ydt-ippm-alt-
              mark-yang-01>.

   [RFC7799]  Morton, A., "Active and Passive Metrics and Methods (with
              Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799,
              May 2016, <https://www.rfc-editor.org/info/rfc7799>.

Author's Address

   Giuseppe Fioccola
   Huawei Technologies
   Email: giuseppe.fioccola@huawei.com

Fioccola                Expires 23 December 2024               [Page 10]