Re: [Int-area] Fwd: New Version Notification for draft-herbert-ipv4-eh-03.txt

Toerless Eckert <tte@cs.fau.de> Thu, 21 March 2024 04:35 UTC

Return-Path: <eckert@i4.informatik.uni-erlangen.de>
X-Original-To: int-area@ietfa.amsl.com
Delivered-To: int-area@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67F92C1519A3 for <int-area@ietfa.amsl.com>; Wed, 20 Mar 2024 21:35:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.657
X-Spam-Level:
X-Spam-Status: No, score=-1.657 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 92lgAPsMdfKf for <int-area@ietfa.amsl.com>; Wed, 20 Mar 2024 21:35:44 -0700 (PDT)
Received: from faui40.informatik.uni-erlangen.de (faui40.informatik.uni-erlangen.de [IPv6:2001:638:a000:4134::ffff:40]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6F31EC15199C for <int-area@ietf.org>; Wed, 20 Mar 2024 21:35:43 -0700 (PDT)
Received: from faui48e.informatik.uni-erlangen.de (faui48e.informatik.uni-erlangen.de [131.188.34.51]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by faui40.informatik.uni-erlangen.de (Postfix) with ESMTPS id 4V0Xh92x8XznkSL; Thu, 21 Mar 2024 05:35:37 +0100 (CET)
Received: by faui48e.informatik.uni-erlangen.de (Postfix, from userid 10463) id 4V0Xh91tSyzkn9H; Thu, 21 Mar 2024 05:35:37 +0100 (CET)
Date: Thu, 21 Mar 2024 05:35:37 +0100
From: Toerless Eckert <tte@cs.fau.de>
To: Tom Herbert <tom@herbertland.com>
Cc: int-area <int-area@ietf.org>
Message-ID: <Zfu5GQ7101lMnHGs@faui48e.informatik.uni-erlangen.de>
References: <170865175505.14082.3856617737779580933@ietfa.amsl.com> <CALx6S363oh+7rNMaMa0s+9A-xeyLBy+ct-Q_Bx0xQm_di1PPJA@mail.gmail.com> <ZeZjGyxmuapXz5tb@faui48e.informatik.uni-erlangen.de> <CALx6S34OFL7tzabL+RMvB3nkad5k9esCD_dFpMi6DUtUEG-Dmg@mail.gmail.com> <ZedO1u7aheBhZ26N@faui48e.informatik.uni-erlangen.de> <ZfurRK_oNVES2hVz@faui48e.informatik.uni-erlangen.de> <CALx6S36L57vPa5YkiV3khYbFpPPgPUVynWaRVno0BufvXcALeA@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CALx6S36L57vPa5YkiV3khYbFpPPgPUVynWaRVno0BufvXcALeA@mail.gmail.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/int-area/X8Z0PPloWCFLvbBPbeL0dseHX8M>
Subject: Re: [Int-area] Fwd: New Version Notification for draft-herbert-ipv4-eh-03.txt
X-BeenThere: int-area@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: IETF Internet Area WG Mailing List <int-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/int-area>, <mailto:int-area-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/int-area/>
List-Post: <mailto:int-area@ietf.org>
List-Help: <mailto:int-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/int-area>, <mailto:int-area-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 21 Mar 2024 04:35:46 -0000

On Wed, Mar 20, 2024 at 09:20:24PM -0700, Tom Herbert wrote:
> > In other words, Destination Option Headers do not have fundamentally distinct
> > processing requirements on the destination host examining it than any other
> > possible protocol header (e.g.: UDP, TCP), or at least we could not find such a description
> > for any such guiding rules or treatment differences in RFC8200.
> 
> Yes, that's mostly how all the IP protocols are implemented.
> Processing of an encapsulated  protocol isn't completely independent,
> for instance the pseudo header for the TCP and UDP checksum is
> different for IPv4 and IPv6.

Right. But it seems unrelated to whether or not a header is an extension header,
TCP and UDP not being extension headers for example.

> > Of course, this interpretation is not fully consistent with the way the
> > "IPv6 Extension Header" flag is used in the registry: IPv6 itself does not have this
> > flag, so likely IPv4 should neither, even though both have this "next header" field,
> > but maybe this can be explained by both ofg these being recursion instead of extension
> > when happening in a header chain.
> 
> Yes, although it's not clear to me how relevant the flag in the
> registry is. In any case, for IPv4 extension headers it makes sense to
> be consistent with IPv6.

Well, i started this thread because i was worried thart there was some semantic
attached to the flag and changing it for existing protocols would cause potential
behavioral changes we would not want. But seemingly there is no actual semantic
implied, so we should be able to easily declare AH/ESP in IPv4 to be extension headers when
your draft goes through. the flag in the registry probably would only impact the
ability of packet parsers to parse at least the extension header chain.

Cheers
    Toerless

> Tom
> 
> >
> > Cheers
> >     Toerless
> >
> > On Tue, Mar 05, 2024 at 05:56:54PM +0100, Toerless Eckert wrote:
> > > On Mon, Mar 04, 2024 at 06:11:38PM -0800, Tom Herbert wrote:
> > > > We can treat them as EH for purposes of extension header ordering in
> > > > section 2.2. Also, IPv4 AH needs to be updated to take EH into account
> > > > as mentioned below. Other than that I don't believe there are any
> > > > substantive differences.
> > >
> > > Yes, i am trying to use ESP/AH as examples to understand the benefits
> > > of destination headers as opposed to just non-extension headers ..
> > >
> > > > No changes to APIs, we can use the same APis in IPv6 with IPv4. Kernel
> > > > changes to Linux will be straightforward.
> > >
> > > My question was not about differences in API between IPv4/IPv6, but between when
> > > ESP/AH are (as currently) NOT extension headers in IPv4 vs. after they become
> > > extension because the kernel changes have been applied.
> > >
> > > Ul;timately, i am trying to understand whether, and if so WHY we should
> > > reclassify ESP and AH in IPv4 to be extension headers. Right now the only
> > > argument i would know would be "consistency with IPv6", but that by itself
> > > does not seem to be sufficient to change something for what's being deployed
> > > worldwide in so many places. So there should be a technical benefit.
> > >
> > > And if the answer is "it does not make any difference whatsoever", then i also
> > > wonder why we would want to do it...
> > >
> > > > > Any other functional differences ? Aka: i couldn't find a simple:
> > > > >
> > > > > "If i want to define a new protocol header, should i call it an
> > > > >  extension header or an ipv6 extension header - for Dummies" ?
> > > >
> > > > I think there are IPv6 extension headers and IPv4 extension headers.
> > > > IPv4 extension headers are probably just a subset of IPv6 extension
> > > > headers.
> > >
> > > That's certainly safer, e.g.: asking for a separate column in the IANA registry.
> > >
> > > > > be renamed to "IP/IPv6 Extension Header". But when this was done
> > > > > to AH/ESP, and there actually is a functional difference expressed by
> > > > > this extension header (as opposed to non-extension header) status, then
> > > > > what be the imapct of this ? Aka: I upgrade my linux kernel to extension
> > > > > header and all my AH/ESP breaks ?  Or i do get the benefit of above
> > > > > (userland access) ?
> > > > >
> > > > > Would there be any (backward compatibility) reason to have new codepoints in IPv4 for ESP/AH
> > > > > with this extension header status and leave the existing (non extension
> > > > > header) codepoints alone ?
> > > >
> > > > No, I don't think we need that. ESP/AH should be backwards compatible.
> > > > For instance, if someone sends AH with HBH in IPv4 then they know that
> > > > their using EH and AH would take into account mutable HBH options. If
> > > > the packet is sent to a host that supports IPv4 EH then they would
> > > > know how to process the AH with HBH correctly. If the packet is sent
> > > > to a legacy node that doesn't support EH, then the packet will bv
> > > > dropped since the host doesn't recognize protocol 0 (HBH).
> > >
> > > Not clear. What you are writing implies that the encoding on the wire would
> > > change for AH from what it is now. What's exactly the change ? It's not
> > > in the next header field...
> > >
> > > > There is no
> > > > behavioral change at either the receiver or the sender if someone
> > > > sends an AH with no other EH. The draft will need to update RFC4302 to
> > > > describe AH processing with IPv4 EH present.
> > > >
> > > > RFC4303 needs an update as well, but that's just to say that EH after
> > > > the ESP is covered by the encryption, but I don't believe that
> > > > materially changes the requirements.
> > >
> > > I guess unless i can get excited for AH/ESP to get some improved behavior
> > > when turning into extension headers (see Q above), i'd probably stick to not touching
> > > them, aka: do not declare them to be extension headers for IPv4.
> > >
> > > Cheers
> > >     Toerless
> > >
> > > > Tom
> > > >
> > > > >
> > > > > Cheers
> > > > >     Toerless
> > > > >
> > > > > On Thu, Feb 22, 2024 at 05:40:31PM -0800, Tom Herbert wrote:
> > > > > > Hi,
> > > > > >
> > > > > > I updated the IPv4 extension headers draft. I structured it to be
> > > > > > self-contained without any normative references for IPv6 RFCs. It's a
> > > > > > little bigger, but about 80% of the text is cut-and-paste from other
> > > > > > RFCs and drafts.
> > > > > >
> > > > > > Comments are appreciated!
> > > > > >
> > > > > > Tom
> > > > > >
> > > > > > ---------- Forwarded message ---------
> > > > > > From: <internet-drafts@ietf.org>
> > > > > > Date: Thu, Feb 22, 2024 at 5:29 PM
> > > > > > Subject: New Version Notification for draft-herbert-ipv4-eh-03.txt
> > > > > > To: Tom Herbert <tom@herbertland.com>
> > > > > >
> > > > > >
> > > > > > A new version of Internet-Draft draft-herbert-ipv4-eh-03.txt has been
> > > > > > successfully submitted by Tom Herbert and posted to the
> > > > > > IETF repository.
> > > > > >
> > > > > > Name:     draft-herbert-ipv4-eh
> > > > > > Revision: 03
> > > > > > Title:    IPv4 Extension Headers and Flow Label
> > > > > > Date:     2024-02-23
> > > > > > Group:    Individual Submission
> > > > > > Pages:    47
> > > > > > URL:      https://www.ietf.org/archive/id/draft-herbert-ipv4-eh-03.txt
> > > > > > Status:   https://datatracker.ietf.org/doc/draft-herbert-ipv4-eh/
> > > > > > HTMLized: https://datatracker.ietf.org/doc/html/draft-herbert-ipv4-eh
> > > > > > Diff:     https://author-tools.ietf.org/iddiff?url2=draft-herbert-ipv4-eh-03
> > > > > >
> > > > > > Abstract:
> > > > > >
> > > > > >    This specification defines extension headers for IPv4 and an IPv4
> > > > > >    flow label.  The goal is to provide a uniform and feasible method of
> > > > > >    extensibility that is common between IPv4 and IPv6.
> > > > > >
> > > > > >
> > > > > >
> > > > > > The IETF Secretariat
> > > > > >
> > > > >
> > > > > --
> > > > > ---
> > > > > tte@cs.fau.de
> > > >
> > >
> > > --
> > > ---
> > > tte@cs.fau.de
> >
> > --
> > ---
> > tte@cs.fau.de
> 

-- 
---
tte@cs.fau.de