Re: [Webtransport] Confirming consensus calls from today's WebTransport interim

Alan Frindell <afrind@fb.com> Tue, 25 May 2021 21:36 UTC

Return-Path: <prvs=47794b2397=afrind@fb.com>
X-Original-To: webtransport@ietfa.amsl.com
Delivered-To: webtransport@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D8CD33A0CA0 for <webtransport@ietfa.amsl.com>; Tue, 25 May 2021 14:36:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.794
X-Spam-Level:
X-Spam-Status: No, score=-2.794 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.698, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=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=fb.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 84HDOq45jZ4l for <webtransport@ietfa.amsl.com>; Tue, 25 May 2021 14:36:43 -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 904813A0C9A for <webtransport@ietf.org>; Tue, 25 May 2021 14:36:43 -0700 (PDT)
Received: from pps.filterd (m0001303.ppops.net [127.0.0.1]) by m0001303.ppops.net (8.16.0.43/8.16.0.43) with SMTP id 14PLXtei007951; Tue, 25 May 2021 14:36:40 -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 : content-id : content-transfer-encoding : mime-version; s=facebook; bh=Iu5Ds3MDOaW9VLNpmrJ5R4g+f3zg3I2x0g2fneiL9Nk=; b=Hmlqh4CcYvYgKtfnFllzACv+2UFRaiTk70I6FzfMCY08MFCsNvbZMGjnj14NTLPgUmrW c9Y8eRS/ALgqr0siC747BiyU+Akde/JRqXJkDEFym92dK0qwv7jBmkMutFheX6G23h+C Z/iP8Wr1HtZBCtDUQkceRF2Y35oGxMYkPS0=
Received: from maileast.thefacebook.com ([163.114.130.16]) by m0001303.ppops.net with ESMTP id 38rjj27t54-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Tue, 25 May 2021 14:36:40 -0700
Received: from NAM02-SN1-obe.outbound.protection.outlook.com (100.104.31.183) by o365-in.thefacebook.com (100.104.36.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Tue, 25 May 2021 14:36:39 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RE1qbYuwm18CZQaLUvUd/e55A9xHzhhCxfpMtkTCPHgHeWDOLyMB2NgvZcJtsVqGjCySoSoWoqfFlar8Z/TycdnF+7njuwY810x7Mnwb587CvCF+qycgeKNGGXrjvzxTxbhcsqCif/vNaMDwmT0VoPiNxAOaWMRhqKIRdXYg3/sOosF+k7d6EYyjLUbO7zxDb672Z4TJnjcqV5lID6ilsDTtSqfhg8F1rMZK+azLq38ni5ULy5Lu9SMCunfjX4s4ZeA1wRzKdekDraHqcKFoUflfqegWRB7Mq1ulVYxU3y7L/SAdJkGYrYt1Ta5VpVYSa77UIyefw2t2JEUjdB9Nlw==
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=tpPI/u6gSACC/woPDSh+sbqs8SpOj0aKfe5TRnJjG+c=; b=CxDlGup0dS1XV5DJ85r+lnOAmRXdl+FQts2mpP4LWAW4XdA8WS89dD8zKFE/X4JiXRYgCv5XgBMn67CemZ3pQnlDdJTN416iWbKuo/nUeFfYHV5kvCkSmMBggK6Xo7/4VupgekYjNlmHp3kdoZje1l/7gGzH+DoOhjBS/oipLtPu9AsJRQU0r416VuDAt+9EvFvvGmB991NmEE3GoxpwjIf66MCPxQn0hQulRg2MdPXUlz0eHpKnDROwGopw8/Z17sv4lhon37eHZr4iKZTE9I6eZjF2kABr+g4fpsmPQinsBkTMHJyezdd9zeDG0iZG1/mATPWIrsp44vF6Yq1HQQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fb.com; dmarc=pass action=none header.from=fb.com; dkim=pass header.d=fb.com; arc=none
Received: from MW3PR15MB3772.namprd15.prod.outlook.com (2603:10b6:303:4c::14) by CO1PR15MB5049.namprd15.prod.outlook.com (2603:10b6:303:e8::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.25; Tue, 25 May 2021 21:36:38 +0000
Received: from MW3PR15MB3772.namprd15.prod.outlook.com ([fe80::b569:872e:690d:d455]) by MW3PR15MB3772.namprd15.prod.outlook.com ([fe80::b569:872e:690d:d455%7]) with mapi id 15.20.4150.027; Tue, 25 May 2021 21:36:38 +0000
From: Alan Frindell <afrind@fb.com>
To: Martin Thomson <mt@lowentropy.net>, Victor Vasiliev <vasilvv@google.com>
CC: WebTransport <webtransport@ietf.org>
Thread-Topic: [Webtransport] Confirming consensus calls from today's WebTransport interim
Thread-Index: AQHXUD7iV/BvN4XSMEWTPumaG9DVxKr0Rj6A
Date: Tue, 25 May 2021 21:36:38 +0000
Message-ID: <304A9399-D211-4463-9245-C2437E318FC3@fb.com>
References: <CAPDSy+5s-D7v3jxFmWKD5N-=sVcM_v8ZmB1iVNjZ1ZuHN5n=OQ@mail.gmail.com> <cce29e58-da55-4cc1-b760-4ee1c849c035@www.fastmail.com> <CAAZdMad9hZMutYAWQOO=T+UtV9tuMreHy707JO6qN40k2SVmMQ@mail.gmail.com> <69e2d8c9-b532-4ce3-b558-9fdd11e5fb1a@www.fastmail.com>
In-Reply-To: <69e2d8c9-b532-4ce3-b558-9fdd11e5fb1a@www.fastmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.49.21050901
authentication-results: lowentropy.net; dkim=none (message not signed) header.d=none;lowentropy.net; dmarc=none action=none header.from=fb.com;
x-originating-ip: [2620:10d:c090:400::5:16ce]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 9909bb7c-f8e8-4158-3716-08d91fc52da9
x-ms-traffictypediagnostic: CO1PR15MB5049:
x-microsoft-antispam-prvs: <CO1PR15MB5049422F4B5E90BE9AF729F3A7259@CO1PR15MB5049.namprd15.prod.outlook.com>
x-fb-source: Internal
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: 8hasq1iAacXs2bJrakIJ7omefdPVeGcnPRDIUKsZtn1MUKGAmmCFKCnVzrUyXV9sZXUmg8wK3IBZAY66bl5XsFA0EKzSkpub7AZjWXrgsXJCum9oqupznouRQblyu3Nw0DfPsbEUZQMtZT+kwGuw1J6AMZtLz4X03p+H0lKoe+o3DGGQHmSIh7phJ3T4R6smXd5JYLAgIMR1CGijFT4f2hHIRhS5U4cZssrGUCAUaDF/NSeE8HWBiszR527SIYE6H7VJDQOOV3ZbC4yr8/7LXjXJ7GgoBEtIEtCW1kkHKnX3mcms6XJ6wT5sgX9Cko+iJnigeZgzWbSJzDimaLjQOgbhLgq/xPlfVLr//NrA0z7zEZHxO1HPAqYaRvAYhGmme0sbXtTIfGFySv24mLec1N/8zPW+nNM0ynZlF7fQ8SZ9IPoRcVIs9sKSwh1lUiZvzqXe6o0taBGWQnGJ8Rss+gt0mXWYLS2+TdpyCUG4gnu+vuxdGcxst8iilG0FSnupImx/YtLzrBmZee/pDq5NwPJNhEtO73rXs/dWL3QV83TC0qYq8jk0q4YgPZvc2anyZGQzzw5O0pjmS9ZKrbdGOGtW40jRj/ImP1lv3yywwHki3SVD9Lzuisk1Eh8KwY8F/6XbvSwlNPkqMGuN7r5NGWPiJBnDvwhhUCpYazksoi6LS6HWR5vw7wF3XfarCnnn3wFaW5G0Pp4ByzSjIQ7f6FrnUyoCq6H008khnsxGhpTuM75Vw1KLcddoQpjcAHcYzVRc/ORXhLwMWXzbJmmj8Q==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW3PR15MB3772.namprd15.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(366004)(396003)(376002)(346002)(5660300002)(71200400001)(33656002)(38100700002)(2906002)(8936002)(478600001)(6486002)(186003)(4326008)(64756008)(316002)(110136005)(66946007)(76116006)(966005)(86362001)(2616005)(66476007)(53546011)(83380400001)(6506007)(8676002)(6512007)(66446008)(66556008)(122000001)(36756003)(45980500001); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata: SfIOM0v6iPNZsav5lz8MnM78WawP/cyS7cHJHI03NdBX14vt0XdCmHLvlamdEUafnOSPSMA+mQIgc/TwGLyVe0NqliOdNF33kbt8a8E0K7mEsp+abx79vBcmxWLrBzpLOmgQmFODHmPAaR1mQzRVv7zALToIkZRp0VHHIDb9KcL4YS49HGjA9EBMEVfSFYAcmbVAAvQw9xiodvl4hWmzp33+J4PYj06lzeXBoDN+Kf/DOjVSPhLPLMvINpEcVfmwHiyaG9omOLBvL5x4QbLLqRGXOV+vwDr4sW6cDXFS7/lofkfnlPylgeFmVW7Z64aY8yfJ/qsBryOlz8pB7L2pN2vUbLbGvcU2bx4/BeeyFlwrK/j6pJhOsro5j/bLmfnCN9J+rlHu/52mmFmVS2rTm2MMP0jZ5fvbAQdkwgR+TV/EZeKxyKUeTLT+5Cxf2KkdHhZerFddskkr16/rYAplGcrHYN6oGqvVG08nDlu/tHbl8vLtk1uD7TvpJ9rYE0HoInmcxMyOt1sHKhO0g7sQwehHAVTFssY/1mgSiY44oKkOCnmFOfrO9eiTJIXMEjnVdO1682FkMox2HY5oN7VAYnrllPZ3uTHPAGo/b+s6oJuWZP9iQv8oqaTyw+zvB/ZxMsNvDLS/DkO0w0WEPhV41+JyTdCEOb+lHszqSNvsEtmkQpZ+16ERvcf5GMRcZMhycEvQ9i32Me6B8IzOfEwXD58dGH046JjS1tRzBFb7hwlDbOdJIneAlM/Z1kCt2FJR/tcVq6E531O2arFlMh5gsg==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <68157B0577E26B4AA57EF472C4669710@namprd15.prod.outlook.com>
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MW3PR15MB3772.namprd15.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 9909bb7c-f8e8-4158-3716-08d91fc52da9
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 May 2021 21:36:38.2737 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: m0rXycEXNo0xn94qHz97HkFaBNWpAUSXHSboszLMYJFBZU3nkOqnZDKDARaCQZWZ
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR15MB5049
X-OriginatorOrg: fb.com
X-Proofpoint-ORIG-GUID: DTmsFXRL4lIMJEQSHtfJ7gg-2JiNAWbe
X-Proofpoint-GUID: DTmsFXRL4lIMJEQSHtfJ7gg-2JiNAWbe
Content-Transfer-Encoding: base64
X-Proofpoint-UnRewURL: 1 URL was un-rewritten
MIME-Version: 1.0
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.761 definitions=2021-05-25_08:2021-05-25, 2021-05-25 signatures=0
X-Proofpoint-Spam-Details: rule=fb_default_notspam policy=fb_default score=0 lowpriorityscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 spamscore=0 bulkscore=0 impostorscore=0 priorityscore=1501 mlxscore=0 suspectscore=0 adultscore=0 clxscore=1011 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2105250133
X-FB-Internal: deliver
Archived-At: <https://mailarchive.ietf.org/arch/msg/webtransport/STpjCnA_LJm0yqx56WLq6vB39Xw>
Subject: Re: [Webtransport] Confirming consensus calls from today's WebTransport interim
X-BeenThere: webtransport@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <webtransport.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/webtransport>, <mailto:webtransport-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/webtransport/>
List-Post: <mailto:webtransport@ietf.org>
List-Help: <mailto:webtransport-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/webtransport>, <mailto:webtransport-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 25 May 2021 21:36:49 -0000

I think the fundamental discussion here is about whether we want to modify/extend the HTTP/2 state machine to handle WebTransport streams, or whether we should build an entirely separate stream state machine for them, and leave the H2 machinery untouched.

Martin may be right that there be dragons down the path of modifying the H2 state machine.  The alternative strikes me as an awful lot of duplication -- it's close to implementing H2 again over a single HTTP stream, minus header processing.  That said, I think either approach can be made to work, we just need to choose the tradeoffs we want.  

I am remiss in not addressing the feedback regarding unidirectional stream resets.  I think that it got lost during the bizarre hours of the last IETF.  I filed an issue in the draft repo to track it (https://github.com/ekinnear/draft-webtransport-http2/issues/17).  I think the right solution is to keep the unidirectional reset functionality, and implement it in the H2 draft using either new frames or messages, depending on the direction we take regarding the state machine.

During the interim, we expressed our flexibility to adapt the design here as the H3 design evolves (eg: stream limits), new tools become available (eg: CAPSULE) and as we gather implementation experience.

While I think it is important we address this design decision as soon as possible, I don't know that it needs to block adoption. 

Thanks

-Alan

On 5/23/21, 6:48 PM, "Webtransport on behalf of Martin Thomson" <webtransport-bounces@ietf.org on behalf of mt@lowentropy.net> wrote:

    On Sat, May 22, 2021, at 02:06, Victor Vasiliev wrote:
    > On Thu, May 20, 2021 at 9:37 PM Martin Thomson <mt@lowentropy.net> wrote:
    > > I'm opposed to adoption of this document.  I don't believe that it can be made so due to some fundamental differences in how HTTP/2 and QUIC stream states.
    > > 
    > > If this problem was acknowledged, then I have every confidence that the people listed as authors are able to find a solution.  But generally adoption is about the document more than the people.  Adoption means agreeing that the document contains approximately the right shape for a solution.  I can't agree with that in this case.
    > 
    > Hi Martin,
    > 
    > Could you elaborate on the specific differences between HTTP/2 and QUIC 
    > stream state machines that you are concerned about?  The only one I am 
    > aware of is unidirectional versus bidirectional reset, and last time we 
    > discussed this, the easiest solution was to make HTTP/3 behave like 
    > HTTP/2, which would mean there's nothing HTTP/2 draft would do to 
    > address that.

    That's the one I'm most concerned about, but there is also the whole mess around inventing semantics for unidirectional streams that needs to be worked into the state machines.

    For reset, sure, you could make the HTTP/3 draft worse to deal with the problem.  Why would you want that?  QUIC has a much better set of semantics here than HTTP/2.

    There is also the stream state management disconnect for server-initiated streams, which currently is only used for server push.  The draft currently doesn't say anywhere near as much as it would need to in order to specify that part.

    And managing allocation of stream limits is a little scant on detail in the same way.  I thought we wanted independent limits, which means defining new accounting systems.  (Yes, this is a criticism of the HTTP/3 draft also, but the additional effort required to use QUIC streams is entirely justified in that case, because you are getting something in exchange.)

    Why bother with all of that when you can just import QUIC frame semantics and then serialize them on the same stream?

    Yes, this all boils down to a fairly central question: do we build the same thing for HTTP/2 and HTTP/3?  I'm not sure that we want that.  We need to do a whole bunch of stuff to use QUIC (BTW, Roberto gets to say "told you so" again here), but doing that same work for HTTP/2 doesn't make sense unless the changes are minimal.  I'm suggesting that the changes aren't as minimal as the rough sketches of protocols we have might imply.

    If you conclude that there are more functions needed, as I have done, then you might also conclude that building those same functions into two different protocols is not desirable, especially when there are no benefits to doing so for one of those protocols.

    -- 
    Webtransport mailing list
    Webtransport@ietf.org
    https://www.ietf.org/mailman/listinfo/webtransport