Internet DRAFT - draft-xiao-6man-icmpv6-ioam-conf-state

draft-xiao-6man-icmpv6-ioam-conf-state







6MAN Working Group                                                X. Min
Internet-Draft                                                 ZTE Corp.
Updates: 4620, 4884 (if approved)                              G. Mirsky
Intended status: Standards Track                                Ericsson
Expires: 9 March 2023                                   5 September 2022


            IPv6 Query for Enabled In-situ OAM Capabilities
               draft-xiao-6man-icmpv6-ioam-conf-state-02

Abstract

   This document describes the IPv6 Node IOAM Information Query
   functionality, which uses the IPv6 Node Information messages,
   allowing the IOAM encapsulating node to discover the enabled IOAM
   capabilities of each IOAM transit and decapsulating node.

   This document updates RFCs 4620 and 4884.

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 9 March 2023.

Copyright Notice

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











Min & Mirsky              Expires 9 March 2023                  [Page 1]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 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 Used in This Document . . . . . . . . . . . . . .   3
   3.  Node IOAM Information Query . . . . . . . . . . . . . . . . .   3
   4.  Node IOAM Information Reply . . . . . . . . . . . . . . . . .   5
     4.1.  IOAM Capabilities Objects . . . . . . . . . . . . . . . .   6
     4.2.  Examples of Node IOAM Information Reply . . . . . . . . .   7
   5.  Code Field Processing . . . . . . . . . . . . . . . . . . . .  10
   6.  Updates to RFC 4884 . . . . . . . . . . . . . . . . . . . . .  11
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  11
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  12
   9.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  13
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  13
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  13
     10.2.  Informative References . . . . . . . . . . . . . . . . .  14
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  15

1.  Introduction

   IPv6 encapsulation for In-situ OAM (IOAM) data is defined in
   [I-D.ietf-ippm-ioam-ipv6-options], which uses IPv6 hop-by-hop and
   destination options to carry IOAM data.

   As specified in [I-D.ietf-ippm-ioam-conf-state], echo request/reply
   can be used for the IOAM encapsulating node to discover the enabled
   IOAM capabilities at IOAM transit and decapsulating nodes.

   As specified in [RFC4443], the Internet Control Message Protocol for
   IPv6 (ICMPv6) is an integral part of IPv6, and the base protocol MUST
   be fully implemented by every IPv6 node.  ICMPv6 messages include
   error messages and informational messages, and the latter are
   referred to as ICMPv6 Echo Request/Reply messages.  [RFC4884] defines
   ICMPv6 Extension Structure by which multi-part ICMPv6 error messages
   are supported.  [RFC8335] defines ICMPv6 Extended Echo Request/Reply
   messages, and the ICMPv6 Extended Echo Request contains an ICMPv6
   Extension Structure customized for this message.  Both [RFC4884] and
   [RFC8335] provide sound principles and examples on how to extend
   ICMPv6 error messages and echo request/reply messages.



Min & Mirsky              Expires 9 March 2023                  [Page 2]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   As specified in [RFC4620], two types of IPv6 Node Information
   messages, the Node Information Query (or NI Query) and the Node
   Information Reply (or NI Reply), are carried in ICMPv6 packets, used
   for a Querier node to query information of a Responder node.

   This document describes the IPv6 Node IOAM Information Query
   functionality, which uses the IPv6 Node Information messages,
   allowing the IOAM encapsulating node to discover the enabled IOAM
   capabilities of each IOAM transit and decapsulating node.

   The IOAM encapsulating node sends a NI Query to each IOAM transit and
   decapsulating node, then each receiving node executes access control
   procedures, and if access is granted, each receiving node returns a
   NI Reply which indicates the enabled IOAM capabilities of the
   receiving node.  The NI Reply contains an ICMPv6 Extension Structure
   exactly customized to this message, and the ICMPv6 Extension
   Structure contains one or more IOAM Capabilities Objects.

   Note that before the IOAM encapsulating node sends the NI Query, it
   needs to know the IPv6 address of each node along the transport path
   of a data packet to which IOAM data would be added.  That can be
   achieved by executing ICMPv6/UDP traceroute or provisioning explicit
   path at the IOAM encapsulating node.

