Skip to main content

In Situ Operations, Administration, and Maintenance (IOAM) Loopback and Active Flags
draft-ietf-ippm-ioam-flags-10

The information below is for an old version of the document that is already published as an RFC.
Document Type
This is an older version of an Internet-Draft that was ultimately published as RFC 9322.
Authors Tal Mizrahi , Frank Brockners , Shwetha Bhandari , Barak Gafni , Mickey Spiegel
Last updated 2022-11-15 (Latest revision 2022-08-18)
Replaces draft-mizrahi-ippm-ioam-flags
RFC stream Internet Engineering Task Force (IETF)
Intended RFC status Proposed Standard
Formats
Reviews
Additional resources Mailing list discussion
Stream WG state Submitted to IESG for Publication
Document shepherd Tommy Pauly
Shepherd write-up Show Last changed 2022-03-01
IESG IESG state Became RFC 9322 (Proposed Standard)
Action Holders
(None)
Consensus boilerplate Yes
Telechat date (None)
Responsible AD Martin Duke
Send notices to tpauly@apple.com
IANA IANA review state Version Changed - Review Needed
IANA action state RFC-Ed-Ack
draft-ietf-ippm-ioam-flags-10
IPPM                                                          T. Mizrahi
Internet-Draft                                                    Huawei
Intended status: Standards Track                            F. Brockners
Expires: 19 February 2023                                          Cisco
                                                             S. Bhandari
                                                             Thoughtspot
                                                                B. Gafni
                                                                  Nvidia
                                                              M. Spiegel
                                     Barefoot Networks, an Intel company
                                                          18 August 2022

                 In-situ OAM Loopback and Active Flags
                     draft-ietf-ippm-ioam-flags-10

Abstract

   In-situ Operations, Administration, and Maintenance (IOAM) collects
   operational and telemetry information in packets while they traverse
   a path between two points in the network.  This document defines two
   new flags in the IOAM Trace Option headers, specifically the Loopback
   and Active flags.

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 19 February 2023.

Copyright Notice

   Copyright (c) 2022 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Mizrahi, et al.         Expires 19 February 2023                [Page 1]
Internet-Draft                 IOAM Flags                    August 2022

   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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Conventions . . . . . . . . . . . . . . . . . . . . . . . . .   3
     2.1.  Requirements Language . . . . . . . . . . . . . . . . . .   3
     2.2.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  New IOAM Trace Option Flags . . . . . . . . . . . . . . . . .   3
   4.  Loopback in IOAM  . . . . . . . . . . . . . . . . . . . . . .   3
     4.1.  Loopback: Encapsulating Node Functionality  . . . . . . .   5
       4.1.1.  Loopback Packet Selection . . . . . . . . . . . . . .   5
     4.2.  Receiving and Processing Loopback . . . . . . . . . . . .   6
     4.3.  Loopback on the Return Path . . . . . . . . . . . . . . .   7
     4.4.  Terminating a Looped Back Packet  . . . . . . . . . . . .   7
   5.  Active Measurement with IOAM  . . . . . . . . . . . . . . . .   7
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
   7.  Performance Considerations  . . . . . . . . . . . . . . . . .  10
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   9.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  12
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  12
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  12
     10.2.  Informative References . . . . . . . . . . . . . . . . .  12
   Contributors  . . . . . . . . . . . . . . . . . . . . . . . . . .  13
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  14

1.  Introduction

   IOAM [RFC9197] is used for monitoring traffic in the network by
   incorporating IOAM data fields into in-flight data packets.

   IOAM data may be represented in one of four possible IOAM options:
   Pre-allocated Trace Option, Incremental Trace Option, Proof of
   Transit (POT) Option, and Edge-to-Edge Option.  This document defines
   two new flags in the Pre-allocated and Incremental Trace options: the
   Loopback and Active flags.

Mizrahi, et al.         Expires 19 February 2023                [Page 2]
Internet-Draft                 IOAM Flags                    August 2022

   The Loopback flag is used to request that each transit device along
   the path loops back a truncated copy of the data packet to the
   sender.  The Active flag indicates that a packet is used for active
   measurement.  The term active measurement in the context of this
   document is as defined in [RFC7799].

