Re: Getting to consensus on packet number encryption

Roberto Peon <fenix@fb.com> Wed, 04 April 2018 20:28 UTC

Return-Path: <fenix@fb.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 2FD1812DB71 for <quic@ietfa.amsl.com>; Wed, 4 Apr 2018 13:28:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1522873727; bh=j5/ko/pJLyYRgEJwzDNjm7iUqj8Q+lX2sHAlqZuA0Ao=; h=From:CC:Subject:Date:References:In-Reply-To:To:To:To:To; b=Cl65PPND4ZTToBVJ7hLNlockpvGPFJxLQt45jgqN4jNw2wtII/qkv4ZCwHZ6GqDZw ssEX4E2YIdEKsOH6uHSwqF99sP4r4j+ikV/7JguUhE41BTaYFTF5ELU6iV/qrSYJBV zkd2XY6YZ7bjG7WBGjbnfttGOStX9qqcE1Yqg3+s=
X-Mailbox-Line: From fenix@fb.com Wed Apr 4 13:28:47 2018
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id DB60312DA68; Wed, 4 Apr 2018 13:28:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1522873726; bh=R7abBt3ak4FvFtSTcE0OV0KFAQtG68OkI1+Dw8HO43I=; h=From:CC:Subject:Date:References:In-Reply-To:To:To:To:To; b=BoHUexWaaR8sjXsyK1Zm81clQbcJHEPONqlWsE0WExGiPCBDgX8FRx38OWCS1BcHF WS666GGYKngH+i2pFb00XZm3My0Qz4a/9wTCBiOvcqaHJaYObgIND4nwQo82H8qvby 20cG+j4ITar3wmPkT7r1VsjtHVss5zJSc9FNybWg=
X-Original-To: dmarc-reverse@ietfa.amsl.com
Delivered-To: dmarc-reverse@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B695712DB70 for <dmarc-reverse@ietfa.amsl.com>; Wed, 4 Apr 2018 13:28:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=fb.com header.b=KyXN5pSV; dkim=pass (1024-bit key) header.d=fb.onmicrosoft.com header.b=fbH3mXOz
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 7Rb-lVybCj4M for <dmarc-reverse@ietfa.amsl.com>; Wed, 4 Apr 2018 13:28:42 -0700 (PDT)
Received: from mx0a-00082601.pphosted.com (mx0b-00082601.pphosted.com [67.231.153.30]) (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 872F412DA68 for <ilubashe=40akamai.com@dmarc.ietf.org>; Wed, 4 Apr 2018 13:28:42 -0700 (PDT)
Received: from pps.filterd (m0001255.ppops.net [127.0.0.1]) by mx0b-00082601.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w34KLvPX029444; Wed, 4 Apr 2018 13:28:41 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=facebook; bh=Msm9IffCnjchCUuYdyGDtX1sJsHbHNxtK8ul6IGROTc=; b=KyXN5pSVwWjSs9RyXuowveWbk2/i7kcLo9GjQDPBsjuzjU4TFEUWtICDBlHSiKYJgwUJ nFLhtWb0WYO+Bxgz1CA0i0a1o7dzIkBrw69CPGJJ1KpcvfutrIN3bLPzgFGVm4tNbcvj qf1qT60AG+jPvXtsNst0iVkQpLK83XFd2Nk=
Received: from mail.thefacebook.com ([199.201.64.23]) by mx0b-00082601.pphosted.com with ESMTP id 2h51y80swb-1 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 04 Apr 2018 13:28:41 -0700
Received: from PRN-CHUB02.TheFacebook.com (2620:10d:c081:35::11) by PRN-CHUB01.TheFacebook.com (2620:10d:c081:35::10) with Microsoft SMTP Server (TLS) id 14.3.361.1; Wed, 4 Apr 2018 13:28:40 -0700
Received: from NAM03-DM3-obe.outbound.protection.outlook.com (192.168.54.28) by o365-in.thefacebook.com (192.168.16.12) with Microsoft SMTP Server (TLS) id 14.3.361.1; Wed, 4 Apr 2018 13:28:38 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.onmicrosoft.com; s=selector1-fb-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Msm9IffCnjchCUuYdyGDtX1sJsHbHNxtK8ul6IGROTc=; b=fbH3mXOztGvqwlBsD7JscQb4yYE+8JDs+KXIADzsYlcZGhANnViixijD2nUx2JyhJsHRVD/U5gYetJ0ENrGLrhxGfJv8SW6iWBDoLDyUUmeSV2uWVMUfnwBkUAs/0Sev+xVfbd5g//MbFHrQIlzbDWejpQIqv78avg4BLWh9UqM=
Received: from DM3PR15MB0783.namprd15.prod.outlook.com (10.164.201.11) by DM3PR15MB1002.namprd15.prod.outlook.com (10.166.160.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.631.10; Wed, 4 Apr 2018 20:28:37 +0000
Received: from DM3PR15MB0783.namprd15.prod.outlook.com ([fe80::e8a0:580f:a9c5:5185]) by DM3PR15MB0783.namprd15.prod.outlook.com ([fe80::e8a0:580f:a9c5:5185%13]) with mapi id 15.20.0653.012; Wed, 4 Apr 2018 20:28:37 +0000
From: Roberto Peon <fenix@fb.com>
CC: Lars Eggert <lars@eggert.org>, IETF QUIC WG <quic@ietf.org>
Subject: Re: Getting to consensus on packet number encryption
Thread-Topic: Getting to consensus on packet number encryption
Thread-Index: AQHTy9GjyGQaKf4GI0anNhXTngANsKPwZ0sAgACTmYCAAAtRgIAABxcr
Date: Wed, 04 Apr 2018 20:28:36 +0000
Message-ID: <DM3PR15MB0783129C7E584AF193B43485CDA40@DM3PR15MB0783.namprd15.prod.outlook.com>
References: <7fd34142-2e14-e383-1f65-bc3ca657576c@huitema.net> <F9FCC213-62B9-437C-ADF9-1277E6090317@gmail.com> <CABcZeBM3PfPkqVxPMcWM-Noyk=M2eCFWZw2Eq-XytbHM=0T9Uw@mail.gmail.com> <CAN1APdfjuvd1eBWCYedsbpi1mx9_+Xa6VvZ3aq_Bhhc+HN67ug@mail.gmail.com> <CABcZeBMtQBwsAF85i=xHmWN3PuGRkJEci+_PjS3LDXi7NgHyYg@mail.gmail.com> <1F436ED13A22A246A59CA374CBC543998B5CCEFD@ORSMSX111.amr.corp.intel.com> <CABcZeBNfPsJtLErBn1=iGKuLjJMo=jEB5OLxDuU7FxjJv=+b=A@mail.gmail.com> <1F436ED13A22A246A59CA374CBC543998B5CDAD4@ORSMSX111.amr.corp.intel.com> <BBB8D1DE-25F8-4F3D-B274-C317848DE872@akamai.com> <CAN1APdd=47b2eXkvMg+Q_+P254xo4vo-Tu-YQu6XoUGMByO_eQ@mail.gmail.com> <CAKcm_gMpz4MpdmrHLtC8MvTf5uO9LjD915jM-i2LfpKY384O2w@mail.gmail.com> <HE1PR0702MB3611A67E764EE1C7D1644FAD84AD0@HE1PR0702MB3611.eurprd07.prod.outlook.com> <d8e35569-e939-4064-9ec4-2cccfba2f341@huitema.net> <CACpbDccqKoF-Y1poHMN2cLOK9GOuvtMTPsF-QEen3b30kUo9bg@mail.gmail.com> <CAKcm_gNffwpraF-H2LQBF33vUhYFx0bi_UXJ3N14k4Xj4NmWUw@mail.gmail.com> <40C1F6FE-2B2C-469F-8F98-66329703ED50@mnot.net> <21C36B57-6AE2-40EF-9549-7196D7FA9B45@tik.ee.ethz.ch> <CY4PR21MB0630528B6B7113AE652E8CE7B6A40@CY4PR21MB0630.namprd21.prod.outlook.com>, <ec4c8bfcd78b47c69d716a0bb316e8de@usma1ex-dag1mb5.msg.corp.akamai.com>
In-Reply-To: <ec4c8bfcd78b47c69d716a0bb316e8de@usma1ex-dag1mb5.msg.corp.akamai.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [2620:10d:c090:200::7:d981]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM3PR15MB1002; 7:it0UVEiodmsx8z67HvQLwBMWWHDBXnfqesd2UdWVI2fl999m+6b7Om3p57Xz05ckuHTOwZmij0GdmQasSCkoRFJX34xSNyqV6GNGJgMyGY7mppou2ffUMxEaOjmc+lYKpy7VtuL2a32ZHneeY6sS2pDiuCDht48JHqq/Vk2kdwUZF7QC3WLekfrNTGIMRxKgs8twx6/6nMzkjMtB4q2zhURd8tb6Gp21CfovRrpKUllYGVQ4fmjw478NEy2Wzs1Q; 20:nhdZWpV2byrNLR41CrsxkNGkUEUp3nt2tfg535d4/qZDCpqaGz7zbi2yefkt6EKuVutOaPlDC6chBqlpPkzth7Oq5JwRfjwUDmUGIEXUQR2vhn7T3ryMItotmqGPAv0WlQ4Awfn67aVD7soZ2h1veqthjHjKgV+OosEVeSHhKes=
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 2042066b-12ea-4069-f78a-08d59a6aa51b
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(3008032)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DM3PR15MB1002;
x-ms-traffictypediagnostic: DM3PR15MB1002:
x-microsoft-antispam-prvs: <DM3PR15MB1002984FB72079E48B6A8E27CDA40@DM3PR15MB1002.namprd15.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(10436049006162)(189930954265078)(85827821059158)(100405760836317)(17755550239193);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(11241501184)(944501327)(52105095)(93006095)(93001095)(10201501046)(3002001)(6041310)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(6072148)(201708071742011); SRVR:DM3PR15MB1002; BCL:0; PCL:0; RULEID:; SRVR:DM3PR15MB1002;
x-forefront-prvs: 0632519F33
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39380400002)(366004)(39860400002)(346002)(376002)(396003)(199004)(13464003)(53754006)(189003)(51914003)(105586002)(25786009)(106356001)(102836004)(186003)(5250100002)(476003)(6116002)(97736004)(486006)(7736002)(14454004)(46003)(1511001)(575784001)(11346002)(8936002)(478600001)(45080400002)(86362001)(966005)(4326008)(446003)(54906003)(55016002)(316002)(229853002)(2906002)(59450400001)(74316002)(6606003)(3660700001)(33656002)(93886005)(110136005)(8666007)(68736007)(6506007)(53546011)(6306002)(54896002)(2900100001)(8676002)(6436002)(236005)(19627405001)(9686003)(5660300001)(53936002)(606006)(7696005)(81156014)(561944003)(6246003)(76176011)(99286004)(81166006)(3280700002)(42262002); DIR:OUT; SFP:1102; SCL:1; SRVR:DM3PR15MB1002; H:DM3PR15MB0783.namprd15.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: fb.com does not designate permitted sender hosts)
x-microsoft-antispam-message-info: xBpvGPA0/sOfF9ypxejoChp+l0k2g2JOfjsZ64xxVEmoLQc3rakrRTEslD0p6gR4fNTffCigobFlxnLsHbiZfGyB09jhLrzw1PX4bMqfymCpL035STia91jqjZUab802K2soNhMpSjQoJURYzP63biGOh02jc7ELFpyvmKViPteCPfjYDvKZWjXiMCs+GLoGVurr/kPoCWE8wXWhluThh9cVlZdEoIjJ/BmVTVOhv8uf2enUzG3vaiXduIDHKn56P08Z8es9Q7K29Q7UzCjs7O8eaH18F/8f4fa9ZF2Db705RBw7ka6c4AuP4dTMfIpVG/RIGU+NFh+WFC0RwM3C5GvsOjzKtI6nDEGvBgahJe6PH/xItBdIpSYV5d++5Hm3tVfVciUyo53EhKvRB52CuL1g9GQpSYJv/f77mSubDng=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_DM3PR15MB0783129C7E584AF193B43485CDA40DM3PR15MB0783namp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 2042066b-12ea-4069-f78a-08d59a6aa51b
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Apr 2018 20:28:36.9608 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3PR15MB1002
X-OriginatorOrg: fb.com
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2018-04-04_06:, , signatures=0
X-Proofpoint-Spam-Reason: safe
X-FB-Internal: Safe
To: "Lubashev, Igor" <ilubashe@akamai.com>
To: Praveen Balasubramanian <pravb@microsoft.com>
To: Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch>
To: Mark Nottingham <mnot@mnot.net>
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/p2zfb2vndZI7Ha1lo6xmgGyJJAY>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 04 Apr 2018 20:28:47 -0000