2.  Conventions Used in This Document

   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.  Node IOAM Information Query

   The Node IOAM Information Query message is encapsulated in an IPv6
   header [RFC8200], like any ICMPv6 message.

   The Node IOAM Information Query message has the following format:













Min & Mirsky              Expires 9 March 2023                  [Page 3]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Qtype             |             Flags             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                             Nonce                             +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     .           IOAM Capabilities Query Container Payload           .
     .                        as specified in                        .
     .         Section 3.1 of draft-ietf-ippm-ioam-conf-state        .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 1: Node IOAM Information Query Message

   IPv6 Header fields:

   *  Source Address: The Source Address identifies the IOAM
      encapsulating node.  It MUST be a valid IPv6 unicast address.

   *  Destination Address: The Destination Address identifies the IOAM
      transit or decapsulating node.  It MUST be a valid IPv6 unicast
      address.

   ICMPv6 fields:

   *  Type: NI Query.  The value is 139 as allocated for [RFC4620].

   *  Code: The value is (TBD1) the Data field contains a List of IOAM
      Namespace-IDs which is the Subject of this Query.

   *  Checksum: The ICMPv6 checksum.

   *  Qtype: The value is TBD2, which indicates the NI Query is a node
      IOAM capabilities query.

   *  Flags: The same as defined in [RFC4620].  Flags are Qtype-
      specific, the NI Query Qtype used in this document has no defined
      flags.

   *  Nonce: The same as defined in [RFC4620].







Min & Mirsky              Expires 9 March 2023                  [Page 4]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   *  Following the NI Query header, the Data field is a List of IOAM
      Namespace-IDs, which is also called IOAM Capabilities Query
      Container Payload in Section 3.1 of
      [I-D.ietf-ippm-ioam-conf-state].

4.  Node IOAM Information Reply

   The Node IOAM Information Reply message is encapsulated in an IPv6
   header [RFC8200], like any ICMPv6 message.

   The Node IOAM Information Reply message has the following format:

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Qtype             |             Flags             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                             Nonce                             +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     .         IOAM Capabilities Response Container Payload          .
     .                        as specified in                        .
     .         Section 3.2 of draft-ietf-ippm-ioam-conf-state        .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

               Figure 2: Node IOAM Information Reply Message

   IPv6 Header fields:

   *  Source Address: Copied from the Destination Address field of the
      invoking Node IOAM Information Query packet.

   *  Destination Address: Copied from the Source Address field of the
      invoking Node IOAM Information Query packet.

   ICMPv6 fields:

   *  Type: NI Reply.  The value is 140 as allocated for [RFC4620].

   *  Code: The values are (TBD3) No Matched Namespace-ID, and (TBD4)
      Exceed the minimum IPv6 MTU.  See Section 5 for details.

   *  Checksum: The ICMPv6 checksum.





Min & Mirsky              Expires 9 March 2023                  [Page 5]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   *  Qtype: Copied from the Qtype field of the invoking Node IOAM
      Information Query.

   *  Flags: The same as defined in [RFC4620].  Flags are Qtype-
      specific, the NI Reply Qtype used in this document has no defined
      flags.

   *  Nonce: Copied from the Nonce field of the invoking Node IOAM
      Information Query.

   *  Following the NI Reply header, the Data field is a List of IOAM
      Capabilities Objects, which is also called IOAM Capabilities
      Response Container Payload in Section 3.2 of
      [I-D.ietf-ippm-ioam-conf-state].  Section 7 of [RFC4884] defines
      the ICMP Extension Structure.  As per RFC 4884, the Extension
      Structure contains exactly one Extension Header followed by one or
      more objects.  When applied to the Node IOAM Information Reply
      message, the ICMP Extension Structure MUST contain one or more
      IOAM Capabilities Objects.

