RE: Spin bit as a negotiated option

Mike Bishop <mbishop@evequefou.be> Thu, 04 October 2018 22:40 UTC

Return-Path: <mbishop@evequefou.be>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2E456128CB7 for <quic@ietfa.amsl.com>; Thu, 4 Oct 2018 15:40:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=evequefou.onmicrosoft.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 dyC8Qoi7n67S for <quic@ietfa.amsl.com>; Thu, 4 Oct 2018 15:40:06 -0700 (PDT)
Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0728.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe45::728]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 17CF4126DBF for <quic@ietf.org>; Thu, 4 Oct 2018 15:40:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=evequefou.onmicrosoft.com; s=selector1-evequefou-be; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hWJbTyXxVvaT4IhuzaXBe7Y5x0AlRZY8zPE10HRah7o=; b=eYDX9u0czzMTa256E0HbgGzWL+i07hJIz+Pcgg2B1MHBl7AWgEDLqkTmkgeLRq89laxSSVK4gH6jOAves0RIyjBlWbwv9iS23Sr3sSzM+v73ROjkOxo9rBfhUgdg5uP2JyAdEaZkTNhf6EXYLgrfcd72zMkzYGvo8aTuMSp+7Ak=
Received: from CY4PR22MB0983.namprd22.prod.outlook.com (10.171.171.20) by CY4PR22MB0343.namprd22.prod.outlook.com (10.173.194.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1185.25; Thu, 4 Oct 2018 22:40:02 +0000
Received: from CY4PR22MB0983.namprd22.prod.outlook.com ([fe80::f4f6:67f1:e04e:7f6a]) by CY4PR22MB0983.namprd22.prod.outlook.com ([fe80::f4f6:67f1:e04e:7f6a%5]) with mapi id 15.20.1207.018; Thu, 4 Oct 2018 22:40:02 +0000
From: Mike Bishop <mbishop@evequefou.be>
To: "alexandre.ferrieux@orange.com" <alexandre.ferrieux@orange.com>, Kazuho Oku <kazuhooku@gmail.com>
CC: Brian Trammell <ietf@trammell.ch>, IETF QUIC WG <quic@ietf.org>, Christian Huitema <huitema@huitema.net>
Subject: RE: Spin bit as a negotiated option
Thread-Topic: Spin bit as a negotiated option
Thread-Index: AQHUWwDL3eYd6OM/2EiT5VFIc0lTpKUO2VEAgAAPtACAALED4A==
Date: Thu, 04 Oct 2018 22:40:02 +0000
Message-ID: <CY4PR22MB0983849F01312CBE18A4F69CDAEA0@CY4PR22MB0983.namprd22.prod.outlook.com>
References: <14531_1538460420_5BB30B04_14531_237_4_c0f3a391-9897-80b0-575b-aa73edad0d52@orange.com> <3E3DBC15-FE42-47CF-AF7A-1F2597ED2390@eggert.org> <24019_1538484216_5BB367F8_24019_26_1_8e6b0d8e-78f0-56c7-e731-da2ff22cb194@orange.com> <08A9C80F-59E6-46EE-A4D4-1F78F5085CF7@eggert.org> <9737_1538485723_5BB36DDB_9737_147_1_82e0e028-b0e8-5e09-7bd5-e66db97c556a@orange.com> <E7479831-9594-444E-9545-A162E8D9B154@eggert.org> <32072_1538492813_5BB3898D_32072_266_1_8380ff40-29fe-269b-8ed7-4331c9e53f4d@orange.com> <MWHPR22MB0991D93D706031603B077BFCDAE80@MWHPR22MB0991.namprd22.prod.outlook.com> <CAKcm_gM+zAEwfimHsorsWprJgS7O++85EOjpQoNY0LviaQ+KNQ@mail.gmail.com> <45751C2A-9F6C-4447-8D70-11ABE8C07F8D@trammell.ch> <CANatvzzCvmbu=bN1C-UCzNaT6EUPVCMPwY53wyFNkKa4HQT00g@mail.gmail.com> <E32A1E8D-0FD7-47F3-B026-10D46E201D54@trammell.ch> <21082_1538561186_5BB494A2_21082_335_1_26ed0978-a314-37d1-3c97-5924d62ef539@orange.com> <CANatvzy87Lc-kyzQUcZZS7unvaBQF+DUoEHsd1G0UoPncr4AEQ@mail.gmail.com> <4582_1538649993_5BB5EF89_4582_187_1_98109893-8492-6a58-0534-3fc4eaa09dd9@orange.com>
In-Reply-To: <4582_1538649993_5BB5EF89_4582_187_1_98109893-8492-6a58-0534-3fc4eaa09dd9@orange.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=mbishop@evequefou.be;
x-originating-ip: [2601:600:8080:701:e970:c0e5:e9fa:7bb2]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; CY4PR22MB0343; 6:0GS3COOdAFeIfjm5+aQF1X5Ue9fLwfaGZMYYHbfGfiE5zCeSG7k/oVmQL0C5+p0nhUp/uQb8ndU0CtJNoapDhEdtFVsB66IzPwF+GzXUBg4m4adLevWD/b7QclVcQUENx9g2L93dleFROlii9XNScJd/EU1jjauEwJ3lq/xH1ksbBwC9+NVjs3anBOfYTgLn+R+3cchehxq7Q+xrJUyAmNBeXMj4eahMiPoEBj67YItxUyR/umhh705WpSaUAYybXFX7IcWLHlInaag2M5D1OaCBTohpq1sJ/x8LK6t9SVzZyCCcYLseIx8u+JERoIAmVkMVHWgx7r5VXwy5Eqdkry0BhIoPhoOqo+7HA1JNgSjc/CKMTUWE0WfyxgJWgRHStX5k1Vtb1/MucgRUzi4aWzWtOE8GhjKAxVH7X+0CGvUNu3Ce6xhEXiNkYOI1GTDP13InNydO67gxx6+gviGiUA==; 5:By5UWM+DPgq4Fcv56tYjU/WzxkTeDu0yQK7R/xFk7BtkM2GGGsKxRDI3OO/6aS/RlEKLt/66dwMllaaUgTeVeecyuPFwx4wulLK5M5OGTKzOWbq+9XjxYcLJj36f2OaslUdQq9vOOZ8lww0+e47dUAZI9xF0wS3Osi5znZd+THk=; 7:fXw2G4t1rcgImXPryjXJzZjc4ea/US9t7v6pOK85m9Gm1PGQU6dgT4MBV0ExFbuEkDzndMYYGt8LvL0+6KLVO4Q3nVgnFl5WJQuTBuPqKnR3Tvcqd8jNfIqJyfpZXywWVGAfoQ3xn5Y1ymHCyuc7eodmzfcqXzvge1OY4oRitT4MWIt1SbEqXSfeciapc3asml9ExXUrdecnbOeCsYNCL2ciyRWXGNL5BaAyHU0idC18ot3QyRE0DmN20D2q6CYH
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 6e5aa264-bb17-42c9-ae64-08d62a4a530b
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(7021145)(8989299)(4534185)(7022145)(4603075)(4627221)(201702281549075)(8990200)(7048125)(7024125)(7027125)(7023125)(5600074)(711020)(2017052603328)(7153060)(7193020); SRVR:CY4PR22MB0343;
x-ms-traffictypediagnostic: CY4PR22MB0343:
x-microsoft-antispam-prvs: <CY4PR22MB03431AF7B8E7F36E388CA53EDAEA0@CY4PR22MB0343.namprd22.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(18271650672692)(161740460382875)(100405760836317)(85827821059158);
x-ms-exchange-senderadcheck: 1
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(3231355)(944501410)(52105095)(149066)(150057)(6041310)(20161123562045)(20161123558120)(20161123564045)(2016111802025)(20161123560045)(6043046)(201708071742011)(7699051); SRVR:CY4PR22MB0343; BCL:0; PCL:0; RULEID:; SRVR:CY4PR22MB0343;
x-forefront-prvs: 0815F8251E
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(136003)(366004)(346002)(376002)(396003)(39830400003)(199004)(189003)(13464003)(102836004)(14454004)(6436002)(14444005)(9686003)(8936002)(106356001)(8676002)(93886005)(6116002)(54906003)(81166006)(86362001)(256004)(105586002)(99286004)(74482002)(2501003)(110136005)(81156014)(53936002)(114624004)(55016002)(6246003)(5024004)(5250100002)(53546011)(39060400002)(6506007)(446003)(76176011)(476003)(71190400001)(2900100001)(345774005)(305945005)(33656002)(561944003)(7736002)(508600001)(11346002)(71200400001)(229853002)(7696005)(2906002)(46003)(551934003)(186003)(74316002)(5660300001)(4326008)(25786009)(68736007)(97736004)(316002)(486006)(414714003)(473944003); DIR:OUT; SFP:1102; SCL:1; SRVR:CY4PR22MB0343; H:CY4PR22MB0983.namprd22.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:0; MX:1;
received-spf: None (protection.outlook.com: evequefou.be does not designate permitted sender hosts)
x-microsoft-antispam-message-info: D2joHQmSjWuZyIz/mj96SGwCcQAeoAMbwdH264UOp9TI1fIodtRFmAvH/ahxMMQL+QkmjqJ3Sk0DC1pDJKXM4FwXET8i3aY+MZ5Dvr5AaBJvuS2Cu/ouhprgn+HoEqssPmhpQFRyHl79yMXEPyx2s8i8Ky5S1mbD1gKtm/bKzehP3T0ZSOf17piYBzeC2N2/fvaMZHAg6IzDV7oQyKZlDLbzHonOH8E42dzoXZo7oeSvkCo25cDG5Z5ocSRmbCUzwoPxRUBDuE0KFHgv/tLex6ukcqW7ntS67+fFRsjMEXJHpfrBdg614VUS3C3/iKk/Y51UPSEa7aNJO/fyufmd3HCDMshxHA6+x38VJ3USX44=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: evequefou.be
X-MS-Exchange-CrossTenant-Network-Message-Id: 6e5aa264-bb17-42c9-ae64-08d62a4a530b
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Oct 2018 22:40:02.7943 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 41eaf50b-882d-47eb-8c4c-0b5b76a9da8f
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR22MB0343
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/19kpLUe9xhIQJ5PCFl-8qadGU9E>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
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: Thu, 04 Oct 2018 22:40:10 -0000

So long as this is the only thing being negotiated, it's not too bad.  If we want to negotiate other things, it quickly gets out of hand.  One could plausibly argue that the spin bit is special in that we actually want parties observing the transaction to understand which option has been selected.

It's important to remember, though, that this is information you get only at the beginning of a new connection.  If there's migration or NAT rebinding, it's not guaranteed (and in fact, not intended) than you can correlate it back to a particular previous handshake.  You'll still either need heuristics to identify whether the spin bit is actually in use, or you'll need to ignore any traffic for which you didn't see the handshake.

-----Original Message-----
From: QUIC <quic-bounces@ietf.org> On Behalf Of alexandre.ferrieux@orange.com
Sent: Thursday, October 4, 2018 3:47 AM
To: Kazuho Oku <kazuhooku@gmail.com>
Cc: Brian Trammell <ietf@trammell.ch>; IETF QUIC WG <quic@ietf.org>; Christian Huitema <huitema@huitema.net>
Subject: Re: Spin bit as a negotiated option

Thanks Kazuho. Using version numbers directly was an obvious choice, but so far I was discouraged by strong language in the spec, saying 0x00000001 was the unavoidable point of convergence after all 0xFF0000XX experiments. So in essence you're proposing to weaken that a bit, right ?

If so, how do you envision segmenting the version number space ?

  - direct enumeration:

	0x00000001 = v1dry
	0x00000002 = v1 + spinbit
	0x00000003 = v1 + spinbit + VEC
	
  - low order bits for options:

	0x000001XX = v1 + option XX
	0x000002YY = v2 + option YY

Also, are we sure that this explosion won't weigh on the new VN scheme, inducing slower convergence due to longer lists on either side ?

On 10/04/18 11:50, Kazuho Oku wrote:
> Hi,
> 
> Thank you for starting the discussion specific to how we could 
> possibly negotiate the use of spin bits.
> 
> Regarding the topic, my preference goes to using the version number 
> field of the long header for negotiating the presence of spin bits, or 
> any additional signal being exposed to the network.
> 
> For example, QUICv1 without spin bit could use version 0x101, and v1 
> with spin bit could use 0x102. In the future, we can assign a 
> different version number for QUICv1 with multiple spin + VEC (or 
> people interested in testing the feature can designate a private 
> version number even before that).
> 
> I see the following benefits to using the version field as a method to 
> negotiate the use of spin bits.
> 
> 1. One of the concern regarding spin bits has been that they could 
> lead to ossification. Spin bits are not part of the Invariants, but if 
> the observation tools start looking at those bits without checking the 
> version number field, we will have the pressure to not change how the 
> bits are used. Using the version number to indicate the presence of 
> spin bits is the best approach to resolve such concern.
> 
> 2. We have hoped to roll out multiple versions of QUIC in a small 
> interval so that the version number field does not get ossified. The 
> best solution is obviously to roll out two flavors of the protocol 
> that uses different version numbers at the same time. We will have a 
> real-world use of version negotiation from day one, because we are in 
> a condition where implementors have different opinions on if they 
> should support spin bit :-)
> 
> The blocker to this approach has been version negotiation requiring an 
> additional round-trip, but that is going to be resolved by #1755.
> 
> 2018年10月3日(水) 19:06 <alexandre.ferrieux@orange.com>:
>>
>> On 10/03/18 09:58, Brian Trammell (IETF) wrote:
>> > Backing off the MUST for now for such situations is IMO a good 
>> > tradeoff, though, especially since we only need fractions of a 
>> > percent of deployment to start seeing useful signal for 
>> > baseline/anomaly measurement of large aggregates.
>>
>> If the consensus is that we must allow for such situations, then 
>> there are two
>> possibilities:
>>
>>   (a) weak spec language (MAY WISH TO or similar) => many 
>> implementations will simply drop it
>>
>>   (b) negotiated option where the negotiation mechanism is mandatory
>>
>> In the vein of (b), Christian suggested offline to introduce 
>> negotiation to allow for experimentation of the remaining two 
>> reserved bits. Then may be we can synthesize both ideas by the following proposal:
>>
>>   - in the first few exchanges of the 5-tuple, use the three bits for 
>> option negotiation
>>
>>   - then use them as defined by the selected option
>>
>> Example encodings:
>>
>>   000 : nothing
>>   001 : spin bit alone : S00
>>   010 : spin bit + VEC : SVV
>>   ... : other extensions
>>
>> The negotiation mechanism allows both endpoints to force 000.
>> And since it is in the clear first byte, it allows on-path observers 
>> to identify the option without resorting to heuristics; this helps in 
>> the case of a small support ratio.
>>
>>
>>
>>
>> _____________________________________________________________________
>> ____________________________________________________
>>
>> Ce message et ses pieces jointes peuvent contenir des informations 
>> confidentielles ou privilegiees et ne doivent donc pas etre diffuses, 
>> exploites ou copies sans autorisation. Si vous avez recu ce message 
>> par erreur, veuillez le signaler a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration, Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
>>
>> This message and its attachments may contain confidential or 
>> privileged information that may be protected by law; they should not be distributed, used or copied without authorisation.
>> If you have received this email in error, please notify the sender and delete this message and its attachments.
>> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
>> Thank you.
>>
> 
> 



_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration, Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law; they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.