Re: [quicwg/base-drafts] Handling of a lost push signal (#4930)

Kazuho Oku <notifications@github.com> Thu, 29 July 2021 13:38 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 [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DBA0E3A2318 for <quic-issues@ietfa.amsl.com>; Thu, 29 Jul 2021 06:38:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.148
X-Spam-Level:
X-Spam-Status: No, score=-7.148 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.452, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_IMAGE_ONLY_28=1.404, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, 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 9v1a6vC7HEA6 for <quic-issues@ietfa.amsl.com>; Thu, 29 Jul 2021 06:38:50 -0700 (PDT)
Received: from out-19.smtp.github.com (out-19.smtp.github.com [192.30.252.202]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8E0333A231C for <quic-issues@ietf.org>; Thu, 29 Jul 2021 06:38:50 -0700 (PDT)
Received: from github.com (hubbernetes-node-be33fe0.va3-iad.github.net [10.48.205.58]) by smtp.github.com (Postfix) with ESMTPA id 7BF05E0E60 for <quic-issues@ietf.org>; Thu, 29 Jul 2021 06:38:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1627565929; bh=WR5Zsl6UxYYsHlHchdFt4APpINibYr/9q5AwInLDI78=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=p1gh6KI77Td8mweDGc6TZh+gBHeIQ+kxXub2Nx/d8FNxrB64sNsHSAthHD+N7jpZa mOSjlWNd9pfphXnCCX1+2Jmdrv89HMrLol1C4K5q0kilCY0y6+zNYliXj6WblIkKVv 50kNOg4ZYeKduoFYiuh2YPXJFvLAnM0WQCMVNFs4=
Date: Thu, 29 Jul 2021 06:38:49 -0700
From: Kazuho Oku <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+AFTOJKZAYS6P4WOLTCZACVF7B2IGTEVBNHHDR4HSDQ@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/4930/889152048@github.com>
In-Reply-To: <quicwg/base-drafts/issues/4930@github.com>
References: <quicwg/base-drafts/issues/4930@github.com>
Subject: Re: [quicwg/base-drafts] Handling of a lost push signal (#4930)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_6102af69772a8_130bc724220757"; 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
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/iMLSv4BU4X-1Jn-KGueL4-_AX0w>
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: Thu, 29 Jul 2021 13:38:56 -0000

> With removing push ID and using stream ID, we are no longer able to share a push stream with multiple streams and there is no limit for PUSH_PROMISE.
> If that is acceptable ...

I'm not sure if I agree with your observations, due to the following two reasons:
* We can still have many PUSH_PROMISEs refer to one push stream. That's fine because we are only changing the stream on which PUSH_PROMISEs are sent, and because we have had one-to-(zero-or-)one relationship between push IDs and stream IDs. As the relationship has been one-to-one, the change is no more than changing the numbering scheme.
* We can still limit the number of concurrent PUSH_PROMISEs inflight. That is because we would have a guarantee that all PUSH_PROMISEs would be delivered, and because the "stream-state of" all the push streams referred to by the PUSH_PROMISEs would also be delivered. To paraphrase, clients can track how many pushes are being opened as well as when they are closed.

> Yet another option is drop server push from draft entirely. 

I did not want to bring that option to the table, but it works for me. Considering the fact that we did not notice this design issue until as late as now, it is questionable if we are really the right people to design this feature, now.

-- 
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/4930#issuecomment-889152048