4.1.  IOAM Capabilities Objects

   All ICMPv6 IOAM Capabilities Objects are encapsulated in a Node IOAM
   Information Reply message.

   Each ICMPv6 IOAM Capabilities Object has the following format:

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     .                IOAM Capabilities Object Payload               .
     .                        as specified in                        .
     .        Section 3.2.x of draft-ietf-ippm-ioam-conf-state       .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 3: IOAM Capabilities Object

   Object fields:

   *  Class-Num: IOAM Capabilities Objects.  The values are listed as
      the following:








Min & Mirsky              Expires 9 March 2023                  [Page 6]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


      Value         Object Name
      -----         -----------
      TBD5          IOAM Tracing Capabilities Object
      TBD6          IOAM Proof-of-Transit Capabilities Object
      TBD7          IOAM Edge-to-Edge Capabilities Object
      TBD8          IOAM DEX Capabilities Object
      TBD9          IOAM End-of-Domain Object

   *  C-Type: Values are listed as the following:

      Class-Num     C-Type     C-Type Name
      ---------     ------     -----------
      TBD5          0          Reserved
                    1          Pre-allocated Tracing
                    2          Incremental Tracing
      TBD6          0          Reserved
      TBD7          0          Reserved
      TBD8          0          Reserved
      TBD9          0          Reserved

   *  Length: Length of the object, measured in octets, including the
      Object Header and Object Payload.

   *  Following the IOAM Capabilities Object Header, it's the IOAM
      Capabilities Object Payload, which is defined respectively in
      Section 3.2.1, Section 3.2.2, Section 3.2.3, Section 3.2.4,
      Section 3.2.5 and Section 3.2.6 of
      [I-D.ietf-ippm-ioam-conf-state].

4.2.  Examples of Node IOAM Information Reply

   The format of Node IOAM Information Reply can vary from deployment to
   deployment.

   In a deployment where only the default Namespace-ID is used, the IOAM
   Pre-allocated Tracing Capabilities and IOAM Proof-of-Transit
   Capabilities are enabled at the IOAM transit node that received Node
   IOAM Information Query, the Node IOAM Information Reply is depicted
   as the following:












Min & Mirsky              Expires 9 March 2023                  [Page 7]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Qtype             |             Flags             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                             Nonce                             +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |               IOAM-Trace-Type                 |  Reserved   |W|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID          |          Ingress_MTU          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ingress_if_id (short or wide format)         ......          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID          | IOAM-POT-Type |SoP| Reserved  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 4: Example 1 of Node IOAM Information Reply

   In a deployment where two Namespace-IDs (Namespace-ID1 and Namespace-
   ID2) are used, for both Namespace-ID1 and Namespace-ID2 the IOAM Pre-
   allocated Tracing Capabilities and IOAM Proof-of-Transit Capabilities
   are enabled at the IOAM transit node that received Node IOAM
   Information Query, the Node IOAM Information Reply is depicted as the
   following:



















Min & Mirsky              Expires 9 March 2023                  [Page 8]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Qtype             |             Flags             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                             Nonce                             +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |               IOAM-Trace-Type                 |  Reserved   |W|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID1         |          Ingress_MTU          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ingress_if_id (short or wide format)         ......          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID1         | IOAM-POT-Type |SoP| Reserved  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |               IOAM-Trace-Type                 |  Reserved   |W|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID2         |          Ingress_MTU          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ingress_if_id (short or wide format)         ......          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID2         | IOAM-POT-Type |SoP| Reserved  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 5: Example 2 of Node IOAM Information Reply

   In a deployment where only the default Namespace-ID is used, the IOAM
   Pre-allocated Tracing Capabilities, IOAM Proof-of-Transit
   Capabilities and IOAM Edge-to-Edge Capabilities are enabled at the
   IOAM decapsulating node that received Node IOAM Information Query,
   the Node IOAM Information Reply is depicted as the following:








