Subject: Re: Zone cut

From: Edward Lewis <[email-masked]>
Date: Wed, 12 Jan 2005 10:20:49 -0500

At 13:50 +0000 1/12/05, Alex Bligh wrote:
>I had always assumed (fatal error) that although the location of the
>zone cut is clearly relevant to implementation of DNS protocol, it
>should be transparent to applications using it, i.e. that an
>application should be able to rely on the fact that a the domain name
>foo.bar.example.com works the same, whether or not there's a zone cut
>between labels "foo" and "bar". As such I further assumed that protocols
>SHOULD NOT rely on the location of the zone cut.

Hmmmm.  (This kind of rambled on and on as I wrote...)

I can think of two applications efforts in which knowledge of zone 
cuts have come up.  I'll lay them out as data, not pointing out 
whether this is good or bad.

CRISP/IRIS, (a few will hate me for this analogy: = "WHOIS on 
steriods") has discussed using awareness of zone cuts to know where 
to locate IRIS-speaking servers.  There are alternatives to that 
using SRV and NAPTR, off the top of my head I forget whether 
awareness of zone cuts is still significant.  Perhaps not, but it was 
in there at one time.  Also, zone cuts in the reverse map didn't 
yield the desired results.

MARID, that ill-fated mail-related group, kicked around the idea of 
using records at the apex of a zone to cover the domains in the zone 
- an end run around them nasty wildcards.

I raise these not to say that apps should be aware of zone cuts, even 
if they seem to want to be.  I think IRIS uses other navigation 
techniques now, the MARID WG has been buried.  So "should be aware" 
might be "no".

>Thinking about it again, I don't have much basis for the assumption apart
>from the fact it seems a good principle of abstraction in a layered
>architecture (to encapsulate underlying protocol implementation so
>it's invisible to upper layers), and that it might allow future protocol
>changes where (for instance) zone cut markedly changed or ceased to
>exist as a concept (perhaps some day we might want zone cut==label cut).

Well, zone cuts are manifestations of administrative boundaries 
within the data model of DNS.  In as much as a the management/control 
plane of the protocol determines how the data plane "works", the 
mgt/control plane doesn't determine what is in the data plane.

One of the back-of-the-mind concepts that underlies DNS is the 
difference between names, addresses and routes.  A name is a tag that 
identifies an object.  An address is a tag that identifies where an 
object is, and changes as an object moves.  A route is a tag that 
identifies how to get from one object to another - and changes if 
either or both ends move.

A domain name (sequence of labels and all that) isn't really a name 
by that definition - you can argue (fruitlessly) whether it is an 
address (in the tree) or a route (from the root [no pun intended]). 
I tend to think of it as a route - because the labels prescribe the 
path.  OTOH - we never write www.example.cctld.gtld.example.www to 
talk about how to route between two domains.

Come to think of it, there's a different abstraction I use for the 
DNS data model though.  Whether domain names are routes or addresses 
is really a management/control "how you find it" issue.  For the data 
model, I think of DNS as an old time n-tuple/blackboard system(s) I 
learned about in AI days.

The idea is that you through up a 4-tuple (QNAME, QTYPE, QCLASS, 
____) and get another one back (QNAME, QTYPE, QCLASS, RDATA).  In 
lectures on these mythical systems, it didn't matter how the system 
found the response, that's what you got.  (Note: this is why I stomp 
my feet so much about query flags not being part of the query.)

In short, with that concept behind the data model of DNS, the 
management structure is not supposed to be exposed to the service 
user.  But protocol engineers being protocol engineers - we just 
can't stand to let laying principles get in the way.

>Was my assumption right or wrong? Should it be documented?

This should already be in 1034 (Concepts) unless there are 
clarifications needed.  Maybe there and in a bunch of texts on AI, 
data structures, command and control systems (for the plane 
things)... ;)

In summary - I thought this was going to be a 30-second response, a 
break from a deadline I have on other stuff.  But Alex's question is 
hitting the tip of an iceberg on a discussion about the computer 
*science* essence of DNS.
-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Edward Lewis                                                +1-571-434-5468
NeuStar

"A noble spirit embiggens the smallest man." - Jebediah Springfield

--
to unsubscribe send a message to [email-masked] with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/namedroppers/>