[dnsext] Incoherency and draft-vandergaast-edns-client-ip-00.txt

Brian Dickson <brian.peter.dickson@gmail.com> Tue, 02 February 2010 19:46 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 0431C3A6810; Tue, 2 Feb 2010 11:46:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.598
X-Spam-Level:
X-Spam-Status: No, score=-106.598 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, 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 7oZkqgGxkQAI; Tue, 2 Feb 2010 11:46:47 -0800 (PST)
Received: from psg.com (psg.com [147.28.0.62]) by core3.amsl.com (Postfix) with ESMTP id 08BA63A672F; Tue, 2 Feb 2010 11:46:47 -0800 (PST)
Received: from majordom by psg.com with local (Exim 4.71 (FreeBSD)) (envelope-from <owner-namedroppers@ops.ietf.org>) id 1NcOd1-000MiD-EJ for namedroppers-data0@psg.com; Tue, 02 Feb 2010 19:41:39 +0000
Received: from [209.85.218.227] (helo=mail-bw0-f227.google.com) by psg.com with esmtp (Exim 4.71 (FreeBSD)) (envelope-from <brian.peter.dickson@gmail.com>) id 1NcOcz-000Mhn-4q for namedroppers@ops.ietf.org; Tue, 02 Feb 2010 19:41:37 +0000
Received: by bwz27 with SMTP id 27so463294bwz.39 for <namedroppers@ops.ietf.org>; Tue, 02 Feb 2010 11:41:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type; bh=/c1GMJpwAsJbWGFHaE0s1vu6ziGce2N64dRTKpwGo5Y=; b=Yn6rEVvYRg8HeXG2S7eVGjVcIxyPM5Sa53XTCOnzCMdX2z/o3VTuAkyegneDALO8ab wZT0Cc8g3uFhAlZlKUoKfx/9RWa52iec9DTW3ds6yzQUYkD4mI2bsir0XsdE4pw+4dzy elr00x16/zq4p/5uElzz4qTcWu/ME+dnhFxgs=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=ci1xYm8K3pUQyPD2EuixEXK6GOT4Hlq4VevtrPIfDoQVw9amelmvwLnr2JpZbpy6iH KWEkyrTTVvSOTMgklmrH4wWgJcW/CgMU0PqJVPwShmGoElbkHrXJ3UY5RSLcLaMTf7HY n1dAoFKjPiDSJAB9QdkAurCvfY9NKPAzPHces=
MIME-Version: 1.0
Received: by 10.204.10.146 with SMTP id p18mr728223bkp.94.1265139695758; Tue, 02 Feb 2010 11:41:35 -0800 (PST)
Date: Tue, 02 Feb 2010 15:41:35 -0400
Message-ID: <3e1abd2c1002021141y673c0357r6ceea130143f988b@mail.gmail.com>
Subject: [dnsext] Incoherency and draft-vandergaast-edns-client-ip-00.txt
From: Brian Dickson <brian.peter.dickson@gmail.com>
To: namedroppers@ops.ietf.org
Content-Type: multipart/alternative; boundary="00032555937a283439047ea34a62"
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/>

Let's presume the idea here is to genuinely make a scalable, interoperable
framework for incoherent queries, with the intent of supporting "special
needs" (e.g. CDN networks and their resolvers).

Clearly, an operator of such an infrastructure could do what they like in a
closed (undocumented or at least non-standardized) fashion.

However, the idea of standardizing this has several benefits - multiple
implementations, inter-operator compatibility, overall improvement of
utility of the results.

As such, here are specific suggestions/ideas:

- Support for multiple selection criteria for incoherency (such as Paul
suggested - language, lat/long, IP, etc.). Generalize the structure, and
break out the specific entries in separate IDs/RFCs.
- Support for order-of-operations on the multiple criteria. Closest X that
supports Y,  may be different from closest Y that supports X.
- Specify the behavior of match/no-match on support for specific criteria on
an ordered set of criteria - e.g. don't care about language, do support IP,
return results that encode and parameterize the component results

And most particularly, there are two approaches that should be distinguished
between, that have drastically different characteristics in what needs to be
stored/accessed, on the recursive resolver.

If the incoherence is introduced at some referral level, it looks like this:

Root-> (ns) -> TLD -> (ns) -> Incoherent-delegator -> (ns based on edns0
option(s)) -> authority server (with coherent-to-this-server results)

This would mean that a relatively small number of nameservers, e.g. operated
by specialized service operators, or by TLD operators, or whoever, would
need to special incoherence handling.
The actual authority data caching would be based on (label,IP).

Contrast that with incoherence only at the authority server level itself:

Root -> (ns) -> TLD -> (ns) -> authority server (with
incoherent-within-this-server results, returned based on query edns0
options).

The authority data would have to be cached, and retrieved/returned, based on
(label,IP,a_bunch_of_other_parameters).

I'd suggest that an open structure, with the intent of handling incoherence
in referrals only, would be the preferred way to go.

Brian