Min & Mirsky              Expires 9 March 2023                  [Page 9]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Type      |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Qtype             |             Flags             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                             Nonce                             +
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |               IOAM-Trace-Type                 |  Reserved   |W|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID          |          Ingress_MTU          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ingress_if_id (short or wide format)         ......          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID          | IOAM-POT-Type |SoP| Reserved  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |             Length            |   Class-Num   |   C-Type      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Namespace-ID          |         IOAM-E2E-Type         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |TSF|         Reserved          |              MBZ              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

             Figure 6: Example 3 of Node IOAM Information Reply

   Note that when a Node IOAM Information Query or Node IOAM Information
   Reply is received, the Payload Length field of IPv6 Header [RFC8200]
   indicates the message length.

5.  Code Field Processing

   The Code field in the Node IOAM Information Reply MUST be set to
   (TBD3) No Matched Namespace-ID if any of the following conditions
   apply:

   *  The Node IOAM Information Query does not include any Namespace-ID.

   *  None of the contained list of IOAM Namespace-IDs is recognized.

   *  None of the contained list of IOAM Namespace-IDs is enabled.




Min & Mirsky              Expires 9 March 2023                 [Page 10]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   The Code field in the Node IOAM Information Reply MUST be set to
   (TBD4) Exceed the minimum IPv6 MTU if the formatted NI Reply packet
   exceeds the minimum IPv6 MTU (i.e., 1280 octets).  In this case, all
   objects MUST be stripped before forwarding the Node IOAM Information
   Reply to its destination.

6.  Updates to RFC 4884

   Section 4.6 of [RFC4884] provides a list of extensible ICMP messages
   (i.e., messages that can carry the ICMP Extension Structure).  This
   document adds the IPv6 Node Information Query message and the IPv6
   Node Information Reply message to that list.

7.  IANA Considerations

   This document requests the following IANA actions:

   *  Add the following Code to the "Type 139 - ICMP Node Information
      Query" sub-registry:

      -  (TBD1) The Data field contains a List of IOAM Namespace-IDs
         which is the Subject of this Query

   *  Add the following to the "Qtypes" registry:

      -  TBD2 Node IOAM Capabilities

   *  Add the following Codes to the "Type 140 - ICMP Node Information
      Response" sub-registry:

      -  (TBD3) No Matched Namespace-ID

      -  (TBD4) Exceed the minimum IPv6 MTU

   *  Add the following to the "ICMP Extension Object Classes and Class
      Sub-types" registry:

      -  (TBD5) IOAM Tracing Capabilities Object

   *  Add the following C-types to the "Sub-types - Class TBD5 - IOAM
      Tracing Capabilities Object" sub-registry:

      -  (0) Reserved

      -  (1) Pre-allocated Tracing

      -  (2) Incremental Tracing




Min & Mirsky              Expires 9 March 2023                 [Page 11]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   *  Add the following to the "ICMP Extension Object Classes and Class
      Sub-types" registry:

      -  (TBD6) IOAM Proof-of-Transit Capabilities Object

   *  Add the following C-types to the "Sub-types - Class TBD6 - IOAM
      Proof-of-Transit Capabilities Object" sub-registry:

      -  (0) Reserved

   *  Add the following to the "ICMP Extension Object Classes and Class
      Sub-types" registry:

      -  (TBD7) IOAM Edge-to-Edge Capabilities Object

   *  Add the following C-types to the "Sub-types - Class TBD7 - IOAM
      Edge-to-Edge Capabilities Object" sub-registry:

      -  (0) Reserved

   *  Add the following to the "ICMP Extension Object Classes and Class
      Sub-types" registry:

      -  (TBD8) IOAM DEX Capabilities Object

   *  Add the following C-types to the "Sub-types - Class TBD8 - IOAM
      DEX Capabilities Object" sub-registry:

      -  (0) Reserved

   *  Add the following to the "ICMP Extension Object Classes and Class
      Sub-types" registry:

      -  (TBD9) IOAM End-of-Domain Object

   *  Add the following C-types to the "Sub-types - Class TBD9 - IOAM
      End-of-Domain Object" sub-registry:

      -  (0) Reserved

   All codes mentioned above are assigned on a First Come First Serve
   (FCFS) basis with a range of 0-255.

