Measuring the Effectiveness of Happy Eyeballs Vaibhav Bajpai and - - PowerPoint PPT Presentation

measuring the effectiveness of happy eyeballs
SMART_READER_LITE
LIVE PREVIEW

Measuring the Effectiveness of Happy Eyeballs Vaibhav Bajpai and - - PowerPoint PPT Presentation

Measuring the Effectiveness of Happy Eyeballs Vaibhav Bajpai and Jrgen Schnwlder {v.bajpai, j.schoenwaelder}@jacobs-university.de RIPE66, Dublin Computer Networks and Distributed Systems Jacobs University Bremen Bremen, Germany May


slide-1
SLIDE 1

Measuring the Effectiveness

  • f Happy Eyeballs

Computer Networks and Distributed Systems Jacobs University Bremen Bremen, Germany May 2013 Vaibhav Bajpai and Jürgen Schönwälder RIPE66, Dublin

{v.bajpai, j.schoenwaelder}@jacobs-university.de

This work was supported by the European Community’ s Seventh Framework Programme (FP7 /2007-2013) Grant No. 317647 (Leone).

slide-2
SLIDE 2

motivation

2/14

getaddrinfo(...) behavior:

returns list of endpoints in an order that prioritizes IPv6 upgrade path if IPv6 is broken, application is unresponsive in order of seconds

  • rder is dictated by [RFC 6724] and /

etc/gai.conf

1) native IPv6 routes ... 2) native IPv4 routes ... 3) IPv4-IPv6 Transitioning routes getaddrinfo(...) preference: TCP connection request

slide-3
SLIDE 3

motivation

3/14

happy eyeballs algorithm [RFC 6555]:

initiate a TCP connect(...) with the first endpoint, give it 300ms switch over with a TCP connect(...) to a different address family otherwise the competition runs fair after 300ms

does the algorithm help improve the user experience?

t0 t0 + 300ms

time IPv6 IPv4 Happy Eyeballs [RFC 6555]

slide-4
SLIDE 4

metric and implementation

4/14

developed a simple TCP happy eyeballs [RFC 6555] probing tool

uses getaddrinfo(...) to resolve service names to endpoints file locking capability uses non-blocking connect(...) to connect to all endpoints of a service the service name resolution time is not accounted in the output can produce either human-readable or machine-readable output uses a short-delay between connection attempts to avoid SYN floods

>> ./happy -q 1 -m www.google.com www.facebook.com HAPPY.0;1360681039;OK;www.google.com;80;173.194.69.105;8626 HAPPY.0;1360681039;OK;www.google.com;80;2a00:1450:4008:c01::69;8884 HAPPY.0;1360681039;OK;www.facebook.com;80;2a03:2880:10:6f01:face:b00c::8;170855 HAPPY.0;1360681039;OK;www.facebook.com;80;31.13.72.39;26665

happy 1) endpoint 2) endpoint 3) endpoint ... n) endpoint connection establishment times (µs) 1) service name 2) port

slide-5
SLIDE 5

measurement trials

5/14

dual-stacked web service name list: measurement cycle length:

1 month

measurement agents:

native IPv6, 6in4, Teredo, IPv6 tunnel broker endpoints, native IPv4 located at Bremen, Amsterdam, Braunschweig

HE.net maintains a list of top 100 dual-stacked service names

some services only provide a IPv6 endpoint on prepending a www they use 1M service names from Alexa Top Sites some domains we expect are missing from the list HE.net does not follow CNAMEs (for e.g. wikipedia.org)

amazon has made 1M service name list public

we use it and script it ourselves to explicitly follow CNAMEs

slide-6
SLIDE 6

how does IPv6 compare in performance to IPv4?

6/14

slide-7
SLIDE 7

TCP connection establishment times

Native IPv6 [Braunschweig] Native IPv6 [Bremen]

7 /14

IPv4 connectivity via DFN [AS 680] IPv6 connectivity via DFN [AS 680] IPv4 connectivity via Gaertner Datensystems [AS24956] IPv6 connectivity via Gaertner Datensystems [AS24956]

slide-8
SLIDE 8

to what extent is IPv6 preferred when connecting to a dual- stacked service?

8/14

slide-9
SLIDE 9

IPv6 preference levels

Teredo IPv6 [Amsterdam] Native IPv6 [Bremen]

9/14

IPv4 connectivity via DFN [AS 680] IPv6 connectivity via DFN [AS 680] IPv4 connectivity via LambdaNet Communications IPv6 connectivity via Teredo

slide-10
SLIDE 10

how slow is a happy eyeballed winner to that of a loser?

10/14

slide-11
SLIDE 11

winner slowness to loser

Native IPv6 [Braunschweig] Native IPv6 [Bremen]

11/14

IPv4 connectivity via DFN [AS 680] IPv6 connectivity via DFN [AS 680] IPv4 connectivity via DFN [AS 680] IPv6 connectivity via DFN [AS 680]

slide-12
SLIDE 12

what are repercussions of reducing the IPv6 advantage from 300ms to 10ms

12/14

slide-13
SLIDE 13

happy eyeballs advantage: 10ms

Native IPv6 [Bremen] Native IPv6 [Bremen]

13/14

IPv4 connectivity via Deutsche Telekom AG [AS3320] IPv6 connectivity via Deutsche Telekom AG [AS3320] IPv4 connectivity via Deutsche Telekom AG [AS3320] IPv6 connectivity via Deutsche Telekom AG [AS3320]

slide-14
SLIDE 14

conclusion

higher connection times and variations over IPv6 will never use Teredo IPv6 unless IPv4 connectivity is broken 300ms advantage leaves 1% chance to prefer IPv4 (even though faster) IPv6 happy eyeballed winner is rarely faster than IPv4 route request:

happy must be run from a wider standpoint to get a more comprehensive picture looking for hosts with native IPv6 connectivity to host our happy test.

14/14

send me your shipment address*, and we ship you a SamKnows probe.

* v.bajpai@jacobs-university.de

10ms advantage helps remove outliers where IPv6 connectivity is bad