Re: proposed WINDOW_UPDATE text for session flow control windows

Roberto Peon <grmocg@gmail.com> Thu, 28 February 2013 04:43 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 CEAB621F8AA6 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 27 Feb 2013 20:43:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.419
X-Spam-Level:
X-Spam-Status: No, score=-10.419 tagged_above=-999 required=5 tests=[AWL=0.179, 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 O+HuV8CsUube for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 27 Feb 2013 20:43:17 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id C654E21F8AE6 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 27 Feb 2013 20:43:16 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UAvKA-0003mE-1f for ietf-http-wg-dist@listhub.w3.org; Thu, 28 Feb 2013 04:42:30 +0000
Resent-Date: Thu, 28 Feb 2013 04:42:30 +0000
Resent-Message-Id: <E1UAvKA-0003mE-1f@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 1UAvK0-0003lU-6w for ietf-http-wg@listhub.w3.org; Thu, 28 Feb 2013 04:42:20 +0000
Received: from mail-bk0-f52.google.com ([209.85.214.52]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <grmocg@gmail.com>) id 1UAvJy-0007LJ-Td for ietf-http-wg@w3.org; Thu, 28 Feb 2013 04:42:20 +0000
Received: by mail-bk0-f52.google.com with SMTP id jk13so616989bkc.11 for <ietf-http-wg@w3.org>; Wed, 27 Feb 2013 20:41:52 -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=Yv0JzuUD+ExEIY/A6p6DL1nZEDb1tewcpLqmDXZBBww=; b=oFD6T3+yoM6S10398q1x9xNWyn+asBYuqj0pdtZIdjQl+sWk0igETcwsZv6O7pfiyj MTQ4hKGew5QAc7z+/pqlXVsg65as4Q0B+0rHjPjrJK4TBY+IFIpMdZ6njm2NiPuSP+pV GPdagnTBviXkaTEQyF1tusjL3wFjc35yhpGVVhXwqC5X03eYw2MPcAeK4wcypGj2E49s evxg/vKaP9H2OzXezSyFe4NxnNmbXyRkcfo8fhFMn8c52PPY8wCfh27bxVxPiccXip1z Jx9fxMnW2NtprqpTtABFzWpvehzOSP6I+HCf4n4Ji6+LFjb/bcnMMa+CjjHuJW7IElQP Z0Og==
MIME-Version: 1.0
X-Received: by 10.205.118.16 with SMTP id fo16mr1692317bkc.61.1362026512511; Wed, 27 Feb 2013 20:41:52 -0800 (PST)
Received: by 10.205.8.7 with HTTP; Wed, 27 Feb 2013 20:41:52 -0800 (PST)
In-Reply-To: <CABkgnnVm30edw=ZQbyq9zUbLqQfWMi_YS9Y4n5MjNQTeM5GESg@mail.gmail.com>
References: <CAA4WUYiH8tCF83=jsk_jsvhXkYvmJ+pPLFzhacAMq3O54z2YBw@mail.gmail.com> <CAOdDvNqCe3d7QerQaxiwdwJ+wC+4CGA4ZrLRYFY75nR2QFThog@mail.gmail.com> <CAA4WUYg2gn7Um1FZk3KBcP5aH=RpSCbYduFz3M+hZGQ_A4tsxQ@mail.gmail.com> <CAOdDvNqTNa=R1MzZe1mKZF34tW-=mhHnM_s_XPVzBBSEWHveVQ@mail.gmail.com> <CAA4WUYiW6xsT8g--1cL7HZTVYS_+5Y-WKpzfbx2JCLRqHXNgcQ@mail.gmail.com> <2595AFA8-9928-4511-B569-3DFC36B73C5C@mnot.net> <CAA4WUYg8ksyjKYmeX6YC3P1-iaRRSD_e5KDhpPw0d9i2CnvpSQ@mail.gmail.com> <CABkgnnU4=OYYZEkS7sfxWjXum+Mpx7RzUdJSzYa9a+UybESQYw@mail.gmail.com> <CAP+FsNcDxJeU=7+x8Jx5TO0hm_P2yCKPu7_tEZF0GEtjMbQ2Xg@mail.gmail.com> <CAA4WUYh1qU6HPbeZTsFTy7i5svxWS2dATgUNyaoGnzbMLkCELg@mail.gmail.com> <CABkgnnUH5_t4BesWz2K5gtR0k0+ve42k-EWEaObK_nteh9fOUw@mail.gmail.com> <CAP+FsNcZrQ072mQikMSnyFrKqN0yDYhh=-8G4848YxdO_M-_zw@mail.gmail.com> <CABkgnnU8Okqrq5POYZqDyFUoFzkQwjRAvQJQQ_jhCO9heaFYNA@mail.gmail.com> <CAP+FsNd5bCpcVg7Z9Q=D1goYZ2keGnxPmy2G79O+h5K6bSa=cA@mail.gmail.com> <CABkgnnWgNHHHuCSXNpDQSVbaBTp=ZYnPH+MX9-_CXvaj4VD83w@mail.gmail.com> <A89944B3-8BB6-4B09-AF80-4F2C683A14EF@mnot.net> <CABkgnnVm30edw=ZQbyq9zUbLqQfWMi_YS9Y4n5MjNQTeM5GESg@mail.gmail.com>
Date: Wed, 27 Feb 2013 20:41:52 -0800
Message-ID: <CAP+FsNc5WKbRRDXQ4-GLXXNaxp1njuKFvVHAO8ffa6VDhvBqRQ@mail.gmail.com>
From: Roberto Peon <grmocg@gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Cc: Mark Nottingham <mnot@mnot.net>, "William Chan (陈智昌)" <willchan@chromium.org>, Patrick McManus <mcmanus@ducksong.com>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="001517401e207437d204d6c182ea"
Received-SPF: pass client-ip=209.85.214.52; envelope-from=grmocg@gmail.com; helo=mail-bk0-f52.google.com
X-W3C-Hub-Spam-Status: No, score=-4.4
X-W3C-Hub-Spam-Report: AWL=-1.694, 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 1UAvJy-0007LJ-Td 17ba9e9794d78ade091b402c9b931303
X-Original-To: ietf-http-wg@w3.org
Subject: Re: proposed WINDOW_UPDATE text for session flow control windows
Archived-At: <http://www.w3.org/mid/CAP+FsNc5WKbRRDXQ4-GLXXNaxp1njuKFvVHAO8ffa6VDhvBqRQ@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/16923
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>

Seems reasonable to me at least.
-=R


On Wed, Feb 27, 2013 at 5:28 PM, Martin Thomson <martin.thomson@gmail.com>wrote:

> Just started out on this, taking Roberto's suggestion of having a
> setting and a WINDOW_UPDATE flag.  A few minor points came up.
>
> Disabling flow control for the session potentially has two different
> mechanisms: settings and window update.  Is this OK, or would people
> prefer to only have the WINDOW_UPDATE?  I think that for simple
> implementations, the settings will be a more attractive prospect.
>
> I've said that using SETTINGS to disable flow control has an effect on
> both new *and existing* streams.  Again, this makes an attractive
> option for implementations that don't want flow control.
>
> Re-enabling flow control is an error.  Basically, we have no mechanism
> to unambiguously identify when flow control starts.  I don't believe
> that it is worthwhile to provide such a mechanism.
>
> See
> https://github.com/http2/http2-spec/commit/d8013a3e1659696debc8773e9467b8ad829c49ee
>
> On 25 February 2013 17:00, Mark Nottingham <mnot@mnot.net> wrote:
> > Opening as:
> >   https://github.com/http2/http2-spec/issues/44
> > ... and marking as ready for the editors to have a kick at it.
> >
> > Regards,
> >
> >
> > On 21/02/2013, at 10:00 AM, Martin Thomson <martin.thomson@gmail.com>
> wrote:
> >
> >> On 20 February 2013 14:52, Roberto Peon <grmocg@gmail.com> wrote:
> >>> I'm afraid of simply sending a large window size, because I suspect
> that
> >>> simple implementations will mess it up for objects > 31 bits in size.
> >>
> >> Yes. Absolutely.
> >>
> >>> If we don't have a SETTINGS thing, then we're requiring flow control
> for the
> >>> first RT for any stream.
> >>
> >> Yes, that's the implication.  Though a client is always able to
> >> disable flow control without consequence, because it speaks first,
> >> before the server sends anything.  It's only servers that need to
> >> worry about having it on briefly.  The consequences are minimal - they
> >> just don't receive as many packets as they possibly could - but then
> >> that is always true for two reasons: TCP INIT CWD and the time it
> >> takes to send the WINDOW_UPDATE.
> >>
> >>> I like the flag solely because it is difficult to do by accident,
> unlike
> >>> using zero (which is technically fine otherwise)
> >>
> >> I don't believe in accidents, but I see your point.
> >>
> >>> The other thing to consider is when, if ever, one can transition from
> >>> flow-control disabled to requiring its use again.
> >>> Even if we don't allow this, it will require text explaining it.
> >>
> >> I thought about this.  The obvious choice is to start again from zero
> >> when a WINDOW_UPDATE comes in.  The problem is knowing (at the
> >> receiver end) when counting started.  Once you stop counting, that's
> >> the real difficulty.  I believe that once it's off, flow control will
> >> need to stay off.
> >
> > --
> > Mark Nottingham   http://www.mnot.net/
> >
> >
> >
>