Re: [ippm] IOAM Direct Exporting Open Issue

Tommy Pauly <tpauly@apple.com> Mon, 26 October 2020 15:44 UTC

Return-Path: <tpauly@apple.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 8A9943A0D6B; Mon, 26 Oct 2020 08:44:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.102
X-Spam-Level:
X-Spam-Status: No, score=-7.102 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=apple.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 R28qI-RJVGIt; Mon, 26 Oct 2020 08:44:45 -0700 (PDT)
Received: from ma1-aaemail-dr-lapp02.apple.com (ma1-aaemail-dr-lapp02.apple.com [17.171.2.68]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1B3823A0D45; Mon, 26 Oct 2020 08:44:39 -0700 (PDT)
Received: from pps.filterd (ma1-aaemail-dr-lapp02.apple.com [127.0.0.1]) by ma1-aaemail-dr-lapp02.apple.com (8.16.0.42/8.16.0.42) with SMTP id 09QFhqD9026075; Mon, 26 Oct 2020 08:44:36 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=content-type : mime-version : subject : from : in-reply-to : date : cc : content-transfer-encoding : message-id : references : to; s=20180706; bh=wOfP+8i5xwD8dF3o53xWOfXYdga4mAG5U3ROTEaedB8=; b=i9Tn8f5bYXlnxBSViuR2tY3by1hWYimsxe8meSX/kChP8RKiBUzIJ+nIkGIcfr5IxQAR HUOdzY4T39UN2Y3eToAsRg7XxLTkxk60J1CN+umt1P6O13LlIrTCHHVNGyHo9xgjtdoS AbNMZlRb7z/egBpTMRBCBE4k9+rbUUkwy55a6RDrNdSiKOK+XY7x7e7qpLEZnrh79y0p ulnKRtFrIxT3zOe1wih5+pjhAb8l8f62LUWt/FcSF2KmfnQL8Wt4UAbvAtTKZM9GkXro tab0frcNYIdFMOfxJqMOtMzRvB9BK/xDzAMRzZzL4jMEpAuxxCNuYEAtnpDFSPvikS81 Bg==
Received: from rn-mailsvcp-mta-lapp01.rno.apple.com (rn-mailsvcp-mta-lapp01.rno.apple.com [10.225.203.149]) by ma1-aaemail-dr-lapp02.apple.com with ESMTP id 34cgxuga4j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Mon, 26 Oct 2020 08:44:35 -0700
Received: from rn-mailsvcp-mmp-lapp02.rno.apple.com (rn-mailsvcp-mmp-lapp02.rno.apple.com [17.179.253.15]) by rn-mailsvcp-mta-lapp01.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPS id <0QIT00179FQB2S20@rn-mailsvcp-mta-lapp01.rno.apple.com>; Mon, 26 Oct 2020 08:44:35 -0700 (PDT)
Received: from process_milters-daemon.rn-mailsvcp-mmp-lapp02.rno.apple.com by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) id <0QIT00300FG14O00@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Mon, 26 Oct 2020 08:44:35 -0700 (PDT)
X-Va-A:
X-Va-T-CD: 4b244f5789786077edab6953abd1f065
X-Va-E-CD: cb172ce4fde3b1c2a443923cf76b8407
X-Va-R-CD: 4fd6f502f6287b07357142245659a813
X-Va-CD: 0
X-Va-ID: ff57939c-b872-4e8c-85a1-62fc807c774f
X-V-A:
X-V-T-CD: 4b244f5789786077edab6953abd1f065
X-V-E-CD: cb172ce4fde3b1c2a443923cf76b8407
X-V-R-CD: 4fd6f502f6287b07357142245659a813
X-V-CD: 0
X-V-ID: f01e0402-6e83-481b-b535-243ab5f7663b
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.737 definitions=2020-10-26_08:2020-10-26, 2020-10-26 signatures=0
Received: from localhost.localdomain (unknown [17.232.192.58]) by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPSA id <0QIT00QHZFQ4EM00@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Mon, 26 Oct 2020 08:44:35 -0700 (PDT)
Content-type: text/plain; charset="utf-8"
MIME-version: 1.0 (Mac OS X Mail 14.0 \(3654.0.3.2.26\))
From: Tommy Pauly <tpauly@apple.com>
In-reply-to: <CABUE3XnSvHnSKHQkt7bQm_zUmBAZG9S4MbT8Zc03N=_4zb2njA@mail.gmail.com>
Date: Mon, 26 Oct 2020 08:44:24 -0700
Cc: Barak Gafni <gbarak@nvidia.com>, Haoyu Song <haoyu.song@futurewei.com>, "Frank Brockners (fbrockne)" <fbrockne@cisco.com>, IPPM Chairs <ippm-chairs@ietf.org>, "draft-ietf-ippm-ioam-direct-export@ietf.org" <draft-ietf-ippm-ioam-direct-export@ietf.org>, "IETF IPPM WG (ippm@ietf.org)" <ippm@ietf.org>
Content-transfer-encoding: quoted-printable
Message-id: <C3BD1431-D008-4CF0-946C-1C5DC69CEA30@apple.com>
References: <DM6PR13MB2762A3C2024A7CE1F4025F809A310@DM6PR13MB2762.namprd13.prod.outlook.com> <4941A7B7-7147-48C6-8A05-1D1572DFACA2@apple.com> <BYAPR11MB2584BB076D44E8F8B2D0C405DA050@BYAPR11MB2584.namprd11.prod.outlook.com> <BYAPR12MB3446F6AB70078C4F0DC652DEB4050@BYAPR12MB3446.namprd12.prod.outlook.com> <DM6PR13MB2762B909AD223A7B8706A30D9A050@DM6PR13MB2762.namprd13.prod.outlook.com> <BYAPR12MB3446E428B8E2C3CECB9A3994B4050@BYAPR12MB3446.namprd12.prod.outlook.com> <DM6PR13MB2762E8319576F4B528D7D0659A050@DM6PR13MB2762.namprd13.prod.outlook.com> <AF902D9D-1A96-4C16-940A-4A1FA4522A8F@apple.com> <CABUE3XnSvHnSKHQkt7bQm_zUmBAZG9S4MbT8Zc03N=_4zb2njA@mail.gmail.com>
To: Tal Mizrahi <tal.mizrahi.phd@gmail.com>
X-Mailer: Apple Mail (2.3654.0.3.2.26)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.737 definitions=2020-10-26_08:2020-10-26, 2020-10-26 signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/ippm/E66XOF4OP7wXUt_x-ZitcjCxchc>
Subject: Re: [ippm] IOAM Direct Exporting Open Issue
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: Mon, 26 Oct 2020 15:44:56 -0000

