Shared TLD Daily Digest, Aug 22, 1996 - Part 1

-> Publish & Subscribe
     by Simon Higgs 
-> Re: yet more unworkable distributed design
     by Michael Dillon 


----------------------------------------------------------------------

Date: 21 Aug 1996 07:47:47 -0700
From: perry@piermont.com
Subject: Re: New Non-Shared TLD's Create More Monopolies


Kent Crispin writes:
> > > Nope.  I'm suggesting a perl script that runs rwhois, gets the data,
> > > and inserts all of it into a local whois database.
> >
> > Yuck!
>
> You could write it in C++, or perhaps have a CGI interface, if you
> like :-)

The "Yuck!" is because this isn't a robust way to run a database
management system.

Maybe you haven't built systems designed to deal with large numbers of
transactions and work reliably, but those of us who have know that its
fine to hack something together with chewing gum and scotch tape when
you aren't operating on a large scale, but once things get big you are
setting yourself up to have your throat cut from ear to ear.

> > > "Distributed" to me implies "distributed responsibility".
> >
> > You cannot distribute the responsibility to apply the first-come
> > first-served rule.
>
> Of course you can.

Kent, I hate ad hominems. I really do. However, we are starting to
talk technical turkey here.

How many real world transaction systems where significant money was on
the line have you built? Because it sounds to me like the answer is
"none". I built my first accounting system on contract when I was
sixteen, more than a few years ago. I really hate centralized
relational databases. They are ugly things and they are generally
designed by chinese waves of drool bucket brigade members. However,
there are times when the things are indispensable. You cannot build a
real world interactive transaction system without one. I understand
that you have political goals here, and I share them, but there is one
thing you are going to have to get straight: there is no amount of
klugery that is going to make a seventy way commit written in Perl
work, period, and there is no system which is going to operate
properly where you try to reconcile things at the end of the day
because conflicts burn money and cause lawsuits. Everyone else here
seems to have accepted the inevitable -- a small central database. It
doesn't have to be large, it doesn't have to be complicated, and it
can be viewed as a service provider hired on behalf of all the
registries by the International Association of Internet Registries if
you like, but it is going to have to be there.

Quit with the dreams of ten minutes worth of Perl now, because that
isn't going to cut any of it. Maybe a fine front end will be built in
SybPerl with Tk or some such, but the back end of this baby isn't
going to be a bunch of flat files passed around over TCP connections
by Perl scripts. If it is, I bail out, because the InterNIC is better
for the world than that would be.

> > What is this monopolistic abuse problem?
>
> Hypothetical:  IANA is charged with running the CDB.  5 years from
> now a contract is let to a company, Network Savants, Inc., to manage
> the CDB.  NSI (no relation to the current NSI) decides that a
> subsidiary will go into the registry business...

Big deal. If the CDB is run under a contract that specifies fees, they
can't raise them except as specified. If it is run under a contract
that specifies that the CDB organization can't run a registry, it
can't. If the contract says "thou shalt do nothing with the data other
than hand it daily to the root servers and the whois servers", well,
thats legally binding.

> [argument deleted]
>
> I thought through this stuff a while back in my initial half-baked
> suggestions for a voting protocol with unforgable timestamps.  I
> agree that it is simpler to have a centralized interlock mechanism.
> I don't agree that it is the only system that will work -- there are
> tradeoffs, that's all.

Kent, if you can build a functioning 70 way commit mechanism that
actually works in the field over the internet, you'll get a PhD and an
endowed chair in database systems at a computer science department
somewhere within weeks. Its too hard a problem for anyone I know of to
build, but I certainly won't say you shouldn't work on it. However,
are we trying to do way past bleeding edge CS research, or are we
trying to build a functioning registry system?

Perry


----------------------------------------------------------------------

Date: 21 Aug 1996 08:08:02 -0700
From: "Richard J. Sexton" 
Subject: Re: yet more unworkable distributed design, was New Non-Shared  TLD's Create More Monopolies

>Can we get back to sketching out the CDB protocol now, please?

