Apple's DNS Long-Lived Queries protocol
draft-sekar-dns-llq-06

Document Type Active Internet-Draft (individual)
Last updated 2019-08-26 (latest revision 2019-08-22)
Stream ISE
Intended RFC status Informational
Formats plain text xml pdf html bibtex
IETF conflict review conflict-review-sekar-dns-llq
Stream ISE state Sent to the RFC Editor
Consensus Boilerplate Unknown
Document shepherd Adrian Farrel
Shepherd write-up Show (last changed 2019-08-13)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to Adrian Farrel <rfc-ise@rfc-editor.org>
IANA IANA review state Version Changed - Review Needed
IANA action state Waiting on Authors
RFC Editor RFC Editor state MISSREF
Network Working Group                                        S. Cheshire
Internet-Draft                                               M. Krochmal
Intended status: Informational                                Apple Inc.
Expires: February 23, 2020                               August 22, 2019

                Apple's DNS Long-Lived Queries protocol
                         draft-sekar-dns-llq-06

Abstract

   Apple's DNS Long-Lived Queries protocol (LLQ) is a protocol for
   extending the DNS protocol to support change notification, thus
   allowing clients to learn about changes to DNS data without polling
   the server.  From 2005 onwards, LLQ was implemented in Apple products
   including Mac OS X, Bonjour for Windows, and AirPort wireless base
   stations.  In 2019, the LLQ protocol was superseded by the IETF
   Standards Track RFC xxxx [[RFC Editor note: Please replace xxxx with
   RFC number]] "DNS Push Notifications", which builds on experience
   gained with the LLQ protocol to create a superior replacement.

   The existing LLQ protocol deployed and used from 2005 to 2019 is
   documented here to give background regarding the operational
   experience that informed the development of DNS Push Notifications,
   and to help facilitate a smooth transition from LLQ to DNS Push
   Notifications.

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 February 23, 2020.

Cheshire & Krochmal     Expires February 23, 2020               [Page 1]
Internet-Draft   Apple's DNS Long-Lived Queries protocol     August 2019

Copyright Notice

   Copyright (c) 2019 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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Transition to DNS Push Notifications  . . . . . . . . . .   4
   2.  Conventions and Terminology Used in this Document . . . . . .   4
   3.  Mechanisms  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     3.1.  Assigned Numbers  . . . . . . . . . . . . . . . . . . . .   5
     3.2.  Opt-RR Format . . . . . . . . . . . . . . . . . . . . . .   6
   4.  LLQ Address and Port Identification . . . . . . . . . . . . .   7
   5.  LLQ Setup . . . . . . . . . . . . . . . . . . . . . . . . . .   9
     5.1.  Setup Message Retransmission  . . . . . . . . . . . . . .   9
     5.2.  LLQ Setup Four-Way Handshake  . . . . . . . . . . . . . .   9
       5.2.1.  Setup Request . . . . . . . . . . . . . . . . . . . .  10
       5.2.2.  Setup Challenge . . . . . . . . . . . . . . . . . . .  11
       5.2.3.  Challenge Response  . . . . . . . . . . . . . . . . .  14
       5.2.4.  ACK + Answers . . . . . . . . . . . . . . . . . . . .  15
     5.3.  Resource Record TTLs  . . . . . . . . . . . . . . . . . .  16
   6.  Event Responses . . . . . . . . . . . . . . . . . . . . . . .  17
     6.1.  Add Events  . . . . . . . . . . . . . . . . . . . . . . .  18
     6.2.  Remove Events . . . . . . . . . . . . . . . . . . . . . .  18
     6.3.  Gratuitous Response Acknowledgments . . . . . . . . . . .  18
   7.  LLQ Lease-Life Expiration . . . . . . . . . . . . . . . . . .  19
     7.1.  Refresh Request . . . . . . . . . . . . . . . . . . . . .  19
     7.2.  LLQ Refresh Acknowledgment  . . . . . . . . . . . . . . .  20
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  21
     8.1.  Server DOS  . . . . . . . . . . . . . . . . . . . . . . .  21
     8.2.  Client Packet Storms  . . . . . . . . . . . . . . . . . .  21
     8.3.  Spoofing  . . . . . . . . . . . . . . . . . . . . . . . .  21
   9.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  22
   10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  22
   11. References  . . . . . . . . . . . . . . . . . . . . . . . . .  22
     11.1.  Normative References . . . . . . . . . . . . . . . . . .  22
     11.2.  Informative References . . . . . . . . . . . . . . . . .  23
   Appendix A.  Problems with the LLQ Protocol . . . . . . . . . . .  25
Show full document text