RE: naming contexts

"Ed Reed" <[email protected]>
Newsgroups gmane.ietf.ldup
Message-ID <[email protected]>
<eer> comments </eer>

=================
Ed Reed
Reed-Matthews, Inc.
+1 585 624 2402
http://www.Reed-Matthews.COM
Note:  Area code is 585

>>> "Kurt D. Zeilenga" <[email protected]> 12/06/01 08:45AM >>>

At 11:35 PM 2001-12-05, Steven Legg wrote:


>Kurt,
>
...

>> If C masters X and Y and A and B are shadows,
>> LDAP/X.500 says that:
>>       A, B, C holds context X
>
>C holds context X, which is now the union of the subtrees X and Y,
>i.e. there is no longer a context Y. A holds a shadow copy of a
>portion (subtree X) of context X. B holds a shadow copy of a different
>portion (subtree Y) of context X.

Yes,
  A,B,C publishes the name of the vertex of X.

<eer> my interpretation is that yes, A, B, and C all publish X as a 
naming context on their rootDSE.  They also will publish X as a 
repliation context on their rootDSE.  B and C will also publish Y as a
replication context on their rootDSE.  

This example is why I was finally persuaded that naming contexts
are different from replica contexts, and that a different rootDSE
attribute was needed to hold the names of verticies of replication
contexts separately from the names of naming contexts.
</eer>

>>
>> If A, B, and C master the subtrees they hold, which
>> contexts does LDUP say they hold?
>
>Having an entry mastered by more that one master DSA doesn't invalidate
>the definition of naming context as far as I can see, but we do need
>to be a bit more careful how we phrase things.
>
>A holds a naming context with the context prefix being the root of the
>subtree X. B holds a naming context with the context prefix being the
>root of the subtree Y. C holds a naming context with the context prefix
>being the root of subtree X, the same root as A but with a superset of the
>entries.

You imply that context prefix information is not replicated
between masters and the definition of a context is local to
each master.

There are three basic ways one could define naming contexts
in face of multi-master replication.
        a) contexts are determined at each master
        b) contexts are determined across all masters
        c) contexts are determined at one master

I note that in single-master replication, naming contexts are
defined consistent with all three.  In multi-master, you need
to choose one.  You appear to choose a), yes?

<eer> My own personal preference is that naming contexts, as I understand
them, are determined for each server, describing the verticies of subtrees
held by that server.

Clearly, at that point, the naming context doesn't describe a vertix in the
DIT, but rather a vertix in a servers DIB.

Knowledge about subordinate subtrees not held locally are defined, in my
world view, in subordinate entries held by servers holding the immediately
superior namespace to the absent subtree.  

In my world view, those subordinate entries are a special type of replica
of the subordinate namespace - they hold only the name of the vertex
of the subordinate namespace and the replicaSubentries for the replication
area that begins at that vertex.  The replicaSubentries contain accessPoint
and replica type attributes for the server that holds each corresponding replica, 
so that a client can pick a replica of the appropriate type.  Alternatively,
if a server is conducting a subtree search for a client encounters one of the
subordinate entries, it can then refer the client to one of the other servers to 
continue the search.

I think this is the "normal" X.500 use of subordinate entries, though I'm fuzzy as
to whether they're simply "glue" entries or "real" entries in the superior
namespace.  I recall being told at one point that the scheme I'm describing
is similar to the one QUIPU used.  Certainly, it's a style of specific subordinate
entries, not nonspecific subordinant entries (NSSE).

The use of replica toplogy information seems useful, to me, as a natural
result of chosing to store the replica topology information in the directory.

I've not tried to be rigorous in my use of terms, here, but rather to convey
a broad impression of what's desireable.  Distributed operations based on
using this in-the-tree replica topology information need to be rigorously
specified, but alas, I know of no LDAP design group chartered to undertake
such an endeavor.

</eer>

>For LDUP we're okay if we say we are replicating "replication contexts"
>rather than "naming contexts".

Yes, one could consider the X and Y subtrees as "replication contexts".

>C can be said to hold two adjacent replication contexts (for subtree X and subtree Y).

Yes.  One could rephrase the question in terms of replication
contexts, not subtrees.

I think you are saying that where a server masters multiple
adjacent replication contexts, these replication contexts
comprise one naming context on that server.  Yes?

<eer>
yes, because that's our interpretation of what people expect to be told by a server when it is asked about the naming contexts that it holds.  And thus, the additional rootDSE attribute to hold information about the replication contexts it holds, which may well list more vertices than the list of naming contexts it holds.
</eer>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.