Hi Tal,

This proposal looks good to me. Thanks for writing it up!

Tommy

> On Oct 26, 2020, at 1:28 AM, Tal Mizrahi <tal.mizrahi.phd@gmail.com> wrote:
> 
> Hi Tommy, Barak, Haoyu,
> 
> I created a pull request that I believe resolves the issue based on
> the latest comments.
> 
> https://github.com/inband-oam/ietf/pull/200
> 
> In the proposed version the Hop Count field is not included in the DEX
> header, but the discussion about it is included in an appendix.
> 
> Please let me know if this makes sense.
> 
> Thanks,
> Tal.
> 
> On Fri, Oct 16, 2020 at 11:42 PM Tommy Pauly <tpauly@apple.com> wrote:
>> 
>> 
>> 
>> On Oct 14, 2020, at 10:59 AM, Haoyu Song <haoyu.song@futurewei.com> wrote:
>> 
>> Hi Barak,
>> 
>> That’s a possible solution.
>> The nature of DEX makes the DEX data correlation a unique requirements.
>> Now we already have the built-in support for flow correlation (using optional flow ID) and packet correlation (using optional sequence number). The last piece is data order correlation. TTL/Hop Limit, if exist, can be used to server this purpose
>> (we also need to realize, this is not ideal because a missing TTL number from the export data can imply either a dropped export packet  or a DEX-incapable hop. It’s not easy to tell).
>> Previously I suggest to use an optional hop_count to support it just in case such info can’t be acquired elsewhere.
>> If we don’t want to have this, then we need either provide an alternative solution or claim we accept it in exchange of simplicity.
>> In any case, we should include the discussion to show the tradeoffs in the draft.
>> 
>> 
>> Ultimately the draft should just define one method and not present two approaches. The rationale can be mentioned, perhaps in an appendix.
>> 
>> Thanks,
>> Tommy
>> 
>> 
>> Best,
>> Haoyu
>> 
>> ________________________________
>> From: Barak Gafni <gbarak@nvidia.com>
>> Sent: Wednesday, October 14, 2020 10:34:34 AM
>> To: Haoyu Song <haoyu.song@futurewei.com>; Frank Brockners (fbrockne) <fbrockne@cisco.com>; Tommy Pauly <tpauly@apple.com>
>> Cc: Tal Mizrahi <tal.mizrahi.phd@gmail.com>; IPPM Chairs <ippm-chairs@ietf.org>; draft-ietf-ippm-ioam-direct-export@ietf.org <draft-ietf-ippm-ioam-direct-export@ietf.org>; IETF IPPM WG (ippm@ietf.org) <ippm@ietf.org>
>> Subject: RE: IOAM Direct Exporting Open Issue
>> 
>> Hi Haoyu,
>> Thanks, I think this is a good suggestion. Taking that into consideration, let's move forward with:
>> 1. Acknowledge current design for DEX w/o additional "special" hop-count field
>> 2. Discuss needs and potential implications related to hop-count as part of data draft, so one can use it for its applications
>> 
>> Does it make sense?
>> 
>> Thanks,
>> Barak
>> 
>> -----Original Message-----
>> From: Haoyu Song <haoyu.song@futurewei.com>
>> Sent: Wednesday, October 14, 2020 10:29 AM
>> To: Barak Gafni <gbarak@nvidia.com>; Frank Brockners (fbrockne) <fbrockne@cisco.com>; Tommy Pauly <tpauly@apple.com>
>> Cc: Tal Mizrahi <tal.mizrahi.phd@gmail.com>; IPPM Chairs <ippm-chairs@ietf.org>; draft-ietf-ippm-ioam-direct-export@ietf.org; IETF IPPM WG (ippm@ietf.org) <ippm@ietf.org>
>> Subject: RE: IOAM Direct Exporting Open Issue
>> 
>> External email: Use caution opening links or attachments
>> 
>> 
>> Hi Barak,
>> 
>> I don't understand what do you mean the issue is not in the scope of DEX draft.
>> The hop information is used to order the DEX data for the same user packet along the path.
>> To make it work, you need to consider how such information can be acquired in every possible application environment.
>> It's fine we can't foresee everything, but for the known ones, we'd better have solutions ready, otherwise we might need expensive update in the future.
>> (Having said that, I'm okay if we acknowledge and decide to accept that in some case such information is missing)
>> 
>> Best,
>> Haoyu
>> 
>> -----Original Message-----
>> From: Barak Gafni <gbarak@nvidia.com>
>> Sent: Wednesday, October 14, 2020 12:04 AM
>> To: Frank Brockners (fbrockne) <fbrockne@cisco.com>; Tommy Pauly <tpauly@apple.com>; Haoyu Song <haoyu.song@futurewei.com>
>> Cc: Tal Mizrahi <tal.mizrahi.phd@gmail.com>; IPPM Chairs <ippm-chairs@ietf.org>; draft-ietf-ippm-ioam-direct-export@ietf.org; IETF IPPM WG (ippm@ietf.org) <ippm@ietf.org>
>> Subject: RE: IOAM Direct Exporting Open Issue
>> 
>> +1
>> My view is that if there is a need to discuss what a hop count is - the scope is the data draft where it has been defined, rather than DEX. Would you agree?
>> 
>> Thanks,
>> Barak
>> 
>> -----Original Message-----
>> From: Frank Brockners (fbrockne) <fbrockne@cisco.com>
>> Sent: Tuesday, October 13, 2020 11:33 PM
>> To: Tommy Pauly <tpauly@apple.com>; Haoyu Song <haoyu.song@futurewei.com>
>> Cc: Tal Mizrahi <tal.mizrahi.phd@gmail.com>; IPPM Chairs <ippm-chairs@ietf.org>; draft-ietf-ippm-ioam-direct-export@ietf.org; IETF IPPM WG (ippm@ietf.org) <ippm@ietf.org>
>> Subject: RE: IOAM Direct Exporting Open Issue
>> 
>> External email: Use caution opening links or attachments
>> 
>> 
>> Cc'ing IPPM WG.
>> 
>> IMHO it makes sense to tackle the question of how IOAM applies to L2 networks as a separate topic.
>> 
>> Cheers, Frank
>> 
>>> -----Original Message-----
>>> From: Tommy Pauly <tpauly@apple.com>
>>> Sent: Freitag, 2. Oktober 2020 20:35
>>> To: Haoyu Song <haoyu.song@futurewei.com>
>>> Cc: Frank Brockners (fbrockne) <fbrockne@cisco.com>; Tal Mizrahi
>>> <tal.mizrahi.phd@gmail.com>; IPPM Chairs <ippm-chairs@ietf.org>;
>>> draft-ietf- ippm-ioam-direct-export@ietf.org
>>> Subject: Re: IOAM Direct Exporting Open Issue
>>> 
>>> If there are scenarios where the hop limit/TTL is not available, could
>>> those not have a separate mechanism to define a hop limit? This DEX
>>> alone could remain simple and without duplication for the L3 case, but
>>> not preventing combining with another mechanism for L2?
>>> 
>>> Tommy
>>> 
>>>> On Oct 2, 2020, at 10:17 AM, Haoyu Song <haoyu.song@futurewei.com>
>>> wrote:
>>>> 
>>>> Hi Frank and Tommy,
>>>> 
>>>> It's also clear that "Hop_count" is not semantically identical to
>>>> "Hop_lim" (or
>>> TTL) as specified in IOAM data. The most critical question is: what if
>>> Hop_lim is not available at all (e.g., in L2 networks)? Then how can
>>> we get such information? We need to add explanations in the draft how
>>> to handle such a possibility, and how to get and interpret Hop_lim, if it exists.
>>>> 
>>>> Best regards,
>>>> Haoyu
>>>> 
>>>> -----Original Message-----
>>>> From: Frank Brockners (fbrockne) <fbrockne@cisco.com>
>>>> Sent: Friday, October 2, 2020 9:31 AM
>>>> To: Tommy Pauly <tpauly@apple.com>; Tal Mizrahi
>>>> <tal.mizrahi.phd@gmail.com>
>>>> Cc: IPPM Chairs <ippm-chairs@ietf.org>;
>>>> draft-ietf-ippm-ioam-direct-export@ietf.org
>>>> Subject: RE: IOAM Direct Exporting Open Issue
>>>> 
>>>> Hi Tommy,
>>>> 
>>>> as we all agree, one guiding principle in standards is to avoid
>>>> reimplementation
>>> of an already available functionality. This principle helps
>>> implementors and avoid a proliferation of different options to
>>> implement the same functionality. IMHO we're presented with such a case here.
>>>> 
>>>> DEX was originally designed to avoid recording/updating the IOAM
>>>> related
>>> metadata in the packet as the packet traverses the network, but
>>> instead have every transited node create and immediately export the OAM data of interest.
>>> Let's call this "Vanilla DEX".
>>>> 
>>>> If we add "hop count recording", we create a "Hybrid DEX" mode, in
>>>> that we
>>> record and update a hop-count field in the packet *and* have every
>>> transited node create and immediately export the OAM data of interest.
>>> The hop-count recording in this "Hybrid DEX" mode would just be a
>>> re-implementation of a capability which we already have if we combine
>>> "Vanilla DEX" with "IOAM tracing".
>>> draft-ietf-ippm-ioam-direct-export-01 kind of states this in section 7
>>> - but IMHO we should make it really clear that we're talking about a re- implementation of an already existing capability.
>>>> 
>>>> Maybe this context could help us to come to a conclusion on this topic.
>>>> 
>>>> Cheers, Frank
>>>> 
>>>>> -----Original Message-----
>>>>> From: Tommy Pauly <tpauly@apple.com>
>>>>> Sent: Mittwoch, 16. September 2020 19:48
>>>>> To: Tal Mizrahi <tal.mizrahi.phd@gmail.com>
>>>>> Cc: IPPM Chairs <ippm-chairs@ietf.org>;
>>>>> draft-ietf-ippm-ioam-direct- export@ietf.org
>>>>> Subject: Re: IOAM Direct Exporting Open Issue
>>>>> 
>>>>> Hi Tal,
>>>>> 
>>>>> We may need to take some time on our upcoming IETF 109 agenda to
>>>>> dedicate to resolving this if we can’t get it done before then.
>>>>> 
>>>>> To get a sense from the authors, for either option, is there
>>>>> someone who can’t live with that outcome? I can see the trade offs
>>>>> either way, and I do think we should prescribe only one method. The
>>>>> text lists the pros and cons—how do they weigh against one another?
>>>>> 
>>>>> Tommy
>>>>> 
>>>>>> On Sep 15, 2020, at 11:21 PM, Tal Mizrahi
>>>>>> <tal.mizrahi.phd@gmail.com>
>>>>> wrote:
>>>>>> 
>>>>>> Dear Chairs,
>>>>>> 
>>>>>> There were no responses to this email, probably since everyone who
>>>>>> had comments about this open issue has already commented in the past.
>>>>>> At this point we would like your help with proceeding to resolve this issue.
>>>>>> 
>>>>>> Thanks,
>>>>>> Tal.
>>>>>> 
>>>>>> ---------- Forwarded message ---------
>>>>>> From: Tal Mizrahi <tal.mizrahi.phd@gmail.com>
>>>>>> Date: Sun, Aug 30, 2020 at 8:52 AM
>>>>>> Subject: IOAM Direct Exporting Open Issue
>>>>>> To: IETF IPPM WG <ippm@ietf.org>
>>>>>> 
>>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> There is an open issue in the DEX draft about whether to include
>>>>>> an explicit Hop Count field in the DEX header, or to rely on the
>>>>>> existing Hop_Lim/Node_ID data field.
>>>>>> 
>>>>>> Section 7 of the draft presents the pros and cons of each of these
>>>>>> alternatives. This issue has also been discussed on the mailing
>>>>>> list a couple of times, and on the last few IPPM meetings.
>>>>>> 
>>>>>> We would like to encourage non-authors to express their opinion
>>>>>> about which approach should be taken: (1) use an explicit Hop
>>>>>> Count field, or (2) rely on the existing Hop_Lim/Node_ID data field.
>>>>>> 
>>>>>> Cheers,
>>>>>> Tal.
>>>>>> 
>>>>>> 
>>>>>> Here is a link to the draft:
>>>>>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2F
>>>>>> da
>>>>>> tatracker.ietf.org%2Fdoc%2Fdraft-ietf-ippm-ioam-direct-export%2F&a
>>>>>> mp
>>>>>> 
>>> ;data=02%7C01%7Chaoyu.song%40futurewei.com%7C2f840fbff5b34808bb3f08
>>> d
>>>>>> 
>>> 866f0c247%7C0fee8ff2a3b240189c753a1d5591fedc%7C1%7C0%7C6373725315
>>> 361
>>>>>> 
>>> 39070&amp;sdata=zOeIUtzXzqkyb5D9pdc1UgUP%2Bnpjc0aB0AHU0Df8Y1E%3D
>>> &amp
>>>>>> ;reserved=0
>>>>>> 
>>>>>> Section 7 of the draft, which presents the two alternatives is
>>>>>> quoted here for convenience.
>>>>>> 
>>>>>>    Hop Limit / Hop Count: in order to help correlate and order the
>>>>>>    exported packets, it is possible to include a 1-octet Hop Count
>>>>>>    field in the DEX header (presumably by claiming some space from
>>>>>>    the Flags field).  Its value starts from 0 at the encapsulating
>>>>>>    node and is incremented by each IOAM transit node that supports
>>>>>>    the DEX option.  The Hop Count field value is also included in the
>>>>>>    exported packet.  An alternative approach is to use the Hop_Lim/
>>>>>>    Node_ID data field; if the IOAM-Trace-Type
>>>>>>    [I-D.ietf-ippm-ioam-data] has the Hop_Lim/Node_ID bit set, then
>>>>>>    exported packets include the Hop_Lim/Node_ID data field, which
>>>>>>    contains the TTL/Hop Limit value from a lower layer protocol.  The
>>>>>>    main advantage of the Hop_Lim/Node_ID approach is that it provides
>>>>>>    information about the current hop count without requiring each
>>>>>>    transit node to modify the DEX option, thus simplifying the data
>>>>>>    plane functionality of Direct Exporting.  The main advantage of
>>>>>>    the Hop Count approach is that it counts the number of IOAM-
>>>>>>    capable nodes without relying on the lower layer TTL, especially
>>>>>>    when the lower layer cannot prvide the accurate TTL information,
>>>>>>    e.g., Layer 2 Ethernet or hierarchical VPN.  It also explicitly
>>>>>>    allows to detect a case where an IOAM-capable node fails to export
>>>>>>    packets.  In order to facilitate the Hop Count approach it is
>>>>>>    possible to use a flag to indicate an optional Hop Count field,
>>>>>>    which enables to control the tradeoff.  On one hand it addresses
>>>>>>    the use cases that the Hop_Lim/Node_ID cannot cover, and on the
>>>>>>    other hand it does not require transit switches to update the
>>>>>>    option if it is not supported or disabled.  Further discussion is
>>>>>>    required about the tradeoff between the two alternatives.
>> 
>>