Yes, and with some sort of authorization scheme so authorized agents
can make changes to it.

Changes should be able to be made, byt the right people, damn quickly.



----------------------------------------------------------------------

Date: 21 Aug 1996 08:36:01 -0700
From: perry@piermont.com
Subject: Re: New Non-Shared TLD's Create More Monopolies


Kent Crispin writes:
> > Thats what public keys are for. If you involve humans,
>
> It is a human who makes the decision to change registries.  That
> human contacts the registries involved, and says (via email or over
> the phone, or via a certified letter, or whatever normal business
> practice is)  "I want to change".

I think you miss the point.

A public key should be associated with each domain. Then, when you
want to change, you hand a PK signed statement to the new
registry. That way, YOU control the domain, not the registry.

Helps from a liability standpoint, too.

> Interesting comments, but they just don't address the same issue I
> was.  I have a domain name registered with registry A.  Registry A and
> I get into a dispute, so I want to move my registration to B.  Those
> bastards at A constantly screw up my data (that's why I want to
> change).  The CDB can have the fanciest authenticated DB protocol
> imaginable, but it simply doesn't matter.  The transfer of business
> relationship is between the registries and the customer.  This is a
> human transaction that you simply aren't going to automate.

Since public key is used to talk to the CDB, no humans are needed at
the CDB. I'm afraid you have a lack of imagination about what is
possible here.

> Furthermore, if the registries are the authoritative sources for the
> contact information,

I don't understand this "authoritative" buisness. Perhaps you could
explain it to me. If the data is required to be identical at the CDB
and elsewhere, what does "authoritative" mean?

> > The only 'authoritative' information is the information sitting in the
> > DNS, since its the only stuff that matters in the last analysis. You
> > can call anyone's copy of the database 'authoritative' for laughs, but
> > that doesn't matter -- what matters is what gets cut to produce DNS
> > entries.
>
> I'm pretty sure you actually know what authoritative means, but to
> humor you: the authoritative copy of a database is the one whose
> information is considered correct, if there is a discrepancy.

Billing and contact information is used by the registry, not by the
CDB, so that ends up being a matter of registry policy, not a matter
of system design.

HOWEVER, it is likely important that up to date and accurate
information be kept at the CDB in case of a registry vanishing, or in
case the CDB needs to contact the users of a failed registry (to
inform them that they have to switch), to cut the whois database, and
for other similar reasons.

> You argue that it should also be kept at the CDB; I argue that it
> shouldn't,

Why the hell not?

> and that *if* it is, the data at the CDB is just a good-faith copy
> -- the data at A is the master.

"Master" is a matter of opinion. So long as its required to be kept up
to date, I don't care what you call the "master". Call the copy kept
on CP/M formatted 8 inch floppies the "master" for all I care.

> Now, your comment that "authoritative" is really meaningless in the
> context of whois data is quite interesting.  I suppose you mean that a
> registry could, for example, put whatever information for contact
> information it wanted in the CDB, and just keep its private records
> for billing purposes.

No. I'm arguing that "authoritative" is meaningless. "Authoritative"
means something in the context of, for instance, DNS records, because
some servers are guaranteed to have the freshest data, and others just
have cache. However, in this context, the data at the CDB should be
kept accurate. Whether the registry keeps a second database, a
different database, or anything else is of no concern. The only
requirement is that the data at the CDB be *accurate*, in case it is
needed.

> I was referring to the fact that the contract (cooperative agreement)
> expires soon, and we would like it to be changed.  That is, *contracts
> can change*.  We view the possible change in this case in a positive
> light, but contracts can change for the worse, as well.

Contracts can last a long time.

The contract that established the franchise of the Empire City Subway
Company to run all the wiring ducts under New York City was signed in
1883. It is still in force, unchanged, after all these years, even
with the original city organization that signed the contract no longer
in existance.  There is no rule that says contracts cannot last 150
years if need be.

> We as technical weenies are really incompetent in the legal arena.

Speak for yourself. I'm not a lawyer, but the elements of contract law
are really easy.