2.  Conventions

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

2.2.  Terminology

   Abbreviations used in this document:

   IOAM:      In-situ Operations, Administration, and Maintenance

   OAM:       Operations, Administration, and Maintenance [RFC6291]

3.  New IOAM Trace Option Flags

   This document defines two new flags in the Pre-allocated and
   Incremental Trace options:

   Bit 1  "Loopback" (L-bit).  When set, the Loopback flag triggers
      sending a copy of a packet back towards the source, as further
      described in Section 4.

   Bit 2  "Active" (A-bit).  When set, the Active flag indicates that a
      packet is an active measurement packet rather than a data packet,
      where "active" is used in the sense defined in [RFC7799].  The
      packet may be an IOAM probe packet, or a replicated data packet
      (the second and third use cases of Section 5).

4.  Loopback in IOAM

   The Loopback flag is used to request that each transit device along
   the path loops back a truncated copy of the data packet to the
   sender.  Loopback allows an IOAM encapsulating node to trace the path
   to a given destination, and to receive per-hop data about both the
   forward and the return path.  Loopback is intended to provide an
   accelerated alternative to Traceroute, that allows the encapsulating
   node to receive responses from multiple transit nodes along the path

Mizrahi, et al.         Expires 19 February 2023                [Page 3]
Internet-Draft                 IOAM Flags                    August 2022

   in less then one round-trip-time, and by sending a single packet.

   As illustrated in Figure 1, an IOAM encapsulating node can push an
   IOAM encapsulation that includes the Loopback flag onto some or all
   of the packets it forwards, using one of the IOAM encapsulation
   types, e.g., [I-D.ietf-sfc-ioam-nsh], or
   [I-D.ietf-ippm-ioam-ipv6-options].  The IOAM transit node and the
   decapsulating node both creates copies of the packet and loop them
   back to the encapsulating node.  The decapsulating node also
   terminates the IOAM encapsulation, and then forwards the packet
   towards the destination.  The two IOAM looped back copies are
   terminated by the encapsulating node.

 +--------+     +--------+     +--------+     +--------+     +--------+
 |        |     |  IOAM  |.....|  IOAM  |.....|  IOAM  |     |        |
 +--------+     +--------+     +--------+     +--------+     +--------+
 | L2/L3  |<===>| L2/L3  |<===>| L2/L3  |<===>| L2/L3  |<===>| L2/L3  |
 +--------+     +--------+     +--------+     +--------+     +--------+
   Source      Encapsulating    Transit      Decapsulating   Destination
                   Node           Node           Node

                <------------  IOAM domain  ----------->

                     IOAM encap. with Loopback flag
 Data packet  ------->============================>----------->
                                   |             |
                  IOAM looped back |             |
                     <=============+             |
                                 IOAM looped back|
                     <===========================+

                     Figure 1: Loopback in IOAM.

   Loopback can be used only if a return path from transit nodes and
   destination nodes towards the source (encapsulating node) exists.
   Specifically, loopback is only applicable in encapsulations in which
   the identity of the encapsulating node is available in the
   encapsulation header.  If an encapsulating node receives a looped
   back packet that was not originated from the current encapsulating
   node, the packet is dropped.

Mizrahi, et al.         Expires 19 February 2023                [Page 4]
Internet-Draft                 IOAM Flags                    August 2022