PN encryption plus multiple (rotating) GUIDs specified on a per-path basis, as discussed in Melbourne do seem able to provide substantively better privacy. With such a scheme nothing appears to be shared from one 5-tuple+GUID to another 5-tuple+GUID.

An implementation that cared deeply about privacy would send packets along both paths for some time. This doesn't seem like something we can reasonable require with the protocol, but it can be allowed by the protocol.


I am not particularly interested in seeing QUIC v1 become the most CPU efficient thing. I'd rather we release it, and continue iterating. Concentrating on features that prevent ossification furthers this goal and allows for an eventual (and possibly better) HW acceleration path later.
-=R

________________________________
From: QUIC <quic-bounces@ietf.org> on behalf of Lubashev, Igor <ilubashe=40akamai.com@dmarc.ietf.org>
Sent: Wednesday, April 4, 2018 12:55:47 PM
To: Praveen Balasubramanian; Mirja Kühlewind; Mark Nottingham
Cc: Lars Eggert; IETF QUIC WG
Subject: RE: Getting to consensus on packet number encryption

To restate the options:

(1) - Packet number encryption.

(2) - Per-CID offset.

(3) - Plain text PNs across connection migrations.

(4) - Per-CID PN spaces.



None of the alternatives mask the “connection migration” event from an on-path observer.  The “original” connection establishment is done via clearly identifiable handshake packets on a 5-tuple before short-header packets show up, while “connection migration” events are identifiable by the use of a new CID with short-header packets on a new 5-tuple w/o preceding handshake packets.



