Re: Design Issue: Merge RST_STREAM and GOAWAY into a single ERROR frame type

William Chan (陈智昌) <willchan@chromium.org> Fri, 03 May 2013 21:03 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 38A5621F870F for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 3 May 2013 14:03:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.636
X-Spam-Level:
X-Spam-Status: No, score=-8.636 tagged_above=-999 required=5 tests=[AWL=1.040, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, MIME_8BIT_HEADER=0.3, 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 zKyrZelrTfLk for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 3 May 2013 14:02:59 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 9958421F8BE4 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 3 May 2013 14:02:59 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UYN7i-0005rU-RV for ietf-http-wg-dist@listhub.w3.org; Fri, 03 May 2013 21:02:34 +0000
Resent-Date: Fri, 03 May 2013 21:02:34 +0000
Resent-Message-Id: <E1UYN7i-0005rU-RV@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <willchan@google.com>) id 1UYN7Y-0005qU-Hc for ietf-http-wg@listhub.w3.org; Fri, 03 May 2013 21:02:24 +0000
Received: from mail-qe0-f42.google.com ([209.85.128.42]) by maggie.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <willchan@google.com>) id 1UYN7X-0002Pc-Hm for ietf-http-wg@w3.org; Fri, 03 May 2013 21:02:24 +0000
Received: by mail-qe0-f42.google.com with SMTP id 1so1157667qee.1 for <ietf-http-wg@w3.org>; Fri, 03 May 2013 14:01:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=qT2O5lSY7ctaOKBgALuqTI7qoEOkeSNy1W8IJIt5hGo=; b=WyFL15fQMWBw47j89wJqqi8VS8MNsnf6IXkbgz4CYA6fc1ZZWcsgDiStGuX55P++1y eJUmlGN/P95nn8ruGgKuSIb+3bgp+w2Gg523dgd3SEyPQXjCclWq3s0BJU4tb+1018Yw 53DuUWAZ5zvm+u2lSWRFQy8YUNlM+R4ucffH8PC/U0BELkqb/fxpTrfUJkcJxzcztIxD yony/rJEmmATjHS2LG7D7dUviM2s0TfmfFRbmk/yV3O5GuY+8ouPBrWh3BROKj5XaMaB FsaisYZHpVXphrYGd9Nqf1OkmJoAldBgynmn//LBFWrwzX89Ndy6/6Tu4i28aMjCSVUF gdgA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:x-received:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=qT2O5lSY7ctaOKBgALuqTI7qoEOkeSNy1W8IJIt5hGo=; b=eeFVA6Kw4VpAE/f80yZOxgeQlmd2VLbczIHGhMqDRfBfP0GRVbLAtAgd5jVM1VeUYk h6f116+KFLVpzFdzsXVw56tuHlHaAW6qe8W54bdwPaAvYu+tFnliWVBlbTIXugZoi6h1 t9IsdAM66wsBVZ+JFpRhihSxVEI+qA18mV75c=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :x-gm-message-state; bh=qT2O5lSY7ctaOKBgALuqTI7qoEOkeSNy1W8IJIt5hGo=; b=a1IKyR9uW2DoooABQ7GR5PfVe0ZAZNYg/64tzrGpA2GhxIoQm+U6euvzizVtNKLFUa KqPaGLtvKgfL8VVuHa0hiFA1wOL7snBnGUfOM66ljPRqdwCKGBRrElrlAwLP3DViVwoE KrxUu0+NGmPREuy3BEeD7hqXgeFYilMBOkPeoXjQSS0zwFIspewmNc27I1jX2ddGnZK6 jZDm/z2M7Me7hSV0jTNyxJ8e05vmJzybOCdbM3FfMwqHZ8QMN7v/R4SbiHlKzU9VnQbw Mc1+J14h6k0GT+n6yS8h7N5G3rQUcLciu8WpJ73oyj1uW+KV/OuzMjztWzl04OfdAmJ2 FxxA==
MIME-Version: 1.0
X-Received: by 10.49.82.45 with SMTP id f13mr16176422qey.53.1367614917779; Fri, 03 May 2013 14:01:57 -0700 (PDT)
Sender: willchan@google.com
Received: by 10.229.180.4 with HTTP; Fri, 3 May 2013 14:01:57 -0700 (PDT)
In-Reply-To: <CABP7RbfJEwkMVum0HXei_mqvJ=pHd2G=jx_wz=sZzboi4ZMwzQ@mail.gmail.com>
References: <CABP7RbeJm-AKxU3qGxt2tCGrb0xCQL8njNyEToA7Ln9gS8hnTQ@mail.gmail.com> <CA+pLO_gWErCMv+j3pcmy+cTkt-hh2v6a7neeyDtg7HRN3x=Sgw@mail.gmail.com> <CABP7RbfJEwkMVum0HXei_mqvJ=pHd2G=jx_wz=sZzboi4ZMwzQ@mail.gmail.com>
Date: Fri, 3 May 2013 18:01:57 -0300
X-Google-Sender-Auth: FFNrmlsIjRhByxL2-KkxolEQ7gg
Message-ID: <CAA4WUYhfup_PM8s7P0PO_EcB8R-O6L32wX-zk73thwBHYHHtgA@mail.gmail.com>
From: =?UTF-8?B?V2lsbGlhbSBDaGFuICjpmYjmmbrmmIwp?= <willchan@chromium.org>
To: James M Snell <jasnell@gmail.com>
Cc: Jeff Pinner <jpinner@twitter.com>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary=047d7b5dbf325d73e604dbd6a91e
X-Gm-Message-State: ALoCoQl5vkakq18HlZlhp/V3dtSZCr52iGiDRJLAA2LTXAAFQ3TvzjRBTsCK4Zst1RIHqenAbn5jPVUbvXaGJEx4NujH6NsvHlvCzYYwecbfcYQzKSu8IgP0rYe4+qvwFLP9/fA8GSxITi78HSoEmZW7jWVRtHw0gDsbv5FYP3Vv1Wq4BTHUudg12Yhv9qoyI2ks6vv7SQF5
Received-SPF: pass client-ip=209.85.128.42; envelope-from=willchan@google.com; helo=mail-qe0-f42.google.com
X-W3C-Hub-Spam-Status: No, score=-4.8
X-W3C-Hub-Spam-Report: AWL=-1.399, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-2.581, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1UYN7X-0002Pc-Hm 099e0868bf9381786cfe25e4c963ece4
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Design Issue: Merge RST_STREAM and GOAWAY into a single ERROR frame type
Archived-At: <http://www.w3.org/mid/CAA4WUYhfup_PM8s7P0PO_EcB8R-O6L32wX-zk73thwBHYHHtgA@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17813
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>

