Re: Unidirectional streams PR

Kazuho Oku <kazuhooku@gmail.com> Fri, 07 July 2017 02:21 UTC

Return-Path: <kazuhooku@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 BA80E1316B7 for <quic@ietfa.amsl.com>; Thu, 6 Jul 2017 19:21:14 -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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-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 S5VMynPwk20J for <quic@ietfa.amsl.com>; Thu, 6 Jul 2017 19:21:13 -0700 (PDT)
Received: from mail-pg0-x22a.google.com (mail-pg0-x22a.google.com [IPv6:2607:f8b0:400e:c05::22a]) (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 75026131684 for <quic@ietf.org>; Thu, 6 Jul 2017 19:21:13 -0700 (PDT)
Received: by mail-pg0-x22a.google.com with SMTP id t186so9762277pgb.1 for <quic@ietf.org>; Thu, 06 Jul 2017 19:21:13 -0700 (PDT)
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 :cc; bh=5OzlgaxG21ScD3tYYOA+lY+RkvRdPUtULwul7m/RMEY=; b=VoLVESNm3zLvVoB/hco699VGLx+h6kVBCjlsTY64lmNsoKM/+pk7ZQt9oZWykrf27G JeYmdsVpd1uL3zRH/VwmO1+QqHx9o8j8e3yfqNz2DkSl6tlePz/B/Lm4EpHyog8CQJGM nMC6W87xY9Trcy2ueXub0fsNfnHWZPJPI4az0v9tae0nKvIdmynhQu8VRQ1//cUQLmer lLnRB2GYX6mK7BzjDKMAuim79oxk8NvUgT8CmqP7BDHnehezhVXpDGOTvbdmUXthkOTd B10RSOuBltsrxkZMTogtzis2/ZLdcdf9Osw4HCoNk4M9V0yI73fp/JYW2Nx6IpRO4sOk qJrg==
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:cc; bh=5OzlgaxG21ScD3tYYOA+lY+RkvRdPUtULwul7m/RMEY=; b=nj1qgzqK409+OLafIQhzZdiWhCevmrtQw0aLDyABMVI1Wow3AojMhHKAKGTv3v30P5 o7AAz5scYm5W5Cd8TGIXoyoilfG3Lp/RoE234apsOsV0iR4Jo12hnBlnqUWg0H5yHACa MxcBsWHqsUomhGbjl5abkN0m2FmrTr/FqoYxrty+b2MHLs7o0knmxzAuFqIofu6PMVfx GSqZfcqlNrZlsuOQwk01cq9RKNr+pAmkFJzK9h5yFmZ71hWqcnJlH41S6JCA2uxyPvEv oWsOSiQ9fV9TTmGnjUmhbTFmoE9KHmBMFcuSNiyb3f2RyuQFRWWM8hDtsIuAJ5F1uH92 hwMA==
X-Gm-Message-State: AIVw113DkufFCkL8zqxAKbQbHqBBhB5ieGH77ykj3FDEcgSkQ+tz8rPk iGJfl74mYw0d3zDJN/2ryLgdVHPUdw==
X-Received: by 10.84.231.197 with SMTP id g5mr289692pln.71.1499394073075; Thu, 06 Jul 2017 19:21:13 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.100.130.3 with HTTP; Thu, 6 Jul 2017 19:21:11 -0700 (PDT)
In-Reply-To: <CABkgnnUUd4B4HLzAb1OVVtG3KdNuyH3Cz+4GuyX-AqH5c26L6w@mail.gmail.com>
References: <CABkgnnW+veDVq27v+wTz0cA=eGPRTLQ1A90A0ynHLPU88Pg77Q@mail.gmail.com> <CANatvzzN6sQ2Pqb4jkQyZAY-KUYDb_J2sbW=K0zrQ0LCTJ2NVw@mail.gmail.com> <CABkgnnV9JzZG6HY_y_pxSRSUwX3ocxv7L0UCaiuaJs1sMfPWcg@mail.gmail.com> <CANatvzw6VGMH8tJbhCxmgTR8_uuxtodiwS2-LT6XkyuBHJz+Fg@mail.gmail.com> <CABkgnnUUd4B4HLzAb1OVVtG3KdNuyH3Cz+4GuyX-AqH5c26L6w@mail.gmail.com>
From: Kazuho Oku <kazuhooku@gmail.com>
Date: Fri, 07 Jul 2017 11:21:11 +0900
Message-ID: <CANatvzzxWze+tDf6TUHRpw7z4Mi9cCZX5OUWydMi+fXRx=Zcmw@mail.gmail.com>
Subject: Re: Unidirectional streams PR
To: Martin Thomson <martin.thomson@gmail.com>
Cc: QUIC WG <quic@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/9f6yLvY8ueTiihO1vTIjvhw04iU>
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: Fri, 07 Jul 2017 02:21:15 -0000

2017-07-07 11:04 GMT+09:00 Martin Thomson <martin.thomson@gmail.com>:
> On 7 July 2017 at 11:43, Kazuho Oku <kazuhooku@gmail.com> wrote:
>> So it would be sensible to stop initiating new requests on an existing
>> connection when the number of unused stream IDs of the peer becomes as
>> low as max-concurrent-streams multiplied by some safety factor
>> (something like 10 would be enough, considering the probability of
>> loss or reordering of packets carrying DATA frames and consecutive
>> MAX_STREAM_ID frames).
>
> Yeah, you have to allow for the possibility of the server wanting to
> push some number of times in response to each of your requests.  I was
> originally going to say that you hit the wall only once you
> MAX_STREAM_ID hits the limit, but the server can always promise in
> excess of this limit.  If you want those promises to be resolved, then
> allowing more space is reasonable.  10 sounds reasonable, but we can't
> know the distribution of pushes to requests (today it is close to 0 in
> the aggregate, but this could change).

That's a good point.

Considering the complexity of guessing when the server runs out of
stream IDs, it might be easier if we could use a server-sent
CANCEL_REQUEST frame as an indication that the client needs to resend
the request on a new connection.

-- 
Kazuho Oku