Re: Deadlocking in the transport

Martin Thomson <martin.thomson@gmail.com> Thu, 11 January 2018 17:55 UTC

Return-Path: <martin.thomson@gmail.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 1866612EC15 for <quic@ietfa.amsl.com>; Thu, 11 Jan 2018 09:55:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, 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 (2048-bit key) header.d=gmail.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 JJu4pWmGinwJ for <quic@ietfa.amsl.com>; Thu, 11 Jan 2018 09:55:07 -0800 (PST)
Received: from mail-ot0-x22b.google.com (mail-ot0-x22b.google.com [IPv6:2607:f8b0:4003:c0f::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6CDDC12EC28 for <quic@ietf.org>; Thu, 11 Jan 2018 09:55:07 -0800 (PST)
Received: by mail-ot0-x22b.google.com with SMTP id 37so2802354otv.6 for <quic@ietf.org>; Thu, 11 Jan 2018 09:55:07 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=AzLzeEtFtQtaMkZD2bt12AzgMoiw/Gz5GsVLYo9wJs8=; b=h9OYArFl+mQgJiRMj51FvBfTVKle7gJv/zRfADvt9VToVXwMcnYtgzY7dCNEgVGs7l wI/A5DcLEbgok+EbfT9idAIGUHKoU3JyQ0BWBaRAZL0jiHbIJc8FpszeHj/XvgT8LVn/ h0dbGLETgcqS789xw1ZVwKrzDBQNd+j6+Md5AeeP1o3GE7wY4ZVmMACrlRR4hsQ26Yjt IF29EUEo64ZwVqdoDpHPSGdJdzvUGO8T7HUtI3fDc7TwE1yvsVpELWPAvA0GDgrxjkzW IlRjhYZ+8y8tyXgXgKL/2LILvKkEOM9eiFrcoZpsrAMmhnvhWJpVYaBFQO9ysNOZZgu+ NfcA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=AzLzeEtFtQtaMkZD2bt12AzgMoiw/Gz5GsVLYo9wJs8=; b=eMs0OdQE9/BrdFcShHjPJJInUHrYYy1i2Td2HgrpaqWwbK/nP2vorIkeqHQ1CftcyL +uljIa8pSiCb3D058wJsMPGV4BX3JJQkNDqVJw5eq9ZxWE6+89Fqb285WuGcy07apZ0u b+gncQkeVgEcrJLI81jNCtC7jY5coEwUGQLIPH2PvDZzZ7aOuxpupUmFCkMpuqKiq9E1 1EHB18HOdT0sy0L1cw6QWepVz98jgHO/eKHDZ/Kp8dOmv0aLoktjzD7Bve8pIG/tfZBw 17ery9jSI9hAC3jrIcPTUKHDw8pP1iPj0RSNRI0Yww+LFzddTl218VgUuLDVa7rLePLT QJdA==
X-Gm-Message-State: AKwxytf7fiHQlO3O84LwBU1IS/tTV22YfdyTS6h/KjV2ZLuF6YV3kmpJ ic6AF1wnhxl9E8NMDXSWRhXH1u0GhWw9Emd/Wbs=
X-Google-Smtp-Source: ACJfBosI1vhc7qnQ6LCv8G9k90F7kzt1bs15YroOdWcsZzCUjyf6MboBfEWsOaVnJiimXEI4Wtm0xwEBkDcINKbft6E=
X-Received: by 10.157.52.241 with SMTP id t46mr13892260otd.103.1515693306729; Thu, 11 Jan 2018 09:55:06 -0800 (PST)
MIME-Version: 1.0
Received: by 10.157.39.16 with HTTP; Thu, 11 Jan 2018 09:55:03 -0800 (PST)
In-Reply-To: <20180111055253.GC21534@ubuntu-dmitri>
References: <20180110194716.GA30573@ubuntu-dmitri> <CAGD1bZYiDOakLYNppMBr=99JreX3Xr2zkS7O2DRNfvr_o0NUbg@mail.gmail.com> <20180110200646.GB30573@ubuntu-dmitri> <CAGD1bZa-ZOw5J6oSWBYdk3uYHOpGvak+vwGp0XsZB44zbLvRrw@mail.gmail.com> <20180110202357.GC30573@ubuntu-dmitri> <CAGD1bZbPM3wnatLLN5938wGPo3e1qmxnGzobSTym6XX3W8FNJQ@mail.gmail.com> <CABkgnnU3CQkvd7m+G80sCOPJfzb_=HonbRDSQJC8wqD_uWoj0w@mail.gmail.com> <CAGD1bZbrtMEJE-OOXqG02yWmHy_2baEvaZu=rFCBTtcq94JrOg@mail.gmail.com> <CABkgnnWtmprf291pBgTOrfi6yU9tXSfKi5J5uQpm7Z4JHuiGWg@mail.gmail.com> <CY4PR08MB24231DA846126B51A83DC420DA110@CY4PR08MB2423.namprd08.prod.outlook.com> <20180111055253.GC21534@ubuntu-dmitri>
From: Martin Thomson <martin.thomson@gmail.com>
Date: Fri, 12 Jan 2018 04:55:03 +1100
Message-ID: <CABkgnnVQgr5=_uJTtmAhxKxG-3VMM2UtHQdCNEhPPW8kmS8_fQ@mail.gmail.com>
Subject: Re: Deadlocking in the transport
To: Mike Bishop <mbishop@evequefou.be>, Martin Thomson <martin.thomson@gmail.com>, Jana Iyengar <jri@google.com>, QUIC WG <quic@ietf.org>, Charles 'Buck' Krasic <ckrasic@google.com>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/Xipi-SPWYcR_jVnZAbn4pqgYOq0>
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: Thu, 11 Jan 2018 17:55:09 -0000

Mike's point is that we didn't address this particular problem in h2.
We left it up to implementations to manage.

It's possible that we had this problem of dependencies between
streams, but only at the highest layers (that is, above HTTP) where
the problem already has well-established patterns for managing it.
Those being firmly along the lines of "don't do that".

On Thu, Jan 11, 2018 at 4:52 PM, Dmitri Tikhonov
<dtikhonov@litespeedtech.com> wrote:
> On Wed, Jan 10, 2018 at 10:55:46PM +0000, Mike Bishop wrote:
>> No disagreement.  When choosing which stream *with pending data* to make
>> progress on, I think choosing the higher-priority stream is necessary
>> rather than advisory.  With H2, we're talking about client preferences
>> about server responses which might not be ready yet, so it's always
>> advisory to the server.  Here, we're talking about the application's
>> preferences about its own data that it has already handed off.
>> That's something that happened within the HTTP/2 implementation,
>          ^^^^^^^^^^^^^^^^^^^^^^^
>> so there was no agreement or contract needed.
>
> What is that something that happened? and to which HTTP/2 implementation?
>
>   - Dmitri.