4.1.  Loopback: Encapsulating Node Functionality

   The encapsulating node either generates synthetic packets with an
   IOAM trace option that has the Loopback flag set, or sets the loopack
   flag in a subset of the in-transit data packets.  Loopback is used
   either proactively or on-demand, i.e., when a failure is detected.
   The encapsulating node also needs to ensure that sufficient space is
   available in the IOAM header for loopback operation, which includes
   transit nodes adding trace data on the original path and then again
   on the return path.

   An IOAM trace option that has the Loopback flag set MUST have the
   value '1' in the most significant bit of IOAM-Trace-Type, and '0' in
   the rest of the bits of IOAM-Trace-Type.  Thus, every transit node
   that processes this trace option only adds a single data field, which
   is the Hop_Lim and node_id data field.  A transit node that receives
   a packet with an IOAM trace option that has the Loopback flag set and
   the IOAM-Trace-Type is not equal to '1' in the most significant bit
   and '0' in the rest of the bits, MUST NOT loop back a copy of the
   packet.  The reason for allowing only a single data field per hop is
   to minimize the impact of amplification attacks.

   IOAM encapsulating nodes MUST NOT push an IOAM encapsulation with the
   Loopback flag onto data packets that already include an IOAM
   encapsulation.  This requirement is intended to prevent IOAM Loopback
   nesting, where looped back packets may be subject to loopback in a
   nested IOAM domain.

4.1.1.  Loopback Packet Selection

   If an IOAM encapsulating node incorporates the Loopback flag into all
   the traffic it forwards it may lead to an excessive amount of looped
   back packets, which may overload the network and the encapsulating
   node.  Therefore, an IOAM encapsulating node that supports the
   Loopback flag MUST support the ability to incorporate the Loopback
   flag selectively into a subset of the packets that are forwarded by
   it.

   Various methods of packet selection and sampling have been previously
   defined, such as [RFC7014] and [RFC5475].  Similar techniques can be
   applied by an IOAM encapsulating node to apply Loopback to a subset
   of the forwarded traffic.

   The subset of traffic that is forwarded or transmitted with a
   Loopback flag SHOULD NOT exceed 1/N of the interface capacity on any
   of the IOAM encapsulating node's interfaces.  This requirement
   applies to the total traffic that incorporates a Loopback flag,
   including traffic that is forwarded by the IOAM encapsulating node

Mizrahi, et al.         Expires 19 February 2023                [Page 5]
Internet-Draft                 IOAM Flags                    August 2022

   and probe packets that are generated by the IOAM encapsulating node.
   In this context N is a parameter that can be configurable by network
   operators.  If there is an upper bound, M, on the number of IOAM
   transit nodes in any path in the network, then configuring N such
   that N >> M (i.e., N is much greater than M) is RECOMMENDED.  The
   rationale is that a packet that includes the Loopback flag triggers a
   looped back packet from each IOAM transit node along the path for a
   total of M looped back packets.  Thus, if N >> M then the number of
   looped back packets is significantly lower than the number of data
   packets forwarded by the IOAM encapsulating node.  It is RECOMMENDED
   that the default value of N satisfies N>100, to be used in the
   absence of explicit operator configuration or if there is no prior
   knowledge about the network topology or size.

   An IOAM domain in which the Loopback flag is used MUST be configured
   such that there is expected to be a return path from each of the IOAM
   transit and IOAM decapsulating nodes; if this expectation does not
   apply, or if the encapsulating node's identity is not available in
   the encapsulation header, then configuration MUST NOT enable the
   Loopback flag to be set.

4.2.  Receiving and Processing Loopback

   A Loopback flag that is set indicates to the transit nodes processing
   this option that they are to create a copy of the received packet and
   send the copy back to the source of the packet.  In this context the
   source is the IOAM encapsulating node, and it is assumed that the
   source address is available in the encapsulation header.  Thus, the
   source address of the original packet is used as the destination
   address in the copied packet.  If IOAM is used over an encapsulation
   that does not include the address of the encapsulating node, then the
   transit/decapsulating node does not loop back a copy of the original
   packet.  The address of the node performing the copy operation is
   used as the source address; the specific method of source address
   assignment is encapsulation specific, e.g., if an IPv6 encapsulation
   is used, then the source address can be assigned as specified in
   [RFC6724].  The copy is also truncated, i.e., any payload that
   resides after the IOAM option(s) is removed before transmitting the
   looped back packet back towards the encapsulating node.  Creating the
   copy that is looped back, and specifically the truncation, may
   require some encapsulation-specific updates in the encapsulation
   header.  The original packet continues towards its destination.  The
   L-bit MUST be cleared in the copy of the packet that a node sends
   back towards the source.

   An IOAM node that supports the reception and processing of the
   Loopback flag MUST support the ability to limit the rate of the
   looped back packets.  The rate of looped back packets SHOULD be

