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

Bob Hinden <bob.hinden@gmail.com> Mon, 29 March 2021 16:40 UTC

Return-Path: <bob.hinden@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 D86CC3A1A5D for <ipv6@ietfa.amsl.com>; Mon, 29 Mar 2021 09:40:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, 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 uCZCpwNvfSwG for <ipv6@ietfa.amsl.com>; Mon, 29 Mar 2021 09:39:57 -0700 (PDT)
Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) (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 603F63A1A64 for <ipv6@ietf.org>; Mon, 29 Mar 2021 09:39:57 -0700 (PDT)
Received: by mail-wr1-x430.google.com with SMTP id b9so13497055wrt.8 for <ipv6@ietf.org>; Mon, 29 Mar 2021 09:39:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=0EE5JSN1sJ0s6QGFX1Br72jKqJppNnuI/Rpqeo7gdsQ=; b=b+gpeIeG4c6c//DuMmmRX66yHavHxdsi5fabDybF2fBZxAQ9lmqfvWA8o7Ixla9Uya qGZ777yuHLuuw41q6tl3s/MbbHjDV/iIX/PAT9Hxb6UX4JdVQ1rJ66qi5fpwua3N8lEd QZj0SJmYAa4DR1TMI5E3rI8+60w1JAu44/+1zC3+VyIp2AeiPyso0/OSl/QxOfvyVlF9 Fx90oQJLgtQLxfVyavdjdg2Dor9u1md+CVYR+LL0nrcCmgsGwtL5ibPvJ89aoHN8m7Yl r/A7Dw4hQAm5Uh5Og+2HNwyi1UEXlWU6dKIWYZSLDetKfTxW4f7Uc4VZJFlG3Lb+yd5q QMJQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=0EE5JSN1sJ0s6QGFX1Br72jKqJppNnuI/Rpqeo7gdsQ=; b=Tq/Mv3Z0pxFSRZDXtPpdTxPAVNCoRzwK//FudtEGIQmfb2OC+YL+h5i/HaOBEInJct 32qoWCl9Ov3UvmPCsV4+wqvnx1YeZNbXDozjRW1QzmFF69HGbw269yh2xZ5KooaUo5vO jzksba6U9MLx8Fqxebq5pLGunO2DRg0za71IVA5ZTusC5/9CQ0VMgp9nGVRwofvv8oFr Atn8IBrHwq+xBvH5ZWAGZmzDauzz/yoZK0i/ODwKzhOf2eWfmvScFjvTR2vEmrof5b9f q/sLLBjfrO2lcFBX5F0kX9NndhReQ1K1XZM4UYOr4hdHbyrq+mTff6DMWZcDLU17XG4I YgTQ==
X-Gm-Message-State: AOAM530XpWAP1Yy6gKev0cBDghxLValnpFV2GhKt7gNNxB6h68WuwyhG 4Gwz/h4rNQiW6Fk8/pydYbM=
X-Google-Smtp-Source: ABdhPJxIWgT017QqIxpGrWYFqqsbtaJ2nJG+HYYKLfqOQJbjUxZJYSenkiD1I5w4hKfBMabjUWgKFQ==
X-Received: by 2002:a5d:54c4:: with SMTP id x4mr29007477wrv.329.1617035994381; Mon, 29 Mar 2021 09:39:54 -0700 (PDT)
Received: from [10.0.0.199] (c-24-5-53-184.hsd1.ca.comcast.net. [24.5.53.184]) by smtp.gmail.com with ESMTPSA id m17sm31594543wrx.92.2021.03.29.09.39.52 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 29 Mar 2021 09:39:53 -0700 (PDT)
From: Bob Hinden <bob.hinden@gmail.com>
Message-Id: <A1D57147-80EF-4A5B-B068-5C53E504064B@gmail.com>
Content-Type: multipart/signed; boundary="Apple-Mail=_C6D5C97F-9E84-4386-BE67-3081A015E49F"; protocol="application/pgp-signature"; micalg="pgp-sha512"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.17\))
Subject: Re: Comments on draft-hinden-6man-hbh-processing-00
Date: Mon, 29 Mar 2021 09:39:50 -0700
In-Reply-To: <CACL_3VGUVtcGu=Uxm-jqsNuDs=JjzzNvT7JUAoy-8u0C6Xd5mw@mail.gmail.com>
Cc: Bob Hinden <bob.hinden@gmail.com>, Gorry Fairhurst <gorry@erg.abdn.ac.uk>, IPv6 List <ipv6@ietf.org>
To: "C. M. Heard" <heard@pobox.com>
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>
X-Mailer: Apple Mail (2.3445.104.17)
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/gKIKixmuvN9HTF_qExLUeutkNCM>
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 16:40:02 -0000

Mike,

> On 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.

OK

> 
>>> 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.

Thanks

> 
>>> 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?

I think it’s better to just modify it now.

> 
>>> 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.

I will discuss with my co-author and we will work on an update to the draft.    I think an approach like this can work and meet the goals of what we are trying to achieve.   That is, make HBH options usable.

Bob


> 
> Mike