[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Search over referrals (Re: LAST CALL: draft-ietf-ldapext-referral-00.txt)
Tim, gang:
when reading the referral draft, I started wondering.
The drawing goes like this:
|------------------------------------------------------------|
| Server A |
| dn: o=abc,c=us dn: o=xyz,c=us |
| ref: ldap://hostB/o=abc,c=us ref: ldap://hostD/o=xyz,c=us |
| ref: ldap://hostC/o=abc,c=us objectclass: referral |
| objectclass: referral |
|____________________________________________________________|
|---------------------| |---------------------| |---------------------|
| Server B | | Server D | | Server C |
| dn: o=abc,c=us | | dn: o=xyz,c=us | | dn: o=abc,c=us |
| o: abc | | o: xyz | | o: abc |
| other attributes... | | other attributes... | | other attributes... |
|_____________________| |_____________________| |_____________________|
A subtree search under o=abc,c=us is well defined.
But: What is going to be returned on a single level search under c=us
for "phone=+47 22 33 44 56"?
There are 3 alternatives:
- Server A holds complete copies of all attributes for the entries
that have "referral" as its object class. It can answer the
search without referring.
- Server A holds only the referral data, and returns as many referrals
as there are second-level servers.
- I have misunderstood something, and there is a third alternative.
I believe a DIT structured as the second alternative will be a total
disaster if one is building a directory with any significant distribution
at all; I can imagine a client chasing 5 referrals; I can *NOT* imagine
a client chasing 20.000 referrals.
(There is no procedure in the draft for merging referrals; even if you
get 20.000 referrals to only 5 servers, there are 20.000 referrals to
be chased).
If we want the first alternative, I believe "Referral" should be an auxillary
object class, not a structural one, and the requirement to shadow the
referred-to entry should be plain in the text.
(Yes, I know X.500 doesn't have this restriction. And I know that the
problem has been encountered in X.500 setups.)
Harald A
"Scaling is The Problem. All else is details." (Mike O'Dell)
--
Harald Tveit Alvestrand, Maxware, Norway
Harald.Alvestrand@maxware.no