Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • BIND BIND
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 594
    • Issues 594
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 100
    • Merge requests 100
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source ProjectsISC Open Source Projects
  • BINDBIND
  • Issues
  • #2854
Closed
Open
Issue created Aug 09, 2021 by Artem Boldariev@artemOwner

DoH: Assign HTTP responses freshness lifetime according to the smallest TTL found in the Answer section (by setting "max-age" in "Cache-Control" header)

In the DoH spec there is a section on HTTP cache interaction.

https://datatracker.ietf.org/doc/html/rfc8484#section-5.1

We are now trying to bypass the caches. However, in the long run it might be beneficial to take advantage of it by setting max-age to the least TTL from the answer section. In some cases, this can help us to take advantage of the existing HTTP caching infrastructure and lessen load on the DNS server itself by reusing the HTTP infrastructure caching capabilities.

Adding such a code to http.c is easy, however, we seem to currently lack a mechanism to track the minimal TTL value in dns_message. If we were adding one, we could put it into dns_message, updating the lowest TTL whenever a new rdataset was added to a message.

For the reference, at least Knot Resolver does it, as do Cloudflare and Quad9. So should we.

Edited Oct 13, 2021 by Artem Boldariev
Assignee
Assign to
Time tracking