This is a thread ripe for bikeshedding. Is there any major issue worth
solving?

If we're going to paint our bike sheds, my take is keep whatever color the
bike shed already has unless it really offends a number of people.


On Fri, May 3, 2013 at 5:53 PM, James M Snell <jasnell@gmail.com>; wrote:

> Speaking candidly, if we find ourselves requiring more than 8 boolean
> flags on an error frame we should all just quit and go home.
>
> On Fri, May 3, 2013 at 1:34 PM, Jeff Pinner <jpinner@twitter.com>; wrote:
> > IIRC, when this was brought up at the last F2F the rational for NOT doing
> > this was that frame types were cheaper than flags (256 frame types, 8
> > flags).
> >
> > That being said I think we should consider combining them :)
> >
> >
> > On Fri, May 3, 2013 at 1:04 PM, James M Snell <jasnell@gmail.com>; wrote:
> >>
> >> As a simplification, I'd like to suggest that we merge the RST_STREAM
> >> and GOAWAY frames into a single ERROR frame with the following
> >> definition:
> >>
> >>  0                   1                   2                   3
> >>  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
> >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> >> |                      Error Code (32)                          |
> >> +---------------------------------------------------------------+
> >> |X|                  Last-Stream-ID (31)                        |
> >> +-+-------------------------------------------------------------+
> >>
> >> (note that this flips the field order from the GOAWAY frame)
> >>
> >> A frame-specific GOAWAY flag bit (0x2) would be defined for the frame,
> >> and the Last-Stream-ID field would only be included in the frame data
> >> if this flag was set.
> >>
> >> This does a couple of things for us:
> >>
> >> 1. It simplifies the error handling and reduces the number of core frame
> >> types.
> >> 2. It allows us to terminate a stream and terminate the session in a
> >> single frame if necessary
> >> 3. It gives us a way of reporting non-terminal session errors
> >> (currently RST_STREAM is forbidden to use stream id #0 and GOAWAY is
> >> always terminal).
> >>
> >
>
>