Re: [quicwg/base-drafts] DATA frame encoding is inefficient for long dynamically generated bodies (#1885)

Mike Bishop <notifications@github.com> Fri, 19 October 2018 17:59 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 914D6130FB1 for <quic-issues@ietfa.amsl.com>; Fri, 19 Oct 2018 10:59:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.064
X-Spam-Level:
X-Spam-Status: No, score=-3.064 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.064, 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] 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 ZmhLldBM2qan for <quic-issues@ietfa.amsl.com>; Fri, 19 Oct 2018 10:59:39 -0700 (PDT)
Received: from o4.sgmail.github.com (o4.sgmail.github.com [192.254.112.99]) (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 8FB79130E77 for <quic-issues@ietf.org>; Fri, 19 Oct 2018 10:59:39 -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=Jycdgm/DRcVd5A3s7t37qtv7zk8=; b=JIMdK5EYd90OzkyJ qrAPkIBi9ePm2yoenwsziNgAsBxP/qaI9/KruYFpqgfCGkTmPMdjx+V7/cqY+ABQ jYOfr4Zjmomo3G1lRXn572+v3ye2H4E5yoitP6Gt+2x29JUJ3+L5WHouzIcpH0mM Qx1iA6Vir49r4BjVj1FonGadqX8=
Received: by filter0966p1las1.sendgrid.net with SMTP id filter0966p1las1-6444-5BCA1B8A-2 2018-10-19 17:59:38.092955889 +0000 UTC m=+64513.911252816
Received: from github-lowworker-63e61ec.cp1-iad.github.net (unknown [192.30.252.36]) by ismtpd0002p1iad2.sendgrid.net (SG) with ESMTP id jrZKWfc_SaGArTGdXYj5CA for <quic-issues@ietf.org>; Fri, 19 Oct 2018 17:59:38.020 +0000 (UTC)
Received: from github.com (localhost [127.0.0.1]) by github-lowworker-63e61ec.cp1-iad.github.net (Postfix) with ESMTP id E82162A0D54 for <quic-issues@ietf.org>; Fri, 19 Oct 2018 10:59:37 -0700 (PDT)
Date: Fri, 19 Oct 2018 17:59:38 +0000
From: Mike Bishop <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab4f511cad48631ea973e545168915c0e15523e82c92cf0000000117e1dd8992a169ce16286866@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1885/431447381@github.com>
In-Reply-To: <quicwg/base-drafts/issues/1885@github.com>
References: <quicwg/base-drafts/issues/1885@github.com>
Subject: Re: [quicwg/base-drafts] DATA frame encoding is inefficient for long dynamically generated bodies (#1885)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5bca1b89dbf5c_4be33fcb396d45b8186435"; 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: l64QuQ2uJCcEyUykJbxN122A6QRmEpucztpreh3Pak0fIOfldMh/8qP3XAKa3YhDsfF1/S12LmGD5g QTDalEi8vwQ0Hds+by0/U+h4hhevBxGjUCYzaJfuLfPrYASpqu5zEpyas3CV9GYRfGLNIPx/iGY215 8cGhyw0t+EE9MWQMnOZCj6rCHGqfn3AjzIErAhaj7BaZHISot5iuOA71WzZJNL83plCrEEuvpgri96 o=
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/DdiALa2UqVFFVChsMiuIfwH8tfg>
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, 19 Oct 2018 17:59:42 -0000

I'm sympathetic to the desire to reduce framing overhead, and having previously described the frames as "regions," I'm not philosophically opposed to having a region run to the end of the stream.  However, we've built / inherited from H2 a model in which frames have a known length from the start (though some might be so large that you have to process them in a streaming fashion).  I'm cautious about up-ending that model and saying that some frames have indeterminate length, and you'll know the end when you get there.

Depending on your implementation model, that might be fine.  If you have a processor that gets fed the bytes until the end of the frame, then it already handles a stream and being told that the payload has ended after/as the last byte is written to it.  This is a scoped change to the layer that reads the bytes from the stream and stuffs them into the processor.  If you have a processor that gets told the length and consumes that many bytes from the stream, this might be more of an architectural change.

I'm curious to hear from implementers how much of a challenge they foresee this being in their architectures.

-- 
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/1885#issuecomment-431447381