70 likes | 137 Views
Testing Eyeball Happiness. Fred Baker. The issue I bring to your attention. In dual stack networks, especially if BCP 38 is in use, opening a session can be slow: Code samples using getaddinfo () read: list = getaddrinfo (…); for each address in list Attempt to open a connection
E N D
Testing Eyeball Happiness Fred Baker
The issue I bring to your attention • In dual stack networks, especially if BCP 38 is in use, opening a session can be slow: • Code samples using getaddinfo() read: list = getaddrinfo(…); for each address in list Attempt to open a connection If success, break end for • That is equivalent to list = getaddrinfo(…); for each address in list sleep (3); end for • Common customer support recommendation: • “turn IPv6 off and you won’t have that problem”
Papers of interest • TCP's Reaction to Soft Errors. • Gont. February 2009 • RFC 5461, Informational • Happy Eyeballs: Trending Towards Success with Dual-Stack Hosts • Dan Wing, Andrew Yourtchenko, October 2010 • draft-wing-v6ops-happy-eyeballs-ipv6 • Opening TCP Sessions in Complex Environments • Fred Baker, October 2010 • draft-baker-v6ops-session-start-time • Testing Eyeball Happiness • Baker, November 2010 • draft-baker-bmwg-testing-eyeball-happiness
A proposed test: configuration • Each LAN is configured with one IPv4 and multiple IPv6 prefixes • Alice and Bob have A and AAAA records in DNS • Routers have appropriate routing • Two routers used to make it easy to null route Alice: Unit under Test Bob: Correspondent DNS Router 2 Router 1
A proposed test: procedure • Repeatedly reconfigure Router 1 with various routing: • Only IPv4 connectivity • Only IPv6 connectivity using each of Bob’s several prefixes • Use various blockages: • Null route without ICMP (black hole) • Null route with ICMP “destination unreachable” • Filter with ICMP “administratively suppressed” Alice: Unit under Test Bob: Correspondent DNS Router 2 Router 1
A proposed test: expected outcome • Alice should be able to open a session with Bob, starting from the DNS lookup, within a predictable interval, regardless of address choice • Not really testing the application – presumed to work in existing networks • Outcomes: • What is that interval? • What is the difference between those intervals Alice: Unit under Test Bob: Correspondent DNS Router 2 Router 1
What I would like from BMWG • Sponsorship if bmwg is so inclined • Advice on how best to construct the test