Re: [dnsext] Re: I-D ACTION:draft-vandergaast-edns-client-ip-00.txt

Nicholas Weaver <nweaver@ICSI.Berkeley.EDU> Thu, 28 January 2010 17:01 UTC

Return-Path: <owner-namedroppers@ops.ietf.org>
X-Original-To: ietfarch-dnsext-archive@core3.amsl.com
Delivered-To: ietfarch-dnsext-archive@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id A390D3A6A94; Thu, 28 Jan 2010 09:01:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.599
X-Spam-Level:
X-Spam-Status: No, score=-106.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oloaU6ncBwd7; Thu, 28 Jan 2010 09:01:03 -0800 (PST)
Received: from psg.com (psg.com [147.28.0.62]) by core3.amsl.com (Postfix) with ESMTP id D21A93A6A86; Thu, 28 Jan 2010 09:01:03 -0800 (PST)
Received: from majordom by psg.com with local (Exim 4.71 (FreeBSD)) (envelope-from <owner-namedroppers@ops.ietf.org>) id 1NaXei-000Kvz-D7 for namedroppers-data0@psg.com; Thu, 28 Jan 2010 16:55:44 +0000
Received: from [192.150.186.11] (helo=fruitcake.ICSI.Berkeley.EDU) by psg.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.71 (FreeBSD)) (envelope-from <nweaver@ICSI.Berkeley.EDU>) id 1NaXef-000KvC-CR for namedroppers@ops.ietf.org; Thu, 28 Jan 2010 16:55:41 +0000
Received: from [IPv6:::1] (jack.ICSI.Berkeley.EDU [192.150.186.73]) by fruitcake.ICSI.Berkeley.EDU (8.12.11.20060614/8.12.11) with ESMTP id o0SGsvFx021200; Thu, 28 Jan 2010 08:54:57 -0800 (PST)
References: <7c31c8cc1001271556w4918093er6e94e07cb92c4dc4@mail.gmail.com> <6184.1264657589@nsa.vix.com> <4966825a1001280807i768a33ccs98f809366bce33d8@mail.gmail.com> <48894.1264695230@nsa.vix.com>
In-Reply-To: <48894.1264695230@nsa.vix.com>
Mime-Version: 1.0 (Apple Message framework v1077)
Content-Type: text/plain; charset="us-ascii"
Message-Id: <18238CB8-4A5E-40B0-8A3C-CE3849033EB4@icsi.berkeley.edu>
Content-Transfer-Encoding: quoted-printable
Cc: Nicholas Weaver <nweaver@ICSI.Berkeley.EDU>, Carlo Contavalli <ccontavalli@google.com>, Wilmer van der Gaast <wilmer@google.com>, namedroppers@ops.ietf.org
From: Nicholas Weaver <nweaver@ICSI.Berkeley.EDU>
Subject: Re: [dnsext] Re: I-D ACTION:draft-vandergaast-edns-client-ip-00.txt
Date: Thu, 28 Jan 2010 08:54:57 -0800
To: Paul Vixie <vixie@isc.org>
X-Mailer: Apple Mail (2.1077)
Sender: owner-namedroppers@ops.ietf.org
Precedence: bulk
List-ID: <namedroppers.ops.ietf.org>
List-Unsubscribe: To unsubscribe send a message to namedroppers-request@ops.ietf.org with
List-Unsubscribe: the word 'unsubscribe' in a single line as the message text body.
List-Archive: <http://ops.ietf.org/lists/namedroppers/>

On Jan 28, 2010, at 8:13 AM, Paul Vixie wrote:
>> Rather than adding client identity, what we're trying to do is address
>> a concrete problem that affects CDNs, open resolvers, and many large
>> sites, that for whatever reason, use the source ip of the query to
>> determine which reply to return to the user.
> 
> i don't think that's a general enough solution to be worth standardizing.
> please investigate the larger context of client identity, beyond the needs
> of CDN's.

ANY system which desires that a request be routed to the "best" instance which is appropriate to handle the request, without the need to introduce divergent names (which impacts user experience), detailed protocol changes to HTTP and a host of other protocols, front-end redirection, or IP routing (multipathing), would greatly benefit from knowing the requesting client's IP address in the name lookup, and can ONLY route 

That may "only" be CDN, but CDN or CDN-like tricks are VERY important on the current Internet, and without the ability for CDN's to produce meaningful values, this limits the ability of third-party DNS resolver providers to do any good: one of the common complaints about OpenDNS is it "makes YouTube slow".




However, on this draft I'd recommend that resolvers implementing this should do a fallback model:


When initially querying any new authority, the resolver is advised that it should conduct both a query with this EDNS0 extension and, if no result is seen in a shortened timeout (1s) a second one without, using different transaction IDs and port numbers, and use a TRW-style count of success/failure to determine whether the authority accepts such records or not.  

If there are more than T such failures for an authority, it should be noted as not supporting this EDNS0 extension in a broken manner (causing failure), and this extension should not be used in subsequent communications with this authority.

Thus authorities which react badly to unknown EDNS0 extensions will still be reachable, and after only a few short timeouts, not experience any worse resolution latency.