8.  Security Considerations

   Securiy issues discussed in [RFC4620] and
   [I-D.ietf-ippm-ioam-conf-state] apply to this document.




Min & Mirsky              Expires 9 March 2023                 [Page 12]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   This document recommends using IP Authentication Header [RFC4302] or
   IP Encapsulating Security Payload Header [RFC4303] to provide
   integrity protection for IOAM information.

   This document recommends using IP Encapsulating Security Payload
   Header [RFC4303] to provide privacy protection for IOAM information.

   This document recommends that the network operators establish
   policies that restrict access to IPv6 Node IOAM Information Query
   functionality.  In order to enforce these policies, nodes that
   support IPv6 Node IOAM Information Query functionality MUST support
   the following configuration options:

   *  Enable/disable IPv6 Node IOAM Information Query functionality.  By
      default, IPv6 Node IOAM Information Query functionality is
      disabled.

   *  Define enabled Namespace-IDs.  By default, all Namespace-IDs
      except the default one (i.e., Namespace-ID 0x0000) are disabled.

   *  For each enabled Namespace-ID, define the prefixes from which Node
      IOAM Information Query messages are permitted.

   In order to protect local resources, implementations SHOULD rate-
   limit incoming Node IOAM Information Query messages.

9.  Acknowledgements

   The authors would like to acknowledge Eric Vyncke and Erik Kline for
   their valuable suggestions on using IPv6 Node Information Queries as
   the basis.

   The authors would like to acknowledge Bob Hinden for his valuable
   suggestions on the ICMPv6 message format.

10.  References

10.1.  Normative References

   [I-D.ietf-ippm-ioam-conf-state]
              Min, X., Mirsky, G., and L. Bo, "Echo Request/Reply for
              Enabled In-situ OAM Capabilities", Work in Progress,
              Internet-Draft, draft-ietf-ippm-ioam-conf-state-04, 6 July
              2022, <https://www.ietf.org/archive/id/draft-ietf-ippm-
              ioam-conf-state-04.txt>.






Min & Mirsky              Expires 9 March 2023                 [Page 13]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


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

   [RFC4620]  Crawford, M. and B. Haberman, Ed., "IPv6 Node Information
              Queries", RFC 4620, DOI 10.17487/RFC4620, August 2006,
              <https://www.rfc-editor.org/info/rfc4620>.

   [RFC4884]  Bonica, R., Gan, D., Tappan, D., and C. Pignataro,
              "Extended ICMP to Support Multi-Part Messages", RFC 4884,
              DOI 10.17487/RFC4884, April 2007,
              <https://www.rfc-editor.org/info/rfc4884>.

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

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

   [RFC4302]  Kent, S., "IP Authentication Header", RFC 4302,
              DOI 10.17487/RFC4302, December 2005,
              <https://www.rfc-editor.org/info/rfc4302>.

   [RFC4303]  Kent, S., "IP Encapsulating Security Payload (ESP)",
              RFC 4303, DOI 10.17487/RFC4303, December 2005,
              <https://www.rfc-editor.org/info/rfc4303>.

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






Min & Mirsky              Expires 9 March 2023                 [Page 14]

Internet-Draft  IPv6 Query for Enabled IOAM Capabilities  September 2022


   [RFC8335]  Bonica, R., Thomas, R., Linkova, J., Lenart, C., and M.
              Boucadair, "PROBE: A Utility for Probing Interfaces",
              RFC 8335, DOI 10.17487/RFC8335, February 2018,
              <https://www.rfc-editor.org/info/rfc8335>.

Authors' Addresses

   Xiao Min
   ZTE Corp.
   Nanjing
   China
   Phone: +86 25 88013062
   Email: xiao.min2@zte.com.cn


   Greg Mirsky
   Ericsson
   United States of America
   Email: gregimirsky@gmail.com
































Min & Mirsky              Expires 9 March 2023                 [Page 15]