Re: [quicwg/base-drafts] Asymmetry in the handling of SETTINGS frame (#1846)

Mike Bishop <notifications@github.com> Tue, 09 October 2018 18:50 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 D266F1292AD for <quic-issues@ietfa.amsl.com>; Tue, 9 Oct 2018 11:50:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.455
X-Spam-Level:
X-Spam-Status: No, score=-3.455 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, URIBL_BLOCKED=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 gSyH5dR8Lz9L for <quic-issues@ietfa.amsl.com>; Tue, 9 Oct 2018 11:50:07 -0700 (PDT)
Received: from o5.sgmail.github.com (o5.sgmail.github.com [192.254.113.10]) (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 DFD4E128D68 for <quic-issues@ietf.org>; Tue, 9 Oct 2018 11:50:06 -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=x18WViIA6GLOhIJgTQI8iu4DFYE=; b=VPZ3vxiV10RrUmyK NeBn03bIY5+uM7Vzz+pCkoEPZ0fh8uqX9CPZJYmBVtTtbnU8GILyEKV5hFbz2sqR tBlvGWfc8VM/wz/d34IkAZ7XQ0W2EIDT3OFpnWn58Ua64D9tPYEuBEyPKOt8wqGT NzoIBPmZTg7Y5V+BcILouqBq4ew=
Received: by filter1616p1mdw1.sendgrid.net with SMTP id filter1616p1mdw1-25121-5BBCF85D-8 2018-10-09 18:50:05.558652486 +0000 UTC m=+437446.945635256
Received: from github-lowworker-1f7e42f.cp1-iad.github.net (unknown [192.30.252.46]) by ismtpd0022p1iad2.sendgrid.net (SG) with ESMTP id BPv8cNOFSc2NF3EmF8ygAQ for <quic-issues@ietf.org>; Tue, 09 Oct 2018 18:50:05.382 +0000 (UTC)
Received: from github.com (localhost [127.0.0.1]) by github-lowworker-1f7e42f.cp1-iad.github.net (Postfix) with ESMTP id 66EDAC0314 for <quic-issues@ietf.org>; Tue, 9 Oct 2018 11:50:05 -0700 (PDT)
Date: Tue, 09 Oct 2018 18:50:05 +0000
From: Mike Bishop <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab95c9dd94fa0eb90f855531b4a605d46e823fe59c92cf0000000117d4ba5d92a169ce15f10683@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1846/428307396@github.com>
In-Reply-To: <quicwg/base-drafts/issues/1846@github.com>
References: <quicwg/base-drafts/issues/1846@github.com>
Subject: Re: [quicwg/base-drafts] Asymmetry in the handling of SETTINGS frame (#1846)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5bbcf85d60060_bde3face36d45b44900fe"; 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
X-SG-EID: l64QuQ2uJCcEyUykJbxN122A6QRmEpucztpreh3Pak3qMCGtXncH6QT90GAO2JwPvgYc3HcC9J8Byl 0iMbdrTbBsOT9lIIUp9jn2GXqxi8ZuwEP9//g/u/VeR6U+HY6mhU0CiN/zwVo+e+kl8mo3xx36ceRL KLihd5aJnarTT2bJB/qQqTRGiWYK1at8a3NdG+yZQZpH0mBDyyAIcZVkuOOsK2Jww9sLzf4o5O4xtX 0=
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/rC0afRUJ2GmvSb4JFhae8OKPOxo>
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: Tue, 09 Oct 2018 18:50:11 -0000

This isn't asymmetrical, actually.  Both client and server MUST know the settings before they can send requests/responses.  It's just that there are two cases, which you're conflating:

- For 1-RTT, the client is required to see the server's (0.5-RTT flight) SETTINGS frame before sending requests, and the server is required to see the client's SETTINGS frame before sending responses.
- For 0-RTT, the client is assuming (and the server is consenting to, by accepting 0-RTT) minimum values for settings remembered from last time, which is what permits it to send without seeing the SETTINGS.  The server still needs the client's SETTINGS, because there is no implicit contract on the client's parameters in 0-RTT.

In HTTP/2, both parties have to tolerate peers having lower values than the defaults: the defaults apply until the real SETTINGS frame is seen and then get revised downward, so you have to tolerate reductions after you've already violated the setting unknowingly.  In the HQ version, there is never a downward revision, only an upward revision, so you eliminate the unknowing violation.  That was the motivation to introduce the restriction.

-- 
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/1846#issuecomment-428307396