Re: Comments on draft-hinden-6man-hbh-processing-00

Greg Mirsky <gregimirsky@gmail.com> Mon, 29 March 2021 21:04 UTC

Return-Path: <gregimirsky@gmail.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A49E23A2199 for <ipv6@ietfa.amsl.com>; Mon, 29 Mar 2021 14:04:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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=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 1VrNES87PzNG for <ipv6@ietfa.amsl.com>; Mon, 29 Mar 2021 14:04:00 -0700 (PDT)
Received: from mail-lf1-x12f.google.com (mail-lf1-x12f.google.com [IPv6:2a00:1450:4864:20::12f]) (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 B6BF63A219D for <ipv6@ietf.org>; Mon, 29 Mar 2021 14:03:59 -0700 (PDT)
Received: by mail-lf1-x12f.google.com with SMTP id b4so20503499lfi.6 for <ipv6@ietf.org>; Mon, 29 Mar 2021 14:03:59 -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; bh=RpWHuTzjTjBozyezhpxwISBJUrgR+q++edPi/lspErA=; b=W7zVZxjml0QibymsHptVL2VlhgUL7IZL1fAbLZuhIfs1MOkBRZ5wbptDKxCbT/U7A6 5vnnbK4XvTK1UCvZ1nIIT9I9rDymE2isOOf7A5d4+OuDASSk1Xp44sAt83fBNSUEx7nu 4xSreVzrKuZ7S6VlOnHmXsA5rgJW5oifXVMDfQyEt8HVt902FBqpzToMTmaMVXcD/MY0 2hFF1NW864QH3mDUkY7SS4KGsHVnLxz6w2rJyiixpK+aIHIeyKQzmnDCyikyePkIYRZ8 RqPa31yGVv/zjDdWYQt76daNHMFSDuHsEPspKlssdkSFr0YerPAaHMAlwOKK+548PamY Y2eg==
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=RpWHuTzjTjBozyezhpxwISBJUrgR+q++edPi/lspErA=; b=mYLUUel+MB9bKhVbi6Xv8pWSqGIj1sXLz1ZTxf0XZvPsqbWANRB2AGCcmbucmOZEfU EIomCYM8TogDFxCysvMbrok7fBUp1rJmLboRd6wAEEw9sDXzqmVsckl1P7pkdp653Gwq zxdeRrTfZ1WlbiREA+90h3bO1QndLSRjVuGaezku8VOVFK6M8orDhlGb7XOGGmzqSBKV KB6tF2GDOHWDs0MB9rCsbF61Rb4EKwbTeba6ns5cSsVNUAgf1za5WBSxkTaaDU1h5FaA kJeAQCafOS1QiBqUDtDrotN1wnJumyGeVW2uktAuDy62L6dWFj2ozmtIeb/dzJnNpTzX 3ChQ==
X-Gm-Message-State: AOAM531/U6pNbc5f5oA50nBaGTYFZdnp6Syst9ZEZ/gHeahcs5yzFe1Z e28kI6vHK0NvNXgsPJbo3NsRBMzasstnpkUiqAg=
X-Google-Smtp-Source: ABdhPJzAQFegqe0DwELat6jTqW367v2Dzfz02gTnc7COKcCq8q+XSJlq3X2aFSAL7Gteo/hUpVNx3fjXGS3/nIUWmQI=
X-Received: by 2002:a05:6512:3a91:: with SMTP id q17mr16572329lfu.364.1617051837186; Mon, 29 Mar 2021 14:03:57 -0700 (PDT)
MIME-Version: 1.0
References: <CACL_3VEWhSyQt+uz5HyntJ_haYadNMHuCMQCiRY8FW-ntBoLAQ@mail.gmail.com> <B2208374-C92D-46C4-8AFA-7CFAF3EFE6B8@gmail.com> <CACL_3VGUVtcGu=Uxm-jqsNuDs=JjzzNvT7JUAoy-8u0C6Xd5mw@mail.gmail.com>
In-Reply-To: <CACL_3VGUVtcGu=Uxm-jqsNuDs=JjzzNvT7JUAoy-8u0C6Xd5mw@mail.gmail.com>
From: Greg Mirsky <gregimirsky@gmail.com>
Date: Mon, 29 Mar 2021 14:03:45 -0700
Message-ID: <CA+RyBmUCmbQGGG93o4BfgjroU1kX-vBng3BT2021A_Ee5G_nDA@mail.gmail.com>
Subject: Re: Comments on draft-hinden-6man-hbh-processing-00
To: "C. M. Heard" <heard@pobox.com>
Cc: Bob Hinden <bob.hinden@gmail.com>, Gorry Fairhurst <gorry@erg.abdn.ac.uk>, IPv6 List <ipv6@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000056c50805beb338c0"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/1dTctLIKNkONaAFp98vTymtvfKA>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 29 Mar 2021 21:04:05 -0000

Hi Mike, et al.,
I wanted to chime in on what I see as the IOAM HbH challenge.
IOAM, in my opinion, is the combination of two major elements:

   - conveying to a node the content of telemetry information to generate
   - collecting and transporting that telemetry information

The former is done by the fixed-size IOAM Trace-Options header defined in
Section 5.4.1 draft-ietf-ippm-ioam-data
<https://datatracker.ietf.org/doc/draft-ietf-ippm-ioam-data/?include_text=1>
.
The latter referred to as IAOM Trace-Option type, can be achieved using
different trace-option techniques:

   - pre-allocated
   - incremental
   - Direct Export
   <https://datatracker.ietf.org/doc/draft-ietf-ippm-ioam-direct-export/>
   - using the Hybrid Two-Step
   <https://datatracker.ietf.org/doc/draft-mirsky-ippm-hybrid-two-step/>

The first two collect the telemetry information in the same packet that
carries the IOAM Trace-Options header. The other two use specially
generated packets to collect and transport the telemetry information. I
wanted to mention these methods to point out that the IOAM footprint in HbH
doesn' have to be 4n and it can be limited to the length of the IOAM
Trace-Options header.
I hope that this information is of use for the discussion.

Regards,
Greg

On Thu, Mar 18, 2021 at 9:02 PM C. M. Heard <heard@pobox.com> wrote:

> On Thu, Mar 18, 2021 at 3:53 PM Bob Hinden  wrote:
>
>> On Mar 13, 2021, at 4:36 PM, C. M. Heard wrote:
>>
>>> It seems to me that the objective could be accomplished in a much less
>>> disruptive fashion in either of the following ways:
>>>
>>> (a) specify that nodes that process the HbH options header MAY ignore
>>> all options after the first;
>>> (b) specify that  nodes that process the HbH options header MAY ignore
>>> all options after the first non-PAD option
>>>
>>
>> I think I would be OK with something like (a).    It’s possible to do
>> this because the HBH header has the information that would enable a node
>> can easily skip the rest.   I don’t think that (b) is that helpful, if a
>> node can skip, it can skip PAD options too.
>>
>> The proposal would be something like a node SHOULD process the first HBH
>> option in the “fast path”, if there is more than one HBH option, the node
>> MAY process or skip the remaining options.
>>
>> I note, this change would eliminate the need for 8-octet alignment and
>> would simplify the proposal.
>>
>
> Yes, that was the idea.
>
> Alternative (a) is somewhat simpler, but would require re-specifying any
>>> option that requires padding in front if it stands alone inside the HbH
>>> header. As best I am able to determine from a review of the existing HbH
>>> option specifications, IOAM is the only one that is so affected.
>>>
>>
>> I wasn’t aware of that.  Please explain.
>>
>
> If I am not mistaken, the alignment requirements for the various HbH
> options are:
>
> RA: 2n+0
> CALIPSO: 4n+2
> SMF_DPD: 4n+2 (inferred)
> IOAM: 4n
> RPL: 2n
> Quick-Start: none (inferred)
> Minimum Path MTU: 2n or 4n+2 (inferred)
>
>> MPL: 4n+2 (inferred)
> Jumbo Payload: 4n+2
> IP_DFF: 4n+2 (inferred)
>
> Some of the specifications do not explicitly specify the alignment
> requirements; in those cases I have inferred the alignment requirements
> from the diagrams.
>
> The HbH header is aligned to an 8-octet boundary and starts with two
> one-octet fields (Next Header and Hdr Ext Len). An option with alignment
> requirements none, 2n, 4n+2,  8n+2, or none can be placed immediately after
> Next Header and Hdr Ext Len with no pads. Of the above options, the only
> one that does not meet that requirement is IOAM. Note that I have inferred
> an alignment requirement of "none" for Quick-Start since the same option
> data format is used for IPv4 and IPv6; however, 4n would also be a
> reasonable inference.
>
>
>> Alternative (b) would avoid even that, but it would also require a bit
>>>> more work from a compliant node .
>>>>
>>>
>> Might be better to rework the IOAM option.
>>
>
> That is a possibility, since the spec is still unpublished; but how hard
> is it to skip either two PAD1's or a PADn with n=0?
>
> Either one of these alternatives  keeps the specification the same EXCEPT
>>> for relaxing the minimum a node is required to meet. Nodes that can process
>>> more options would be allowed to to do. That avoids disruption of systems
>>> that are already deployed and could be useful in limited domains. I do not
>>> see what is gained by requiring nodes to enforce a one-option limit.
>>>
>>
>> I think [you] are suggesting the proposal be written as a minimum
>> requirement.  A node could do more, but isn’t required to.
>>
>> I think the biggest issue with anything other than only process one HBH
>> option or any number, is how does the node creating the packets know how
>> many to include in a packet?    I don’t see much use for HBH if the sender
>> puts in more than are liekly be processed.
>>
>> I suppose, we could create an IANA registry that defines a value for the
>> minimum number of HBH options that SHOULD be processed by all nodes.   Over
>> time if the capabilities of routers increased the number could be increased
>> by an IETF specification.   This would be for Internet wide usage, limited
>> domains could do more with local configuration.
>>
>
> What I had in mind was a minimum of one option with the ability to do more
> via local configuration.
>
> Mike
> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> ipv6@ietf.org
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------
>