Internet Engineering Task Force                                 H. Zhang
Internet-Draft                                                    P. Zuo
Intended status: Standards Track                                  J. Yao
Expires: March 29, 2019                                            CNNIC
                                                      September 25, 2018


          New weighted resource record for traffic scheduling
             draft-zhang-dnsop-weighted-address-records-00

Abstract

   Scheduling traffic in proportion to different nodes can optimize
   bandwidth utilization and improve user experience when the Internet
   traffic exceeds the bandwidth limit of a CDN cache node.  This
   document defines AX and AAAAX RR types by adding weight field to
   existing A and AAAA resource records.  A group of weighted records
   will be sorted in the DNS response according to the weight in AX and
   AAAAX records.

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 https://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 March 29, 2019.

Copyright Notice

   Copyright (c) 2018 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
   (https://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



Zhang, et al.            Expires March 29, 2019                 [Page 1]


Internet-DraftNew weighted resource record for traffic schSeptember 2018


   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

1.  Introduction

   Most of CDNs can bring a client to the closest cache node according
   to the source IP of the client nowadays.  However, the rapid
   development of Internet raises new challenges.  According to public
   information, Global IP traffic will increase nearly threefold over
   the next 5 years and the busy-hour Internet traffic is growing more
   rapidly than average traffic.  For some CDNs, it becomes more
   frequent that peak traffic will exceed the bandwidth limit of their
   nodes and they need new solutions to optimize traffic scheduling.

   For example, if the maximum bandwidth for a CDN node is 10G and the
   busy-hour traffic reaches 12G, it is necessary to schedule 10G
   traffic to this node and the extra 2G traffic to other adjacent
   nodes.  Scheduling traffic in proportion to different nodes can
   optimize bandwidth utilization and improve user experience.

2.  Possible solutions

   In general, there are three ways to solve this problem:

   (1) Get browsers to comply with RFC 2782

   RFC 2782 describes a DNS RR which specifies the location of the
   server for a specific protocol and provides a server selection
   mechanism.  However, getting browsers to move is a long project.  In
   practice, RFC2782 is more suitable for service discovery but not
   widely adopted for dynamic web server selection.

   (2) Serve up multiple copies of the same RR and expect that record
   shuffling will deliver a specific ratio

   The multiple IP address listings is done in practice.  However, it is
   meaningless for two records to ever have label, class, type and data
   all equal - servers should suppress such duplicates if
   encountered.(as described in [RFC2181]) . Therefore, this method is
   not recommended as some servers may remove duplicates.

   (3) Get authoritative servers and resolvers to serve weighted A/AAAA
   records and short TTL

   CDNs are actually using a similar method nowadays.  Weighted A/AAAA
   records and short TTLs brings a dynamic server selection mechanism




Zhang, et al.            Expires March 29, 2019                 [Page 2]


Internet-DraftNew weighted resource record for traffic schSeptember 2018


   that optimizes traffic scheduling.  Compared to RFC2782, this is a
   light-weight solution that can be widely adopted easily.

   This document defines AX/AAAAX resource record to standardize the
   third method.  By adding weight filed in AX/AAAAX, a DNS server can
   serve address records with weighted frequency.  The similar mechanism
   currently works well in many authoritative servers in practice but
   very few resolvers support it.  Support from resolvers further
   optimizes scheduling but also increases complexity.  If the resolver
   should support this mechanism is a problem for future discussion.
   For compatibility, the authoritative DNS server that has AX/AAAAX RRs
   must reply A/AAAA RRs to weight-RR-not-aware resolvers.

3.  AX and AAAAX resource record

   The AX RR presentation format is similar to that of A RR except the
   weight field.The weight is a 16 bit unsigned interger:

   owner ttl class AX weight address

   The AAAAX RR presentation format is similar to that of AAAA RR except
   the weight field.The weight is a 16 bit unsigned interger:

   owner ttl class AAAAX weight address

4.  Authoritative Server Behavior

4.1.  Use of AX and AAAAX

   When AX or AAAAX records are present at a DNS node and a query is
   received by an authoritative server for type AX or AAAAX, the
   authoritative server should: (1) sort AX or AAAAX RRs according to
   the weight; (2) place the AX or AAAAX RRs in the answer section.

   When AX or AAAAX records are present at a DNS node and a query is
   received by an authoritative server for type A or AAAA, the
   authoritative server should: (1) remove weight field in AX or AAAAX;
   (2) sort A or AAAA RRs according to the weight in AX or AAAAX; (3)
   place the sorted A or AAAA RRs in the answer section;

4.2.  example










Zhang, et al.            Expires March 29, 2019                 [Page 3]


Internet-DraftNew weighted resource record for traffic schSeptember 2018


   Given the following zone:

   $ORIGIN  example.com.
   @ IN  SOA  example.com hostmaster.example.com 1 7200 3600 2419200 600
   @ IN  NS  ns1
   www  IN  AX  3  1.1.1.1.
   www  IN  AX  1  2.2.2.2


   the weight filed in the above 2 AX RRs indicates 1.1.1.1 should
   account for 75% for example.com/A query and 2.2.2.2 account for 25%.

   For the example.com/A queries:
   Three quarters of responses should be:

   ;; QUESTION SECTION:
   www.example.com.  IN  A
   ;; ANSWER SECTION:
   www.example.com.  60  IN  A  1.1.1.1
   www.example.com.  60  IN  A  2.2.2.2


   one quarter of responses should be:

   ;; QUESTION SECTION:
   www.example.com.  IN  A
   ;; ANSWER SECTION:
   www.example.com.  60  IN  A  2.2.2.2
   www.example.com.  60  IN  A  1.1.1.1


   For the example.com/AX queries, the server would return:

   ;; QUESTION SECTION:
   www.example.com.  IN  A
   ;; ANSWER SECTION:
   www.example.com.  60  IN  AX  3  1.1.1.1
   www.example.com.  60  IN  AX  1  2.2.2.2


4.3.  DNSSEC consideration

   If the zone that contains AX or AAAAX is DNSSEC-signed, for each AX
   or AAAAX, there must be a corresponding A or AAAA RR that has
   identical RDATA.  The corresponding A or AAAA RR must be signed.






Zhang, et al.            Expires March 29, 2019                 [Page 4]


Internet-DraftNew weighted resource record for traffic schSeptember 2018


5.  Recursive Server Behavior

   Support from resolvers will further optimizes traffic scheduling but
   increases complexity at the same time.  As the authoritative DNS
   server that has AX/AAAAX RRs must reply A/AAAA RRs for an A/AAAA
   query, this mechanism works well even if a resolver does not support
   it.

   If a resolver does not support this mechanism, which currently
   accounts for the majority of cases, it never receives any AX/AAAAX
   RRs.  It requires no extra implementation to support the weighted RRs
   mechanism.

   If a resolver supports this mechanism, it should determine if to use
   the weighted RRs according to local configuration.  Use of weighted
   address records in resolvers is an issue for further study.

6.  Implementation Status

   PowerDNS [https://powerdns.com] currently implements a similar
   authoritative-only feature using LUA records.

   DNS service provider CloudXNS [https://www.cloudxns.net] currently
   implements a similar authoritative-only feature using AX record that
   contains a priority value.

   CDN service provider UPYUN [https://www.upyun.com] currently adopts a
   similar mechanism to schedule traffic in busy hour.

7.  IANA Considerations

   IANA is requested to assign 2 DNS RR data type values for the AX and
   AAAAX RR type.

8.  References

   [RFC2181]  Elz, R. and R. Bush, ""Clarifications to the DNS
              Specification"", July 1997,
              <https://tools.ietf.org/html/rfc2181>.

   [RFC2782]  Gulbrandsen, A., Vixie, P., and L. Esibov, ""A DNS RR for
              specifying the location of services (DNS SRV)"", February
              2000, <https://tools.ietf.org/html/rfc2782>.








Zhang, et al.            Expires March 29, 2019                 [Page 5]


Internet-DraftNew weighted resource record for traffic schSeptember 2018


Authors' Addresses

   Haikuo Zhang
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 3163
   Email: zhanghaikuo@cnnic.cn


   Peng Zuo
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 2629
   Email: zuopeng@cnnic.cn


   Jiankang yao
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 3007
   Email: yaojiankang@cnnic.cn





















Zhang, et al.            Expires March 29, 2019                 [Page 6]