Re: QUIC re-chartering: include DNS-over-QUIC?

Lucas Pardue <lucaspardue.24.7@gmail.com> Sun, 12 April 2020 19:01 UTC

Return-Path: <lucaspardue.24.7@gmail.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 AEEA83A24FB for <quic@ietfa.amsl.com>; Sun, 12 Apr 2020 12:01:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.847
X-Spam-Level:
X-Spam-Status: No, score=-1.847 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 zTa-a61K_f0y for <quic@ietfa.amsl.com>; Sun, 12 Apr 2020 12:01:43 -0700 (PDT)
Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) (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 D354A3A24FA for <quic@ietf.org>; Sun, 12 Apr 2020 12:01:42 -0700 (PDT)
Received: by mail-wm1-x330.google.com with SMTP id x4so7638344wmj.1 for <quic@ietf.org>; Sun, 12 Apr 2020 12:01:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=7AVrkfkfSsAm30jLw1Edez1r7049BtITIC5hvKyIw1s=; b=F/Qq182saTJDK/LQBGcZbwISKYWUYk6QlwDJHkYRXkUn6eSAQ5LLgQy0RplJr9OHpp lNnu/dAYni/XmtWi+Xor1e8z0CTPxxph3+laq/Xni4jroUtOP7FuIObDrU7qUs2dX92C LhteOIxLIuWvdD282MoG1Drr9sbNOV1SmkHGQ/cB6qcJsoyn91+UhH4y9V8VBKkCeVuO XIHDnlLUcsKdJBZDrd9ui4WTZdoOB1fK3xX5HEqnSYfsPiTYqv9jm7PhezzcCM2Q+59r atYD+0SOoOtRz1PqqBJ8MApvpfy1S+/sDJ/pHheqPw00bbThLON2bkMouapML/Ic/55V MQVw==
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=7AVrkfkfSsAm30jLw1Edez1r7049BtITIC5hvKyIw1s=; b=HR6VRxl9m+Clktz3oACkxDV6QJIrYYtEfwyN9uqZXQy4LlP0YUFXDomDp46BbDCNJX E+z5eEENXH8YOMOSebjugNGm6tc5czrRHcNXr6MGdxOPLyo74UCSg5Trwhb4Uf8d5YEK X5A4JcMUZsdOyAXqeT6v08OtCl8fkfklxDTSbvoL7pwnRUb9Lnk55FHg0FqrxyqnmdE1 SqyWVkWrpZcmVaHbm9pB6FGtHDu9qfVuq83gJ0bpP5P7fir5bQrgSV9MyoPOx1xWCU8M bKJAcQ7a0tSNJuqPp9dXlVXM7cAs/h9K4KePJR7okSbaDyL25uIahbGMy3rrkWaszRPj CHfA==
X-Gm-Message-State: AGi0PuZ46UjcafeJ0PuvKxmSDDjzYsqr3a0he4xOHC+IrlbTs3vXn8N7 brEY+Rh1cUAkyKHo620qjBUkbvBKcCruYhJSOFQ=
X-Google-Smtp-Source: APiQypJ+IK6GWzHRJaal4ZdmS57xzsVAPBVGkpAGXfMjRozgO+75A333e5C9IYMthtFztDPu0VJG5OLQO8EfIwg2LWM=
X-Received: by 2002:a7b:c250:: with SMTP id b16mr15891744wmj.100.1586718101271; Sun, 12 Apr 2020 12:01:41 -0700 (PDT)
MIME-Version: 1.0
References: <CAKcm_gNf43tXizw9D2jdtTieh+=zS7PKVDiNNV-UEbP8Gw+mHg@mail.gmail.com> <de87e833-de54-ae5a-cd85-2f93565192f7@redbarn.org> <CAKC-DJjNbBYVzmN=KxnRKpxK_eJFcbGFvejx1Xms-X2iesBVrg@mail.gmail.com> <21444935.R3TQEuPsEl@linux-9daj> <CAN1APddZUy8Ae2cSi_RnfeftsOpS-7NUHHWZiXtR_dk6qgUCxQ@mail.gmail.com>
In-Reply-To: <CAN1APddZUy8Ae2cSi_RnfeftsOpS-7NUHHWZiXtR_dk6qgUCxQ@mail.gmail.com>
From: Lucas Pardue <lucaspardue.24.7@gmail.com>
Date: Sun, 12 Apr 2020 20:01:33 +0100
Message-ID: <CALGR9oYUtvJzngDRCMBMAqkKvzpD59OtXEBpWi8gOYPSJ2nZVw@mail.gmail.com>
Subject: Re: QUIC re-chartering: include DNS-over-QUIC?
To: Mikkel Fahnøe Jørgensen <mikkelfj@gmail.com>
Cc: IETF QUIC WG <quic@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000c8fb7c05a31c98bf"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/6WgkqiH3Mezq5atKNrcItpcFXVM>
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: Sun, 12 Apr 2020 19:01:46 -0000

Mikkel, all,

Thanks for the healthy discussion on this thread. As suggested up thread,
this proposal was taken to the DPRIVE WG and presented at their interim
meeting last week.

DPRIVE have issued a call for adoption [1], I encourage continued
conversation over there.

Cheers
Lucas

[1]
https://mailarchive.ietf.org/arch/msg/dns-privacy/kXmy4lZ-MzUKCP5zrca9I4WmiVI/


On Sun, 12 Apr 2020, 19:49 Mikkel Fahnøe Jørgensen, <mikkelfj@gmail.com>
wrote:

> Late to the game. I support DoQ.
> Maybe there are too many DNS transports, and maybe DNS as such does not
> need it, but for all communication endpoints that invest in QUIC as the
> sole transport it would be very convenient to have DoQ. DNS is a low-level
> dependency for most QUIC application protocols so if you have a non-HTTP
> based application, why would you want to drag in HTTP just for the sake of
> DNS, disregarding attack surfaces? DoQ instead of UDP/TCP DNS handles
> privacy / security and avoids another dependency.
>
> Kind Regards,
> Mikkel Fahnøe Jørgensen
>
>
> On 12 April 2020 at 01.46.25, Paul Vixie (paul@redbarn.org) wrote:
>
> On Thursday, 6 February 2020 21:27:14 UTC Erik Nygren wrote:
> > On Thu, Feb 6, 2020 at 4:16 PM Paul Vixie <paul@redbarn.org> wrote:
> > > i see DoQ as nec'y for QUIC's success but not relevant to DNS beyond
> the
> > > fact that DNS is a convenient second example of how QUIC can be used.
> if
> > > there are use cases or failure modes not handled well by DoT, i'd like
> > > to learn more about those.
> >
> > Some possible reasons (not comprehensive):
>
> forgive the long delay in responding, please.
>
> > * Reduce the impact of head-of-line blocking during loss. If packets are
> > lost, only the request(s) associated with the loss are impacted.
>
> you're assuming that the loss isn't self-induced. sometimes slowing down
> is
> exactly what's needed. for example when a busy full resolver has a queue
> of
> hundreds or thousands of requests to be sent to a zone authority, rate
> limiting of UDP is necessary to prevent a meltdown. bandwidth is finite..
> we
> sometimes load-balance toward several of a zone's authority servers even
> including those known to not have low-ish RTT, just to avoid flooding one
> of
> them, or to avoid flooding our nearby links. moving to QUIC won't help
> with
> any of that.
>
> > * Faster resumption and 0RTT behaviors (although you get some of these
> with
> > TFO + TLS 1.3 0RTT). But this substantially reduces the performance
> impact
> > when new connections need to be established.
>
> in DNS, new connections rarely need to be established. the reason RFC 6013
> permitted connections to go into a quiet (resumable) state and keep the
> learned cwin in compressed state so that the cost of that state would be
> no
> worse than what was needed for syn flood protection. since you mentioned
> TFO i
> want to say two things, first it was insecure and can't be used, exactly
> as we
> predicted (william simpson and i), and second TCPCT allowed for payloads
> as
> part of the initial or resumptive segments to get exactly the 0RTT
> benefit.
> but i don't want to drone on like a sore loser. the point is, in DNS,
> novel
> connections are rare, and careful statekeeping to support resumption (such
> as
> DNS cookies as defined in RFC 7873) is already present in pre-QUIC DNS.
>
> > * The previous also means servers can be more aggressive about timing
> out
> > connections to reduce the state they need to keep, but while minimizing
> > perf impact, which can be critical at-scale.
>
> this reduces to a noop because the statekeeping is subject to botnet
> attacks.
> just as all TCP listeners have to implement syn flood protection, so it is
> that all stateful endpoints (whether DNS, TCPCT, TFO, or QUIC) have to be
> aggressive about timing out connections they need not keep fully open.
> QUIC
> has no special capabilities or requirements in this regard.
>
> > * Better ability for load balancers at-scale to do creative things,
> > including being able to recover better when Anycast moves routes between
> > data centers. (The server-supplied Connection ID means that options
> become
> > available to better recover without needing to reset re-establish
> > connections and without needing to share state between clusters.)
>
> while it's theoretically possible to share DNS cookie state (RFC 7873)
> across
> many instances of DNS Anycast, the cost:benefit of that complexity is less
> compelling than the cost:benefit of having to renegotiate during route
> changes
> either from mobile-ip or network-in-the-middle attacks. i don't think QUIC
> has
> different game theory than DNS cookies have in this regard. route changes
> are
> orders of magnitude less frequent than same-pair reuse, and always must
> be.
>
> > * QUIC provides a framework for future extensions that may be useful in
> the
> > DNS space. For example, FEC might actually be useful for DNS in some
> cases.
> >
> > I'm sure there are plenty more reasons...
>
> i appreciate the time you put into listing these initial motivations.
> however:
>
> > On Thu, Feb 6, 2020 at 4:16 PM Paul Vixie <paul@redbarn.org> wrote:
> > > i see DoQ as nec'y for QUIC's success but not relevant to DNS beyond
> the
> > > fact that DNS is a convenient second example of how QUIC can be used.
> if
> > > there are use cases or failure modes not handled well by DoT, i'd like
> > > to learn more about those.
>
> ....my question seems to stand. if the potential motivations you've listed
> so
> far were actual, then we'd have had DNS over SCTP decades ago, or
> something
> like DTLS that actually worked at scale rather than just in a lab, or we
> would
> have been able to get TCPCT the code point we needed to experiment
> globally,
> or we would have had UDP options by now.
>
> i consider DoQ inevitable, but for QUIC's purposes ("proof of broader
> applicability"), not DNS's purposes ("working better"). DNS is old and
> warty
> but it does move and it has evolved.
>
> --
> Paul
>
>
>