Heuristics and Algorithms to Prioritize Protocol deploYment (happy) Internet Drafts


      
 Happy Eyeballs Version 3: Better Connectivity Using Concurrency
 
 draft-ietf-happy-happyeyeballs-v3-00.txt
 Date: 07/04/2025
 Authors: Tommy Pauly, David Schinazi, Nidhi Jaju, Kenichi Ishibashi
 Working Group: Heuristics and Algorithms to Prioritize Protocol deploYment (happy)
Many communication protocols operating over the modern Internet use hostnames. These often resolve to multiple IP addresses, each of which may have different performance and connectivity characteristics. Since specific addresses or address families (IPv4 or IPv6) may be blocked, broken, or sub-optimal on a network, clients that attempt multiple connections in parallel have a chance of establishing a connection more quickly. This document specifies requirements for algorithms that reduce this user-visible delay and provides an example algorithm, referred to as "Happy Eyeballs". This document updates the algorithm description in RFC 8305.


data-group-menu-data-url="/group/groupmenu.json">

Skip to main content

Heuristics and Algorithms to Prioritize Protocol deploYment (happy)

WG Name Heuristics and Algorithms to Prioritize Protocol deploYment
Acronym happy
Area Web and Internet Transport (wit)
State Active
Charter charter-ietf-happy-01 Approved
Document dependencies
Personnel Chairs Eric Kinnear, Tim Chown
Area Director Gorry Fairhurst
Mailing list Address happy@ietf.org
To subscribe https://mailman3.ietf.org/mailman3/lists/happy.ietf.org/
Archive https://mailarchive.ietf.org/arch/browse/happy/
Chat Room address https://zulip.ietf.org/#narrow/stream/happy

Charter for Working Group

RFC 8305 defined “Happy Eyeballs Version 2”, a client algorithm for resolving
and connecting to a server with different server IP address options, aiming
to improve IPv6 usage without degrading connection success rates due to
misconfigured networks, clients, or servers.

Since the publication of RFC 8305, several changes to common protocols, clients, and
server deployments have occurred that require a revision of the algorithm. Some
of these include:

  • Standardization and increased use of QUIC, which require updating the
    TCP-specific parts of Happy Eyeballs.
  • Introduction of Service Binding DNS resource records (SVCB and HTTPS RRs) that
    provide richer service information and add priorities and parameters that
    will change the sorting of addresses for Happy Eyeballs.
  • Preparations for the standardization of TLS Encrypted Client Hello, which
    can impact which servers a client is willing to connect to based on available
    security properties.
  • Increased deployment and refinement of IPv6-only and IPv6-mostly networks.

The HAPPY working group will deliver an updated version of the Happy Eyeballs
algorithm, "Happy Eyeballs Version 3", that incorporates changes to account for
these developments. The working group will focus on realistic network
scenarios and performance data measured in deployed networks.
Although the algorithm needs to be generally applicable, platform-specific or
deployment-specific considerations should be included in the core algorithm
document. The algorithm should have tunable input values that allow for variation
between clients, with defaults based on working group consensus for preferred
behaviors.

The working group will also document the impact of the Happy Eyeballs algorithm
on the detection of misconfigured deployments, such as networks with configured
(but non-functional) IPv6 connectivity. This can include recommendations for how
to report issues that might otherwise be hidden by the algorithm's automatic
failover. Any reporting mechanisms need to preserve user privacy,
accurately detect broken deployments, and produce actionable reports.

The Happy Eyeballs Version 3 algorithm will be scoped to connection establishment
that starts with a fully-qualified domain name (FQDN) and ends with a single
established connection to a server. While the algorithm may apply to scenarios
with multiple network links, or pools of multiple connections, specific
mechanisms for such scenarios are out of scope for the working group.

The updated algorithm is expected to have increased cross-functional scope,
beyond the original versions of the algorithm developed in V6OPS. The HAPPY
working group will review its work with groups such as V6OPS, 6MAN, TSVWG,
QUIC, HTTPBIS, DNSOP, and TLS. The working group should also coordinate with the
Security Area, specifically around the security considerations for TLS Encrypted
Client Hello and the behavior of the algorithm with secure protocols (TLS, QUIC,
etc).

The working group’s core deliverables are:

  • A standards-track document for Happy Eyeballs Version 3
  • An informational document that explains the impact of Happy Eyeballs
    on detecting and measuring broken deployments, with recommendations on how to
    report errors in a privacy-preserving, accurate, and actionable way.

Milestones

Date Milestone Associated documents
Jul 2026 An informational document to explain the impact of Happy Eyeballs on detecting and measuring broken deployments, with recommendations on how to report the errors
Jul 2026 A standards-track document for Happy Eyeballs Version 3