Re: The TCP and UDP checksum algorithm may soon need updating

Brian E Carpenter <brian.e.carpenter@gmail.com> Mon, 08 June 2020 20:57 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8B8AE3A1006 for <ietf@ietfa.amsl.com>; Mon, 8 Jun 2020 13:57:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.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, SPF_HELO_NONE=0.001, SPF_PASS=-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 HNX08jc2-8bn for <ietf@ietfa.amsl.com>; Mon, 8 Jun 2020 13:57:06 -0700 (PDT)
Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com [IPv6:2607:f8b0:4864:20::62a]) (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 10D643A1005 for <ietf@ietf.org>; Mon, 8 Jun 2020 13:57:06 -0700 (PDT)
Received: by mail-pl1-x62a.google.com with SMTP id m7so7140247plt.5 for <ietf@ietf.org>; Mon, 08 Jun 2020 13:57:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=e4mcgBmAW3VP9JyBYdQeWW33CkMlQzoVfbVSlXl8Gys=; b=F+2fneWm9MxUHIzNGlq9n8QfE/RzFOuBqb2oI6+huys12yDBXN4G3jiXOMgKjAxatd +AslsM7cRs66TofltWHjLt5D+fTZp/NaYrZk8/Yudvu9Hd9abUOUJxRMw32BZ+NkRBj4 EQm0F8I/D1zhgAUcELec/lxywPifCXiN1zIr1y/kgEMVet5SyZicStn80R/v4ZEeAd5B CAoZwZvhCokGKro73E2Zw26qtrJNuh7HTyQCJvwHNa+g4OOAIiBr2eOI1Fw5pFPE4Onx 4nVPr0Ap4KSADnYKLkxTozN8I5NAClGrQh9yJ9+tnHH73vVtLpmiilF+XYc50sG/Jjxb tOmw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; 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=e4mcgBmAW3VP9JyBYdQeWW33CkMlQzoVfbVSlXl8Gys=; b=Pu94oy8MQfFHcsl726IQybO2h1tgy8W9EWYEXdCLZAUeCbjxNVcfFD/iFOtdmnK3Dk QTOVlRw+Ud9zr3juP+w4C0xlWmaE8iGhaOu3Qnu+WFr973H2klW8o3O8Wm+QewwP/8ef t3324PG5+281JVogxMRObmMYbyk0G4U/tbslLGhNrkD/K5bKL9CCUGqsDZ7WRNj6JZSV dPmofwssLORhALOp197oIw2xAMU5CsMTFewHlYFqSEnJDpXmMzgZU6QP6zzzX32E8b8U 3q7KOBEd7FqXtfSCmW7UL1cCGbLYaleDjvkSkrOzSxqoldiI94c32f2hi8l3czvDYeX+ MQDA==
X-Gm-Message-State: AOAM533NEtMRKSlECoMxvuiT0DjTwFbi1uxyFuRwnd44bpDJ9fcshLBh QZaPTZuuxYcbeBHGmIPfSflYg4DNI20=
X-Google-Smtp-Source: ABdhPJwHK7IV6ezOEZpDunn6hAWWvyhcEak4N+NkxQwPnVv5mI9w7ecOfAkCSAKTR5gDooYpma9beg==
X-Received: by 2002:a17:902:70c1:: with SMTP id l1mr516458plt.178.1591649825061; Mon, 08 Jun 2020 13:57:05 -0700 (PDT)
Received: from [192.168.178.30] ([165.84.12.178]) by smtp.gmail.com with ESMTPSA id m2sm354295pjl.45.2020.06.08.13.57.02 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 08 Jun 2020 13:57:04 -0700 (PDT)
Subject: Re: The TCP and UDP checksum algorithm may soon need updating
To: Nico Williams <nico@cryptonector.com>, Michael Thomas <mike@mtcc.com>
Cc: "ietf@ietf.org" <ietf@ietf.org>
References: <2C425F1E-2E12-4E47-ACEC-AF4C4A93FA3E@akamai.com> <140429ad-af8b-e03f-a641-1e78b6056fa4@mtcc.com> <D55AFBFD-0D59-4176-B6BD-D6A1801FEC2C@akamai.com> <f42134de-3d0f-87e5-b13f-82afdb3689c9@mtcc.com> <96c65ca8-6ed5-2afa-a6d5-14905fc75ce8@foobar.org> <8946c5bf-0f6b-7a52-6326-dda59a78a798@mtcc.com> <995f5e46-b79a-ec9a-5465-9ec5abcdb759@foobar.org> <9d18c630-8506-9097-fc8c-86d6264afcbe@mtcc.com> <1783a7fa-fed4-2973-05dd-236f1120a74c@foobar.org> <5bf95457-5d44-86fa-5062-800680cc5a6a@mtcc.com> <20200608190220.GA18021@localhost>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Message-ID: <9e0425e8-dffb-78a6-2520-c9214392caf7@gmail.com>
Date: Tue, 09 Jun 2020 08:57:00 +1200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
In-Reply-To: <20200608190220.GA18021@localhost>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/l6xZuNqq8vQkdp1YqCo8yv4EPss>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Jun 2020 20:57:08 -0000

On 09-Jun-20 07:02, Nico Williams wrote:
> On Mon, Jun 08, 2020 at 11:23:09AM -0700, Michael Thomas wrote:
>> ssl had the advantage that it 1) beat ipsec to market, and 2) wasn't subject
>> to API differences from OS layer calls like IPsec was, and with quite a bit
>> of churn as i recall too. it's really too bad, imo. we wouldn't have had to
>> do the contortions of dtls, for example. and now there's this problem. none
>> of them are earth shattering, but it would have been cleaner.
> 
> You can sprinkle TLS anywhere you have an octet stream.  You can
> sprinkle DTLS anywhere you have datagram flows. 

