Re: GOAWAY(AND_DONT_COME_BACK)

James M Snell <jasnell@gmail.com> Wed, 19 June 2013 17:53 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 7D4AA21F9D88 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 19 Jun 2013 10:53:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.549
X-Spam-Level:
X-Spam-Status: No, score=-10.549 tagged_above=-999 required=5 tests=[AWL=0.050, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id X5Sg8oeR22Uh for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 19 Jun 2013 10:53:13 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 0AF0D21F9C69 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 19 Jun 2013 10:53:13 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UpMYi-0005yR-59 for ietf-http-wg-dist@listhub.w3.org; Wed, 19 Jun 2013 17:52:40 +0000
Resent-Date: Wed, 19 Jun 2013 17:52:40 +0000
Resent-Message-Id: <E1UpMYi-0005yR-59@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <jasnell@gmail.com>) id 1UpMYU-0005xL-T5 for ietf-http-wg@listhub.w3.org; Wed, 19 Jun 2013 17:52:26 +0000
Received: from mail-vb0-f48.google.com ([209.85.212.48]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <jasnell@gmail.com>) id 1UpMYU-0007Dq-62 for ietf-http-wg@w3.org; Wed, 19 Jun 2013 17:52:26 +0000
Received: by mail-vb0-f48.google.com with SMTP id w15so3907618vbf.21 for <ietf-http-wg@w3.org>; Wed, 19 Jun 2013 10:52:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=MO5itPEeiV612mskufcEdVzu4DVBjPVfLckb0WSEvC0=; b=WrDUHim9TMB2vruyIQZafjM4h2TKjMx832mQdZQwaoIEAJuKjHpFTnHm3w7LFkwrt6 4Mw68j4640IWN96jV6/1DC4B6eFsDPtat7vpnxFAGUeDohPr7Tx7S75Og8hlLhssiZtc vFfy77W96GdfxUbAVEYVz38fJ6S7nH1siElylqsTvS/NwNOnHp/x7LVlDe7rfEzilQMn fznP8wpa5PsTwHYiD3/+YBPQWPzEZmh6OGG40fmhbgfmnFVsuQIb1gWZsrSdBbtksRrp mOh1B/38nQX4yBC7aRgjTDNSXco+c4KUQtjDmjYXDXV3KQL5MBsrHylniCHFtdo7TVLx U8Bg==
X-Received: by 10.52.180.136 with SMTP id do8mr1053841vdc.111.1371664320506; Wed, 19 Jun 2013 10:52:00 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.58.47.8 with HTTP; Wed, 19 Jun 2013 10:51:40 -0700 (PDT)
In-Reply-To: <61629.1371663523@critter.freebsd.dk>
References: <CAGzyod7b6qmfPipcF101er9cuxsjEHzi9j86aoPQB=Y3mjft_Q@mail.gmail.com> <51C16C71.109@cisco.com> <CAP+FsNe6Wgso8V-L2xmaptXC01P8OftsH7O3oRjSap=QE7KuxQ@mail.gmail.com> <61629.1371663523@critter.freebsd.dk>
From: James M Snell <jasnell@gmail.com>
Date: Wed, 19 Jun 2013 10:51:40 -0700
Message-ID: <CABP7RbdVCfYhZZmJ+1i6ouRh_tvBJvGMhZYUw1CfojBk9RuDJA@mail.gmail.com>
To: Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc: Roberto Peon <grmocg@gmail.com>, Eliot Lear <lear@cisco.com>, HTTP Working Group <ietf-http-wg@w3.org>, Roberto Peon <fenix@google.com>
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=209.85.212.48; envelope-from=jasnell@gmail.com; helo=mail-vb0-f48.google.com
X-W3C-Hub-Spam-Status: No, score=-3.5
X-W3C-Hub-Spam-Report: AWL=-2.695, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1UpMYU-0007Dq-62 f5365e893124572a1bb5204c84dd0855
X-Original-To: ietf-http-wg@w3.org
Subject: Re: GOAWAY(AND_DONT_COME_BACK)
Archived-At: <http://www.w3.org/mid/CABP7RbdVCfYhZZmJ+1i6ouRh_tvBJvGMhZYUw1CfojBk9RuDJA@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/18288
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>

My objection to this is far stronger as this kind of error code would
likely be complete unenforceable for non-browser implementations. For
instance, if I create a client library stack that is used by multiple
applications, and one application uses the stack in an appropriate way
against example.com, but another abuses the protocol triggering a
"don't come back", how does that affect the first applications ability
to use my library to communicate with example.com? Whose
responsibility is it to persist it and remember? What are the bounds
of that persistence? Is the "don't come back" only a point in time
statement? If so, how long should the client wait? What are the
conditions that would allow the client to come back? What if the
network path changes? As it stands now, the utility of a "don't come
back" is only marginally theoretically useful, let alone something
that ought to be actively implemented. The proposal is on the table, I
am fine with leaving it there for now, but let's leave it on the table
and go focus on the more concrete problems :-)

On Wed, Jun 19, 2013 at 10:38 AM, Poul-Henning Kamp <phk@phk.freebsd.dk> wrote:
> In message <CAP+FsNe6Wgso8V-L2xmaptXC01P8OftsH7O3oRjSap=QE7KuxQ@mail.gmail.com>
> , Roberto Peon writes:
>
>>The damage of telling everyone to not use http/2 is that they use http/1.
>>So, bothersome but not fatal.
>>The complexity of getting this right is lower than that of getting other
>>features right.
>
> I should point out that the NTPv4 protocol added a similar facility
> in a bid to prevent deluging primary NTP servers with packets from
> million-unit-series cheap boxes from taiwanese factories.
>
> The success has been somewhat limited in my opinion, but as the new
> NTPD reference code makes its way to various embedded linux variants
> more and more boxes will in fact shut up, when told to.
>
> However it is not obvious to me that HTTP/2.0 is even remotely
> similar to NTP in this (or any other) context.
>
> The reason NTP needs this is that there is no person waiting for
> the reply packet, it's just feeding into a invisible system service,
> which nobody pays attention to anyway (WTF cares if the clock on
> a $50 access-point is correct in the first place ?)
>
> With HTTP/2.0 on the other hand, there is a very strong assumption
> that somebody will notice if replies does not arrive intact.
>
> So while GOAWAY(AND_DONT_COME_BACK) may (or may not) have its uses,
> I suspect that it would catch only a small fraction of protocol
> incompatibilties.
>
> The main case we should worry about, is the user looking a the
> browser window and thinking "this looks screwy" and by reflex
> pressing "reload", repeatedly.
>
> At what point does the user-agent start to suspect HTTP/2.0 and
> falls back to HTTP/1.1, how do we get the incident reported on the
> server side with sufficient details to be reproduced, and when will
> the user-agent try HTTP/2.0 again ?
>
>
> --
> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk@FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by incompetence.
>