> > Nope, it isn't. Something fucks up your primary DNS entries, you need
> > it fixed NOW. The InterNIC already takes too long on this.
>
> 1)  Failure of your primary DNS doesn't constitute a Net Catastrophe.
> 2) Emergency cases are exceptional -- "turnaround time of a week"
> refers, I think fairly obviously, to the average case.

There will be several hundred disasters a day to deal with. The
mechanisms for dealing with them must be smooth and cheap, or they
will drown out all other costs.

What costs money in any situation like this are the exception
cases. That which happens only to one person in 100 happens damn often
when you are running 10,000 new registrations a week.

> > No. You need something to cut the masters that generate the DNS. You
> > also want a central database containing authorization information on
> > who can and can't switch a zone from one registry to another.
>
> OK.  That's a record like this
> 			- the domain nae
> 	- who can switch a zone, and the location
> 			  of the whois data.
> 		- for updating DNS
> 		- for reservations
>
> No other information is necessary.

Sorry, but you need all the information a new registry would require,
and authentication data like public keys. If a registry is destroyed
in a freak accident with all its personel, you need ALL the data the
registry would have had about who owns what.

Perry


----------------------------------------------------------------------

Date: 21 Aug 1996 09:37:27 -0700
From: perry@piermont.com
Subject: Re: yet more unworkable distributed design, was New Non-Shared TLD's Create More Monopolies


"Richard J. Sexton" writes:
> >Can we get back to sketching out the CDB protocol now, please?
>
> Yes, and with some sort of authorization scheme so authorized agents
> can make changes to it.
>
> Changes should be able to be made, byt the right people, damn quickly.

Agreed.

I would suggest that a public/private key pair be associated with each
registry, and with each domain. The holder of the domain key would be
able to do exactly one thing -- sign a request which could be
countersigned by a filing registry requesting that a domain be
switched to that registry. The registry keys would be used for all
other requests, but would only have the ability to modify data
associated with that registry.

An interesting question arises for WHOIS style data, specifically old
style NIC handles. Since a given handle might involve domains for
several registries, the question of who gets to update the handle
information gets hard. Perhaps we should abandon the old style NIC
handles -- thoughts?

Perry


----------------------------------------------------------------------

Date: 21 Aug 1996 09:58:05 -0700
From: Kent Crispin 
Subject: Re: New Non-Shared TLD's Create More Monopolies

Perry E. Metzger allegedly said:

> The "Yuck!" is because this isn't a robust way to run a database
> management system.
>
> Maybe you haven't built systems designed to deal with large numbers of
> transactions and work reliably, but those of us who have know that its
> fine to hack something together with chewing gum and scotch tape when
> you aren't operating on a large scale, but once things get big you are
> setting yourself up to have your throat cut from ear to ear.

Hmm.  Quite graphic.  But you're right, transaction systems are not my
area of expertise.

> > > > "Distributed" to me implies "distributed responsibility".
> > >
> > > You cannot distribute the responsibility to apply the first-come
> > > first-served rule.
> >
> > Of course you can.
>
> Kent, I hate ad hominems. I really do. However, we are starting to
> talk technical turkey here.

Which ad hominem were your referring to? :-)

I know that the obvious algorithms aren't practical for the
application we have in mind.  But what Michael said was clearly
false, and I couldn't resist the bait.  Sorry.

> How many real world transaction systems where significant money was on
> the line have you built? Because it sounds to me like the answer is
> "none". I built my first accounting system on contract when I was
> sixteen, more than a few years ago. I really hate centralized
> relational databases. They are ugly things and they are generally
> designed by chinese waves of drool bucket brigade members.
[snip]
> Everyone else here
> seems to have accepted the inevitable -- a small central database.
> It doesn't have to be large, it doesn't have to be complicated, and it
> can be viewed as a service provider hired on behalf of all the
> registries by the International Association of Internet Registries if
> you like, but it is going to have to be there.

