Re: [quicwg/base-drafts] Remap STOPPING to something other than zero (#1804)

Nick Banks <notifications@github.com> Wed, 26 September 2018 17:18 UTC

Return-Path: <bounces+848413-a050-quic-issues=ietf.org@sgmail.github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4C5DB130F06 for <quic-issues@ietfa.amsl.com>; Wed, 26 Sep 2018 10:18:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.456
X-Spam-Level:
X-Spam-Status: No, score=-3.456 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.456, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.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 t6sb-AOixoPj for <quic-issues@ietfa.amsl.com>; Wed, 26 Sep 2018 10:18:00 -0700 (PDT)
Received: from o7.sgmail.github.com (o7.sgmail.github.com [167.89.101.198]) (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 2C5AC130E41 for <quic-issues@ietf.org>; Wed, 26 Sep 2018 10:18:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com; h=from:reply-to:to:cc:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe; s=s20150108; bh=wzAu+3mzraesC2UwjhkuP0X/IUA=; b=nO6Gh8aQDP6gnKCu 3AsOnQy0e/54HzkwCbJJQOQcZPsT8drtxTFtHLG2ycvZ2RWGk0nmXD9Y8Qwu4Ier TLBY+khI4sWBKrc+xrGhA3icKy4vYSOH2tGbX0uJBsw8B44iS+WhyFtTx/YvrGrK slFy4ozBeLc9Z8YzXLm4HBlPtxQ=
Received: by filter1030p1las1.sendgrid.net with SMTP id filter1030p1las1-11832-5BABBF3E-72 2018-09-26 17:17:51.006149461 +0000 UTC m=+1712292.098736406
Received: from github-lowworker-dcc078e.cp1-iad.github.net (unknown [192.30.252.44]) by ismtpd0004p1iad1.sendgrid.net (SG) with ESMTP id aABbJsxDQM2fjTfRYM95EA for <quic-issues@ietf.org>; Wed, 26 Sep 2018 17:17:50.863 +0000 (UTC)
Received: from github.com (localhost [127.0.0.1]) by github-lowworker-dcc078e.cp1-iad.github.net (Postfix) with ESMTP id D0D2C2C06B6 for <quic-issues@ietf.org>; Wed, 26 Sep 2018 10:17:50 -0700 (PDT)
Date: Wed, 26 Sep 2018 17:17:51 +0000
From: Nick Banks <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4aba0f00a9fd9d141d63ac2e14b52b500bba03287b192cf0000000117c3813e92a169ce15b0cecf@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1804/424799049@github.com>
In-Reply-To: <quicwg/base-drafts/issues/1804@github.com>
References: <quicwg/base-drafts/issues/1804@github.com>
Subject: Re: [quicwg/base-drafts] Remap STOPPING to something other than zero (#1804)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5babbf3ec99b6_2fd83fea732d45b860546"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: nibanks
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
X-SG-EID: l64QuQ2uJCcEyUykJbxN122A6QRmEpucztpreh3Pak3yhx6vmnXahWD5ZYiajKL74lcEhmcHp1dTo5 LVv8WSzR9MLwsGwysWrLUhIXfjQdndlbnYO1qh3lTOcgh+kNDsbW9V3i9LZkCURvOYK/IiayXetdzI DMb//zsmoD3IQITkK9jVS0PgltgdRjSX4qtlW8VKMM3TbnCignvzguWjd+zzA+ZtNXsjG6dY4y2eFt Q=
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/Y2J1ujX4KmZx4POv8l-trTdVOZY>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Sep 2018 17:18:02 -0000

> I oppose to using 0xffxx, because the range is define as for private use in the transport error codes

Where is that indiciated. Is that HQ specific? Here is the blurb from the transport spec about application error codes:

```
   There is no restriction on the use of the 16-bit error code space for
   application protocols.  However, QUIC reserves the error code with a
   value of 0 to mean STOPPING.  The application error code of STOPPING
   (0) is used by the transport to cancel a stream in response to
   receipt of a STOP_SENDING frame.
```
In generally, I feel that taking one single value from an otherwise completely free number space for just one particular scenario feels bad to me. There are plenty of other ways to achieve the same thing as STOPPING.

- You could have a different frame type (STOP_COMPLETE).
- You could just accept any RST_STREAM in response to a STOP_SENDING as confirmation.
- You could have a special bit/flag in the RST_STREAM to indicate there is no application error code.

IMO, reserving one value is the worst way to achieve this. Someone will always not be happy whatever value we chose, and the application layer will not understand why it can't use one value. How do you enforce that at an API layer? Wait until they happen to try to send that (in some particular, edge case scenario?) and then error out? What is the chance they don't see that until they deploy?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/1804#issuecomment-424799049