Re: RFC 7838 ALTSVC Frame

Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> Thu, 14 April 2016 16:07 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 (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9FB2812DFC9 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 14 Apr 2016 09:07:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.016
X-Spam-Level:
X-Spam-Status: No, score=-8.016 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 O1bY3QyZ2ifI for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 14 Apr 2016 09:07:56 -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 B321812DF17 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 14 Apr 2016 09:07:56 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1aqjjg-0006rm-JZ for ietf-http-wg-dist@listhub.w3.org; Thu, 14 Apr 2016 16:03:16 +0000
Resent-Date: Thu, 14 Apr 2016 16:03:16 +0000
Resent-Message-Id: <E1aqjjg-0006rm-JZ@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <tatsuhiro.t@gmail.com>) id 1aqjjb-0006r1-77 for ietf-http-wg@listhub.w3.org; Thu, 14 Apr 2016 16:03:11 +0000
Received: from mail-ig0-f181.google.com ([209.85.213.181]) by maggie.w3.org with esmtps (TLS1.2:RSA_ARCFOUR_SHA1:128) (Exim 4.80) (envelope-from <tatsuhiro.t@gmail.com>) id 1aqjjY-0002FZ-PI for ietf-http-wg@w3.org; Thu, 14 Apr 2016 16:03:10 +0000
Received: by mail-ig0-f181.google.com with SMTP id ui10so95373788igc.1 for <ietf-http-wg@w3.org>; Thu, 14 Apr 2016 09:02:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=zAqtAkaeZ87fquQk906OYSA+AhO8qxpvHnUjyZmtmHw=; b=NrBqKwOXRHB/eZY9uBJX46I4wHB9pfiPzlSoN+5jGijxEs9K4zrj6fATnONfue9atD xDn8ka3GXelncl7VUCgesF3VuehoTkv+qPWDO1Mu/ll8rxDO0SuXArgzATynHL87lf3K CCH9Gg6twWFi7cEd1hkwzod3ETMGDBiQb3ZpHguc+PcIpDk2BRiHL2jStkt3ZCJ64A14 66q6xIpaYwHoAIP1ZSoDItRmv1CzBcECVo0AioSMkwUAT+ygrFEpw6ADSMFnclj+76Sl HlxDasqtzyArIz105mJTRWjBezrxRhsrGv79i1CSJnsXpqOkVLcyp41AEsxNDU31bMg3 tQjA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=zAqtAkaeZ87fquQk906OYSA+AhO8qxpvHnUjyZmtmHw=; b=j3EhZuSbsBWYStDCM1VgLtKvwBDvRsmi8YZp4N3LOdOgW+F6nfocbEQXEWPFilB88h GkDSnl2jozL4zrXTYM6YN9RgicsdKmoS/PGQ6K20OOM/MY+Apr6qWCawZfAWPoJ00UEC TaZ4b2yL6fbC8C4WG0BUzjoIiOxra76GzffDmOAX5BKaHeCM+BibMW6ZpIYr2PJmBD9q Ap9Xbb0IqGanEBCZpR7Y8iQ0NhMq/7Mv276XjZq4jCdBkYp4rZ/60DDV7ZRsK49dZ3aD G6Gh7zj6NG0H0/u9T/PduIbFBw1yggZbvrk50WbW0WU2/xQxUR2rJ3vr/Qzkhnrvq5ow 4qzg==
X-Gm-Message-State: AD7BkJI+Vdsb9Xq0XU/kyplgbPdEja5lOE8nCTueK+hzAAah3Z5HghqsrI4xtq2oLBcRw5D6EdOysQVQGvWkHQ==
X-Received: by 10.50.137.66 with SMTP id qg2mr37309990igb.25.1460649762487; Thu, 14 Apr 2016 09:02:42 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.107.4.12 with HTTP; Thu, 14 Apr 2016 09:02:23 -0700 (PDT)
In-Reply-To: <CABkgnnVPoY+fpA5u+U1OpOFDVW2YzTHYaTnLjJoJ_zk7jC1w6Q@mail.gmail.com>
References: <BACC9A69-E230-49C4-B188-BA892C63C158@lukasa.co.uk> <CABkgnnVTuAtOa1m8v-xqHdBUxM0w0-MkwcuRuwJfk_U_D7OX0g@mail.gmail.com> <F4C3A965-D05A-4663-8E5A-EE4746512067@lukasa.co.uk> <CABkgnnVPoY+fpA5u+U1OpOFDVW2YzTHYaTnLjJoJ_zk7jC1w6Q@mail.gmail.com>
From: Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>
Date: Fri, 15 Apr 2016 01:02:23 +0900
Message-ID: <CAPyZ6=+NSH7JsuOMNN=BQdrLzX+VSrKH5+cqsz980Q7p_Pu0Mg@mail.gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Cc: Cory Benfield <cory@lukasa.co.uk>, HTTP WG <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="001a11c3c2cc3c035b05307406fc"
Received-SPF: pass client-ip=209.85.213.181; envelope-from=tatsuhiro.t@gmail.com; helo=mail-ig0-f181.google.com
X-W3C-Hub-Spam-Status: No, score=-5.5
X-W3C-Hub-Spam-Report: AWL=-0.775, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: maggie.w3.org 1aqjjY-0002FZ-PI 827e217191c71855e9e6fa9b7baecbfe
X-Original-To: ietf-http-wg@w3.org
Subject: Re: RFC 7838 ALTSVC Frame
Archived-At: <http://www.w3.org/mid/CAPyZ6=+NSH7JsuOMNN=BQdrLzX+VSrKH5+cqsz980Q7p_Pu0Mg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/31457
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>

Hi,

On Thu, Apr 14, 2016 at 6:44 PM, Martin Thomson <martin.thomson@gmail.com>
wrote:

> On 14 April 2016 at 19:38, Cory Benfield <cory@lukasa.co.uk> wrote:
> > 1. Do we have any reason to want to restrict that further? (e.g. ALTSVC
> in half-closed(local) feels a bit weird, but might be ok I guess?)
>
> I assume that you mean sending in half-closed (local).  Well the main
> reason for not sending after the response has been delivered is that
> the client has probably lost all state.  In fact, I would suggest that
> it probably isn't a good idea to send ALTSVC once you have completed
> the HEADERS block for the response, because by then most clients move
> to a completely different mode.
>
> > 2. Do we feel comfortable having implementations just silently ignore
> ALTSVC in the other states? That’s in line with what we do for ALTSVC on
> stream 0 (which, if the origin field is not present, just gets silently
> ignored), but feels a bit annoying to me (silent failure is a bit sad).
>
> Well, the cat is out of the bag now.  We didn't restrict the states
> and now we have implicit permission to send any time.  Ignoring is
> fine (since ignoring ALTSVC is always fine), so I guess we can only
> recommend when is best to send to maximize the chance that clients
> actually see the frame.
>
>
​I think the best way is always use stream ID = 0 and use explicit origin,
which is not affected by stream state.
If you'd like to omit origin to same several bytes, it would be good to
send ALTSVC before sending response HEADERS since client is most likely
still interested in the stream at that moment.

As for non-zero stream ID, nghttp2 ALTSVC implementation only passes
received ALTSVC to application layer if ALTSVC is received for stream which
is not closed or idle.  Otherwise, it is silently ignored, which is
permitted by the spec.

Best regards,
Tatsuhiro Tsujikawa