As it was pointed out many times (especially by Brian), it is not that hard to correlate cessation of packets from one 5-tuple and appearance of a new post-“connection migration” 5-tuple, especially if destination IPs for both are identical.  Moreover, since devices that wish to maintain connections during migration will likely migrate multiple connections, the on-path observer will see a group of 5-tuples from the same IP cease activity, while a similar group of post-“connection migration” 5-tuples appears from a different IP, all with matched destination IPs.



Given the above, I am left wondering if increasing the costs for content hosting, increasing per-packet power requirements for mobile and micro devices, and making the Internet harder to troubleshoot and operate is worth the mostly illusory privacy gains of (1).  Patrick’s “the privacy is a must have” is a desire I share, but does (1) provide privacy against a sophisticated on-path observer?



Yet, (2) seems simple enough and a good compromise.  As Mike points out, it allows an on-path observer who can link CIDs across “connection migrations” to infer PNs.  But if CIDs are already linked, there is no more privacy argument to be made anyway.  One thing (2) does not allow an on-path observer to do is to link CIDs via PN analysis.  (Though it still seems like the privacy gains from any of the above are mostly an illusion.)  So my vote is for (2).



- Igor





-----Original Message-----

From: Praveen Balasubramanian [mailto:pravb=40microsoft.com@dmarc.ietf.org]

