RE: Implicitly opened streams and exposing stream IDs

Nick Banks <nibanks@microsoft.com> Tue, 03 April 2018 14:05 UTC

Return-Path: <nibanks@microsoft.com>
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 A439E128961 for <quic@ietfa.amsl.com>; Tue, 3 Apr 2018 07:05:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=microsoft.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 vOgc9bzJEx_1 for <quic@ietfa.amsl.com>; Tue, 3 Apr 2018 07:05:05 -0700 (PDT)
Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0095.outbound.protection.outlook.com [104.47.34.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BFB23124D37 for <quic@ietf.org>; Tue, 3 Apr 2018 07:05:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=xfsI628x/D9GS6uT7MN1QznCX0BPV6evAbNtJLyl23E=; b=oVHnG27z071M6Tji8hPgG5UtLnHDn6h5VzVupbLEFQDt3Hah+S3fmWS/j1ojWSb5CX3NwJkOyq+xXHMBd+iXWgh0S/zPFPaBHgoutYDxNhhTyC6jOWx0R0FsNpwjp3xlPVL73s6yRr0sh5x4/9s7PwCS09SuH2+XSENMANHdLoc=
Received: from DM5PR2101MB0901.namprd21.prod.outlook.com (52.132.132.158) by DM5PR2101MB1048.namprd21.prod.outlook.com (52.132.128.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.675.1; Tue, 3 Apr 2018 14:05:04 +0000
Received: from DM5PR2101MB0901.namprd21.prod.outlook.com ([fe80::49f0:9e08:d65d:b0dc]) by DM5PR2101MB0901.namprd21.prod.outlook.com ([fe80::49f0:9e08:d65d:b0dc%4]) with mapi id 15.20.0675.003; Tue, 3 Apr 2018 14:05:04 +0000
From: Nick Banks <nibanks@microsoft.com>
To: Dmitri Tikhonov <dtikhonov@litespeedtech.com>, Marten Seemann <martenseemann@gmail.com>, QUIC WG <quic@ietf.org>
Subject: RE: Implicitly opened streams and exposing stream IDs
Thread-Topic: Implicitly opened streams and exposing stream IDs
Thread-Index: AQHTynfdCfLv9t0HXUmEre41VboPZqPtwJiAgAFSn4CAAADB4A==
Date: Tue, 03 Apr 2018 14:05:04 +0000
Message-ID: <DM5PR2101MB090172E85926A0551FA64ACCB3A50@DM5PR2101MB0901.namprd21.prod.outlook.com>
References: <CAOYVs2qp3L-dTdFfBNDQT0Q=nCu+6Ew3gmF=0GMS2vVw1JfWCg@mail.gmail.com> <20180402174810.GA2015@ubuntu-dmitri> <20180403140009.GD1695@ubuntu-dmitri>
In-Reply-To: <20180403140009.GD1695@ubuntu-dmitri>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Owner=nibanks@microsoft.com; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2018-04-03T14:05:03.1692713Z; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=General; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Application=Microsoft Azure Information Protection; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Extended_MSFT_Method=Automatic; Sensitivity=General
x-originating-ip: [2001:4898:80e8:c::83]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM5PR2101MB1048; 7:EqGTEqbcJVxRs8NxjsP5tb6IfD46zw7j0B7r8aJdF19yPrtk+Fah/gHK3B6G8wRk9w7G0Zu8D/t0o08EKyb3HeiUBPdVJve+ko81R8VHfvD5UY8HJisPl1kFOXw1QJKZeWgAHkbEWpUjHAWJlg65uEmb2NLSlIKLE0QllCi6z7BOGwaiBooInp+Q8Oqq7rIRpgyHYOG8StmTAf20j5h64kWiyrVrQf1OLflZ65VGaFv0+1Zw6Pymxf7njv3JLotA; 20:QNBJKYG4nanMUmeWY7vZa9LeKzquynMA+/26WbUPUsn3+8g7hAG0DpUibmBpMq/ckuXnI+SjYceKK/pj1lNcjQKCilGwnjv2pG436TpKiYtPbJKtFy1r19v/BQRMizPjHe812GJBoAd3LENRm7oHlNRCOxveeXouQuXFhUoTCNc=
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 36dfc382-175f-4634-bd4d-08d5996be647
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4604075)(3008032)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7193020); SRVR:DM5PR2101MB1048;
x-ms-traffictypediagnostic: DM5PR2101MB1048:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=nibanks@microsoft.com;
x-microsoft-antispam-prvs: <DM5PR2101MB104831BD94D3BF494F06F1D2B3A50@DM5PR2101MB1048.namprd21.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(85827821059158);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(61425038)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231221)(944501327)(52105095)(93006095)(93001095)(3002001)(6055026)(61426038)(61427038)(6041310)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011); SRVR:DM5PR2101MB1048; BCL:0; PCL:0; RULEID:; SRVR:DM5PR2101MB1048;
x-forefront-prvs: 0631F0BC3D
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(366004)(376002)(39860400002)(346002)(396003)(39380400002)(189003)(199004)(13464003)(22452003)(105586002)(3660700001)(316002)(86362001)(33656002)(74316002)(97736004)(305945005)(25786009)(110136005)(478600001)(7736002)(14454004)(10290500003)(8990500004)(10090500001)(86612001)(229853002)(55016002)(186003)(6436002)(8936002)(46003)(486005)(486005)(2906002)(11346002)(2900100001)(106356001)(53936002)(9686003)(5660300001)(68736007)(476003)(8676002)(446003)(76176011)(99286004)(81166006)(39060400002)(5250100002)(6116002)(3280700002)(6506007)(53546011)(6246003)(102836004)(7696005)(81156014)(59450400001); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR2101MB1048; H:DM5PR2101MB0901.namprd21.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts)
x-microsoft-antispam-message-info: GOxt0KmjpPcEJoCEq97CBv/S9MnPP3dm2OuoDQvqwQDPcRjlXgyEq6bpFgwJ8xR5fgGzr4DrBEPClf9RUuEkyXPlYFwP4MAdW22JCOfd00SohR95lUgSSCOpoU+35VbPzFT9rX3dJk/kFIICZUq2Zc1vFbxPLFdcxT4m1oS6hRCSQ0TgY6ZeHjh2LK/TCbEK3Y2nLJWUbhCkrS1h1Gx+qZy/GN8BXHjnnvFo3ltgvzHqpYSAahoyLA0KDY+NHLdoZdrcUCE5wkDx+gGsNbzgjRLFrNnABxrQR4vE3tFAMLYGMo1qp94wXWKTOqCsF65mKTELo2MAHgOzb9sOcVTUo1suhoFtpqsMrjEBCyPm9u3vyOHeVwT76Iuyt5u0I0NXTc1jeTyUjoaoaE/q6YeIQDtesfTqjMD3IX5nxVoxUiA=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 36dfc382-175f-4634-bd4d-08d5996be647
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Apr 2018 14:05:04.5653 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR2101MB1048
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/e6bogHz62PXn7sLu74nqOCvrf3U>
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: Tue, 03 Apr 2018 14:05:08 -0000