Mizrahi, et al.         Expires 19 February 2023                [Page 6]
Internet-Draft                 IOAM Flags                    August 2022

   limited so that the number of looped back packets is significantly
   lower than the number of packets that are forwarded by the device.
   The looped back data rate SHOULD NOT exceed 1/N of the interface
   capacity on any of the IOAM node's interfaces.  Using N>100 is
   RECOMMENDED.  Depending on the IOAM node's architecture
   considerations, the loopback response rate may be limited to a lower
   number in order to avoid overloading the IOAM node.

4.3.  Loopback on the Return Path

   On its way back towards the source, the copied packet is processed
   like any other packet with IOAM information, including adding
   requested data at each transit node (assuming there is sufficient
   space).

4.4.  Terminating a Looped Back Packet

   Once the return packet reaches the IOAM domain boundary, IOAM
   decapsulation occurs as with any other packet containing IOAM
   information.  Note that the looped back packet does not have the
   L-bit set.  The IOAM encapsulating node that initiated the original
   loopback packet recognizes a received packet as an IOAM looped-back
   packet by checking the Node ID in the Hop_Lim/node_id field that
   corresponds to the first hop.  If the Node ID and IOAM-Namespace
   match the current IOAM node, it indicates that this is a looped back
   packet that was initiated by the current IOAM node, and processed
   accordingly.  If there is no match in the Node ID, the packet is
   processed like a conventional IOAM-encapsulated packet.

   Note that an IOAM encapsulating node may either be an endpoint (such
   as an IPv6 host), or a switch/router that pushes a tunnel
   encapsulation onto data packets.  In both cases, the functionality
   that was described above avoids IOAM data leaks from the IOAM domain.
   Specifically, if an IOAM looped-back packet reaches an IOAM boundary
   node that is not the IOAM node that initiated the loopback, the node
   does not process the packet as a loopback; the IOAM encapsulation is
   removed, preventing IOAM information from leaking out from the IOAM
   domain, and since the packet does not have any payload it is
   terminated.

5.  Active Measurement with IOAM

   Active measurement methods [RFC7799] make use of synthetically
   generated packets in order to facilitate measurement.  This section
   presents use cases of active measurement using the IOAM Active flag.

Mizrahi, et al.         Expires 19 February 2023                [Page 7]
Internet-Draft                 IOAM Flags                    August 2022

   The Active flag indicates that a packet is used for active
   measurement.  An IOAM decapsulating node that receives a packet with
   the Active flag set in one of its Trace options must terminate the
   packet.  The Active flag is intended to simplify the implementation
   of decapsulating nodes by indicating that the packet should not be
   forwarded further.  It is not intended as a replacement for existing
   active OAM protocols, which may run in higher layers and make use of
   the Active flag.

   An example of an IOAM deployment scenario is illustrated in Figure 2.
   The figure depicts two endpoints, a source and a destination.  The
   data traffic from the source to the destination is forwarded through
   a set of network devices, including an IOAM encapsulating node, which
   incorporates one or more IOAM options, a decapsulating node, which
   removes the IOAM options, optionally one or more transit nodes.  The
   IOAM options are encapsulated in one of the IOAM encapsulation types,
   e.g., [I-D.ietf-sfc-ioam-nsh], or [I-D.ietf-ippm-ioam-ipv6-options].

 +--------+     +--------+     +--------+     +--------+     +--------+
 |        |     |  IOAM  |.....|  IOAM  |.....|  IOAM  |     |        |
 +--------+     +--------+     +--------+     +--------+     +--------+
 | L2/L3  |<===>| L2/L3  |<===>| L2/L3  |<===>| L2/L3  |<===>| L2/L3  |
 +--------+     +--------+     +--------+     +--------+     +--------+
   Source      Encapsulating    Transit      Decapsulating   Destination
                   Node           Node           Node

                <------------  IOAM domain  ----------->

                    Figure 2: Network using IOAM.

   This document focuses on three possible use cases of active
   measurement using IOAM.  These use cases are described using the
   example of Figure 2.

   *  Endpoint active measurement: synthetic probe packets are sent
      between the source and destination, traversing the IOAM domain.
      Since the probe packets are sent between the endpoints, these
      packets are treated as data packets by the IOAM domain, and do not
      require special treatment at the IOAM layer.  Specifically, the
      Active flag is not used in this case, and the IOAM layer does not
      need to be aware that an active measurement mechanism is used at a
      higher layer.

   *  IOAM active measurement using probe packets within the IOAM
      domain: probe packets are generated and transmitted by the IOAM
      encapsulating node, and are expected to be terminated by the

