Re: [quicwg/base-drafts] Semantics of SETTINGS_MAX_HEADER_LIST_SIZE (#2516)

Kazuho Oku <> Wed, 13 March 2019 21:42 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id F232C1311DE for <>; Wed, 13 Mar 2019 14:42:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8.002
X-Spam-Status: No, score=-8.002 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, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id hsitV77QD2GZ for <>; Wed, 13 Mar 2019 14:42:34 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 62120131195 for <>; Wed, 13 Mar 2019 14:42:34 -0700 (PDT)
Date: Wed, 13 Mar 2019 14:42:33 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1552513353; bh=cGoiRSMCCKtnagJ4caV/Lvy2gNga5FaTI41CSAQ8A8Q=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=wV9IwewDMolR4r+hz5iNtT/IOFdn6hYhgDpyYGEWyqIrrV1aIT3RRyGZOslzgFWV6 MqGiDji52ttiXGnE8C+drhLs6GPW1Nkxavz7NGeWg/+18w0292W2/vqfVoWh+4ikEB u7MY2yX4hMe8QbWSCpMhEEVzCvVceTjIDV2b7zwQ=
From: Kazuho Oku <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/2516/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] Semantics of SETTINGS_MAX_HEADER_LIST_SIZE (#2516)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c8979495d8f7_25d73fb4d5ed45bc26597a"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: kazuho
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
Archived-At: <>
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 13 Mar 2019 21:42:36 -0000

Yes. The problem here is the difficulty of the sender of the headers block complying to the limit advertised by the peer. Therefore, "SHOULD enforce" does not work as a fix.

> In the case of proxies, it seems like the min of the received setting and local limit could be used? But I guess the proxy mah not know all backends it may contact when it advertises a limit. I still think something is better than nothing, but I'm not sure how to fully solve the proxy case.

FWIW, there are at least two issues regarding proxies.
* Downstream (e.g., origin server in case of a HTTP request) having smaller limits. In such case, the proxy will read the request then send a LIMIT_EXCEEDED error without forwarding the request.
* A proxy that streams the headers block. Such a proxy cannot tell the uncompressed size of the headers block until it receives the last byte of the HEADERS frame. But by the time that is observed, it would already have started sending the headers to the downstream.

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