[quicwg/base-drafts] PUSH_ID as a frame (#2526)

Luca Niccolini <notifications@github.com> Sun, 17 March 2019 19:34 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 []) by ietfa.amsl.com (Postfix) with ESMTP id 874301311C4 for <quic-issues@ietfa.amsl.com>; Sun, 17 Mar 2019 12:34:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.597
X-Spam-Status: No, score=-6.597 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_IMAGE_ONLY_28=1.404, 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 ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id 0VnGaoQNOjw2 for <quic-issues@ietfa.amsl.com>; Sun, 17 Mar 2019 12:34:13 -0700 (PDT)
Received: from out-3.smtp.github.com (out-3.smtp.github.com []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6BFAA1311CE for <quic-issues@ietf.org>; Sun, 17 Mar 2019 12:34:13 -0700 (PDT)
Date: Sun, 17 Mar 2019 12:34:11 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1552851251; bh=2ikGoTx2FNSrH9MlXfy3T0MEtAdp1zQ88yzIzaC+zX4=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=C5oGJ/HYi21vC2W3tXX/9RIjwv9ww+A8jGPcWxfvlt+vzWaEPwQjRGc0hM4BDCncG adgj3Ycz5WnH7+8+8p3f1woruTPeDvKMjveaAB6TukowoG5gUWjLFfdP1sUA04HxoW lQ0fwbePKkG8o1DmuOH0CBehZpridaYOZeIYpQTA=
From: Luca Niccolini <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4abe2a8f6ffbce355abcdb9ec9de2d49a4842aef55792cf0000000118a6633392a169ce1926a629@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/2526@github.com>
Subject: [quicwg/base-drafts] PUSH_ID as a frame (#2526)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c8ea133f082c_3b1a3fbdb08d45c0183359e"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: lnicco
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/H78ixIpyIMRHsm95Cjc5gUNJbls>
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: Sun, 17 Mar 2019 19:34:28 -0000

the push id that links a push stream to a push promise is now an unframed varint that comes right after the stream preface. 

this is right now the only unframed data (except made for the unidirectional stream prefaces) in the specs and I am proposing to make that a frame as well for consistency and to simplify implementation and allow code reuse. 

motivation: the specs already define frames that only carry a single varint (mostly push related)
  * max push id
  * duplicate push 
  * cancel push
  * and goaway!
here instead we decided to leave it unframed just because we can since it is at the beginning of the stream

cost: two extra bytes per push stream

the text will need to specify that on a push stream this new frame (PUSH_ID ?) MUST be the first one, otherwise it is a protocol error. 

I am happy to put up a PR, in case we reach consensus

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