http2-encoded-data

Stefan Eissing <stefan.eissing@greenbytes.de> Mon, 06 July 2015 08:10 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B0F61A9053 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 6 Jul 2015 01:10:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.413
X-Spam-Level:
X-Spam-Status: No, score=-4.413 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, J_CHICKENPOX_34=0.6, RCVD_IN_DNSWL_HI=-5, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 4tpZtFZ097NR for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 6 Jul 2015 01:10:25 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CB48E1A9060 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 6 Jul 2015 01:10:25 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1ZC1R1-00044E-KW for ietf-http-wg-dist@listhub.w3.org; Mon, 06 Jul 2015 08:07:27 +0000
Resent-Date: Mon, 06 Jul 2015 08:07:27 +0000
Resent-Message-Id: <E1ZC1R1-00044E-KW@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <stefan.eissing@greenbytes.de>) id 1ZC1Qx-0003vb-Hq for ietf-http-wg@listhub.w3.org; Mon, 06 Jul 2015 08:07:23 +0000
Received: from mail.greenbytes.de ([217.91.35.233]) by lisa.w3.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from <stefan.eissing@greenbytes.de>) id 1ZC1Qt-0005qj-M0 for ietf-http-wg@w3.org; Mon, 06 Jul 2015 08:07:22 +0000
Received: from mod-h2.greenbytes.de (unknown [5.10.171.186]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mail.greenbytes.de (Postfix) with ESMTPSA id 5FE4015A035E for <ietf-http-wg@w3.org>; Mon, 6 Jul 2015 10:06:56 +0200 (CEST)
From: Stefan Eissing <stefan.eissing@greenbytes.de>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Message-Id: <37CB606B-D349-40B4-9905-AD8939F03D79@greenbytes.de>
Date: Mon, 06 Jul 2015 10:06:55 +0200
To: HTTP Working Group <ietf-http-wg@w3.org>
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2102\))
X-Mailer: Apple Mail (2.2102)
Received-SPF: pass client-ip=217.91.35.233; envelope-from=stefan.eissing@greenbytes.de; helo=mail.greenbytes.de
X-W3C-Hub-Spam-Status: No, score=-5.4
X-W3C-Hub-Spam-Report: AWL=-0.836, BAYES_00=-1.9, RP_MATCHES_RCVD=-0.663, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: lisa.w3.org 1ZC1Qt-0005qj-M0 50bd8fbbd038b4db646863d26c4d513c
X-Original-To: ietf-http-wg@w3.org
Subject: http2-encoded-data
Archived-At: <http://www.w3.org/mid/37CB606B-D349-40B4-9905-AD8939F03D79@greenbytes.de>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/29867
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

My comments re http://tools.ietf.org/html/draft-kerwin-http2-encoded-data-05:

Should a client announcing support be prepared to receive DATA *and* GZIPPED_DATA frames for a single stream? There are two scenarios where I could see that happen:
1. The ACCEPT_GZIPPED_DATA is received while a stream's DATA is ongoing and the endpoint might want to switch
2. On a gzipped stream, small data chunks might arise that are not worth zipping. Can a server send them as DATA?

More on the meta h2 level:
- Allocating numbers from a small pool like frame types and error codes gets difficult when several parties are considering extending a protocol. Before safe numbers are allocated, experimental implementations need to exist which may later clash. String identifiers seem to have worked better in the past. 

A possible solution to this could be an X-FRAME that carries an identifier string in its payload. A playground until business gets serious and numbers are allocated in the protocol.

- Sometimes, extensions depend on each other. For an endpoint, it is much easier/safer/robust to receive and process extension capabilities in a package (i.e. single frame). Example: TLS extensions like SNI and ALPN have practical dependencies, as for servers protocol support may be configured per server. The answer to ALPN depends on the SNI. Receiving SNI+ALPN in one protocol "packet" makes processing more robust.

Cheers,

  Stefan

<green/>bytes GmbH
Hafenweg 16, 48155 Münster, Germany
Phone: +49 251 2807760. Amtsgericht Münster: HRB5782