[ippm] draft-ioametal-ippm-6man-ioam-ipv6-deployment-00 feedback (Re: v6 option types for IOAM data fields)

Mark Smith <markzzzsmith@gmail.com> Sun, 24 March 2019 02:00 UTC

Return-Path: <markzzzsmith@gmail.com>
X-Original-To: ippm@ietfa.amsl.com
Delivered-To: ippm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4764A1295EC; Sat, 23 Mar 2019 19:00:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.498
X-Spam-Level:
X-Spam-Status: No, score=-1.498 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, FROM_LOCAL_NOVOWEL=0.5, HK_RANDOM_ENVFROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EKfPjB62tKzY; Sat, 23 Mar 2019 19:00:23 -0700 (PDT)
Received: from mail-oi1-x230.google.com (mail-oi1-x230.google.com [IPv6:2607:f8b0:4864:20::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 85345127133; Sat, 23 Mar 2019 19:00:23 -0700 (PDT)
Received: by mail-oi1-x230.google.com with SMTP id v7so4473498oie.8; Sat, 23 Mar 2019 19:00:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=7OshFvm5X9VPQ2xAYuOrj3mPu8/5WUVr4finDgxxbMQ=; b=hAtYUY4a+jM0mZ6R2CRwLu2rdssiUrVae0r6TWGGIj5mXoln5Mxfp45uCiuw+2SsPN opbUxdC3JvlPVh2mw2L+AgsAGx+1l/uDr2x63+dkASm23XBYqHsD1jE89n1mTFW2/weD xi/Xf1SBWPRMmcNB/LR5BIE2RKJuPZkbvwCqzF7XrqJi8gtxEh/+Ik7D7uscybljCPgj Za4tU3HrgMSrepp8/fraTEqRcHajNnZIp9HQ0YBRmFxCRtW8MSDMg7o3DjPN7wMrc+wN yRqaNWpNNvr0ZYXl4Z662rGrOChV7C/QiJVMQlIbs4OA0h8fU/w6aLSVR9HinRmfoqyl xK2w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=7OshFvm5X9VPQ2xAYuOrj3mPu8/5WUVr4finDgxxbMQ=; b=L+awlirBdzz1WUJhDMOgn7gI8nwTPCtaIW1r3h0Xg5tGdoSqF6f57pYoJyn7lq9aWM rtnXkpLIQSiZMaLgSpyhf6MULjNlCjG1pLHsSlzb1BqmgzXjkXfoWcW1jAWYV3877v/s bAU4rUJdNnQ+zEUmAGkJzkYP5gDqxQMugIqc/zuuFd95dOfW6NHtUEV0XtYVRvbbZ+/u tSEJRMMAn9Ah8bQ51rBhpnNGbE8j7SaDFrGYM1cosvhMIfphvuSdr0V5BnVhvpAQOxGa tUXZuuYLEVu7JNbRlXLOeRwtXZGxVtVF0zprH3bNtF+dAUaL72GQ6OBdOZg/fTtBkNcV Yypw==
X-Gm-Message-State: APjAAAXRTTlFNCWduf9ExtNO6pRIvjVuqsEMM1Vgo2Is75ujlJLsi2e5 cRGu253lER60pHz+xZikjxw9Of8gf1S1itVOhgk=
X-Google-Smtp-Source: APXvYqyW6UYEp9IcU5+Swq+8bzu5pNv5rV1GhKXIMFRqLwsoUpgx6M0faJnd0uKBhHmKeOMGem50Zu+9xf1PGW3HCds=
X-Received: by 2002:aca:8c9:: with SMTP id 192mr6801486oii.164.1553392822816; Sat, 23 Mar 2019 19:00:22 -0700 (PDT)
MIME-Version: 1.0
References: <CACL_3VGxyn-PYosFsKPVdd8C=P5AbE6HD1zrimHKuh2MPkhnuQ@mail.gmail.com> <505272eac2dd44fa891d4d36d14da9af@XCH-RCD-008.cisco.com> <CAO42Z2wGMzc_RT=eWTx9Ve-5reS0nCWiteGOuE16=MB4Fg8mkg@mail.gmail.com> <f50040ab52d04867b9a5cefa1c3131c3@XCH-RCD-008.cisco.com> <CAO42Z2zgguekybwVuCh8Az3mK8gHp292BYnWYhJq-8KEyfKzOA@mail.gmail.com> <7ea9049fe6f44a40aefe4801bd796322@XCH-RCD-008.cisco.com> <CAO42Z2y5TS1+8YxNsr=BKz5v8-ZPTiO-M7CU2k6FzNqVZoU4VA@mail.gmail.com> <CY4PR11MB1335960AD9BF9A4B990F7E10DA4A0@CY4PR11MB1335.namprd11.prod.outlook.com>
In-Reply-To: <CY4PR11MB1335960AD9BF9A4B990F7E10DA4A0@CY4PR11MB1335.namprd11.prod.outlook.com>
From: Mark Smith <markzzzsmith@gmail.com>
Date: Sun, 24 Mar 2019 12:59:56 +1100
Message-ID: <CAO42Z2xqq=uksNQPxvF_CRSxf1V_MADbFurzW4hqQW0v478cyw@mail.gmail.com>
To: "Frank Brockners (fbrockne)" <fbrockne@cisco.com>
Cc: "C. M. Heard" <heard@pobox.com>, 6man WG <ipv6@ietf.org>, "ippm@ietf.org" <ippm@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/qvJrdumlnptvUlp2NyKU0siSYyo>
Subject: [ippm] draft-ioametal-ippm-6man-ioam-ipv6-deployment-00 feedback (Re: v6 option types for IOAM data fields)
X-BeenThere: ippm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF IP Performance Metrics Working Group <ippm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ippm>, <mailto:ippm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ippm/>
List-Post: <mailto:ippm@ietf.org>
List-Help: <mailto:ippm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ippm>, <mailto:ippm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 24 Mar 2019 02:00:25 -0000

Hi Frank,

Apologies not to get back to you sooner, I missed this email (and now
have a filter to highlight emails directly sent to me). Also apologies
for sending feedback so close to IETF104.

On Thu, 14 Mar 2019 at 03:23, Frank Brockners (fbrockne)
<fbrockne@cisco.com> wrote:
>
> With the upcoming meeting in Prague, I wanted to come back to this discussion:
>
> We've just recently posted a new draft (draft-ioametal-ippm-6man-ioam-ipv6-deployment-00) - which summarizes a set of deployment considerations for IOAM with IPv6, i.e. complementing 6man draft-ioametal-ippm-6man-ioam-ipv6-options-01. draft-ioametal-ippm-6man-ioam-ipv6-deployment-00 also includes the deployment scenario that Mark detailed below.
>
> Appreciate your thoughts - especially from 6man to provide for proper guidance to IPPM.
>

<snip>

Thanks very much to you and the other authors for writing up that this
Internet Draft.

Regarding

"3.  Considerations for IOAM deployment in IPv6 networks"

that's an excellent list and set of descriptions of what I think are
the requirements for when information is added to an existing IPv6
packet as it transits a network domain that wishes to add and then
remove local domain supplementary information.

I think those requirements also apply to the addition of Segment
Routing information to existing packets as they transit an SR domain,
so one thought could be to extract them out and publish them as a more
general Internet Draft, titled something like "Considerations For
Adding Supplemental Information to IPv6 Packets Transiting a Network
Sub-Domain". (Actually, reading more, I think most of the ID is not
really that specific to IOAM, so most of the ID could probably be
published as a more generic document on considerations for adding
supplemental information to transit IP packets).


Regarding,

"5.1.1.  IPv6-in-IPv6 encapsulation"

where the outer encapsulation header destination IPv6 address is set
to the same as the inner, original IPv6 destination address, for
packets transiting the IOAM domain, I think that method would be quite
vulnerable to C3:

"C3 Packets with IOAM data or associated ICMP errors, should not
      arrive at destinations which have no knowledge of IOAM.  Consider
      using IOAM in transit devices; misleading ICMP errors due to
      addition and/or presence of OAM data in the packet can confuse a
      source of the packet that did not insert the OAM information."


As the outer header IPv6 address is exterior to the IOAM domain as it
is also the inner packet's DA, it means that standard and default IPv6
destination address based forwarding would forward the packet as is
(i.e. encapsulated with IOAM information) external to the domain,
without removing the outer IPv6 encapsulation and the IOAM
information. In other words, IOAM information would leak if standard
IPv6 forwarding was used, which of course is enabled by default for
IPv6 routers.

To prevent that, the egress IOAM device would have to use
non-standard, non-default IPv6 forwarding, which means deeper
inspection of each and every egress packet regardless of its
destination address, to see if it is an encapsulated IOAM packet, and
to then remove the outer IPv6 header and IOAM information if it
exists, before then standard IPv6 forwarding the original inner
packet.

The advantage of using a separate and IOAM domain local and interior
address space as in "5.1.2.  IP-in-IPv6 encapsulation with ULA", is
that the outer packet ULA destination address is distinguishing which
packets need IOAM encapsulation processing from those that don't (and
of course, as the ULA address space is local to and unique to the IOAM
domain, if they do leak externally, they have no valid destination to
reach).