Mizrahi, et al.         Expires 19 February 2023                [Page 8]
Internet-Draft                 IOAM Flags                    August 2022

      decapsulating node.  IOAM data related to probe packets may be
      exported by one or more nodes along its path, by an exporting
      protocol that is outside the scope of this document (e.g.,
      [I-D.spiegel-ippm-ioam-rawexport]).  Probe packets include a Trace
      Option which has its Active flag set, indicating that the
      decapsulating node must terminate them.  The specification of
      these probe packets and the processing of these packets by the
      encapsulating and decapsulating nodes is outside the scope of this
      document.

   *  IOAM active measurement using replicated data packets: probe
      packets are created by the encapsulating node by selecting some or
      all of the en route data packets and replicating them.  A selected
      data packet, and its (possibly truncated) copy is forwarded with
      one or more IOAM options, while the original packet is forwarded
      normally, without IOAM options.  To the extent possible, the
      original data packet and its replica are forwarded through the
      same path.  The replica includes a Trace Option that has its
      Active flag set, indicating that the decapsulating node should
      terminate it.  The current document defines the role of the Active
      flag in allowing the decapsulating node to terminate the packet,
      but the replication functionality and the functionality of the
      decapsulating node in this context is outside the scope of this
      document.

   If the volume of traffic that incorporates the Active flag is large,
   it may overload the network and the IOAM node(s) that process the
   active measurement packet.  Thus, the rate of the traffic that
   includes the Active flag SHOULD NOT exceed 1/N of the interface
   capacity on any of the IOAM node's interfaces.  Using N>100 is
   RECOMMENDED.  Depending on the IOAM node's architecture
   considerations, the rate of Active-enabled IOAM packets may be
   limited to a lower number in order to avoid overloading the IOAM
   node.

6.  IANA Considerations

   IANA is requested to allocate the following bits in the "IOAM Trace
   Flags Registry" as follows:

   Bit 1  "Loopback" (L-bit)

   Bit 2  "Active" (A-bit)

   The "Reference" specified in the registry for both bits should be the
   current document.

Mizrahi, et al.         Expires 19 February 2023                [Page 9]
Internet-Draft                 IOAM Flags                    August 2022

   Note that bit 0 is the most significant bit in the Flags Registry.
   This bit was allocated by [RFC9197] as the 'Overflow' bit.

7.  Performance Considerations

   Each of the flags that are defined in this document may have
   performance implications.  When using the loopback mechanism a copy
   of the data packet is sent back to the sender, thus generating more
   traffic than originally sent by the endpoints.  Using active
   measurement with the Active flag requires the use of synthetic
   (overhead) traffic.

   Each of the mechanisms that use the flags above has a cost in terms
   of the network bandwidth, and may potentially load the node that
   analyzes the data.  Therefore, it MUST be possible to use each of the
   mechanisms on a subset of the data traffic; an encapsulating node
   needs to be able to set the Loopback and Active flag selectively, in
   a way that considers the effect on the network performance, as
   further discussed in Section 4.1.1 and Section 5.

   Transit and decapsulating nodes that support Loopback need to be able
   to limit the looped back packets (Section 4.2) so as to ensure that
   the mechanisms are used at a rate that does not significantly affect
   the network bandwidth, and does not overload the source node in the
   case of loopback.

