Re: [tcpinc] Review of draft-bittau-tcpinc-tcpeno-01

David Mazieres <dm-list-tcpcrypt@scs.stanford.edu> Thu, 27 August 2015 17:32 UTC

Return-Path: <dm-list-tcpcrypt@scs.stanford.edu>
X-Original-To: tcpinc@ietfa.amsl.com
Delivered-To: tcpinc@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 46A3E1B37B2 for <tcpinc@ietfa.amsl.com>; Thu, 27 Aug 2015 10:32:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.078
X-Spam-Level: ***
X-Spam-Status: No, score=3.078 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FRT_STOCK2=3.988, HK_RANDOM_ENVFROM=0.001, HK_RANDOM_FROM=1, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=no
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 lFf53ZeXXQPr for <tcpinc@ietfa.amsl.com>; Thu, 27 Aug 2015 10:32:49 -0700 (PDT)
Received: from market.scs.stanford.edu (www.scs.stanford.edu [IPv6:2001:470:806d:1::9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 957401B341D for <tcpinc@ietf.org>; Thu, 27 Aug 2015 10:32:49 -0700 (PDT)
Received: from market.scs.stanford.edu (localhost.scs.stanford.edu [127.0.0.1]) by market.scs.stanford.edu (8.14.7/8.14.7) with ESMTP id t7RHWnhd008772; Thu, 27 Aug 2015 10:32:49 -0700 (PDT)
Received: (from dm@localhost) by market.scs.stanford.edu (8.14.7/8.14.7/Submit) id t7RHWmMj022473; Thu, 27 Aug 2015 10:32:48 -0700 (PDT)
X-Authentication-Warning: market.scs.stanford.edu: dm set sender to dm-list-tcpcrypt@scs.stanford.edu using -f
From: David Mazieres <dm-list-tcpcrypt@scs.stanford.edu>
To: Kyle Rose <krose@krose.org>
In-Reply-To: <CAJU8_nWktUwni0=nywx-bbHg+j_K5GWFAZD8g3ZbKx7GLk4jpQ@mail.gmail.com>
References: <CABcZeBNEFVkDi38y3G-C2nQF=dzW2mGDsj5DVK_OKVkPwK=G0g@mail.gmail.com> <878u92oadf.fsf@ta.scs.stanford.edu> <CABcZeBMfk5C4-LF0fDLKpJktV3hJyzRUNfe0gO8RYDnzcs3yMA@mail.gmail.com> <87zj1inf7n.fsf@ta.scs.stanford.edu> <CABcZeBMZCjrwpTH+CkZS_p8TYGEFsXwxGn=KfPe28hY5f=2oXw@mail.gmail.com> <87oahuta7j.fsf@ta.scs.stanford.edu> <CABcZeBPiUxByxUVJ3cb5LaeH5T1LX3iZFetP4cXM3O9avzBkCA@mail.gmail.com> <87si75jo4s.fsf@ta.scs.stanford.edu> <BDF93B3E-9DE0-4FEA-A4A7-6E6A69E4169B@tik.ee.ethz.ch> <87h9nkkcqc.fsf@ta.scs.stanford.edu> <55DF25DC.2040001@tik.ee.ethz.ch> <87twrkhfpg.fsf@ta.scs.stanford.edu> <CAJU8_nWktUwni0=nywx-bbHg+j_K5GWFAZD8g3ZbKx7GLk4jpQ@mail.gmail.com>
Date: Thu, 27 Aug 2015 10:32:48 -0700
Message-ID: <877fogvdq7.fsf@ta.scs.stanford.edu>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: <http://mailarchive.ietf.org/arch/msg/tcpinc/4-jz870o5VpJC_ukzVOlrxyp_4I>
Cc: Eric Rescorla <ekr@rtfm.com>, Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch>, tcpinc <tcpinc@ietf.org>
Subject: Re: [tcpinc] Review of draft-bittau-tcpinc-tcpeno-01
X-BeenThere: tcpinc@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: David Mazieres expires 2015-11-25 PST <mazieres-9kk64xehni8g3ju8jaj4asq862@temporary-address.scs.stanford.edu>
List-Id: "Discussion list for adding encryption to TCP." <tcpinc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpinc>, <mailto:tcpinc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpinc/>
List-Post: <mailto:tcpinc@ietf.org>
List-Help: <mailto:tcpinc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpinc>, <mailto:tcpinc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 27 Aug 2015 17:32:50 -0000

Kyle Rose <krose@krose.org> writes:

> I think maybe what Mirja is implying is that it's okay to break TCP
> (i.e., not fall back to unencrypted) if the two peers explicitly set
> their roles locally to the same thing. TCP-ENO-aware applications that
> set the role are assumed to get it right and not set both to A or both
> to B.
>
> Question re: the WG goals: is it in fact okay not to always fall back
> to unencrypted TCP if the applications themselves are aware of TCPINC
> and relying on TCPINC-specific API calls?

So to be pedantic here, we are now assuming a design with three local
states for each side, let's call them NULL, A, and B.  If both sides of
a simultaneous open are NULL (the default) you get unencrypted TCP.  If
one side is A and the other is B, you get TCP-ENO.  In the other 6
permutations, you get complete connection failure.

I don't particularly love that or foresee getting a WG consensus behind
it, but I guess I could live with it.  Moreover, it doesn't really
address any of the "hot" TCP-SO questions at this point, which are:

 1. Does TCP-SO really exist in the wild, and if so under what
    circumstances (NAT, no NAT, etc.)?

 2. If applications of TCP-SO exist, must TCPINC support them
    unmodified, or is it okay to disable encryption in the absence of a
    setsockopt on at least one end of the connection?

 3. If we require a setsockopt to encrypt a TCP-SO connection, is it
    okay to ask applications to break the tie as well?

For my part, I'm beginning to have doubts about 1, but answer YES to 2
and 3.

David