Internet DRAFT - draft-liu-dnsop-dns-cache

draft-liu-dnsop-dns-cache







Domain Name System Operations                                     D. Liu
Internet-Draft                                                    Z. Liu
Intended status: Best Current Practice        Alibaba Group Holding Ltd.
Expires: September 21, 2016                                       Z. Yan
                                                                  L. Pan
                                                                 G. Geng
                                                                   CNNIC
                                                          March 20, 2016


            Operation Recommendations for DNS Cache Service
                      draft-liu-dnsop-dns-cache-00

Abstract

   In this document, we give some recommendations to operate the DNS
   cache service based on our previous work and practice.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 21, 2016.

Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of




Liu, et al.            Expires September 21, 2016               [Page 1]

Internet-Draft            DNS Cache Management                March 2016


   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   2
   3.  Recursive cache . . . . . . . . . . . . . . . . . . . . . . .   2
   4.  Selection of cached data  . . . . . . . . . . . . . . . . . .   3
   5.  Update of cached data . . . . . . . . . . . . . . . . . . . .   3
   6.  Response of the cached data . . . . . . . . . . . . . . . . .   3
   7.  Security Considerations . . . . . . . . . . . . . . . . . . .   4
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   9.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   5
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     10.1.  Normative References . . . . . . . . . . . . . . . . . .   5
     10.2.  Informative References . . . . . . . . . . . . . . . . .   5
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   5

1.  Introduction

   DNS cache directly serves the DNS queries from stub resolvers as the
   data source in the specified network area.  For the present, however,
   the operators manage and run the cache service in a diversified
   manner as surveyed in the draft[I-D.wang-dnsop-cachesurvey].  In this
   document, we give some recommendations to operate the DNS cache
   service based on our previous work and practice.

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

3.  Recursive cache

   To meet the respective demands of business operation and IT
   operation, the cache service plays an important role for the
   recursive service.  Basically, the cache should consist of two parts:
   online cache and offline (or backup) cache.  Specifically, the online
   cache serves the stub resolvers directly, and the backup cache is
   mainly used in the emergency case as a backup data source.  Regarding
   the cached data and management policy, they are operation-dependent
   but we try to give the recommendations as follows.







Liu, et al.            Expires September 21, 2016               [Page 2]

Internet-Draft            DNS Cache Management                March 2016


4.  Selection of cached data

   In order to optimize the recursive performance with cache service,
   the domain names requested most frequently should be cached, for
   example, root zone file, part of hot TLD zone files and domain names
   cover Top-N DNS query.

   For the positive cache, the A, AAAA, CNAME, MX , NS, DS and RRSIG RRs
   must be cached.  Besides, the NXDOMAIN and SERVFAIL RR also should be
   cached as negative cache.

   The cached data and type may be differentiated based on location and
   preference of stub resolvers.  Public DNS which serves large area and
   supports endns-client-subnet should cache data with client location
   information.

5.  Update of cached data

   In order to maintain the data freshness, the cache should be updated
   continually based on the behavior of stub resolvers or the statistics
   of domain names.  For the former case, the data is updated when the
   stub resolver requests the specified domain name.  While for the
   latter case, the recursive server pre-fetches the hot domain names
   before expiration and updates them actively.

   Because the cached date is managed by the TTL, the TTL can be updated
   based on the normal TTL setting or prolonged by the cache server.
   Cut down the cache update interval on NS RRs of hot domain names can
   shorten the RTO (Recovery Time Object) of DNS service when authority
   DNS server network fluctuation.

6.  Response of the cached data

   In normal case, response of the cached data should not be modified.
   Some recursive servers return specified IP when raw response is
   NXDOMAIN and no cached data.  For example, recursive servers can
   return recent historical cached RR when query is temporary SERVFAIL
   or NODATA.

   Recursive servers can modify the TTL of RR cached data.  When
   recursive server cut down the TTL of domain NS record less than one
   day, long existence risk for name server hijack can be depressed.
   When recursive server raises up the TTL of RR more than one hour, the
   junked query cost on very short TTL (about 1s~30s) can be optimized,
   but some of RTT sensitive services like video and game which need
   quick service IP dispatch through CDN by short TTL (about 600s) may
   be negatively influenced.