8.  Security Considerations

   The security considerations of IOAM in general are discussed in
   [RFC9197].  Specifically, an attacker may try to use the
   functionality that is defined in this document to attack the network.

   IOAM is assumed to be deployed in a restricted administrative domain,
   thus limiting the scope of the threats above and their effect.  This
   is a fundamental assumption with respect to the security aspects of
   IOAM, as further discussed in [RFC9197].  However, even given this
   limited scope, security threats should still be considered and
   mitigated.  Specifically, an attacker may attempt to overload network
   devices by injecting synthetic packets that include an IOAM Trace
   Option with one or more of the flags defined in this document.
   Similarly, an on-path attacker may maliciously set one or more of the
   flags of transit packets.

Mizrahi, et al.         Expires 19 February 2023               [Page 10]
Internet-Draft                 IOAM Flags                    August 2022

   *  Loopback flag: an attacker that sets this flag, either in
      synthetic packets or transit packet, can potentially cause an
      amplification, since each device along the path creates a copy of
      the data packet and sends it back to the source.  The attacker can
      potentially leverage the Loopback flag for a Distributed Denial of
      Service (DDoS) attack, as multiple devices send looped-back copies
      of a packet to a single victim.

   *  Active flag: the impact of synthetic packets with the Active flag
      is no worse than synthetic data packets in which the Active flag
      is not set.  By setting the Active flag in en route packets an
      attacker can prevent these packets from reaching their
      destination, since the packet is terminated by the decapsulating
      device; however, note that an on-path attacker may achieve the
      same goal by changing the destination address of a packet.
      Another potential threat is amplification; if an attacker causes
      transit switches to replicate more packets than they are intended
      to replicate, either by setting the Active flag or by sending
      synthetic packets, then traffic is amplified, causing bandwidth
      degredation.  As mentioned in Section 5, the specification of the
      replication mechanism is not within the scope of this document.  A
      specification that defines the replication functionality should
      also address the security aspects of this mechanism.

   Some of the security threats that were discussed in this document may
   be worse in a wide area network in which there are nested IOAM
   domains.  For example, if there are two nested IOAM domains that use
   loopback, then a looped-back copy in the outer IOAM domain may be
   forwarded through another (inner) IOAM domain and may be subject to
   loopback in that (inner) IOAM domain, causing the amplification to be
   worse than in the conventional case.

   In order to mitigate the performance-related attacks described above,
   as described in Section 7 it should be possible for IOAM-enabled
   devices to selectively apply the mechanisms that use the flags
   defined in this document to a subset of the traffic, and to limit the
   performance of synthetically generated packets to a configurable
   rate.  Specifically, IOAM nodes should be able to:

   *  Limit the rate of IOAM packets with the Loopback flag (IOAM
      encapsulating nodes), as discussed in Section 4.1.1.

   *  Limit the rate of looped back packets (IOAM transit and
      decapsulating nodes), as discussed in Section 4.2.

   *  Limit the rate of IOAM packets with the Active flag (IOAM
      encapsulating nodes), as discussed in Section 5.

Mizrahi, et al.         Expires 19 February 2023               [Page 11]
Internet-Draft                 IOAM Flags                    August 2022

   As defined in Section 4, transit nodes that process a packet with the
   Loopback flag only add a single data field, and truncate any payload
   that follows the IOAM option(s), thus significanly limiting the
   possible impact of an amplification attack.

9.  Acknowledgments

   The authors thank Martin Duke, Tommy Pauly, Donald Eastlake, Paul
   Kyzivat, Bernard Aboba, Greg Mirsky, and other members of the IPPM
   working group for many helpful comments.

10.  References

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

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

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

10.2.  Informative References

   [I-D.ietf-ippm-ioam-ipv6-options]
              Bhandari, S. and F. Brockners, "In-situ OAM IPv6 Options",
              Work in Progress, Internet-Draft, draft-ietf-ippm-ioam-
              ipv6-options-08, 16 June 2022,
              <https://www.ietf.org/archive/id/draft-ietf-ippm-ioam-
              ipv6-options-08.txt>.

   [I-D.ietf-sfc-ioam-nsh]
              Brockners, F. and S. Bhandari, "Network Service Header
              (NSH) Encapsulation for In-situ OAM (IOAM) Data", Work in
              Progress, Internet-Draft, draft-ietf-sfc-ioam-nsh-10, 18
              May 2022, <https://www.ietf.org/archive/id/draft-ietf-sfc-
              ioam-nsh-10.txt>.

   [I-D.spiegel-ippm-ioam-rawexport]
              Spiegel, M., Brockners, F., Bhandari, S., and R.
              Sivakolundu, "In-situ OAM raw data export with IPFIX",