As to requiring the application rely on stream IDs, I was referring to Marten's first email that started this thread:

" For this stream mapping, it seems like the removal of implicitly opened streams implies that QUIC has to expose stream IDs to the application layer. I'm not sure if this was intended when making the change, especially since we're considering to change HQ such that it doesn't rely on QUIC stream IDs any more."

I agree with this statement. For application protocols where they specific the "first stream" as the control stream, if you guarantee the first stream the application layer gets is always the first ordered stream, by ID, then they don't need to know the ID. Otherwise, then need to get the stream's ID to do the enforcement themselves.

- Nick

-----Original Message-----
From: QUIC <quic-bounces@ietf.org> On Behalf Of Dmitri Tikhonov
Sent: Tuesday, April 3, 2018 7:00 AM
To: Marten Seemann <martenseemann@gmail.com>; QUIC WG <quic@ietf.org>
Subject: Re: Implicitly opened streams and exposing stream IDs

I feel I am in some sort of discussion hole -- where was it first discussed to get rid of relying on Stream IDs in the application layer?  I'd like to get some background.

  -Dmitri.

On Mon, Apr 02, 2018 at 01:48:10PM -0400, Dmitri Tikhonov wrote:
> On Mon, Apr 02, 2018 at 11:43:23AM +0000, Marten Seemann wrote:
> > In this case, after accepting a stream, we first have to check the 
> > stream ID, since there's no guarantee if the control stream will 
> > actually be received first.
> > 
> > For this stream mapping, it seems like the removal of implicitly 
> > opened streams implies that QUIC has to expose stream IDs to the 
> > application layer.
> 
> I don't see a problem with that -- HTTP is the application layer, and 
> the draft specifies that streams 2 and 3 are the control streams.
> 
> > I'm not sure if this was intended when making the change, especially 
> > since we're considering to change HQ such that it doesn't rely on 
> > QUIC stream IDs any more.
> 
> Are you referring to a specific pull request or an issue on GitHub?
> (I must have missed it.)
> 
>   - Dmitri.