Re: HTTP Alternative Services Best Practices?

Ryan Hamilton <rch@google.com> Mon, 16 December 2019 20:23 UTC

Return-Path: <rch@google.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B20BD120918 for <quic@ietfa.amsl.com>; Mon, 16 Dec 2019 12:23:51 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.5
X-Spam-Level:
X-Spam-Status: No, score=-17.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 xmz4rK2vzjZL for <quic@ietfa.amsl.com>; Mon, 16 Dec 2019 12:23:50 -0800 (PST)
Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) (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 A1427120916 for <quic@ietf.org>; Mon, 16 Dec 2019 12:23:49 -0800 (PST)
Received: by mail-wr1-x434.google.com with SMTP id g17so8882287wro.2 for <quic@ietf.org>; Mon, 16 Dec 2019 12:23:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FRekzuASJwqnOwGI3om9JxY0V0Za8GHuSt6P0qaVTLU=; b=LeKnvPfxQJIgGS8gkM9vllr4xY028AzolVMWHDVqPaOmqY4QdrRrtjTBct1K4ka+be y7zqOu7V1JPwGpsPHwTFnmUkSnKHenjp4vHaDW4qViDRVStx3oXvK0uFoMyqTcJC540e kuFh/0PemdxwrIeGuiYopeTamVsMzCnad8VdqPwKeRhfid2R5hoxx5idCHAe8kgrTPR0 9oOb807Tn6Pzz0+9l5rAaGygU0nFRwSJTcief9GAc0l46qi6fOArA8mrTuHvWC8iJ2aF P8TrCG4aFL4v/9I0+TMYFqcNF/4lUOlRLJU9AavcwyoZQb/2DFpsbT22G3ccqwCAtr9q uUDA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FRekzuASJwqnOwGI3om9JxY0V0Za8GHuSt6P0qaVTLU=; b=GoPoEbuxoWLgbgyCH3kJneFx3gvJ/yTBmE+oZSRIn30SMallQ3ZDGTb2uja28jA+G7 4RZu2sG0UmPRThYMN73W1bT7YGz8YQBU4aGQxRLOj6Y5/VMeIWfSkyIaJ9IX4Snc/6VH ATmkmN/33ytvvowsGCiHVjwkvh+oMr6niwq1KtW8iH7PvPq7oJur5kNvArrlKGRBLUJf YBRltgXeuSRJmdZoQjdot/b1kHP/aKJcfcR5WiRcwsEuEqw0v2ORmqnCW9BHOpyH2Ayx mzuZXFWY1DRllRlOF/cQXS6PmHlYVjerezhj9JqlW4/NACqrkeI/MXdUsu27ahQRzxtJ z/Fg==
X-Gm-Message-State: APjAAAV7ye2V+47jclveV68HgsPIAXQFavYhlBEJFxC7p8QlzOTN5WF1 lAQ4Zf8d/NFaBw3BYEs8N+QKGmAB63ALzckZ8nc8Dys5+/4=
X-Google-Smtp-Source: APXvYqwUVQCxbBZuJYeRy4dG4/mBwEwAWe7CQxubDONk+xBQDMoTYS2C2hs7NDJRnDD3aatVuoER+NODsXJYcFCtf68=
X-Received: by 2002:adf:f484:: with SMTP id l4mr32300142wro.207.1576527827691; Mon, 16 Dec 2019 12:23:47 -0800 (PST)
MIME-Version: 1.0
References: <CALGR9oaCNigDAZP=ue-sORxCJFzkVynhaJszjjY_ohN56ewy8g@mail.gmail.com>
In-Reply-To: <CALGR9oaCNigDAZP=ue-sORxCJFzkVynhaJszjjY_ohN56ewy8g@mail.gmail.com>
From: Ryan Hamilton <rch@google.com>
Date: Mon, 16 Dec 2019 12:23:34 -0800
Message-ID: <CAJ_4DfQDgaouwoMyG1f2v4_CndWWNpqft+9=zbOfeM_ek7mSHA@mail.gmail.com>
Subject: Re: HTTP Alternative Services Best Practices?
To: Lucas Pardue <lucaspardue.24.7@gmail.com>
Cc: QUIC WG <quic@ietf.org>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="0000000000002648ed0599d7fd90"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/Wx3hMkbUYNP4h-9QH6fPkdyrg6w>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 16 Dec 2019 20:23:52 -0000

Thanks for raising this issue! I think documenting best practices/guidance
would be a great idea. I think the Google servers advertise a 30 day
expiration (because 24 hours is *really* short). Further, it turns out that
Chrome implicitly assumes persist = true (because Chrome incorrectly
doesn't implement persist = false). We have a bunch of deployment
experience with this model which I think suggests that shorter ttls and
persist = false would be have a deleterious impact on performance.

On Mon, Dec 16, 2019 at 4:02 AM Lucas Pardue <lucaspardue.24.7@gmail.com>
wrote:

> Hello QUIC and HTTP members,
>
> HTTP Alternative Services (Alt-Svc) is specified in RFC 7838 which was
> published in 2016 [1]. Many of us are starting to use Alt-Svc and I wonder
> if its appearance of simplicity might cause some unintended effects on the
> Internet. In the 3 or so years since it was published, have any best
> practices emerged that might be useful to capture.
>
> Major uses of Alt-Svc today in no particular order: switching to gQUIC
> (typically on the same port), switching to HTTP/3, Opportunistic Encryption
> (RFC 8164) [2], Opportunistic Onion (advertising .onion [3]), and traffic
> management by advertising alternatives with different destination IPs or
> network path characteristics.
>
> Arguably, HTTP/3 will be the largest-scale deployed use case of Alt-Svc
> both in terms of advertisements and clients that take them up. Alt-Svc for
> this can be deceptively simple, which may lead to unexpected outcomes. For
> example, the minimal expression:
>
> Alt-Svc: h3-24=":443"
>
> invokes default values for parameters, "ma" is fresh for 24 hours and
> "persist" is false (i.e. clear alternative cache on network changes). One
> could imagine how this could cause bursts of activity at regular periods,
> or cascades due to end-user local conditions such as flocking or hopping.
>
> Finally, the proposal for an HTTPSVC DNS record [4] might attract a
> different population of operator that is less familiar with the expected
> behaviour of Alt-Svc implementations.
>
> Does anyone think it would be useful to share or document some guidance?
>
> Cheers
> Lucas
>
> [1] https://tools.ietf.org/html/rfc7838
> [2] https://tools.ietf.org/html/rfc8164
> [3] https://tools.ietf.org/html/rfc7686
> [4] https://tools.ietf.org/html/draft-ietf-dnsop-svcb-httpssvc-01
>