RE: Updated DATAGRAM -03 draft

Nick Banks <nibanks@microsoft.com> Wed, 10 July 2019 16:30 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 5A6B31200D8 for <quic@ietfa.amsl.com>; Wed, 10 Jul 2019 09:30:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, 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 ncaZGtPsY8YP for <quic@ietfa.amsl.com>; Wed, 10 Jul 2019 09:30:21 -0700 (PDT)
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-eopbgr770123.outbound.protection.outlook.com [40.107.77.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B6A4C120047 for <quic@ietf.org>; Wed, 10 Jul 2019 09:30:20 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZarurbUM8bY1BLc1Fna79YihU/rw+3P9TsLqt3CplkRZulW2rOc7BigIx875nSsx/g+vEOCf7KETgRoJ60mhErgGdhG0ADIPCLmmwvGe6b32WL2rjwzwh5iDJihqLh3aNJdIk75IKdC2mZBxx4BcicaNGnF+WKc6O8hXvQGrJyYUQKgi0gLxi7X9EO7hyHAVS1qbxcnyplMP4jJuTWQ0QbiO5wZbJQui+21rBLQxQr431TyCbRjPoKCgkPrglEkYp1kCccm0NvNZcLFdPJFfruzWkDdAUXyp5yB4SU3c4h55IPCha+YAOjRmhPwtB+ECb3FbaEcQOs2itpYSdd0B2Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=72PEU72z1PBbgT9JN27GiocikQ50QV1XpFjc2rougcY=; b=mjUHEQyEk1NvQAtWkNU7OFoCukvuPSoFmAF/FaXnevI/cgjdWEPeNlefxmALMGfmzl4wlwqng7ne7V8r3ol0yAhUxIiRhdfVyxKGitsoNc9ygymxXlwo12eSQP4016S6XV12iX25mXg3dkX2sccVlU8viudEZWuz2bbDn98eLacxtuUo5/ptkY/j7KCAOO3bhe777ip9/kKTUNiX4ZVQ/aC7K5YLxrElAUt1C0pRJ8pURAf7WmP3P9XR0rprutjQFGwyWFz/xveZNxjqC4ds3dOr+ppbU/mK4HDx7hr1ZcKOfm0d3PebGehfdHJnPZqh1KG0L6CoJi0exGrKJUyo9Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=microsoft.com;dmarc=pass action=none header.from=microsoft.com;dkim=pass header.d=microsoft.com;arc=none
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:X-MS-Exchange-SenderADCheck; bh=72PEU72z1PBbgT9JN27GiocikQ50QV1XpFjc2rougcY=; b=YYsl1aW2x9fZ1xLqHo6P1sHIrHLMpz/ReZG4OBH6BXsgVk6kbM56Pa9i4Jm/DHHFn9DYgSOBcHTATA3WmWKG15saGKdLooF3ZhBpvvl1OK02whgepCZjSZlcgRX/qaToBNalcqpVlTwKuq13PXeRX6LrYlgfg+OkXYY9MxrufRo=
Received: from BL0PR2101MB1332.namprd21.prod.outlook.com (20.177.244.146) by BL0PR2101MB1028.namprd21.prod.outlook.com (52.132.22.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2094.3; Wed, 10 Jul 2019 16:30:16 +0000
Received: from BL0PR2101MB1332.namprd21.prod.outlook.com ([fe80::4cf8:f496:6ea9:ee64]) by BL0PR2101MB1332.namprd21.prod.outlook.com ([fe80::4cf8:f496:6ea9:ee64%7]) with mapi id 15.20.2094.001; Wed, 10 Jul 2019 16:30:16 +0000
From: Nick Banks <nibanks@microsoft.com>
To: Tommy Pauly <tpauly=40apple.com@dmarc.ietf.org>, Ian Swett <ianswett=40google.com@dmarc.ietf.org>
CC: QUIC WG <quic@ietf.org>
Subject: RE: Updated DATAGRAM -03 draft
Thread-Topic: Updated DATAGRAM -03 draft
Thread-Index: AQHVNaC2q7efIxV8VEiDQ/D/ojZFFKbDEJiAgAD4pACAAAQW8A==
Date: Wed, 10 Jul 2019 16:30:15 +0000
Message-ID: <BL0PR2101MB1332DED052BF219969E70F43B3F00@BL0PR2101MB1332.namprd21.prod.outlook.com>
References: <156246300105.3401.11374988947164402300.idtracker@ietfa.amsl.com> <FAEF650D-5C03-4CD3-8178-873A0969F230@apple.com> <CAKcm_gMnPXU-0=k98av_w7G31ohkza6LbWEHCW5_VE3Dfrkqcw@mail.gmail.com> <F7DFEE27-3F09-4B09-A98F-02712109102E@apple.com>
In-Reply-To: <F7DFEE27-3F09-4B09-A98F-02712109102E@apple.com>
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=2019-07-10T16:30:12.5006471Z; 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_ActionId=2c93211a-4034-4333-a2e7-b4d8a646522b; MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Extended_MSFT_Method=Automatic
authentication-results: spf=none (sender IP is ) smtp.mailfrom=nibanks@microsoft.com;
x-originating-ip: [2001:4898:80e8:a:ad4e:750e:713:1b72]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 3efe4269-2d68-4be9-1a8c-08d70553e3fc
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600148)(711020)(4605104)(1401327)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:BL0PR2101MB1028;
x-ms-traffictypediagnostic: BL0PR2101MB1028:
x-ms-exchange-purlcount: 8
x-microsoft-antispam-prvs: <BL0PR2101MB102899317D0CCF0AD0B2B309B3F00@BL0PR2101MB1028.namprd21.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 0094E3478A
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(376002)(136003)(366004)(346002)(396003)(39860400002)(189003)(199004)(53754006)(2420400007)(5660300002)(66446008)(66946007)(66476007)(53936002)(4326008)(68736007)(53546011)(66574012)(316002)(110136005)(6506007)(2906002)(5070765005)(76116006)(966005)(8990500004)(478600001)(46003)(66556008)(22452003)(15650500001)(86362001)(10290500003)(52536014)(64756008)(6246003)(25786009)(71200400001)(71190400001)(14444005)(8676002)(186003)(7116003)(55016002)(6306002)(81156014)(8936002)(81166006)(54896002)(9686003)(446003)(7736002)(6116002)(486006)(476003)(33656002)(606006)(790700001)(74316002)(6436002)(102836004)(256004)(229853002)(7696005)(10090500001)(76176011)(99286004)(7110500001)(14454004)(236005)(11346002); DIR:OUT; SFP:1102; SCL:1; SRVR:BL0PR2101MB1028; H:BL0PR2101MB1332.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-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: CShIe3MAlVrBglJ/wPuUuMiexvnO9h8x946RmTLzCPUnPni1EPNuIc7l3N821T8ICChmXOi9sqP9tYJnxXHPcnRpg+kfyd+fVHfQDhlKZ7ckAgNqWp/Q3WRLDIN7LXQ/HkRrKTIx/MVw7uVhO14MbWr1BsvWBzlA3IUMT0DumxQjZtHJnQEqpLB8Ry2+dGx7w+kS1RWpz8OPcoxagvyDgdQvWJQgxF3K4CdYXTUo8fPXu+cEEadZTj6obiMnBIzEAAdrwP//XxEr7UXclFz7eZ4cWGFXPF8Vj80YPWiC4j5p10UZ3owsL6RQ4hbZZtRR7NtFOjWvXi6tYMbQZFtkwN5PIRvNPU01hAgw30WmkhGhjU1jHaEHO6jCcgRuboU2Jle+KUXyoAwf/AMjZsOZH2pJi3LO6T6i3kpfjlFzoBk=
Content-Type: multipart/alternative; boundary="_000_BL0PR2101MB1332DED052BF219969E70F43B3F00BL0PR2101MB1332_"
MIME-Version: 1.0
X-OriginatorOrg: microsoft.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 3efe4269-2d68-4be9-1a8c-08d70553e3fc
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jul 2019 16:30:15.9916 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: nibanks@microsoft.com
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR2101MB1028
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/40uwb9ShtI2EYKyoqHlsXXmKfjE>
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: Wed, 10 Jul 2019 16:30:24 -0000

My preference would also be to support flow control for the IDs. Though, I still think that the IDs by themselves have merit. As Tommy has said, you can think of a datagram ID on a given connection as pretty much the same thing as a UDP port for an IP address. If both sides know before hand what port to use, everything is fine.

- Nick

From: QUIC <quic-bounces@ietf.org> On Behalf Of Tommy Pauly
Sent: Wednesday, July 10, 2019 9:12 AM
To: Ian Swett <ianswett=40google.com@dmarc.ietf.org>
Cc: QUIC WG <quic@ietf.org>
Subject: Re: Updated DATAGRAM -03 draft




On Jul 9, 2019, at 6:22 PM, Ian Swett <ianswett=40google.com@dmarc.ietf.org<mailto:ianswett=40google.com@dmarc.ietf.org>> wrote:

Thanks Tommy.  As I've expressed before, I'm not a big fan of the ID field(now flow identifiers) unless they have clear transport level functionality.

Understood!


Adding signaling for opening and closing these flows seems like a stronger reason to add these IDs to the transport layer.  Have you considered splitting this draft into two or the frame type into two and making the version with a flow identifier more full-featured?


That's certainly an option. As it stands, the frame type with a Flow ID is already a different type value. I think if people decide that the datagrams are mainly useful with the extra signaling being part of the transport layer, then I'd prefer to just do that in this document, but if not, then it can be separate.

Overall, I see a few different options for handling flow IDs:

- Remove them from the DATAGRAM transport altogether
- Support flow IDs in the DATAGRAM draft with more explicit tie-ins to the transport, like flow lifetime management
- Have a separate draft specifying how the next layer above the QUIC transport should manage multiplexing of datagram flows, by putting identifiers at the start of datagram payloads, and using reliable control stream(s) to negotiate lifetimes of flows

Thanks,
Tommy


On Mon, Jul 8, 2019 at 11:20 AM Tommy Pauly <tpauly=40apple.com@dmarc.ietf.org<mailto:40apple.com@dmarc.ietf.org>> wrote:
Hello all,

We’ve updated the QUIC DATAGRAM draft to incorporate some of the feedback we received at the side meeting in Prague. Notably, it clarifies:

- Guidance around datagram acknowledgements
- Datagrams do not participate in any flow control
- Datagrams do participate in congestion control

The remaining area of open discussion is around the newly re-named optional “flow identifiers”. The primary argument for removing these is that applications can add identifiers onto datagrams themselves, and the transport should not transmit a field that it does not do anything with. We did add some text clarifying that these identifiers are essentially like UDP ports for demultiplexing, and pointed out some *minimal* things the transport can do to help batch transmission of datagrams in the same flow and promote fate-sharing within a flow. There’s been some discussion on Slack of other approaches that would make these flow IDs more first-class citizens—adding reliable signaling for opening and closing flows, as many applications would also generally need some similar sort of control channel—but these seem a bit heavy-weight. Either way, this is an area where discussion is welcome and I expect the document to change.

Best,
Tommy


Begin forwarded message:

From: internet-drafts@ietf.org<mailto:internet-drafts@ietf.org>
Subject: New Version Notification for draft-pauly-quic-datagram-03.txt
Date: July 6, 2019 at 6:30:01 PM PDT
To: Eric Kinnear <ekinnear@apple.com<mailto:ekinnear@apple.com>>, David Schinazi <dschinazi.ietf@gmail.com<mailto:dschinazi.ietf@gmail.com>>, Tommy Pauly <tpauly@apple.com<mailto:tpauly@apple.com>>


A new version of I-D, draft-pauly-quic-datagram-03.txt
has been successfully submitted by Tommy Pauly and posted to the
IETF repository.

Name: draft-pauly-quic-datagram
Revision: 03
Title: An Unreliable Datagram Extension to QUIC
Document date: 2019-07-06
Group: Individual Submission
Pages: 8
URL:            https://www.ietf.org/internet-drafts/draft-pauly-quic-datagram-03.txt<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Finternet-drafts%2Fdraft-pauly-quic-datagram-03.txt&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793956874&sdata=Vi6tqg74ZTl5s%2BG5aU1v4R4dHbSbweBuz2vSBYn6sIU%3D&reserved=0>
Status:         https://datatracker.ietf.org/doc/draft-pauly-quic-datagram/<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fdraft-pauly-quic-datagram%2F&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793961863&sdata=hDx9XfQUXu5YgfkzStkR47J5dYYjSeoEJH4hhj9RFsk%3D&reserved=0>
Htmlized:       https://tools.ietf.org/html/draft-pauly-quic-datagram-03<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftools.ietf.org%2Fhtml%2Fdraft-pauly-quic-datagram-03&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793966856&sdata=fPeG461Z1OEpy2z5vgyptHWZTghaDfLLqtlByAfQN%2FA%3D&reserved=0>
Htmlized:       https://datatracker.ietf.org/doc/html/draft-pauly-quic-datagram<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Fdraft-pauly-quic-datagram&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793971846&sdata=%2F5BpNnlBfTjXJKcIXPw0AtSI4ZnR5ANBy0dI8uKkhFw%3D&reserved=0>
Diff:           https://www.ietf..org/rfcdiff?url2=draft-pauly-quic-datagram-03<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.ietf.org%2Frfcdiff%3Furl2%3Ddraft-pauly-quic-datagram-03&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793976837&sdata=gEChkKf0lX7YYGBeMKiZPOKsN8LNerq3HURRpmzNfDc%3D&reserved=0>

Abstract:
  This document defines an extension to the QUIC transport protocol to
  add support for sending and receiving unreliable datagrams over a
  QUIC connection.




Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at tools.ietf.org<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftools.ietf.org%2F&data=02%7C01%7Cnibanks%40microsoft.com%7Cc6d3ea0c350e4fe3c06408d705517895%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636983719793981824&sdata=voffvGDVz3PluwcN5wuAZqtflBE9zgk%2FD6wt2rfNU0M%3D&reserved=0>.

The IETF Secretariat