Sent: Wednesday, April 04, 2018 3:15 PM

To: Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch>; Mark Nottingham <mnot@mnot.net>

Cc: Lars Eggert <lars@eggert.org>; IETF QUIC WG <quic@ietf.org>

Subject: RE: Getting to consensus on packet number encryption



I too disagree with the assessment of the situation. +1 to everything Mirja said.



>> there is no *requirement* that we produce a protocol that is able to be accelerated by hardware.

It is however a requirement for deployment that we be able to offload QUIC. A large part of work we do in TCP is acceleration in software and hardware.. If QUIC has to evolve from experiment to broad deployment performance is a key goal. This is brought up several times in TCP working group where we see proposals that wouldn’t work with widely deployed software and hardware accelerations.



Whether we like it or not performance is a key requirement for QUIC on servers and for datacenter scenarios. Even Ian mentioned before that he'd not want to do PNE within DC and I agree. Most connections will also not be doing migration or using multi path so why pay the extra overhead in the common case for no benefit?



Since PNE doesn’t affect the invariants (its simply an extra step post packetization and pre parsing), please explain why it would block progress on other fronts? What is the list of things that get blocked?



Please let us not rush into a design that impacts per packet processing costs with no clear articulation of the problem and the benefits.



>From what I can tell there is wide disagreement in the group and nothing resembling consensus. The fact that we have poor representation from hardware developers and public cloud providers is further skewing the perception.



