Re: [quicwg/base-drafts] Don't close the connection if MAX_STREAMS is too large (#2486)

Mike Bishop <notifications@github.com> Wed, 27 February 2019 19:38 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 [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2D0921310AF for <quic-issues@ietfa.amsl.com>; Wed, 27 Feb 2019 11:38:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.001
X-Spam-Level:
X-Spam-Status: No, score=-8.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, 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 ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wJu6X4yINuqs for <quic-issues@ietfa.amsl.com>; Wed, 27 Feb 2019 11:38:41 -0800 (PST)
Received: from out-7.smtp.github.com (out-7.smtp.github.com [192.30.252.198]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C6BFF130FE4 for <quic-issues@ietf.org>; Wed, 27 Feb 2019 11:38:40 -0800 (PST)
Date: Wed, 27 Feb 2019 11:38:39 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1551296319; bh=0okyuUxjbCGLwIBuX36tYNWCfEjMDj0p2clUeZtVmbY=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=CcgGB6Du2vSZE4UYi7SI1N2wzMuShsZl+eTRoMy0WYw9cKS6yGdK3vm/CdXZszRHS GCWT9nkvL9emQEMByYNDbLXWE1EvEBVtWN9IPp3zuw0MzMIQIu4qikMMuNI81LdPCV qmtu5mjL9XqSGAHqlN6IWbD6P8lAeXan38DjTyz8=
From: Mike Bishop <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4abb3049bb39f61eeec1669354cd16d948551f67b0292cf00000001188ea93f92a169ce18a00025@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/2486/review/208722466@github.com>
In-Reply-To: <quicwg/base-drafts/pull/2486@github.com>
References: <quicwg/base-drafts/pull/2486@github.com>
Subject: Re: [quicwg/base-drafts] Don't close the connection if MAX_STREAMS is too large (#2486)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c76e73faa737_4d2d3fc5246d45c411098d"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: MikeBishop
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/DUUB5JSVlIYTg0iezcDrbKMM6_Y>
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, 27 Feb 2019 19:38:43 -0000

MikeBishop requested changes on this pull request.

I don't know that this needs new 2119 language; can't we simply say that "When a MAX_STREAMS frame permits more streams than can be expressed by the stream ID (i.e. greater than 2^60 - 1), all valid Stream IDs of that type can be used."?

> @@ -849,7 +849,9 @@ initial_stream_id_for_type) can be opened (see {{long-packet-types}}).  Initial
 limits are set in the transport parameters (see
 {{transport-parameter-definitions}}) and subsequently limits are advertised
 using MAX_STREAMS frames ({{frame-max-streams}}). Separate limits apply to
-unidirectional and bidirectional streams.
+unidirectional and bidirectional streams.  If the maximum stream ID that can
+be opened is greater than 2^62 - 1, then the receiver MUST interpret it no

```suggestion
be opened is greater than 2^62 - 1, then the receiver MUST interpret it as no
```

> @@ -849,7 +849,9 @@ initial_stream_id_for_type) can be opened (see {{long-packet-types}}).  Initial
 limits are set in the transport parameters (see
 {{transport-parameter-definitions}}) and subsequently limits are advertised
 using MAX_STREAMS frames ({{frame-max-streams}}). Separate limits apply to
-unidirectional and bidirectional streams.
+unidirectional and bidirectional streams.  If the maximum stream ID that can
+be opened is greater than 2^62 - 1, then the receiver MUST interpret it no
+stream limit and the receiver MUST NOT close the connection.

I don't think this says quite what you mean -- I can send you a MAX_STREAMS frame with a very large value and prohibit you from closing the connection thereafter?  Of course, the only way to violate that prohibition is to close the connection, and the only punishment is to close the connection, so this would be entirely toothless even if it were what you meant.

```suggestion
stream limit; this MUST NOT be treated as an error.
```

-- 
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/pull/2486#pullrequestreview-208722466