Even I agreed to that -- as far as I know, what we are discussing is
what "small" means in "small central database".  I agree that one is
necessary (in a practical sense) for coordination, at least initially
(I hedge that, because some of the proposed changes to DNS could
actually make it possible to use DNS for coordination purposes).  The
question is what else goes in there.  You believe the whois data needs
to go there.  At this point I don't, for several reasons:

1) I believe that making the database the central master for all whois
data is a much bigger deal than what you make of it.  Rwhois is being
developed exactly to get away from a centralized whois database.  Why
should we be taking a giant step backward?

2) The registries will have to keep a local database of all contact
information, for billing purposes.  In fact, this data is the
authoritative data, not the data that may be at the CDB 10 days later
when the registry gets around to updating it.

3) It hinders the freedom of the registries to control access to the
information.  For example, an "anonymous" registry could filter all
contacts through itself.

4) Having a centralized database with all contact information
aggregating data that doesn't need to be aggregated.  This is a
privacy concern -- it is one thing to be able to find a particular
indivual contact -- it is quite another to know the name and address
of *every* network manager.  Currently the InterNIC resists giving
out its entire database, but if there wasn't a centralized database
the issue wouldn't arise.

5) A general political concern about passing as much authority and
control to the registries as possible.

> Quit with the dreams of ten minutes worth of Perl now, because that
> isn't going to cut any of it.

[big snip]

Damn.  I should never have used the "P" word.  Really, Perry, don't
fixate on that.  Consider "ten minutes worth of Perl" as a flowery way
of saying "easy to implemet".

- --
Kent Crispin				"No reason to get excited",
kent@songbird.com,kc@llnl.gov		the thief he kindly spoke...
PGP fingerprint:   B6 04 CC 30 9E DE CD FE  6A 04 90 BB 26 77 4A 5E


----------------------------------------------------------------------

Date: 21 Aug 1996 11:01:31 -0700
From: perry@piermont.com
Subject: Re: New Non-Shared TLD's Create More Monopolies


Kent Crispin writes:
> 3) It hinders the freedom of the registries to control access to the
> information.  For example, an "anonymous" registry could filter all
> contacts through itself.

If you want anonymity, operate your zone through a nominee. I run a
couple of zones for offshore hedge funds -- it would be quite a
challenge to find out who the owners are from the contact info (which
is me or an employee and P.O. Boxes in places like the Bahamas.)

We don't need anonymity via registries, and the mechanism you propose
would be a hinderance.

> 4) Having a centralized database with all contact information
> aggregating data that doesn't need to be aggregated.  This is a
> privacy concern -- it is one thing to be able to find a particular
> indivual contact -- it is quite another to know the name and address
> of *every* network manager.

You'll have to live with this sort of thing. If any of the data is
public, it *will* all be collected, eventually. If you need privacy,
as I said, you can get it.

> 5) A general political concern about passing as much authority and
> control to the registries as possible.

I don't see how managing a database gives the CDB power, especially
when it is legally constrained. I mean, how much political power does
the vital records office in your county have? I'd suspect that the
answer is "none". You only get power when you have the power to
control. The CDB doesn't CONTROL the information, it just STORES
it. There is a world of difference. The CDB has *no discretion*.

Perry


----------------------------------------------------------------------

Date: 21 Aug 1996 12:34:32 -0700
From: Michael Dillon 
Subject: Re: New Non-Shared TLD's Create More Monopolies

On Wed, 21 Aug 1996, Perry E. Metzger wrote:

> Contracts can last a long time.

So can companies or organizations. Both the Hudson's Bay Company here in
Canada and the Kikkoman Shoyu Company in Japan were formed in the 1600's.

Michael Dillon                   -               ISP & Internet Consulting
Memra Software Inc.              -                  Fax: +1-604-546-3049
http://www.memra.com             -               E-mail: michael@memra.com



----------------------------------------------------------------------

Date: 21 Aug 1996 12:42:01 -0700
From: nreadwin@london.micrognosis.com (Neil Readwin)
Subject: Re: yet more unworkable distributed design, was New Non-Shared TLD's Create More Monopolies

Perry E. Metzger writes:
> I would suggest that a public/private key pair be associated with each
> registry, and with each domain.

