Hi,

thank you for bringing this topic, especially considering it is already deployed for years.

I'm not a fan of using any DNS records past their TTL. Authoritatives often (and in various ways) rely on the fact that the RRs are not used after their TTLs expire.

Regarding Serve Stale, the argument is that it makes less damage to use expired RRs, than fail. I'm not really comfortable even with that.

Rather than Optimistic DNS, I would like to see wider adoption of pre-fetching in resolvers. This means that if a frequently queried, soon-to-expire record is re-queried at authoritatives, so that it never expires in the cache. And yes, it heavily depends on the setting of "frequently queried" and "soon-to-expire". The biggest disadvantage of the pre-fetching is that it does not work when forwarding to another resolver, which doesn't pre-fetch as well.

I guess the pre-fetching feature is mostly implemented in common resolvers, but not always enabled by default. Maybe we should advocate for enabling it by default and used practically everywhere.

Anyway, if Optimistic DNS would still be the way to go, I'd recommend to strongly limit the amount of time past the TTL expiration, in which the RR can be optimisticly returned. If it expired just four seconds ago, it is probably OK. If more than hour, than please don't. I especially dislike the draft's paragraph 7.4.

Libor

On 03. 06. 26 22:54, Gautam Akiwate wrote:
Greetings,

We have submitted a new draft that describes Optimistic DNS a client-side stub resolver mechanism that immediately returns expired cached records to applications while issuing a fresh network query in parallel to refresh the record eliminating the latency spikes on
TTL expiry.

As a note mDNSResponder (default stub resolver on all Apple platforms) has shipped this since macOS 10.14 / iOS 12 (September 2018) so the document captures already deployed behavior. The main impetus for writing this draft was discussions in the HAPPY WG around these ideas.

We look forward to feedback on this document.

Thanks
Gautam


Begin forwarded message:

*From: *[email protected]
*Subject: **New Version Notification for draft-gakiwate-dnsop-optimistic-dns-00.txt*
*Date: *June 3, 2026 at 1:15:21 PM PDT
*To: *"Gautam Akiwate" <[email protected]>, "Phil Flack" <[email protected]>, "Stuart Cheshire" <[email protected]>

A new version of Internet-Draft draft-gakiwate-dnsop-optimistic-dns-00.txt has
been successfully submitted by Gautam Akiwate and posted to the
IETF repository.

Name:     draft-gakiwate-dnsop-optimistic-dns
Revision: 00
Title:    Optimistic DNS
Date:     2026-06-03
Group:    Individual Submission
Pages:    30
URL: https://www.ietf.org/archive/id/draft-gakiwate-dnsop-optimistic-dns-00.txt Status: https://datatracker.ietf.org/doc/draft-gakiwate-dnsop-optimistic-dns/ HTML: https://www.ietf.org/archive/id/draft-gakiwate-dnsop-optimistic-dns-00.html HTMLized: https://datatracker.ietf.org/doc/html/draft-gakiwate-dnsop-optimistic-dns


Abstract:

  DNS lookups introduce user-visible delay, particularly when cached
  records have expired and must be refreshed from the network.  This
  document describes Optimistic DNS, a client-side stub resolver
  mechanism that immediately returns expired cached DNS records to
  applications while simultaneously refreshing them with a network
  query.  The application receives an answer in microseconds rather
  than milliseconds, and if the data has changed receives an updated
  answer shortly thereafter.  Optimistic DNS is complementary to RFC
  8767, which addresses serving stale data at recursive resolvers.
  This document focuses exclusively on client-side stub resolver
  behavior, including explicit signaling from the application to inform
  the stub resolver that the application is able to handle old and
  possibly incorrect information.



The IETF Secretariat




_______________________________________________
DNSOP mailing list [email protected]
To unsubscribe send an email [email protected]
_______________________________________________
DNSOP mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to