Re: Updated DATAGRAM -03 draft

Tommy Pauly <tpauly@apple.com> Wed, 10 July 2019 16:12 UTC

Return-Path: <tpauly@apple.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 3581212019D for <quic@ietfa.amsl.com>; Wed, 10 Jul 2019 09:12:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 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, 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 (2048-bit key) header.d=apple.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 knEPt_-DjJ5P for <quic@ietfa.amsl.com>; Wed, 10 Jul 2019 09:12:41 -0700 (PDT)
Received: from nwk-aaemail-lapp02.apple.com (nwk-aaemail-lapp02.apple.com [17.151.62.67]) (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 D5A32120178 for <quic@ietf.org>; Wed, 10 Jul 2019 09:12:41 -0700 (PDT)
Received: from pps.filterd (nwk-aaemail-lapp02.apple.com [127.0.0.1]) by nwk-aaemail-lapp02.apple.com (8.16.0.27/8.16.0.27) with SMTP id x6AGBRXF063034; Wed, 10 Jul 2019 09:12:40 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=sender : from : message-id : content-type : mime-version : subject : date : in-reply-to : cc : to : references; s=20180706; bh=3lA7UWVC/9V2P1L/K0yhl9hLd2jYXvomWidRvWolZs0=; b=TEzLzVyoG+8nGCTHQURuyaGdGfl1RZbhNdMFgC1TBzElLvNBODw5pAboMj+U3GQkhzV4 KL7Wwlzh1ZRHDxQMH6d4P05O00OW/if7rGRlAJ94G1wLgaIrDmRjg3tOaw93gftPydYj FZINz7nJHXzyd5WRzeCYtev78shH/RgxrcjF2v66qHJOcaBBNyiFWNwpVRpJ7fWD2A/S X00m/c2VdOpYUXdjiDeT53ipFwaF029VbLySo3OcRnOYMNFELPTOgNt1UeTSOW7wXHgt dzFtjd2RGOtS6HOfYagw3M9ap1uPQFjxrQ+QY2fZebUTUVzCk9lzrEeicBIq6mCoZjuk Ag==
Received: from ma1-mtap-s02.corp.apple.com (ma1-mtap-s02.corp.apple.com [17.40.76.6]) by nwk-aaemail-lapp02.apple.com with ESMTP id 2tjr7pujhb-30 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Wed, 10 Jul 2019 09:12:40 -0700
Received: from nwk-mmpp-sz10.apple.com (nwk-mmpp-sz10.apple.com [17.128.115.122]) by ma1-mtap-s02.corp.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPS id <0PUF004OGP123SB0@ma1-mtap-s02.corp.apple.com>; Wed, 10 Jul 2019 09:12:40 -0700 (PDT)
Received: from process_milters-daemon.nwk-mmpp-sz10.apple.com by nwk-mmpp-sz10.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) id <0PUF00K00OUUM200@nwk-mmpp-sz10.apple.com>; Wed, 10 Jul 2019 09:12:39 -0700 (PDT)
X-Va-A:
X-Va-T-CD: c8b10700d71aad692d44400dd5e552ae
X-Va-E-CD: b42e1731a8648bdf8d931aa1eda3b9af
X-Va-R-CD: 4798a8ccd957a0d6b4548f4d1f0608d0
X-Va-CD: 0
X-Va-ID: 06cd4ec8-5907-425e-9eef-0515bf174ffd
X-V-A:
X-V-T-CD: c8b10700d71aad692d44400dd5e552ae
X-V-E-CD: b42e1731a8648bdf8d931aa1eda3b9af
X-V-R-CD: 4798a8ccd957a0d6b4548f4d1f0608d0
X-V-CD: 0
X-V-ID: d6da5245-3452-42c2-9f6c-9ad24e0e7ef6
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-07-10_06:,, signatures=0
Received: from [17.234.22.115] by nwk-mmpp-sz10.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPSA id <0PUF008LQP13B460@nwk-mmpp-sz10.apple.com>; Wed, 10 Jul 2019 09:12:39 -0700 (PDT)
Sender: tpauly@apple.com
From: Tommy Pauly <tpauly@apple.com>
Message-id: <F7DFEE27-3F09-4B09-A98F-02712109102E@apple.com>
Content-type: multipart/alternative; boundary="Apple-Mail=_A3E34620-2568-49AB-83A9-CEFBA0131C23"
MIME-version: 1.0 (Mac OS X Mail 12.4 \(3445.104.2\))
Subject: Re: Updated DATAGRAM -03 draft
Date: Wed, 10 Jul 2019 09:12:18 -0700
In-reply-to: <CAKcm_gMnPXU-0=k98av_w7G31ohkza6LbWEHCW5_VE3Dfrkqcw@mail.gmail.com>
Cc: QUIC WG <quic@ietf.org>
To: Ian Swett <ianswett=40google.com@dmarc.ietf.org>
References: <156246300105.3401.11374988947164402300.idtracker@ietfa.amsl.com> <FAEF650D-5C03-4CD3-8178-873A0969F230@apple.com> <CAKcm_gMnPXU-0=k98av_w7G31ohkza6LbWEHCW5_VE3Dfrkqcw@mail.gmail.com>
X-Mailer: Apple Mail (2.3445.104.2)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-07-10_06:, , signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/aB-erEu104BRj0iGRXLyqg10_WM>
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:12:45 -0000


> On Jul 9, 2019, at 6:22 PM, Ian Swett <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://www.ietf.org/internet-drafts/draft-pauly-quic-datagram-03.txt>
>> Status:         https://datatracker.ietf.org/doc/draft-pauly-quic-datagram/ <https://datatracker.ietf.org/doc/draft-pauly-quic-datagram/>
>> Htmlized:       https://tools.ietf.org/html/draft-pauly-quic-datagram-03 <https://tools.ietf.org/html/draft-pauly-quic-datagram-03>
>> Htmlized:       https://datatracker.ietf.org/doc/html/draft-pauly-quic-datagram <https://datatracker.ietf.org/doc/html/draft-pauly-quic-datagram>
>> Diff:           https://www.ietf..org/rfcdiff?url2=draft-pauly-quic-datagram-03 <https://www.ietf.org/rfcdiff?url2=draft-pauly-quic-datagram-03>
>> 
>> 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 <http://tools.ietf.org/>.
>> 
>> The IETF Secretariat
>> 
>