Re: #38 - HTTP2 min value for server supported max_concurrent_streams

Roberto Peon <grmocg@gmail.com> Fri, 22 February 2013 13:19 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 74A1B21F8EEF for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 22 Feb 2013 05:19:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.548
X-Spam-Level:
X-Spam-Status: No, score=-10.548 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id uglsA1wK4hFA for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 22 Feb 2013 05:19:35 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id B18C821F8DFD for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 22 Feb 2013 05:19:35 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1U8sWl-0007Gz-Ld for ietf-http-wg-dist@listhub.w3.org; Fri, 22 Feb 2013 13:19:03 +0000
Resent-Date: Fri, 22 Feb 2013 13:19:03 +0000
Resent-Message-Id: <E1U8sWl-0007Gz-Ld@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <grmocg@gmail.com>) id 1U8sWX-0007G7-Oy for ietf-http-wg@listhub.w3.org; Fri, 22 Feb 2013 13:18:49 +0000
Received: from mail-ob0-f174.google.com ([209.85.214.174]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <grmocg@gmail.com>) id 1U8sWP-0000nm-Cy for ietf-http-wg@w3.org; Fri, 22 Feb 2013 13:18:49 +0000
Received: by mail-ob0-f174.google.com with SMTP id 16so564843obc.5 for <ietf-http-wg@w3.org>; Fri, 22 Feb 2013 05:18:15 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=lqbMKXyF/BainwXAnGbEVdx7rBuBF5kSh7pIGdt8EaA=; b=BS3CnrHrXUoAXLa5BCU1Crp2QquM4yToUtjr14Ddp2u1T4gKDNwG658+UbMK2Zs35l 1zddAMFmilRHzyXDu2VNHZPOI7gvUAgCIv+t/XqSiO1i8u5UVVvG1/dGTRiJ0/glYjui AFBmRAIWNAyAF7ohTyY1orWDvJYlIUrrm2Z40tFftnxAJ1zy630ec3iY7LAKvVsFkKKb 7a8j/w8uExNikXHkaIt8ltHGPKj6Yy4oQ5DV4eFIN7nvwaZzQEzkNxylOYOOuWziplbn jbzs8Vd7n14NeamKLtb91tQy5r2eL7THQgshyftgMUVibWFIqDUbb1nrxScrtGy8Lo0U X2Gw==
MIME-Version: 1.0
X-Received: by 10.60.27.199 with SMTP id v7mr759134oeg.23.1361539095375; Fri, 22 Feb 2013 05:18:15 -0800 (PST)
Received: by 10.76.167.193 with HTTP; Fri, 22 Feb 2013 05:18:15 -0800 (PST)
In-Reply-To: <7D5CB237-97F8-4C6C-93F4-79E2C42D0EFF@checkpoint.com>
References: <B33F11E188FEAB49A7FAF38BAB08A2C001D31EBA@TK5EX14MBXW601.wingroup.windeploy.ntdev.microsoft.com> <7D5CB237-97F8-4C6C-93F4-79E2C42D0EFF@checkpoint.com>
Date: Fri, 22 Feb 2013 05:18:15 -0800
Message-ID: <CAP+FsNcpbpXP8yAtTa4PgUhSrBjERDULyrHeOdjh-c70Ccu3Gg@mail.gmail.com>
From: Roberto Peon <grmocg@gmail.com>
To: Yoav Nir <ynir@checkpoint.com>
Cc: Osama Mazahir <OSAMAM@microsoft.com>, "ietf-http-wg@w3.org Group" <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="e89a8fb2007820affd04d650065b"
Received-SPF: pass client-ip=209.85.214.174; envelope-from=grmocg@gmail.com; helo=mail-ob0-f174.google.com
X-W3C-Hub-Spam-Status: No, score=-4.4
X-W3C-Hub-Spam-Report: AWL=-1.707, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1U8sWP-0000nm-Cy e20888fa23c478076e52f3136d190b31
X-Original-To: ietf-http-wg@w3.org
Subject: Re: #38 - HTTP2 min value for server supported max_concurrent_streams
Archived-At: <http://www.w3.org/mid/CAP+FsNcpbpXP8yAtTa4PgUhSrBjERDULyrHeOdjh-c70Ccu3Gg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/16755
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Why 1?
On mobile devices you often end up reconnecting, and waiting yet and extra
RT to continue your session (likely using multiple streams) would add
latency. :/

With HTTP/2 (as inherited from SPDY), the server has a mechanism to tell
the client that it didn't process a stream at all, so the race is already
handled.
If a client sends 8 concurrent streams, and the server only wants to handle
6 (say, because it is particularly resource limited right now), then it
will reset two of the streams with an error code that essentially says
try-again-later, and it can do so after sending the SETTINGS frame.

-=R


On Fri, Feb 22, 2013 at 1:47 AM, Yoav Nir <ynir@checkpoint.com> wrote:

> Hi Osama
>
> Wouldn't 1 be a better initial value?  This would allow minimal
> implementations with no concurrency at all. It's usually the case for
> browser that the first round-trip contains exactly one request (for the
> HTML file), and only when the response is received do more requests come
> out. So this wouldn't slow us down much.
>
> Yoav
>
> On Feb 22, 2013, at 7:00 AM, Osama Mazahir <OSAMAM@microsoft.com> wrote:
>
> > Hi,
> >
> > Issue #38 [1] tracks:
> >       (1) What is the minimum number of concurrent client-initiated
> streams that a server must be able to support?
> >       (2) What is the default value?
> >
> > We have a race condition where the client can initiate more streams to
> the server before the server can advertise its stream accept limit to the
> client.  I suggest making the default the same as the minimum so that we
> can prevent that race.  And tighten the wording on what is legal.  For
> example, something like:
> >
> > A server MUST be able to handle at least 8 concurrent streams initiated
> by the client. A server MUST NOT advertise a value less than 8. A client
> MUST generate a session error if it receives a value less than 8 from the
> server. The default value server limit is 8.
> >
> > Thanks,
> > --Osama.
> >
> > [1] https://github.com/http2/http2-spec/issues/38
>
>
>