My recommendations:

1. Leave the current draft as is. Make sure we have some provision for greasing the PN to prevent ossification.

2. Explore multiple PN spaces for connection migration (and eventually multipath).

3. Make PNE an optional negotiated extension for implementations that want to do connection migration in V1 with the caveat that we will revisit this for V2 when we do multipath.

4. Solicit more feedback on the protocol from hardware vendors and public and private cloud providers. I can try to loop in more folks but others should too.



-----Original Message-----

From: QUIC [mailto:quic-bounces@ietf.org] On Behalf Of Mirja Kühlewind

Sent: Wednesday, April 4, 2018 3:27 AM

To: Mark Nottingham <mnot@mnot.net>

Cc: Lars Eggert <lars@eggert.org>; IETF QUIC WG <quic@ietf.org>

Subject: Re: Getting to consensus on packet number encryption



Hi Mark,



without intending to state a technical opinion, I think I need to disagree with your assessment of the situation. Please see below.



> Am 04.04.2018 um 06:58 schrieb Mark Nottingham <mnot@mnot.net>:

>

> Hi everyone,

>

> The editors have told your chairs that this issue is starting to block progress on other aspects of QUIC. Coming to consensus on it soon (i.e., before Stockholm, if possible) would be good.

>

> It looks like this thread has come to a natural pause. Reading through it, I think we agree there are some unpleasant tradeoffs here, but so far we have only one concrete proposal -- PR#1079.



The other proposal is to use a random offset that can/should be changed when the connection ID is changed. Which is mostly inline with what the draft currently says.

>

> My AU$.05 - While we're chartered to produce a protocol that's encrypted as much as operational concerns allow,



I don’t think this is what the charter say. The charter says "Providing always-secure transport, using TLS 1.3 by default.“ plus another paragraph that talks about TLS1.3. It does not spell out the desire of some individual to „encrypt as much as possible“.



> and that privacy is a natural extension of that (especially in light of RFC7258 and RFC6973), there is no *requirement* that we produce a protocol that is able to be accelerated by hardware.



Not there is no requirement that the protocol need to be accelerated by hardware. However, not all requirement are listed in the charter. We as a group have to define the requirement. However, there is of course an implicit requirement for all work in the IEFT that is must be deployable and serve the needs of those people who want to deploy it.



>

> That being the case, I think we need to ask ourselves if we believe that inclusion of PR#1079 will significantly inhibit deployment of the protocol. Based on the discussion so far, that doesn't seem to be the case, but I'd be interested to hear what others think.



Here my assessment is also different. There are multiple people that have raised concerns that this could hinder deployment.

>

> If we can get to consensus to incorporate the PR, and folks come back later with a more hardware-friendly replacement that doesn't change the Invariants or increase linkability, I suspect the WG will be amenable to that.



I don’t think to just go with what we have even though there are concerns, is the right approach and definitely not the approach that was chosen for other proposals. In the sake of getting version v1 out quickly, I would think that not incorporating another change that does not have consensus is the proposer approach.



Mirja







>

> What do folks think?

>

> Cheers,

>

>

>> On 29 Mar 2018, at 11:39 am, Ian Swett <ianswett=40google.com@dmarc.ietf.org> wrote:

>>

>> Thanks for the nice summary Jana.

>>

>> As much as I'd love to have easier crypto HW acceleration, I've ended up arriving at the same conclusion.  I don't want to bite off the work to do proper multipath in QUIC v1, which I think is the only other reasonable option of those Christian outlined.

>>

>> If someone comes up with a way to transform packet number to make it non-linkable, but doesn't have the downside of making hardware offload difficult, then I'm open to it.  But we've been talking about this for 2 months without any notable improvements over Martin's PR.

>>

>> Given we never talk about any issue only once in QUIC, I'm sure this will come up again, but for the time being I think #1079 is the best option we have.

>>

>>

>>

>> On Wed, Mar 28, 2018 at 8:03 PM Jana Iyengar <jri.ietf@gmail.com> wrote:

>> A few quick thoughts as I catch up on this thread.

>>

