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

Tom Herbert <tom@herbertland.com> Tue, 02 April 2019 14:45 UTC

Return-Path: <tom@herbertland.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 23C3C12013B for <ippm@ietfa.amsl.com>; Tue, 2 Apr 2019 07:45:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=herbertland-com.20150623.gappssmtp.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 rbHJ0b7O5_ZL for <ippm@ietfa.amsl.com>; Tue, 2 Apr 2019 07:45:42 -0700 (PDT)
Received: from mail-qk1-x744.google.com (mail-qk1-x744.google.com [IPv6:2607:f8b0:4864:20::744]) (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 12B4B12016F for <ippm@ietf.org>; Tue, 2 Apr 2019 07:45:40 -0700 (PDT)
Received: by mail-qk1-x744.google.com with SMTP id c189so8046044qke.6 for <ippm@ietf.org>; Tue, 02 Apr 2019 07:45:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=herbertland-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=GgYDz4DAh7RYMhQtiWapgETDEuIDnMJM2pF8ygervPI=; b=QjrHAwyZLC6ZeDogZux8OAjqJvUaeUmnTXYqF/b16YALon5AbPsS2m98fiq2he8Zsv t3QZna/SdgViuXtGinGd+CIDzr1HIKlDbIEhZHq9D/TzyCARv+hHai2FniYa1eWd3qQy 1Lxg7pRFUCcH+k11gchKaWsPXtc9NlPl/S+Ei2+xjrofh5X3oNEikdGwEtccXc5N8MSW CMJFWDqPxuRV0zo5PsHyvY9P639Fa2rTSAwfvu6jkOONFfhhYudZnlNndfCMX37w1QMz 2OnOF/RujobWAoJUkuzZfL5QIlg8Xddf67T/3K3KwUMuqlMzNDGI40BjGH4n68Ts9dIh Wilw==
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; bh=GgYDz4DAh7RYMhQtiWapgETDEuIDnMJM2pF8ygervPI=; b=nOyz70uGZ2Hq5dVIOB2b3GC+KZywYHFuI1Uu80qv+khCXWjXOKcCvDnHaQm39xCDKr xZG8e4b+Y77//b5YZjenlaV+IIcAWjcqqPvAxmwitNuCXp10aqN5CWm+5mDOiebNWegk AU3a30x2g+lK3a+TwHtt0QeKyiIqZA2aeBp5o3ulrusXWbPHj2w3WGV1AGjPFYkAF1pL d8w6wq9UOPscv9+dVNrfg3tUNmb+y6atYyx2F/HUQu4w/BSsdRBhUs7C6UOjnU15YJJ8 NnYscRhGz3oOA1aCeZv/76sNXwoohWAYcl/pStCE5ebXGvkjSIlQH2tB3ggKe0MTUPPc gWlA==
X-Gm-Message-State: APjAAAVMohv3jFytBGKAykvCUwmHbBh8W4lWeao08cj/4nXr5oq0cb7q Ayf0NHhd7LZ0xua2+6sZ6iCl3q0wvPq8JqELuBj9+w==
X-Google-Smtp-Source: APXvYqy4wRUiSbUnQSXv89zvRoWlzvnUBtzINZry72rYJTdLXAwOW1ssrDwm4szFBjYxsjS3kK5QKUaeXpafnio636Q=
X-Received: by 2002:a37:9bd4:: with SMTP id d203mr56387887qke.58.1554216337984; Tue, 02 Apr 2019 07:45:37 -0700 (PDT)
MIME-Version: 1.0
References: <CACL_3VGxyn-PYosFsKPVdd8C=P5AbE6HD1zrimHKuh2MPkhnuQ@mail.gmail.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> <CAO42Z2xqq=uksNQPxvF_CRSxf1V_MADbFurzW4hqQW0v478cyw@mail.gmail.com> <DM6PR11MB36254EAC97ACF07F5BAD43CADA5F0@DM6PR11MB3625.namprd11.prod.outlook.com> <DM6PR11MB362528DB0EADA21493CC49A3DA590@DM6PR11MB3625.namprd11.prod.outlook.com> <alpine.DEB.2.20.1904011139550.3490@uplift.swm.pp.se> <BN8PR11MB36181C47785968D8FCA2DED9DA550@BN8PR11MB3618.namprd11.prod.outlook.com> <alpine.DEB.2.20.1904020744260.3490@uplift.swm.pp.se> <CALx6S364AzeZL0+AiPWUj5q_mu+9JAa2taGebos83X6X9Xtz5w@mail.gmail.com> <alpine.DEB.2.20.1904020930120.3490@uplift.swm.pp.se>
In-Reply-To: <alpine.DEB.2.20.1904020930120.3490@uplift.swm.pp.se>
From: Tom Herbert <tom@herbertland.com>
Date: Tue, 02 Apr 2019 16:45:26 +0200
Message-ID: <CALx6S34+XVG2yqP+9-ex6o+m9oHf8BNgAmW0daaD_q2Jjy3iww@mail.gmail.com>
To: Mikael Abrahamsson <swmike@swm.pp.se>
Cc: "Frank Brockners (fbrockne)" <fbrockne@cisco.com>, "C. M. Heard" <heard@pobox.com>, 6man WG <ipv6@ietf.org>, "ippm@ietf.org" <ippm@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/nyXi8_HuZNBPRmCEh7zU-Jqdl1w>
Subject: Re: [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: Tue, 02 Apr 2019 14:45:46 -0000

On Tue, Apr 2, 2019 at 9:33 AM Mikael Abrahamsson <swmike@swm.pp.se> wrote:
>
> On Tue, 2 Apr 2019, Tom Herbert wrote:
>
> > This is solved with proper use of the IPv6 flow label for ECMP instead
> > of devices continuing to try to find 5 tuples buried deep within
> > packets. DPI is only going to become harder as more headers and
> > functionality are added (e.g. segment routing header will be another
> > problem, deep headers will exceed parsing buffers, and it's impossible
> > to find the 5 tuple for a fragment and still be stateless). Since IOAM
> > is used in a limited domain, the requirement should be that all routers
> > in the domain support ECMP routing using flow label (note that is a less
> > stringent requirement than all routers having to support IOAM).
>
> From what I have seen so far, most devices if they support flow label for
> ECMP, can/will use the flow label in *addition* to 5-tuple.
>
Mikael,

They can do that if they want, but it's less reliable then just using
the flow label and three tuple. There is no gaurantee that the five
tuple can be consistently determined for all packets of a flow for a
number of reasons. Even with the just the IOAM in an EH, there are
going to be devices that don't have the logic to skip over an EH to
find the transport layer, so that motivates that the idea that every
packet needs to have the IOAM attached whether it's needed or not
(hence it is an overhead tax).

> For the requirement of IOAM to not have separate ECMP characteristics then
> the entire IOAM domain will have to be configured to use 2-tuple + flow
> label?
>
It is a SHOULD. IMO, it's a less invasive requirement than requiring
all routers in the domain to support IOAM or that IOAM must be set in
every packet.

> Do we have data on how much end systems use flow labels nowadays? If this
> is low, do we have data from OS vendors that they're considering
> increasing the use of flow labels?

All major OSes (Windows, iOS, FreeBSD, Linux) now set the label by
default per RFC6437 and the flow label is usable for ECMP as described
in RFC6438. Linux has been automatically setting flow labels since
2014. So they are definitely being set on packets in the Internet. I'm
not sure if anyone has yet done measurements on how pervasive they
are, but it would be easy enough for a major application or service
provider to count them.

I should also point out that even if the flow label is not set, ECMP
still works and gives consistent results where a "flow" is all packets
sent from one IP address to another. The granularity of doing ECMP per
transport flow is really only needed when there are a lot of flows
over some IP address pair like in a tunnel for instance. There is a
lot of incentive to use flow labels with tunnels to get ECMP. For a
tunnel packet, the flow label is set as a hash for flow of an
encapsulated packet and ECMP is effective just by using the three
tuple of fields in the IP header. For a device trying to extract the
5-tuple they would need to parse over encapsulation shim layers to
find the transport layer. Again, finding the 5-tuple is considerable
work and there's no guarantee that parsing a particular encapsulation
protocol (there are a lot of them) is supported by all devices or that
inner five tuple is even observable (e.g. the tunnel could be
encrypted).

Tom

>
> --
> Mikael Abrahamsson    email: swmike@swm.pp.se