Liu, et al.            Expires September 21, 2016               [Page 3]

Internet-Draft            DNS Cache Management                March 2016


   Recursive servers may modify RR rotation by RTT detection.  When
   recursive server sets the order of NS RR according to shorter RTT
   firstly policy, it will get the benefit of the short response time.
   But when recursive server applies the same policy to A RR, it will
   result in the failure of load balance, which is based on RR rotation.

   Temporary domain names such as domains for virus update have a short
   lifetime, for which the DNS response will vary from A to NXDOMAIN
   when TTL expire.  Because of that, there will be huge temporary
   domain information on cache database that should be optimized.

   Some authority servers support edns-client-subnet
   [I-D.ietf-dnsop-edns-client-subnet]or some other GSLB (Global Server
   Load Balance) solution, authority servers may return different A RR
   response to different client IP.  If cache contains client IP
   information, the size of cache database will be enlarged, recursive
   server should extend policy on selecting RR response by client IP
   geo-location and ISP information.

7.  Security Considerations

   Recursive servers are easily attacked by DDoS, especially attacked
   from botnet.  It is recommended to analyze DNS traffic to extract
   some access control rules, which can be applied to recursive servers
   to block the attack traffic.

   Global DNSSEC deployment progress is less than 5%, there is still
   high DNS hijack risk on the Internet.  If recursive server receives
   hijacked RR from hacked authoritative server or evil middle node in
   the communication link, without any security check policy, the cached
   data may be polluted.

   Large public DNS service should support hijack analysis on hot
   domains before response RR data is added into cache database.  For
   security consideration, recursive server makes iterate DNSSEC enabled
   query to get NS RR, should prefers TCP to UDP when making DNS query
   to second level domain authoritative servers.

   Furthermore, cached data can be classified into different security
   level.  For example, history IP frequency, history hijacked IP set,
   history high-risk domain set and history high risk register set.  All
   of them should be used to filter cached data before sending response
   to clients.








Liu, et al.            Expires September 21, 2016               [Page 4]

Internet-Draft            DNS Cache Management                March 2016


8.  IANA Considerations

   This draft does not request any IANA action.

9.  Acknowledgements

   The authors would like to thanks the valuable comments made by XXX
   and other members of DNSOP WG.

   This document was produced using the xml2rfc tool [RFC2629].

10.  References

10.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <http://www.rfc-editor.org/info/rfc2119>.

10.2.  Informative References

   [I-D.ietf-dnsop-edns-client-subnet]
              Contavalli, C., Gaast, W., tale, t., and W. Kumari,
              "Client Subnet in DNS Queries", draft-ietf-dnsop-edns-
              client-subnet-06 (work in progress), December 2015.

   [I-D.wang-dnsop-cachesurvey]
              Wang, W. and Z. Yan, "A Survey of the DNS cache service in
              China", draft-wang-dnsop-cachesurvey-00 (work in
              progress), February 2015.

   [RFC2629]  Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629,
              DOI 10.17487/RFC2629, June 1999,
              <http://www.rfc-editor.org/info/rfc2629>.

Authors' Addresses

   Dapeng Liu
   Alibaba Group Holding Ltd.

   Email: max.ldp@alibaba-inc.com


   Zhihui Liu
   Alibaba Group Holding Ltd.

   Email: chenghuang.lzh@alibaba-inc.com



Liu, et al.            Expires September 21, 2016               [Page 5]

Internet-Draft            DNS Cache Management                March 2016


   Zhiwei Yan
   CNNIC
   No.4 South 4th Street, Zhongguancun
   Beijing, 100190
   P.R. China

   Email: yan@cnnic.cn


   Lanlan Pan
   CNNIC
   No.4 South 4th Street, Zhongguancun
   Hai-Dian District, Beijing, 100190
   P.R. China

   Email: panlanlan@cnnic.cn


   Guanggang Geng
   CNNIC
   No.4 South 4th Street, Zhongguancun
   Hai-Dian District, Beijing, 100190
   P.R. China

   Email: gengguanggang@cnnic.cn


























Liu, et al.            Expires September 21, 2016               [Page 6]