Unless someone says "multicast". 

   Brian

> No need for OS support
> -- it will just work.  IPsec?  IPsec requires OS support.
> 
> Also, IPsec got a lot of things wrong.  It's simply not usable at
> Internet scale as originally intended because... it's IP-layer, so it
> deals in discrete packets and IP addresses.  Well, discrete packets do
> not define application connections/sessions[*], IP addresses are too
> dynamic and useless for authentication and authorization[**], and
> configuration is ETOOHARD.
> 
> As you can see, a dozen years ago was already too late, but our idea
> then was to
> 
>  - construct protection guarantees for packet flows using IPsec,
>  - to use anonymous or anonymous-like key exchanges to key IPsec,
>  - and to use channel binding from application layer protocols that can
>    authenticate more useful names than IP addresses.
> 
> Nico
> 
> 
> [*] In the IPsec architecture, RFC 4301, there is no guarantee that the
>     packets making up a TCP connection, say, will have anything like
>     similar protection for the lifetime of the TCP connection.
>     Everything about how a TCP conenction is protected by IPsec depends
>     entirely on *configuration* with no standard interfaces _at all_ for
>     applications to manipulate said configuration.
> 
> [**] Yes, in RFC 4301 you're supposed to specify things like trust
>      anchors and policies like "any peer with a certificate from this CA
>      can _claim_ IP addresses in the following prefixes/ranges".  This
>      _cannot_ scale to Internet scale.
> 
>      Giving up on authentication and authorization in the RFC 4301
>      scheme (BTNS, RFC 5387) and constructing logical packet flows with
>      consistent protection during their lifetimes (RFC 5660), fixes the
>      problem.  It didn't get implemented -- even if it had been, TLS was
>      already king.  This would all have to have happened at least half a
>      decade earlier, if not a whole decade earlier, to have had a
>      chance.
> 
>      What was particularly appealing at one point was the possibility of
>      having ESP offload in NIC HW.  The lower in the stack the crypto
>      happens, the easier it is to offload it.
> 
>