As those encapsulated IOAM packets are distinguished using the (outer)
Destination Address, the selector for standard IPv6 forwarding, there
is now no need for any special, new and more complex packet handling
by the IOAM domain egress device. Using standard IPv6 forwarding
avoids the complexity and implementation that would then be imposed on
every router implementation that could be used as an egress IOAM
domain device.

"2. To simplify debugging in case of leaked IOAM data fields in

       packets, consider a new IOAM E2E destination option to identify
       the Source IOAM domain (AS, v6 prefix).  Insert this option into
       the IOAM destination options EH attached to the outer IPv6
       header.  This additional information would allow for easy
       identification of an AS operator that is the source of packets
       with leaked IOAM information."

is suggesting a solution to the leaked IOAM issue. However I think it
is always better to avoid a problem using an alternative method if
possible, rather than to continue to let it the problem exist and then
mitigate or eliminate its effects with even further mechanisms. It's
more complexity to mitigate or eliminate, and that's more things that
can break.


Regarding,

"5.1.2.  IP-in-IPv6 encapsulation with ULA"

Some suggested text -

"Addressing and routing in the ION are to be configured so
   that the IP-in-IPv6 encapsulated packets follow the same path as the
   original, non-encapsulated packet would have taken."

add something like

"This would create an internal IPv6 forwarding topology using the IOAM
domain's interior ULA address space that is parallel with the
forwarding topology that exists with the non-IOAM address space (the
topology and address space that would be followed by packets that do
not have supplemental IOAM information) . Establishment and
maintenance of the parallel IOAM ULA forwarding topology could be
automated in the future, similar to how LDP [RFC5036] is used in MPLS
to establish and maintain an LSP forwarding topology that is parallel
to the network's IGP forwarding topology."


"Assuming that the operational guidelines specified in Section 4 of
   [RFC4193] are properly followed, the probability of leaks in this
   approach will be almost close to zero."

add something like

"If the packets do leak through IOAM egress device misconfiguration or
partial IOAM egress device failure, the packets' ULA destination
address is invalid outside of the IOAM domain. There is no exterior
destination to be reached, and the packets will be dropped when they
encounter either a router external to the IOAM domain that has a
packet filter that drops packets with ULA destinations, or a router
that does not have a default route."


Regards,
Mark.