Re: [nvo3] [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London

"Frank Brockners (fbrockne)" <fbrockne@cisco.com> Fri, 20 April 2018 07:16 UTC

Return-Path: <fbrockne@cisco.com>
X-Original-To: nvo3@ietfa.amsl.com
Delivered-To: nvo3@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4A81912EA93; Fri, 20 Apr 2018 00:16:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.51
X-Spam-Level:
X-Spam-Status: No, score=-14.51 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 2oUGOsRLqowa; Fri, 20 Apr 2018 00:16:08 -0700 (PDT)
Received: from alln-iport-6.cisco.com (alln-iport-6.cisco.com [173.37.142.93]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B4D6312D775; Fri, 20 Apr 2018 00:16:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=38256; q=dns/txt; s=iport; t=1524208567; x=1525418167; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=Zky+KPCsN6LIbslIxgDKdp1R/9QYn6An87c3zWKxhZA=; b=fc2ZOUMX+OnEdg0W7pNLQ5xhlx7KwpMbsKz5C952YcZOoTDOYpn03ajF C0BFa/LirlKswL4/isdcAGoQJOf49PD0EY5UuSWEHwF+xfXhzT8N4J7R4 1TPk+mDs0QU2UWNCc74vBi1frvoQxtWKOY7WrA0pB6R7J8t12IvIUScYi k=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0ARAwBYk9la/5NdJa1bGQEBAQEBAQEBAQEBAQcBAQEBAYJNRi9hF2MoCoNglHmBdIEPhmuMCxSBZAsYAQqERgIagiohNhYBAgEBAQEBAQJsHAyFIgEBAQEDAQEhCjoHCxACAQgRBAEBIQMEAwICAh8GCxQJCAEBBA4FCBeECkwDFQ+nGYIchwoNgSuCJAWIBoFUP4EPgwuCT0IBAYEtAQ8DAVWCSoJUApdDLAgCiwU7gnWMVYlzhg8CERMBgSQBIwonYXFwFTuCQ4IdAxcRiEiFPm+NLoEfgRgBAQ
X-IronPort-AV: E=Sophos;i="5.49,300,1520899200"; d="scan'208,217";a="101377355"
Received: from rcdn-core-11.cisco.com ([173.37.93.147]) by alln-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Apr 2018 07:15:52 +0000
Received: from XCH-RCD-007.cisco.com (xch-rcd-007.cisco.com [173.37.102.17]) by rcdn-core-11.cisco.com (8.14.5/8.14.5) with ESMTP id w3K7FqKB016897 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 20 Apr 2018 07:15:52 GMT
Received: from xch-rcd-008.cisco.com (173.37.102.18) by XCH-RCD-007.cisco.com (173.37.102.17) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Fri, 20 Apr 2018 02:15:51 -0500
Received: from xch-rcd-008.cisco.com ([173.37.102.18]) by XCH-RCD-008.cisco.com ([173.37.102.18]) with mapi id 15.00.1320.000; Fri, 20 Apr 2018 02:15:51 -0500
From: "Frank Brockners (fbrockne)" <fbrockne@cisco.com>
To: Greg Mirsky <gregimirsky@gmail.com>
CC: IETF IPPM WG <ippm@ietf.org>, NVO3 <nvo3@ietf.org>, Service Function Chaining IETF list <sfc@ietf.org>, "int-area@ietf.org" <int-area@ietf.org>
Thread-Topic: [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London
Thread-Index: AdPRe/DslDwu34XkSmq8g6ttV3Kt0QGp44SAAAmXEdD//8c/gP//d7zw
Date: Fri, 20 Apr 2018 07:15:51 +0000
Message-ID: <a0c168c0c53a4477a1ba3e8a491ff303@XCH-RCD-008.cisco.com>
References: <ff0c9182d1f14ec48b352e41fedaf58e@XCH-RCD-008.cisco.com> <CA+RyBmWKyv+iDsQdAum0xP5FbEb5hvc7AQm+SOvt5b7myjBtHg@mail.gmail.com> <81b2598c54944ba887248cbce2f66575@XCH-RCD-008.cisco.com> <CA+RyBmXNdcKGhyRvwb5cfZECZTMPEOy_D4umNU4ww+1-nTAfcQ@mail.gmail.com>
In-Reply-To: <CA+RyBmXNdcKGhyRvwb5cfZECZTMPEOy_D4umNU4ww+1-nTAfcQ@mail.gmail.com>
Accept-Language: de-DE, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.55.117.3]
Content-Type: multipart/alternative; boundary="_000_a0c168c0c53a4477a1ba3e8a491ff303XCHRCD008ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/nvo3/2R_gGuCkkAQqhgkdgZMfcTcPxbw>
Subject: Re: [nvo3] [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London
X-BeenThere: nvo3@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Network Virtualization Overlays \(NVO3\) Working Group" <nvo3.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nvo3>, <mailto:nvo3-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nvo3/>
List-Post: <mailto:nvo3@ietf.org>
List-Help: <mailto:nvo3-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nvo3>, <mailto:nvo3-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 20 Apr 2018 07:16:13 -0000

Hi Greg,

it depends on the individual encapsulation, i.e. the parent protocol used. IOAM data encapsulation depends on what the parent protocol offers as encapsulation mechanism. As such, you’d depend on the procedures used by the parent protocol.
Let’s consider two examples Geneve and NSH: For Geneve (draft-brockners-ippm-ioam-geneve-00) we use the “option class” mechanism to carry IOAM data, i.e. Geneve’s mechanism to carry meta data. Getting to the payload in a setup with IOAM data within the Geneve header is no different than a Geneve setup without IOAM, assuming that the Geneve implementation supports Geneve option classes. Check out draft-ietf-nvo3-geneve for the Geneve header. For NSH the suggestion in draft-brockners-sfc-ioam-nsh-01 is to use the “NSH Next Protocol” mechanism in NSH (see e.g. RFC 8300, section 9.1.6). Re-specifying the encap mechanism of the base protocol in a specification which only leverages the base protocol will do more harm than good. It should be avoided because it could only lead to confusion. All the IOAM encap drafts clearly reference the parent protocol encap mechanism – so an implementer will naturally refer to the base specification.

All that said: What are you trying to point out? It seems that you’re pickup up the discussion about the pros and cons on whether to use protocol meta-data or the “next header” approach. The SFC WG discussed this at length in the last meeting in London and you actively participated in it. The “next header” approach allows for a more efficient implementation in hardware (fewer nested structures/lookups) at the expense of requiring the each node to have a basic understanding of IOAM (at least the type and length fields – so that you could skip past it), whereas the “leverage meta-data type-2” approach leads to more complicated lookup operations (the location of MD Type 2 isn’t fixed) as well as constrain the amount of data to be carried to 256 octets. See also section 4.1 in draft-brockners-sfc-ioam-nsh-01.
You remember that from the “hum” in the room that the chairs initiated (which still needs confirmation on the list – which we do right now), there seems to be a preference to either go with the “next header approach” (as per draft-brockners-sfc-ioam-nsh-01) or to document the next header approach and the MD-Type2 approach. We do care about efficient implementation – this is what we learned from several IOAM implementations by now, and which is why we have quite a few authors from companies which drive silicon implementations on the IOAM drafts – see also John Lemon’s email yesterday.

We’d greatly appreciate thoughts from other SFC WG members on their preference of using either the “NSH next protocol” approach or the “MD Type2” meta-data based approach.

Thanks,
Frank

From: Greg Mirsky <gregimirsky@gmail.com>
Sent: Donnerstag, 19. April 2018 19:27
To: Frank Brockners (fbrockne) <fbrockne@cisco.com>
Cc: IETF IPPM WG <ippm@ietf.org>; NVO3 <nvo3@ietf.org>; Service Function Chaining IETF list <sfc@ietf.org>; int-area@ietf.org
Subject: Re: [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London

Hi Frank,
thank you for your expedient response. Yes, clarification and consistent terminology, of course as different encapsulations allow that, will help. What I'm looking through the iOAM encapsulation drafts is the answer to this question How a system that is not using iOAM can get to the data payload that follows the iOAM message? Is there the field in the iOAM shim that allows the system to skip over the iOAM message (by iOAM message I mean iOAM shim and iOAM data)? Would such system be required to parse other than iOAM shim constructs? I couldn't find this scenario being discussed in any of iOAM encapsulation drafts. Have I missed it?

Regards,
Greg

On Thu, Apr 19, 2018 at 9:54 AM, Frank Brockners (fbrockne) <fbrockne@cisco.com<mailto:fbrockne@cisco.com>> wrote:
Hi Greg,

good catch – there is a bit of loose language in some of the drafts. We’ll make things crisper in the next rev. Note that there is no generic “IOAM header” but that definition is always within the context of a particular encapsulation protocol. draft-weis-ippm-ioam-gre-00 already has a definition of the IOAM header (for GRE) – see section 3. For the other drafts, we use language like “The IOAM related fields in VXLAN-GPE are defined as follows” or “The fields related to the encapsulation of IOAM data fields in Geneve are defined as follows”, i.e. the information that is required to perform the encapsulation into the parent protocol, along with the actual IOAM data fields. Moving forward, we can be crisper and split things into an “encapsulation dependent part” and a “data part”.

Frank

From: Greg Mirsky <gregimirsky@gmail.com<mailto:gregimirsky@gmail.com>>
Sent: Donnerstag, 19. April 2018 18:15
To: Frank Brockners (fbrockne) <fbrockne@cisco.com<mailto:fbrockne@cisco.com>>
Cc: IETF IPPM WG <ippm@ietf.org<mailto:ippm@ietf.org>>; NVO3 <nvo3@ietf.org<mailto:nvo3@ietf.org>>; Service Function Chaining IETF list <sfc@ietf.org<mailto:sfc@ietf.org>>; int-area@ietf.org<mailto:int-area@ietf.org>
Subject: Re: [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London

Hi Frank, et. al,
we have a very good discussion, thank you. I have a question and appreciate your consideration:

  *   encapsulation documents refer to IOAM HDR, its length is reflected in the field labeled either Length or IOAM HDR len. But I cannot find the definition of IOAM HDR. What is the IOAM HDR?

Regards,
Greg


On Wed, Apr 11, 2018 at 3:02 AM, Frank Brockners (fbrockne) <fbrockne@cisco.com<mailto:fbrockne@cisco.com>> wrote:
Back at the IPPM meeting in London, we discussed several drafts dealing with the encapsulation of IOAM data in various protocols (draft-brockners-ippm-ioam-vxlan-gpe-00, draft-brockners-ippm-ioam-geneve-00, draft-weis-ippm-ioam-gre-00). One discussion topic that we decided to take to the list was the question on whether draft-ooamdt-rtgwg-ooam-header could be leveraged.  After carefully considering draft-ooamdt-rtgwg-ooam-header, I came to the conclusion that the “OOAM header” does not meet the needs of IOAM:
* Efficiency: IOAM adds data to live user traffic. As such, an encapsulation needs to be as efficient as possible. The “OOAM header” is 8 bytes long. The approach for IOAM data encapsulation in the above mentioned drafts only requires 4 bytes. Using the OOAM header approach would add an unnecessary overhead of 4 bytes – which is significant.
* Maturity: IOAM has several implementations, which were also shown at recent IETF hackathons – and we’re expecting additional implementations to be publicized soon. Interoperable implementations need timely specifications. Despite the question being asked, the recent thread on OOAM in the NVO3 list hasn’t revealed any implementation of the OOAM header. In addition, the thread revealed that several fundamental questions about the OOAM header are still open, such as whether or how active OAM mechanisms within protocols such as Geneve would apply to the OOAM header. This ultimately means that we won’t get to a timely specification.
* Scope: It isn’t entirely clear to which protocols the OOAM header would ultimately apply to. The way the OOAM header is defined, OOAM uses a 8-bit field for “Next Prot”, the next protocol. Some protocols that IOAM data needs to be encapsulated into use 16-bits for their next protocol code points. See e.g. the GRE encapsulation – as specified in draft-weis-ippm-ioam-gre-00.
With the above in mind, I’d suggest that the WG moves forward with specific definitions for encapsulating IOAM data into protocols – per the above mentioned drafts.

Regards, Frank

_______________________________________________
ippm mailing list
ippm@ietf.org<mailto:ippm@ietf.org>
https://www.ietf.org/mailman/listinfo/ippm