>> I spent some time last week working through a design using multiple PN spaces, and it is quite doable. I suspect we'll head towards multiple PN spaces as we consider multipath in the future. That said, there is complexity (as Christian notes). This complexity may be warranted when doing multipath in v2 or later, but I'm not convinced that this is necessary as a design primitive for QUICv1.

>>

>> We may want to creatively use the PN bits in v2, say to encode a path ID and a PN, for multipath. We want to retain flexibility in these bits going into v2. We've used encryption to ensure that we don't lose flexibility elsewhere in the header, and it follows that we should use PNE to retain flexibility in these bits as well. (Simplicity of design is the other value in using PNE, since handling migration linkability is non-trivial without it.)

>>

>> This leaves the question of HW acceleration being at loggerheads with the design in PR #1079. First, I expect that the primary benefit of acceleration will be in DC environments. Yes, there are some gains to be had in serving the public Internet as well, but I'm unconvinced that this is the driving use case for hardware acceleration. I understand that others may disagree with me here.

>>

>> AFAIK, QUIC has not been used in DC environments yet. I expect there are other things in the protocol that we'd want to change as we gain experience deploying QUIC in DCs. Spinning up a new version to try QUIC within DCs is not only appropriate, I would recommend it. This allows for rapid iterations internally, and the experience can drive subsequent changes to QUIC. It's what *I* would do if I was to deploy QUIC inside a DC.

>>

>> So, in short, I think we should go ahead with PR# 1079. This ensures that future versions are guaranteed the flexibility to change the PN bits for better support of HW acceleration or multipath or what-have-you.

>>

>> - jana

>>

>> On Mar 26, 2018 9:41 AM, "Christian Huitema" <huitema@huitema.net> wrote:

>>

>> On 3/26/2018 8:20 AM, Swindells, Thomas (Nokia - GB/Cambridge) wrote:

>>> Looking at https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253A-252F-252Fen.wikipedia.org-252Fwiki-252FAES-5Finstruction-5Fset-2523Intel-5Fand-5FAMD-5Fx86-5Farchitecture-26data-3D02-257C01-257Cpravb-2540microsoft.com-257C14f278ab3769469a44f908d59a16a2d6-257C72f988bf86f141af91ab2d7cd011db47-257C1-257C0-257C636584344383959765-26sdata-3DaOHc7FZoIBCE1OlqmNpvdMM0ntLerZ3FpqESVj85zfE-253D-26reserved-3D0&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=C0sUo-LFNBaYfyoaCsf6TA&m=ym7cE5rLl46aIfj8Q7KNEpy3FDfhyfumeXz9eQXmX1g&s=WkBplmuEwMxL-oezaQ4rK1_9-0SXgkY1NJ_V3SPhYOU&e= it seems to imply a large range of server, desktop and mobile chips all have a CPU instruction set available to do AES acceleration and other similar operations (other instruction sets are also available).

>>>

>>> If we are considering the AES instructions then it looks like it is (or at least will be in the near future) a sizeable proportion of the public internet have it to be used.

>>>

>>

>> Certainly, but that's not the current debate. PR #1079 is fully compatible with use of the AES instructions. The issue of the debate is that the mechanism in PR #1079 required double buffering, first encrypt the payload, then use the result of the encryption to encrypt the PN. This is not an issue in a software implementation that can readily access all bytes of the packet from memory, but it may be an issue in some hardware implementations that are designed to do just one pass over the data.

>>

>>

>> -- Christian Huitema

>>

>>

>>

>

> --

> Mark Nottingham   https://urldefense.proofpoint.com/v2/url?u=https-3A__na01.safelinks.protection.outlook.com_-3Furl-3Dhttps-253A-252F-252Fwww.mnot..net-252F-26data-3D02-257C01-257Cpravb-2540microsoft.com-257C14f278ab3769469a44f908d59a16a2d6-257C72f988bf86f141af91ab2d7cd011db47-257C1-257C0-257C636584344383959765-26sdata-3DRXba2TyvYz6otecEHoLCT4tZ2I7EodxDiyPxWrn-252FnAw-253D-26reserved-3D0&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=C0sUo-LFNBaYfyoaCsf6TA&m=ym7cE5rLl46aIfj8Q7KNEpy3FDfhyfumeXz9eQXmX1g&s=b_XyJvAQscNJNCwHmgj11ep8Xbsf7PvhDvONVZe3PR0&e=

>