The edns-tcp-keepalive EDNS0 Option
RFC 7828, “The edns-tcp-keepalive EDNS0 Option”, is a Proposed Standard document published in April 2016 by P. Wouters, J. Abley, S. Dickinson, R. Bellis. The canonical text is published by the RFC Editor.
Abstract
DNS messages between clients and servers may be received over either UDP or TCP. UDP transport involves keeping less state on a busy server, but can cause truncation and retries over TCP. Additionally, UDP can be exploited for reflection attacks. Using TCP would reduce retransmits and amplification. However, clients commonly use TCP only for retries and servers typically use idle timeouts on the order of seconds.
This document defines an EDNS0 option ("edns-tcp-keepalive") that allows DNS servers to signal a variable idle timeout. This signalling encourages the use of long-lived TCP connections by allowing the state associated with TCP transport to be managed effectively with minimal impact on the DNS transaction time.
What “Proposed Standard” means
An entry-level standards-track specification: stable, peer-reviewed and a solid basis for implementation, though it may still evolve before becoming an Internet Standard.
The canonical text of RFC 7828 is hosted at rfc-editor.org. Available in TXT,HTML.
- RFC 7827 The Role of the IRTF Chair
- RFC 7829 SCTP-PF: A Quick Failover Algorithm for the Stream Control Transmission Protocol
- RFC 7826 Real-Time Streaming Protocol Version 2.0
- RFC 7830 The EDNS Padding Option
- RFC 7825 A Network Address Translator Traversal Mechanism for Media Controlled by the Real-Time Streaming Protocol
- RFC 7831 Application Bridging for Federated Access Beyond Web Architecture
- RFC 7824 Privacy Considerations for DHCPv6
- RFC 7832 Application Bridging for Federated Access Beyond Web Use Cases