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

"Frank Brockners (fbrockne)" <fbrockne@cisco.com> Fri, 13 April 2018 08:59 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 0676012025C; Fri, 13 Apr 2018 01:59:41 -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_MED=-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 ilOoMd0UA52C; Fri, 13 Apr 2018 01:59:38 -0700 (PDT)
Received: from rcdn-iport-4.cisco.com (rcdn-iport-4.cisco.com [173.37.86.75]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 361CD1200F1; Fri, 13 Apr 2018 01:59:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=44418; q=dns/txt; s=iport; t=1523609978; x=1524819578; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=p08xZJXl0OlzCabBE5HLxhnL7RxOC45TnN+m6679OIc=; b=GJ21Kz5IvccIHnYIual7WjTLn7PryY9XaXqwgeb7qtnoEaG6qm8M+7iZ NhUzSq9QMZrYrL3ARzdCRmZW0UC9LHReNi8wK+rCQzvN1dCymGKO/p8va 5IsS7h33Pve6hKXpnRvg3JtV84yVWxGhEzO/42Hboo+0Re523U1NrwTeV E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DlAAA3cNBa/5NdJa1cGQEBAQEBAQEBAQEBAQcBAQEBAYJNRi9hbygKg1qIAo0TgXSBD4IWkE6BeAMLGAEMhF4CGoINITQYAQIBAQEBAQECbBwMhSIBAQEBAwEBIQpBCxACAQgRBAEBIQECBAMCAgIlCxQJCAEBBAENBQgXhApkD6dCghyIR4IqBYd9gVQ/gQ+CDFEugxEBAQIBgTpZgkqCVAKQX4Z/CAKFVoUqgzCBO4NahzqHLIF5hkgCERMBgSQBHDgmgSxwFTqCQ4IdAxcRiEiFPm8BjVaBFwEB
X-IronPort-AV: E=Sophos;i="5.48,444,1517875200"; d="scan'208,217";a="380590998"
Received: from rcdn-core-11.cisco.com ([173.37.93.147]) by rcdn-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Apr 2018 08:59:36 +0000
Received: from XCH-ALN-007.cisco.com (xch-aln-007.cisco.com [173.36.7.17]) by rcdn-core-11.cisco.com (8.14.5/8.14.5) with ESMTP id w3D8xaxO015310 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Fri, 13 Apr 2018 08:59:36 GMT
Received: from xch-rcd-008.cisco.com (173.37.102.18) by XCH-ALN-007.cisco.com (173.36.7.17) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Fri, 13 Apr 2018 03:59:35 -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, 13 Apr 2018 03:59:35 -0500
From: "Frank Brockners (fbrockne)" <fbrockne@cisco.com>
To: "徐小虎(义先)" <xiaohu.xxh@alibaba-inc.com>, Int-area <int-area-bounces@ietf.org>
CC: NVO3 <nvo3@ietf.org>, int-area <int-area@ietf.org>, Service Function Chaining IETF list <sfc@ietf.org>, IETF IPPM WG <ippm@ietf.org>
Thread-Topic: [nvo3] [Int-area] [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London
Thread-Index: AdPRe/DslDwu34XkSmq8g6ttV3Kt0QBLOKqAAB8CvoAACCcTMA==
Date: Fri, 13 Apr 2018 08:59:35 +0000
Message-ID: <b30de0d8c78b44609d835ff8821efe0d@XCH-RCD-008.cisco.com>
References: <ff0c9182d1f14ec48b352e41fedaf58e@XCH-RCD-008.cisco.com>, <CA+RyBmUNHcQZtTGJj67V=DqPkwV6GXWDUQJGjwT7ODEFg_QQFA@mail.gmail.com> <b7e6156c-733a-4259-9699-7f717e5b1b5e.xiaohu.xxh@alibaba-inc.com>
In-Reply-To: <b7e6156c-733a-4259-9699-7f717e5b1b5e.xiaohu.xxh@alibaba-inc.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.7]
Content-Type: multipart/alternative; boundary="_000_b30de0d8c78b44609d835ff8821efe0dXCHRCD008ciscocom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/nvo3/1SX1bZup3qpCJWowOgYsZ926-xM>
Subject: Re: [nvo3] [Int-area] [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, 13 Apr 2018 08:59:41 -0000

Hi Xiaohu,

please see inline (“...FB“)

From: nvo3 <nvo3-bounces@ietf.org> On Behalf Of ???(??)
Sent: Freitag, 13. April 2018 09:42
To: Int-area <int-area-bounces@ietf.org>; Frank Brockners (fbrockne) <fbrockne@cisco.com>
Cc: NVO3 <nvo3@ietf.org>; int-area <int-area@ietf.org>; Service Function Chaining IETF list <sfc@ietf.org>; IETF IPPM WG <ippm@ietf.org>
Subject: Re: [nvo3] [Int-area] [ippm] encapsulation of IOAM data in various protocols - follow up from WG discussion in London

Hi,

It said in draft-brockners-ippm-ioam-vxlan-gpe-00:



"

   [I-D.ietf-nvo3-vxlan-gpe] defines an "O bit" for OAM packets.  Per

   [I-D.ietf-nvo3-vxlan-gpe<https://tools.ietf.org/html/draft-brockners-ippm-ioam-vxlan-gpe-00#ref-I-D.ietf-nvo3-vxlan-gpe>] the O bit indicates that the packet

   contains an OAM message instead of data payload.  Packets that carry

   IOAM data fields in addition to regular data payload / customer

   traffic must not set the O bit.  Packets that carry only IOAM data

   fields without any payload must set the O bit."



My first question is: if the Next Protocol field within the VXLAN-GPE header should be resorted to indicate the IOAM, why do we still need the "O" bit?



...FB: What this paragraph states is that IOAM is orthogonal to the O-bit in traffic and will not impact the use of the O-bit. I.e. if the O-bit is set on traffic (because it is OAM traffic), then you’ll continue to have it set with IOAM data added to the packet. If the O-bit isn’t set on the original packet, then it also won’t be set with IOAM data added to the packet.



It said in draft-brockners-ippm-ioam-vxlan-gpe-00:



"Next Protocol:  8-bit unsigned integer that determines the type of

      header following IOAM protocol.  The value is from the IANA

            registry setup for VXLAN GPE Next Protocol defined in

      [I-D.ietf-nvo3-vxlan-gpe<https://tools.ietf.org/html/draft-brockners-ippm-ioam-vxlan-gpe-00#ref-I-D.ietf-nvo3-vxlan-gpe>]."



My second question is: why the "Next Protocol" is designed to be context-specific (i.e., specific to the tunnel over which the IOAM data fields are contained). In other words, wouldn't it be better to make the Next Protocol tunnel-independant since the IOAM is intended to be added into various tunnel encapsulations?



...FB: In those cases where IOAM data encapsulation uses the “next protocol” approach, the encapsulation will borrow next-protocol code points from the “parent” protocol. It is the parent protocol that determines how these code points are structured and defined – and in some cases they are 16-bit (like with GRE, where “next protocol” is an Ethertype value) or 8-bit, like for example for “NSH next protocol”



My third question is: does it means intermediate nodes must be aware of various tunnel encapsulations since the IOAM data field is behind the tunnel header? wouldn't it be better to carry the IOAM data just behind the outer IP header?



...FB: This is really a deployment question. E.g. if you run VXLAN-GPE over IPv6, you could choose to encapsulate IOAM data natively into IPv6, or you could choose to encapsulate IOAM data into VXLAN-GPE, or even both.



Cheers, Frank





Best regards,

Xiaohu


On Wed, Apr 11, 2018 at 12:02 PM, 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.
GIM>> The difference in four octets is because OOAM Header:

  *   provides more flexibility, e.g. Flags field and Reserved fields;
  *   supports larger OAM packets than iOAM header;
  *   is future proof by supporting versioning (Version field).
* 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.
GIM>> May I ask which encapsulations supported by the implementations you refer to. Until very recently all iOAM proposals were to use meta-data TLV in, e.g. Geneve and NSH. And if these or some of these implementations already updated to the newly proposed iOAM shim, I don't see problem in making them use OOAM Header. Would you agree?

* 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.
GIM>> The first paragraph of the Introduction section states:
   New protocols that support overlay networks like VxLAN-GPE
   [I-D.ietf-nvo3-vxlan-gpe], GUE [I-D.ietf-nvo3-gue], Geneve
   [I-D.ietf-nvo3-geneve], BIER [I-D.ietf-bier-mpls-encapsulation], and
   NSH [I-D.ietf-sfc-nsh] support multi-protocol payload, e.g.
   Ethernet, IPv4/IPv6, and recognize Operations, Administration, and
   Maintenance (OAM) as one of distinct types.  That ensures that
   Overlay OAM (OOAM)packets are sharing fate with Overlay data packet
   traversing the underlay.
I'm updating the OOAM Header draft and along with cleaning nits will update reference to GUE. I think that the list and the statemnt are quite clear in identifying the scope of networks that may benefit from using not only common OOAM Header but common OOAM mechanisms, e.g. Echo Request/Reply<https://tools.ietf.org/html/draft-ooamdt-rtgwg-demand-cc-cv-03>.

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