Re: [v6ops] Happy eyeballs suggestions, was: Re: Apple and IPv6, a few clarifications

🔓Dan Wing <> Wed, 24 June 2015 07:53 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 611391B3174 for <>; Wed, 24 Jun 2015 00:53:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -14.211
X-Spam-Status: No, score=-14.211 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id YSOjBdwBivuQ for <>; Wed, 24 Jun 2015 00:53:12 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 8C37B1B3175 for <>; Wed, 24 Jun 2015 00:52:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=1647; q=dns/txt; s=iport; t=1435132376; x=1436341976; h=mime-version:subject:from:in-reply-to:date:cc: content-transfer-encoding:message-id:references:to; bh=iqubm691uS9eAIbUbr0owYQhH9THfp0u5iSoxahUeb8=; b=gcFXZNyimYNLhZKVWOImioGX1o5XZRJwG1LEAXw729s18Il3HwxL7Ynt mlZ+2bCmbhhbsnKupCxCaSVdtb7P/ebI8mYpcO5R/CgtjkwOO2q4VpxIt UtrSyjGqqdBM7nKNRJ/xV6OhNehZFa2pPWWOShPx+tcTYD+B845LyoL3v 8=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="5.13,671,1427760000"; d="scan'208";a="162279890"
Received: from ([]) by with ESMTP; 24 Jun 2015 07:52:55 +0000
Received: from [] ([]) by (8.14.5/8.14.5) with ESMTP id t5O7qsDw026090 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 24 Jun 2015 07:52:55 GMT
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2098\))
From: =?utf-8?Q?=F0=9F=94=93Dan_Wing?= <>
In-Reply-To: <>
Date: Wed, 24 Jun 2015 00:52:52 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <> <> <> <>
To: Owen DeLong <>
X-Mailer: Apple Mail (2.2098)
Archived-At: <>
Cc: Vividh Siddha <>,
Subject: Re: [v6ops] Happy eyeballs suggestions, was: Re: Apple and IPv6, a few clarifications
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: v6ops discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 24 Jun 2015 07:53:14 -0000

On 22-Jun-2015 02:53 pm, Owen DeLong <> wrote:
>> On Jun 22, 2015, at 13:50 , Iljitsch van Beijnum <> wrote:
>> On 22 Jun 2015, at 18:49, Owen DeLong <> wrote:
>>>> So if you guys currently look at the RTT for the three-way handshake, it would probably help if you could look at the RTT for data packets instead.
>>> Pretty hard to look at the data RTT when establishing a connection. How do you see that working?
>> I don't know the details of Apple's (or anyone else's) happy eyeballs implementation. If they set up connections, measure the RTT for the three three-way handshake and then abandon the higher RTT session, or initiate connections in parallel and only pursue the one that connects first, then you're right, this would be a problem. On the other hand, if they do an HTTP request over IPv4 and one over IPv6, then an RTT for data segments would be available.
> The few tcpdump logs I’ve looked at would seem to indicate that most (including Apple’s) HE implementations I’ve encountered do the former rather than the latter. Also as near as I can tell, state isn’t tracked from one connection to the next, each new connect() loop sprays a new set of SYNs and then abandons all but the one it selects.

Best explanation of Apple's implementation is by Josh Graessley, who designed (and I believe also coded) the algorithm,  Things have probably improved since 2011.