[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: axfr-clarify on the move again
[ post by non-subscriber. with the massive amount of spam, it is easy to
miss and therefore delete mis-posts. your subscription address is
54830374684695-namedroppers@sublist.cr.yp.to, please post from it or
fix subscription your subscription address! ]
Andreas Gustafsson writes:
> I agree that this should be the goal, but the DNS protocol does not
> itself enforce consistency of glue data between parent and child
RFC 1034 and RFC 1035 make crystal clear that record sets in the Domain
Name System at any moment are indexed by class+name+type. Nothing else.
Does this semantic rule mean that copies of data around the Internet are
magically equalized if they have the same class+name+type?
Of course not. Most of the copying protocols have reliability problems,
producing accidental (though usually harmless) inconsistencies. Often
people deliberately introduce inconsistencies---for example, giving
different answers to different clients.
What, then, does the semantic rule mean?
The answer is simple: Implementations are free to store record sets by
class+name+type. If they're faced with two record sets of the same
class+name+type, they can throw one away. Three examples:
1. Consider, once again, client differentiation, or ``views'' in BIND
9: some servers store data by class+name+type+clientIP. Everybody
else is free to assume that this doesn't happen. For example, a
cache that uses two IP addresses for its outgoing requests, and
receives different data under the same class+name+type on the two
IP addresses, is under absolutely no obligation to keep track of
both record sets.
2. Consider, as a simpler example, the fact that different servers
for a zone can have different data. Everybody else is free to
assume that this doesn't happen. If I receive different record
sets from the two servers, under the same class+name+type, I can
use either one. I'm under no obligation to keep track of both
record sets.
3. Finally, getting back to the situation under discussion: It's
certainly possible for a parent and a child to have different data
for the same class+name+type. But everybody else is free to assume
that this doesn't happen. If I receive different record sets from
the two servers, under the same class+name+type, I can use either
one. I'm under no obligation to keep track of both record sets.
In short, the fact that _you_ index your database by something more than
class+name+type does not oblige _me_ to do the same thing.
Andersson argues that the possibility of differing data means that
everyone else has to keep track of the differences. That argument is
clearly fallacious. I'm sure Andersson doesn't believe it himself: the
absurdity of the argument is obvious in situation #2, for example.
---D. J. Bernstein, Associate Professor, Department of Mathematics,
Statistics, and Computer Science, University of Illinois at Chicago
--
to unsubscribe send a message to namedroppers-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/namedroppers/>