John Heidemann / Papers / Cache Me If You Can: Effects of DNS Time-to-Live

Cache Me If You Can: Effects of DNS Time-to-Live
Giovane C
USC/Information Sciences Institute


Giovane C. M. Moura, John Heidemann, Ricardo de O. Schmidt and Wes Hardaker. Cache Me If You Can: Effects of DNS Time-to-Live. Proceedings of the ACM Internet Measurement Conference (Amsterdam, the Netherlands, Oct. 2019), to appear. [DOI] [PDF] [alt PDF]


DNS depends on extensive caching for good performance, and every DNS zone owner must set Time-to-Live (TTL) values to control their DNS caching. Today there is relatively little guidance backed by research about how to set TTLs, and operators must balance conflicting demands of caching against agility of configuration. Exactly how TTL value choices affect operational networks is quite challenging to understand due to interactions across the distributed DNS service, where resolvers receive TTLs in different ways (answers and hints), TTLs are specified in multiple places (zones and their parent’s glue), and while DNS resolution must be security-aware. This paper provides the first careful evaluation of how these multiple, interacting factors affect the effective cache lifetimes of DNS records, and provides recommendations for how to configure DNS TTLs based on our findings. We provide recommendations in TTL choice for different situations, and for where they must be configured. We show that longer TTLs have significant promise in reducing latency, reducing it from 183ms to 28.7ms for one country-code TLD.

Bibtex Citation

  author = {Moura, Giovane C. M. and Heidemann, John and de O. Schmidt, Ricardo and Hardaker, Wes},
  title = {Cache Me If You Can: Effects of {DNS} {Time-to-Live}},
  booktitle = {Proceedings of the ACM Internet Measurement Conference},
  year = {2019},
  sortdate = {2019-10-31},
  project = {ant, lacanic, divoice, paaddos, nipet, ddidd},
  jsubject = {network_security},
  pages = {to appear},
  month = oct,
  address = {Amsterdam, the Netherlands},
  publisher = {ACM},
  jlocation = {johnh: pafile},
  keywords = {anycast, dns, ttl, ddos, root ddos},
  doi = {},
  url = {},
  pdfurl = {},
  blogurl = {},
  dataurl = {},
  myorganization = {USC/Information Sciences Institute},
  copyrightholder = {authors}
Copyright © by John Heidemann