This sounds nice, but I am not convinced it would work well in
practice. If people can use their ISP as a registry then many of them
will and they will only need their private key when they change ISPs.
We (Micrognosis) do that every few years, which would give us plenty of
time to lose the key.

I suspect we would need a simple operational procedure for bypassing
the strong authentication :-(

> Since a given handle might involve domains for several registries

The handle identifies a person. Several registries may use that handle
to identify a contact for domains that they are responsible for, but
the handle does not point back to them. There is no information pointed
at by the handle that a domain registry should be able to update.

If that is right then a handle could be treated like a domain - you
have a personal key pair and can sign a request to make a new registry
responsible for changes to your handle. Neil.
- --
"So you could say the greatest achievement of the Internet is that it turns
nuclear war into nothing more than a series of routing errors." -- Mark Pesce


----------------------------------------------------------------------

Date: 21 Aug 1996 12:49:31 -0700
From: Michael Dillon 
Subject: Re: yet more unworkable distributed design, was New Non-Shared TLD's Create More Monopolies

On Wed, 21 Aug 1996, Perry E. Metzger wrote:

> An interesting question arises for WHOIS style data, specifically old
> style NIC handles. Since a given handle might involve domains for
> several registries, the question of who gets to update the handle
> information gets hard. Perhaps we should abandon the old style NIC
> handles -- thoughts?

The actual domain owner must be authoritative in any changes to their
domain information. Somehow we have to make it easy for the domain owner
to pass that authority on to the registry in any given transaction. Maybe
this will work.

1. Domain owner asks registry to change something

2. Registry issues change transaction to CDB

3. CDB emails domain owner with special key data similar to First Virtual

4. Domain owner replies to CDB including key data to authorize transaction

or

4. Domain owner replies to CDB including key data refusing transaction

or

4. CDB times out transaction and tells registry that no authorization was
   received. Registry then has option to renew the transaction with the
   same key data if domain owner is just lazy or confused. Yes this can
   be time consuming for the registry but that's what they are being
   paid for, i.e. servicing the customer.


Michael Dillon                   -               ISP & Internet Consulting
Memra Software Inc.              -                  Fax: +1-604-546-3049
http://www.memra.com             -               E-mail: michael@memra.com



----------------------------------------------------------------------

Date: 21 Aug 1996 13:47:18 -0700
From: johnl@iecc.com (John R Levine)
Subject: Re: yet more unworkable distributed design, was New Non-Shared TLD's Create More Monopolies

>> And, of course, it's inconceivable that any registry would ever backdate a
>> registration for a valued customer, even though there's no way anyone outside
>> the registry could ever tell.  Naah.  It would be wrong.
>
>1) Backdating couldn't happen with the protocols I described -- that
>should be obvious if you think about them for two minutes.  The
>timestamp really is unforgable.

Even if the timestamps are impossible to forge, it seems to me that you
could easily use a replay attack.  Just use a genuine time stamp from an
hour ago or a day ago or a week ago or, for that matter, a month ago.
("Darn that uucp, kept getting busy signals.")

>2) There is another, similar, method of cheating that no protocol yet
>described,  centralized or not, can protect against.  That's the
>problem of pre-allocating a name.  Nothing we have described prevents
>a registry from assigning 5000 desirable names, setting up
>nameservers for them, and reselling them later.

That's true, and indeed the analogous problem has been a chronic problem in
the 800 arena.  I believe that there's a rule in the 800 biz that if you
can't identify a customer who's using a number and you've had it reserved
for more than a few days, you have to give it back.  I hope a similar rule
could keep the abuse down.

You also have the problem of registry customers hoarding names, e.g. P&G's
diarrhea.com and the names for sale by some domain name brokers.  I don't
see any way to solve that, but I also don't see that whether a domain is
shared or not makes any difference to this problem.

- --
John R. Levine, IECC, POB 640 Trumansburg NY 14886 +1 607 387 6869
johnl@iecc.com "Space aliens are stealing American jobs." - Stanford econ prof


----------------------------------------------------------------------