draft-wing-v6ops-happy-eyeballs-ipv6 Happy Eyeballs: Trending Towards Success with Dual-Stack Hosts Dan Wing Andrew Yourtchenko {dwing, 1Happy Eyeballs - IETF79
2 The Problem IPv6 outages cause user frustration “Turn on Dual Stack, It Will Work” causes 20 seconds of frustration Solution: improve application behavior Happy Eyeballs - IETF79
3 IPv6 Outages Broken IPv6 tunnels Single IPv6 peering IPv4 responsiveness better than IPv6 “accidental IPv6”, IPv6 islands Happy Eyeballs - IETF79
4 Proposal: Send Probes, Learn, Quick Fallback 1.Send Probes: Try connecting to both IPv4 and IPv6 Similar to ICE (RFC5245) 2.Learn: Use the past to predict the future Avoids constant doubling of TCP SYNs 3.Quick Fallback Happy Eyeballs - IETF79
Current Behavior 5Happy Eyeballs - IETF79 DNS Server Web BrowserServer AAAA? example.com A? example.com example.com, AAAA=2001:db8::1 Example.com, A= TCP SYN, IPv6 TCP SYN, IPv4 about 20 seconds, depending on OS and browser IPv6 is broken
Happy Eyeballs Behavior 1: Probing 6Happy Eyeballs - IETF79 DNS Server Web BrowserServer AAAA? example.com A? example.com example.com, AAAA=2001:db8::1 Example.com, A= TCP SYN, IPv6 TCP SYN, IPv4 Behavior 2: Learn Remember IPv4 success immediate IPv6 is broken
Happy Eyeballs Behavior 3: Quick Fallback 7Happy Eyeballs - IETF79 DNS Server Web BrowserServer TCP SYN, IPv4 TCP SYN, IPv6 IPv4 breaks, IPv6 works aggressive (2-3 seconds) Lots of successful connections Behavior 2: Learn Remember IPv6 success
Happy Eyeballs Status Probing implemented in Links browser No, not Lynx, rather: Quick fallback needs more thought “P” algorithm is our first cut If IPvX is successful, try it first Attaching to new network should clear Learned success 8Happy Eyeballs - IETF79
9 Happy Eyeballs, Discussion Today: Users frustrated with broken IPv6, and tempted to disable IPv6 Should we ask some applications to probe both IPv6 and IPv4? Happy Eyeballs - IETF79