Multiple Namespaces Re: Split the IANA functions?

Olafur Gudmundsson <ogud@ogud.com> Thu, 09 January 2014 17:09 UTC

Return-Path: <ogud@ogud.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DA7241ADFA4 for <ietf@ietfa.amsl.com>; Thu, 9 Jan 2014 09:09:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham
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 AhA6_ZwDbspu for <ietf@ietfa.amsl.com>; Thu, 9 Jan 2014 09:09:38 -0800 (PST)
Received: from smtp86.ord1c.emailsrvr.com (smtp86.ord1c.emailsrvr.com [108.166.43.86]) by ietfa.amsl.com (Postfix) with ESMTP id B6CCB1ADF96 for <ietf@ietf.org>; Thu, 9 Jan 2014 09:09:38 -0800 (PST)
Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp3.relay.ord1c.emailsrvr.com (SMTP Server) with ESMTP id 346C25020F for <ietf@ietf.org>; Thu, 9 Jan 2014 12:09:29 -0500 (EST)
X-Virus-Scanned: OK
Received: by smtp3.relay.ord1c.emailsrvr.com (Authenticated sender: ogud-AT-ogud.com) with ESMTPSA id 04C0850224 for <ietf@ietf.org>; Thu, 9 Jan 2014 12:09:28 -0500 (EST)
Content-Type: text/plain; charset="iso-8859-1"
Mime-Version: 1.0 (Mac OS X Mail 6.6 \(1510\))
Subject: Multiple Namespaces Re: Split the IANA functions?
From: Olafur Gudmundsson <ogud@ogud.com>
In-Reply-To: <2520.1389225982@perseus.noi.kre.to>
Date: Thu, 09 Jan 2014 12:09:28 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <03224C28-8623-41FE-839F-A544D174DDB3@ogud.com>
References: <94F13021-48B9-4CE9-995A-1081DC75A52D@isi.edu> <CAMm+LwinAb6+7BoMzwBWyu63vofndxK9VY6DSNN0Ykza4SxuMQ@mail.gmail.com> <52CB0010.5010407@gmail.com> <CAMm+LwhN8+z9q4KQXVY9bWA6TAqxx1=Qg0OUfK=VGCSDg5uWEA@mail.gmail.com> <DD618936-0D13-41F1-8D89-2E3171D864B5@istaff.org> <52CB31F4.3090703@cs.tcd.ie> <52CB987A.20300@cisco.com> <20140107144412.GB11068@mx1.yitter.info> <2520.1389225982@perseus.noi.kre.to>
To: "ietf@ietf.org Discussion" <ietf@ietf.org>
X-Mailer: Apple Mail (2.1510)
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 09 Jan 2014 17:09:41 -0000

On Jan 8, 2014, at 7:06 PM, Robert Elz <kre@munnari.oz.au> wrote:

>    Date:        Wed, 8 Jan 2014 13:07:12 -0800
>    From:        manning bill <bmanning@isi.edu>
>    Message-ID:  <94F13021-48B9-4CE9-995A-1081DC75A52D@isi.edu>
> 
>  | There can be/ have been multiple roots in the DNS - HOWEVER, there is
>  | a always a single root _per class_.
> 
> I'm not sure that's correct.   Nor do I know it is incorrect.  Classes
> were (and are) so under-specified that exactly how they were intended to
> work (if there was ever a clear and understood interpretation of that)
> seems lost in the mists of time.
> 
<snip> 
> There really is no way out of this - people wanting multiple roots really
> just want to change who controls that rot - usually to someone they consider
> friendly to themselves (like themselves) rather than someone that they consider
> the enemy (ietf/iana/icann/...)
> 
> kre
> 


The fundamental problem with multiple namespaces we have now is "how does one express what namespace the name is in?"

Some people have tried to do this with postfix (eg. .onion or .local)
Others have said look first in namespace X then in namespace Y (MDNS)

Another signifiant problem is how to provide a programming interface to lookups in the new namespaces, 
for expediency people frequently start out by extending the functions that look up in DNS. 

Personally I think that if we want to to become serious about supporting multiple namespaces we need guidelines on:
	How new namespaces are identified 
	How to "register" namespace identifiers and operators of the namespace root (if applicable) as well as how names 
		are registered/selected in the namespace. I use the word register here loosely, as I do not know if anything other than 
	        centralized service will work to avoid conflicts. 
	On top of existing name lookup functions we need a multiplexer function that understands how to access 
		the namespace and calls appropriate lookup functions 
	Automated discovery of how to use new namespaces without this new namespaces will take a long time to deploy.
	How/If to support Meta Namespaces i.e. check a series of namespaces in either in a particular order and use first match OR
	       lookup in parallel in a number of name spaces. 

The difference in lookup function could be DNS vs  DNS for different class vs Distributed hash. 
In the first and second case we can in theory use the same functions but with different starting point and different cache (if one is present) 
in the third case a different function is needed. 

<potentially moving into solution space to make a point, this is NOT A FORMAL PROPOSAL> 

No matter how we do the identification of name spaces other than DNS in class IN, postfix IMHO is the wrong answer. 

One possibility is to use a prefix, something like GNU##freedom.eff     (## picked at random as separator) 
to express that lookup should take place in the namespace GNU for host freedom.eff.  
The advantage of a prefix is that it appears in a better location for a namespace multiplexing function when it is parsing the string and in theory
the namespace multiplexing function does not need to understand the rest of the string past the namespace identifier. 

Thus in this notation DNS###tools.ietf.org is the corresponding expression for looking up the host name: tools.ietf.org in class IN of DNS,

On a billboard or web page this would become either https://DNS##tools.ietf.org or DNS##https://tools.ietf.org depending if we put the
protocol or Namespace first. 

Working out a timeline to complete an effort to make all of this work is left as an exercise to the reader 

	Olafur