Mizrahi, et al.         Expires 19 February 2023               [Page 12]
Internet-Draft                 IOAM Flags                    August 2022

              Work in Progress, Internet-Draft, draft-spiegel-ippm-ioam-
              rawexport-06, 21 February 2022,
              <https://www.ietf.org/archive/id/draft-spiegel-ippm-ioam-
              rawexport-06.txt>.

   [RFC5475]  Zseby, T., Molina, M., Duffield, N., Niccolini, S., and F.
              Raspall, "Sampling and Filtering Techniques for IP Packet
              Selection", RFC 5475, DOI 10.17487/RFC5475, March 2009,
              <https://www.rfc-editor.org/info/rfc5475>.

   [RFC6291]  Andersson, L., van Helvoort, H., Bonica, R., Romascanu,
              D., and S. Mansfield, "Guidelines for the Use of the "OAM"
              Acronym in the IETF", BCP 161, RFC 6291,
              DOI 10.17487/RFC6291, June 2011,
              <https://www.rfc-editor.org/info/rfc6291>.

   [RFC6724]  Thaler, D., Ed., Draves, R., Matsumoto, A., and T. Chown,
              "Default Address Selection for Internet Protocol Version 6
              (IPv6)", RFC 6724, DOI 10.17487/RFC6724, September 2012,
              <https://www.rfc-editor.org/info/rfc6724>.

   [RFC7014]  D'Antonio, S., Zseby, T., Henke, C., and L. Peluso, "Flow
              Selection Techniques", RFC 7014, DOI 10.17487/RFC7014,
              September 2013, <https://www.rfc-editor.org/info/rfc7014>.

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

Contributors

   The Editors would like to recognize the contributions of the
   following individuals to this document.

Mizrahi, et al.         Expires 19 February 2023               [Page 13]
Internet-Draft                 IOAM Flags                    August 2022

      Ramesh Sivakolundu
      Cisco Systems, Inc.
      170 West Tasman Dr.
      SAN JOSE, CA 95134
      U.S.A.

      Email: sramesh@cisco.com

      Carlos Pignataro
      Cisco Systems, Inc.
      7200-11 Kit Creek Road
      Research Triangle Park, NC  27709
      United States

      Email: cpignata@cisco.com

      Aviv Kfir
      Nvidia

      Email: avivk@nvidia.com

      Jennifer Lemon
      Broadcom
      270 Innovation Drive
      San Jose, CA  95134
      US

      Email: jennifer.lemon@broadcom.com

Authors' Addresses

   Tal Mizrahi
   Huawei
   Israel
   Email: tal.mizrahi.phd@gmail.com

   Frank Brockners
   Cisco Systems, Inc.
   Hansaallee 249, 3rd Floor
   40549 DUESSELDORF
   Germany
   Email: fbrockne@cisco.com

Mizrahi, et al.         Expires 19 February 2023               [Page 14]
Internet-Draft                 IOAM Flags                    August 2022

   Shwetha Bhandari
   Thoughtspot
   3rd Floor, Indiqube Orion, 24th Main Rd, Garden Layout, HSR Layout
   Bangalore, KARNATAKA 560 102
   India
   Email: shwetha.bhandari@thoughtspot.com

   Barak Gafni
   Nvidia
   350 Oakmead Parkway, Suite 100
   Sunnyvale, CA
   Email: gbarak@nvidia.com

   Mickey Spiegel
   Barefoot Networks, an Intel company
   4750 Patrick Henry Drive
   Santa Clara, CA,  95054
   United States of America
   Email: mickey.spiegel@intel.com

Mizrahi, et al.         Expires 19 February 2023               [Page 15]