[quicwg/base-drafts] STOP_SENDING on implicitly opened streams is error-prone (#2345)

Benjamin Saunders <notifications@github.com> Fri, 18 January 2019 04:44 UTC

Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost []) by ietfa.amsl.com (Postfix) with ESMTP id B1E8C131111 for <quic-issues@ietfa.amsl.com>; Thu, 17 Jan 2019 20:44:44 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -11.149
X-Spam-Status: No, score=-11.149 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-4.553, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_IMAGE_ONLY_28=1.404, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, 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 ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id tFZ1-np7TUAX for <quic-issues@ietfa.amsl.com>; Thu, 17 Jan 2019 20:44:43 -0800 (PST)
Received: from out-1.smtp.github.com (out-1.smtp.github.com []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C4DD213110D for <quic-issues@ietf.org>; Thu, 17 Jan 2019 20:44:42 -0800 (PST)
Date: Thu, 17 Jan 2019 20:44:40 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1547786680; bh=60WjKAlJb+UWMr6iSoVJLx++FnAElE/liv4uaUgwkc0=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=TWbIxmEd0lNZlWDLAoTGOBDeRqvcq44Vy1byoNEInjirlprbsLAWusSlPORrAJtT9 e3j7k0upL4wGjoQsRdhFbFgT2WcbnAaV0yVgTuBlxTTROokOXph9ETSPBVkr7Eciju upLL4PNhB7GZNMZvjtl7TeK9TQ8vhYiK+nko6edM=
From: Benjamin Saunders <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4abe0b9d70198394e9402a34a1fd499a6017379121492cf0000000118591bb892a169ce17e0387c@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/2345@github.com>
Subject: [quicwg/base-drafts] STOP_SENDING on implicitly opened streams is error-prone (#2345)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c4159b8a9fda_2c713fbd260d45bc741832"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: Ralith
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/eupT0jbhHMLVM6SEb63Dt3A0sN0>
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: Fri, 18 Jan 2019 04:44:45 -0000

> A stream ID that is used out of order results in all streams of that type with lower-numbered stream IDs also being opened.

> Receiving a STOP_SENDING frame for a locally-initiated stream that is “Ready” or not yet created MUST be treated as a connection error of type STREAM_STATE_ERROR

Streams can easily become open while still in the `Ready` state on the sender if the sender does not necessarily transmit data on streams in exactly the order in which they are allocated. If the receiving application decides to abandon such a stream and sends STOP_SENDING, a connection error results.

If STOP_SENDING is additionally permitted for streams in the `Ready` state which have been implicitly opened by some higher-numbered stream of the same type entering any other state, then implicitly-opened streams can be safely discarded without waiting for a STREAM or RESET_STREAM frame which the application is no longer interested in.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: