Re: [spring] All IPv6 fields are now mutable (Re: Typo correction Re: Question from SPRING regarding draft-filsfilscheng-spring-srv6-srh-compression)

Brian E Carpenter <brian.e.carpenter@gmail.com> Mon, 18 October 2021 03:16 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3EE273A0DE9; Sun, 17 Oct 2021 20:16:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.099
X-Spam-Level:
X-Spam-Status: No, score=-1.099 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, FREEMAIL_REPLY=1, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no 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 7GzzhGcac7rj; Sun, 17 Oct 2021 20:16:05 -0700 (PDT)
Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) (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 C98943A0DE8; Sun, 17 Oct 2021 20:16:05 -0700 (PDT)
Received: by mail-pj1-x102a.google.com with SMTP id gn3so5700015pjb.0; Sun, 17 Oct 2021 20:16:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=hADBdGLp5e3B4GLci9xwkuP491/kUINHhQV5VotB4Dw=; b=j3CsyQxpf9CARpdPsIU7NbkeG82uvoKKKf4hOlD8GdXq9xL48kSlnDvXylU4pTyRFH zhjUQY8p5IgGOMiT3o1eOGNoWWgOQEwAxqRV/07Zqjh1jFjubDvl5frzo9FTylBd/qsp YNZwJu+Ff6QmFVLbHeNCK57Y25rcWNioKsrt5nAABJtAuMmnwRZiGEBUwWHo77mnKxJz P8md5pHtG4YfmGwZ+067M5gmTTJzY+he0Dj7cbUAriuFNpHPgUpPme1UurN2fMoQ49xA WXxO0LfDzDS+WVr8P4zQ1e4HN+2+L/WFd2Uc6b0jx+pYkiBBKJrNPQx0P9f2/LBw95fM 92ng==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=hADBdGLp5e3B4GLci9xwkuP491/kUINHhQV5VotB4Dw=; b=1ayHDNlyhHcuSNgS0UN7dXetbgpOyop50TSvT6gc88ojX6y1HaA5RtlIWlu8rxucNL 6X/pmxZgVzec7tFM0Fnkj4LLbZURbl2g5HOVx0Sz3+Dm2/KmyHAuqsjgR45ap8NdDyG6 PWmINVMKM3vAEh2Rkm4yRAAlnZi8EvG9CQnIDzPXi3JDnpgNpAr9f9r3jRtXPXUL+D0P I11TUvHLNdQcCFHYxmF0cJGlusi1uYVLh67IAYiEzhTcRhTI7uv71kDzBC58vPY9Ina2 fm/uf6/OLlyNQFnRpKuistcfF4UeCwsFaHr/zR7EvjP9y5uLVhBsUNNA746nxGjo0pQ5 fEDA==
X-Gm-Message-State: AOAM532ZW5SEzlN/anMVWr1/rF54l/t7BiHiYmx4MqJuO37lCPLXKaBW YvuN4YK0Ig5BEp+EbIm8+sc=
X-Google-Smtp-Source: ABdhPJyc0ohwD88r5DrMvUE5gjnF/A6qStL1atN12TeaV763zlHfGKZMs28c72njv/PKlcBTtisNDA==
X-Received: by 2002:a17:90b:4f8a:: with SMTP id qe10mr30135105pjb.27.1634526964979; Sun, 17 Oct 2021 20:16:04 -0700 (PDT)
Received: from ?IPv6:2406:e003:102d:e801:db7:d041:a2d:ce65? ([2406:e003:102d:e801:db7:d041:a2d:ce65]) by smtp.gmail.com with ESMTPSA id g19sm17706674pjl.25.2021.10.17.20.16.02 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 17 Oct 2021 20:16:04 -0700 (PDT)
To: Tom Herbert <tom@herbertland.com>
Cc: Mark Smith <markzzzsmith@gmail.com>, SPRING WG <spring@ietf.org>, 6man WG <ipv6@ietf.org>, Michael Richardson <mcr@sandelman.ca>
References: <85fddbe9-4eb8-7d90-d246-a888fe8bdcd3@joelhalpern.com> <139d72fd-98de-f46a-767f-6a493c4facc9@joelhalpern.com> <1396_1634278622_61691CDE_1396_28_5_787AE7BB302AE849A7480A190F8B93303542C654@OPEXCAUBMA2.corporate.adroot.infra.ftgroup> <CAO42Z2wvKNyYeKAZdVOh2c8G95JZuhgxumNixMWWsK9u_QDRTQ@mail.gmail.com> <1101.1634412958@localhost> <CAO42Z2yFMjPhQFrJH2eJWpYZpiM4gDS_hAEDUVj4aJO-UyTxSg@mail.gmail.com> <CALx6S34G6a1DOWNfZxZ=XjYjFxR-kOPMMMLeQ18woUhrqwLUWQ@mail.gmail.com> <5bbcf175-10a7-4839-b968-eea0a0ad8a1b@gmail.com> <CALx6S35RPdDj7g+X376yHH541d1GODK4tnn9gv-ty_wsx841FA@mail.gmail.com>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Message-ID: <03daf257-5f80-c156-1645-e4d3e99fb353@gmail.com>
Date: Mon, 18 Oct 2021 16:16:01 +1300
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <CALx6S35RPdDj7g+X376yHH541d1GODK4tnn9gv-ty_wsx841FA@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/odzCfi-YPTGOBhffIwoBUc9AZCs>
Subject: Re: [spring] All IPv6 fields are now mutable (Re: Typo correction Re: Question from SPRING regarding draft-filsfilscheng-spring-srv6-srh-compression)
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 18 Oct 2021 03:16:10 -0000

On 18-Oct-21 13:35, Tom Herbert wrote:
> 
> 
> On Sun, Oct 17, 2021, 3:22 PM Brian E Carpenter <brian.e.carpenter@gmail.com <mailto:brian.e.carpenter@gmail.com>> wrote:
> 
>     On 18-Oct-21 09:39, Tom Herbert wrote:
>     > On Sat, Oct 16, 2021 at 4:59 PM Mark Smith <markzzzsmith@gmail.com <mailto:markzzzsmith@gmail.com>> wrote:
>     >>
>     >> On Sun, 17 Oct 2021, 06:36 Michael Richardson, <mcr@sandelman.ca 
<mailto:mcr@sandelman.ca>> wrote:
>     >>>
>     >>> Mark Smith <markzzzsmith@gmail.com <mailto:markzzzsmith@gmail.com>> wrote:
>     >>>     > In fight changing DAs also will break AH protection of the IPv6 header.
>     >>>
>     >>> AH is dead. It's been dead for decades.
>     >>> I say this as an IPsec enthusiast who wishes this wasn't true.
>     >>> But it is.
>     >>
>     >>
>     >> Then all IPv6 field immutability while the packet is in flight is also dead.
>     >>
>     >> "Controlled domain" == redefine any field, field semantics, and field
>     >> processing we like in an existing protocol, yet claim we're still
>     >> using the original protocol.
>     >>
>     >> That has been tacitly endorsed via standards track RFC8986. The Next
>     >> Header field is not supposed to be modified in flight per internet
>     >> standard RFC8200, yet standards track RFC8986 specifies the behaviour
>     >> via PSP.
>     >>
>     >> This SRH compression ID is redefining the IPv6 DA field semantics. It
>     >> encodes multiple network hop destinations in the single IPv6
>     >> destination address field.
>     >>
>     >> Structured Flow Label -
>     >> https://datatracker.ietf.org/doc/draft-filsfils-6man-structured-flow-label/ <https://datatracker.ietf.org/doc/draft-filsfils-6man-structured-flow-label/>
>     >> is redefining the IPv6 flow label field.
>     >>
>     >> This will be an operational nightmare in the future, when there are
>     >> multiple applicable RFCs that conflict with each other. I don't want
>     >> to have to spend time getting into arguments with vendors about which
>     >> protocol variant RFC their implementation should or shouldn't have to
>     >> comply with while I have 1000s, 10s or 100s of 1000s of customers
>     >> off-line.
>     >
>     > Mark,
>     >
>     > I think you might be lumping together several disparate proposals 
in
>     > your general claim that "IPv6 field immutability while the packet 
is
>     > in flight is also dead".
>     >
>     > When SRH was under discussion in 6man there was a lot of work to
>     > define which fields were immutable and that is described in RFC8754.
>     > Those definitions are sufficient to specify proper interaction between
>     > SRH and AH, however RFC8754 knowingly breaks AH as that handling was
>     > not specified. Some of us did object to that, but I suppose expediency
>     > to publish the protocol won out. Nevertheless, there is nothing that
>     > prevents someone from properly defining AH usage with SRH.
>     >
>     > As for the IPv6 destination address, it was never defined to be an
>     > immutable field inflight. In fact, the core operation of a routing
>     > header is to overwrite the destination address at each intermediate
>     > destination. NAT also changes the DA in flight, but there is a
>     > significant difference between NAT and the routing header header
>     > operation: when a routing header is set in a packet the sender knows
>     > and indicates the destination address. For the purposes of AH or
>     > transport checksum, both the sender and final receiver use this
>     > address-- there is no ambiguity and the fact that the destination
>     > address is mutable in flight doesn't adversely impact end to end
>     > protocol operations that operate on the addresses.
>     >
>     > We have seen various proposals to steal bits or redefine flow label
>     > fields, but IMO it's unlikely any of those will ever get consensus.
>     > Hosts routinely set the flow label as an unstructured value, and
>     > redefining flow label semantics would be a massive retroactive change
>     > in deployment. I would point out though, that the flow label is
>     > technically not immutable in flight, RFC6437 allows it to be modified
>     > by intermediate nodes for "only for compelling operational security
>     > reasons".
> 
>     Correct, because it was very clear that some firewalls were going to
>     clobber it whatever we wrote. So we tried to describe behaviour
>     that would not nullify the usefulness of the field for stateless
>     load balancing.
> 
> 
> Brian,
> 
> Thanks for the explanation concerning why the exception was created. For the concern that the flow label could be used a a covert channel, was this a hypothetical possibility or in response to some real events (sending twenty bits at a time doesn't seem like a very effective covert channel 
compared to other methods :-) )


This was one of the crucial differences between RFC3967 and RFC6437. As I 
recall, it was started by anecdotal evidence of firewalls zapping the flow label, and then we discussed how to deal with this. For example:

https://mailarchive.ietf.org/arch/msg/ipv6/0T2gPgciSq6qG-2JGBzHvBuVKb8/

It was discussed at length but (almost inevitably) without input from
actual firewall vendors, I believe.

    Brian

> 
> Tom
> 
> 
>     As for draft-filsfils-6man-structured-flow-label, the problems in https://mailarchive.ietf.org/arch/browse/ipv6/?gbt=1&index=qrTou1rjtNDDchE5yFfSN31pkMc <https://mailarchive.ietf.org/arch/browse/ipv6/?gbt=1&index=qrTou1rjtNDDchE5yFfSN31pkMc>
>     remain unsolved.
> 
>        Brian
>