[v6ops] review: draft-pauly-v6ops-happy-eyeballs-update-01

"Bajpai, Vaibhav" <vaibhav.bajpai@tum.de> Mon, 10 April 2017 12:43 UTC

Return-Path: <vaibhav.bajpai@tum.de>
X-Original-To: v6ops@ietfa.amsl.com
Delivered-To: v6ops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B5043126BF0 for <v6ops@ietfa.amsl.com>; Mon, 10 Apr 2017 05:43:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.3
X-Spam-Level:
X-Spam-Status: No, score=-4.3 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=tum.de
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id H76YiBeHRLwr for <v6ops@ietfa.amsl.com>; Mon, 10 Apr 2017 05:43:02 -0700 (PDT)
Received: from postout2.mail.lrz.de (postout2.mail.lrz.de [IPv6:2001:4ca0:0:103::81bb:ff8a]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1B97E12940D for <v6ops@ietf.org>; Mon, 10 Apr 2017 05:43:02 -0700 (PDT)
Received: from lxmhs52.srv.lrz.de (localhost [127.0.0.1]) by postout2.mail.lrz.de (Postfix) with ESMTP id 3w1qbR6qczzyRK for <v6ops@ietf.org>; Mon, 10 Apr 2017 14:42:59 +0200 (CEST)
Authentication-Results: postout.lrz.de (amavisd-new); dkim=pass (2048-bit key) reason="pass (just generated, assumed good)" header.d=tum.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tum.de; h= mime-version:content-transfer-encoding:content-id:content-type :content-type:content-language:accept-language:message-id:date :date:subject:subject:from:from:received:received:received :received; s=postout; t=1491828179; bh=pgzEqqbP7RxCMFrwafXam/Wru u5P8wEqf//9aq8Xngk=; b=Vv2Wd7EUSwC9qR3Yy0xFy/IJS7ow8aiArsc5Eh5XB qvy34/ybwprenIhQDELWehhWngUiJUXktWC4o8ic4taO+qPOpe3yuGCwxuz1uAMe 3slzpZzueiyk+IlJZAsk4OpfMz6GQHPAGlFYvk6WmNpho1UNKWrYp5gSzHL+YcmK 2sr7yCMDFBue9CG+3QYAtz9X+2lk5BvWq5+hVj6nl/FBlH/VjnyHZIUaq4Xj1FHs /CdV/0WyM/lVUUfE2B+xSS46/dk8DCQjO+kO4jUyI8yMjsoOQoNpZ2am9c8eOKNR i0RnZao6Dz+MBbVn7Dk7lDi2fw7+jVbn8CN03JkGTmefw==
X-Virus-Scanned: by amavisd-new at lrz.de in lxmhs52.srv.lrz.de
Received: from postout2.mail.lrz.de ([127.0.0.1]) by lxmhs52.srv.lrz.de (lxmhs52.srv.lrz.de [127.0.0.1]) (amavisd-new, port 20024) with LMTP id wozWmf-sG_3H for <v6ops@ietf.org>; Mon, 10 Apr 2017 14:42:59 +0200 (CEST)
Received: from BADWLRZ-SWMBX02.ads.mwn.de (BADWLRZ-SWMBX02.ads.mwn.de [IPv6:2001:4ca0:0:108::158]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "BADWLRZ-SWMBX02", Issuer "BADWLRZ-SWMBX02" (not verified)) by postout2.mail.lrz.de (Postfix) with ESMTPS id 3w1qbR1HlxzySt for <v6ops@ietf.org>; Mon, 10 Apr 2017 14:42:59 +0200 (CEST)
Received: from BADWLRZ-SWMBX02.ads.mwn.de (2001:4ca0:0:108::158) by BADWLRZ-SWMBX02.ads.mwn.de (2001:4ca0:0:108::158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.669.32; Mon, 10 Apr 2017 14:42:56 +0200
Received: from BADWLRZ-SWMBX02.ads.mwn.de ([fe80::19fa:4919:5296:5c3b]) by BADWLRZ-SWMBX02.ads.mwn.de ([fe80::19fa:4919:5296:5c3b%14]) with mapi id 15.01.0669.032; Mon, 10 Apr 2017 14:42:56 +0200
From: "Bajpai, Vaibhav" <vaibhav.bajpai@tum.de>
To: "v6ops@ietf.org" <v6ops@ietf.org>
Thread-Topic: review: draft-pauly-v6ops-happy-eyeballs-update-01
Thread-Index: AQHSsff6UkOO3VKiIkq7L+eRJOTysw==
Date: Mon, 10 Apr 2017 12:42:56 +0000
Message-ID: <01906ec6-9bfa-4205-a730-b9c08326e90e@BADWLRZ-SWMBX02.ads.mwn.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-messagesentrepresentingtype: 1
x-originating-ip: [131.159.24.54]
Content-Type: text/plain; charset="utf-8"
Content-ID: <D36B4DC22529C4489EFA73D985114A92@ads.mwn.de>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/v6ops/BBMa1fMHZj9lxLpybptGtyPNNo0>
Subject: [v6ops] review: draft-pauly-v6ops-happy-eyeballs-update-01
X-BeenThere: v6ops@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: v6ops discussion list <v6ops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/v6ops>, <mailto:v6ops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/v6ops/>
List-Post: <mailto:v6ops@ietf.org>
List-Help: <mailto:v6ops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/v6ops>, <mailto:v6ops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 10 Apr 2017 12:43:04 -0000

> An Update to Happy Eyeballs
> draft-pauly-v6ops-happy-eyeballs-update-01

The draft is trying to do 2 things at once (describe Apple's implementation
and provide a RFC 6555 update) which is mixing things up. For instance, 
after having read the draft, I end up getting more confused on what Apple's
implementation actually does. See below for details.

My suggestion would be to shelf this draft for now, but first describe 
Apple's implementation as an informational RFC. This should go quick and be
very useful to the community. I agree that RFC 6555 needs an update (see [a]
for details), but perhaps it is easier to do once ^ is done, so that we can 
cherry pick good parts from Apple's experience (and from others who have 
longitudinal HE datasets, implementation experience) to update RFC 6555.

[a] https://doi.org/10.1145/2959424.2959429

-- Vaibhav



details
-------


-- The draft needs to explicitly state what is the problem with current RFC
6555 description and why it needs an update.

-- It is not clear how the recommendations made in this draft [b] relate to
Apple's [c] implementation.

[b] https://tools.ietf.org/html/draft-pauly-v6ops-happy-eyeballs-update-01
[c] https://www.ietf.org/mail-archive/web/v6ops/current/msg22455.html




// §3: Hostname Resolution Query Handling

-- 'If one query fails to return, or takes significantly longer to return'

how long is significantly long?



-- 'This delay will be referred to as the "Resolution Delay".  The RECOMMENDED
value for the Resolution Delay is 50 milliseconds.’

how is this value of 50 ms determined? Doesn't Apple's implementation use a 
25 ms timer instead? [a]



[a] https://www.ietf.org/mail-archive/web/v6ops/current/msg22455.html

-- what is a 'staggered' connection?

-- In what % of cases you see that DNS queries are made over v6 transport?

-- In what % of cases, you see that AAAA queries not cached, but A queries
are? Is this invariant of the underlying transport?



// §4: Sorting Addresses

-- 'If the client is stateful and has history of expected round-trip
   times (RTT) for the routes’

How long should be the history?


-- 'This historical data MUST NOT be used across networks, and SHOULD be
flushed on network changes.’

Unclear what you mean by network change, an example here would be nice.


// §5: Connection Attempts

-- 'This delay is referred to as the "Connection Attempt Delay".  One
recommended value for this delay is 250 milliseconds.’

How is this value determined? This is not what Apple's implementation [a] 
does right? Then how do you recommend this value?

[a] https://www.ietf.org/mail-archive/web/v6ops/current/msg22455.html

-- 'The recommended formula for calculating the delay after starting a
connection attempt is: MAX( 1.25 * RTT_MEAN + 4 * RTT_VARIANCE, 2 * RTT_MEAN
), where the RTT values are based on the statistics for previous address
used.’

How is this formula determined? Why does this give good results?

-- '... all other connections attempts that have not yet
   succeeded SHOULD be cancelled.’

I think you mean terminated.



--------------------------
Vaibhav Bajpai
www.vaibhavbajpai.com

Postdoctoral Researcher
TU Munich, Germany
--------------------------