---------------------------------------------------------------------- Date: 24 Aug 1996 06:06:32 -0700 From: johnl@iecc.com (John R Levine) Subject: Re: DNS based proposal for shared tlds >The current proposals swirl around the idea of an ad hoc central >database that is used for coordination between registries. What >follows is an alternate approach that does not use any central >database except for DNS itself. [reasonable proposal omitted] This makes the DNS the CDB. (Does changing one TLA really make people happier?) I suppose that might work, although I'm still worried about race conditions when multiple registries try to grab the same name, and about the procedure for transferring a name from one registry to another. - -- 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 ---------------------------------------------------------------------- Date: 24 Aug 1996 09:41:24 -0700 From: Michael Dillon Subject: Re: DNS based proposal for shared tlds On Sat, 24 Aug 1996, John R Levine wrote: > >The current proposals swirl around the idea of an ad hoc central > >database that is used for coordination between registries. What > >follows is an alternate approach that does not use any central > >database except for DNS itself. [reasonable proposal omitted] > > This makes the DNS the CDB. This is a positively GROSS idea. Adding kludges to kludges.... It's nice to see that many of the DNS shortcomings are being fixed and it would be good to make use of some of these new features where possible. But the whole CDB concept is more than just an extended DNS. You now the old mantra? DNS was never intended to be a DIRECTORY service? I think this is the fundamental difference with CDB in that the Central DataBase SHOULD be designed to be a directory service. Michael Dillon - ISP & Internet Consulting Memra Software Inc. - Fax: +1-604-546-3049 http://www.memra.com - E-mail: michael@memra.com ---------------------------------------------------------------------- Date: 24 Aug 1996 11:40:53 -0700 From: Simon Higgs Subject: Re: DNS based proposal for shared tlds At 9:37 AM -0700 8/24/96, Michael Dillon wrote: >> >The current proposals swirl around the idea of an ad hoc central >> >database that is used for coordination between registries. What >> >follows is an alternate approach that does not use any central >> >database except for DNS itself. [reasonable proposal omitted] >> >> This makes the DNS the CDB. > >This is a positively GROSS idea. Adding kludges to kludges.... > Let's add another kludge... ;) >It's nice to see that many of the DNS shortcomings are being fixed and it >would be good to make use of some of these new features where possible. > >But the whole CDB concept is more than just an extended DNS. You now the >old mantra? DNS was never intended to be a DIRECTORY service? I think this >is the fundamental difference with CDB in that the Central DataBase SHOULD >be designed to be a directory service. > What would it take to turn the CDB into *BOTH* DNS and a global whois within the same set of protocols? Is this something DNS-NG will do? I know it would probably increase the load significantly, but it would satisfy several problems. Ignore the user interface, because this could be done just as well as a DNS UDP packet, telnet session, or a www browser function. This would allow DNS' use to be expanded to a semi-intelligent level (useful to agents). whois:// This brings up whois contact info for you. Web version obviously hypertext (I suggest we add a URL to the fields in the contact table): whois://Dillon,Michael Dillon, Mike (MD130) michael@MEMRA.COM C-4 Powerhouse, RR#2 Armstrong BC V0E 1B0 CA +1-604-546-8022 (FAX) +1-604-546-3049 Record last updated on 02-Jul-96. dns:// All nslookups have to do is indicate they're lookups to prevent the excess contact data being returned. Here's one looking for www.memra.com: dns://?www.memra.com memra.com start of authority = mname = okjunc.junction.net, rname = noc.junction.net serial = 807, refresh = 28800, retry = 7200, expire = 604800, minimum = 86400 memra.com name server = okjunc.junction.net memra.com name server = felix.junction.net (felix.junction.net) inet address = 199.166.227.5 (okjunc.junction.net) inet address = 199.166.227.1 And this gets referred to the authorative name server: dns://okjunc.junction.net?www.memra.com www.memra.com inet address = 199.166.227.56 memra.com name server = okjunc.junction.net memra.com name server = felix.junction.net (felix.junction.net) inet address = 199.166.227.5 (okjunc.junction.net) inet address = 199.166.227.1 _____S_i_m_o_n___H_i_g_g_s_________________H_i_g_g_s___A_m_e_r_i_c_a_____ ... "I'm fine - it's the others" ......... President/CEO ................ _____e-mail: simon@higgs.com _____________ http://www.higgs.com/ ________ ... http://ds.internic.net/internet-drafts/draft-higgs-tld-cat-02.txt ... ---------------------------------------------------------------------- Date: 24 Aug 1996 13:54:08 -0700 From: Kent Crispin Subject: Re: DNS based proposal for shared tlds John R Levine allegedly said: > > >The current proposals swirl around the idea of an ad hoc central > >database that is used for coordination between registries. What > >follows is an alternate approach that does not use any central > >database except for DNS itself. [reasonable proposal omitted] > > This makes the DNS the CDB. (Does changing one TLA really make people > happier?) Well, it does a great deal more than substitute TLAs. The DNS database exists as a "central database" in either proposal -- so in fact the DNS-based proposal has one less database to manage. Plus the resulting structure is intrinsically more distributed, with essentially no extra cost. > I suppose that might work, although I'm still worried about race > conditions when multiple registries try to grab the same name, The addition/update of a RR to the primary nameserver has to be an atomic transaction; that's expressly noted in one of the drafts I referenced : "Prerequisites are specified separately from update operations, and can specify a dependency upon either the previous existence or nonexistence of an RRset, or the existence of a single RR. UPDATE is atomic, i.e., all prerequisites must be satisfied or else no update operations will take place." -- Abstract for "Dynamic Updates in the Domain Name System (DNS UPDATE)", P. Vixie, S. Thomson, Y. Rekhter,, 03/14/1996, at > and about the > procedure for transferring a name from one registry to another. IMPerhapsControversialO, that is an issue between registries and their customers. The customer arranges with their current registry to move to the new registry, and simultaneously arranges with the new registry to take over, and that's it. Should be a simple form, or authenticated email, to do it. - -- 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: 24 Aug 1996 13:58:09 -0700 From: Kent Crispin Subject: Re: DNS based proposal for shared tlds Michael Dillon allegedly said: > > On Sat, 24 Aug 1996, John R Levine wrote: > > > >The current proposals swirl around the idea of an ad hoc central > > >database that is used for coordination between registries. What > > >follows is an alternate approach that does not use any central > > >database except for DNS itself. [reasonable proposal omitted] > > > > This makes the DNS the CDB. > > This is a positively GROSS idea. Adding kludges to kludges.... Perhaps you could be a bit more specific? > It's nice to see that many of the DNS shortcomings are being fixed and it > would be good to make use of some of these new features where possible. > > But the whole CDB concept is more than just an extended DNS. As originally defined, the CDB was the "Coordination Database", and its explicit purpose was to prevent close call name conflicts. It had no other purpose. Then people began to add things... > You now the > old mantra? DNS was never intended to be a DIRECTORY service? I think this > is the fundamental difference with CDB in that the Central DataBase SHOULD > be designed to be a directory service. Why on earth do you thing the CDB should be a Directory Service? - -- 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: 24 Aug 1996 14:11:33 -0700 From: johnl@iecc.com (John R Levine) Subject: Re: DNS based proposal for shared tlds >> >The current proposals swirl around the idea of an ad hoc central >> >database that is used for coordination between registries. What >> >follows is an alternate approach that does not use any central >> >database except for DNS itself. [reasonable proposal omitted] >> >> This makes the DNS the CDB. (Does changing one TLA really make people >> happier?) > >Well, it does a great deal more than substitute TLAs. The DNS >database exists as a "central database" in either proposal -- so in >fact the DNS-based proposal has one less database to manage. Plus >the resulting structure is intrinsically more distributed, with >essentially no extra cost. Huh? More distributed? The primary nameserver acts as the central database, with the secondary nameservers as mirrors. I can't see that this is any more distributed than any other kind of centralized database with mirrors. If we don't use the DNS as the CDB (and I don't think we should, since there's going to be more info in the CDB than needs to be in DNS), and there's a lot of demand to examine the contents of the CDB, it's not hard to put up mirrors for that, too. That part of distributed databases is easy. >> and about the >> procedure for transferring a name from one registry to another. > >IMPerhapsControversialO, that is an issue between registries and their >customers. Of course. I was more concerned about how the DNS/CDB tracks who's responsible for each entry, whether one registry is normally allowed to update another's entry, and how as a software issue the ownership of an entry is transferred from one registry as another. It also occurs to me that there are definitely well-debugged database packages that can handle the CDB, while distributed update of DNS seems to exist as at most a prototype. Since it seems that there's considerable time pressure to get a shared-tld model working soon, I'd rather use known good parts wherever possible. If it turns out in the future that it's possible to merge the CDB into a shared update DNS and there are working shared update DNS servers we can point to, I have no problem with that. - -- 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 ---------------------------------------------------------------------- Date: 24 Aug 1996 18:28:32 -0700 From: Kent Crispin Subject: Re: DNS based proposal for shared tlds John R Levine allegedly said: [snip] > >> This makes the DNS the CDB. (Does changing one TLA really make people > >> happier?) > > > >Well, it does a great deal more than substitute TLAs. The DNS > >database exists as a "central database" in either proposal -- so in > >fact the DNS-based proposal has one less database to manage. Plus > >the resulting structure is intrinsically more distributed, with > >essentially no extra cost. > > Huh? More distributed? The primary nameserver acts as the central > database, with the secondary nameservers as mirrors. I can't see that this > is any more distributed than any other kind of centralized database with > mirrors. If we don't use the DNS as the CDB (and I don't think we should, > since there's going to be more info in the CDB than needs to be in DNS), This is apparently a misconception you have about the proposal. In fact, there is simply not that much more data in DNS than would have to be there already. It could be as little as three fields -- the IP address of the registry, an authentication key for the registry, and a lifetime. Nothing else. All the rest of the data being bandied in the CDB proposals is in databases at the registry. No whois data at all is in DNS. > and > there's a lot of demand to examine the contents of the CDB, it's not hard to > put up mirrors for that, too. That part of distributed databases is easy. > > >> and about the > >> procedure for transferring a name from one registry to another. > > > >IMPerhapsControversialO, that is an issue between registries and their > >customers. > > Of course. I was more concerned about how the DNS/CDB tracks who's > responsible for each entry, The registry id is with the entry. > whether one registry is normally allowed > to update another's entry, Never. > and how as a software issue the ownership > of an entry is transferred from one registry as another. The controlling registry for the domain sends an authenticated incremental zone transfer that changes the controlling registry id, after communicating with the new registry to ok the transfer. If the customer has a problem with the current registry he can pursue various remedies, up to and including suing his registry. But in practice it should be a simple request to transfer. > It also occurs to me that there are definitely well-debugged database > packages that can handle the CDB, while distributed update of DNS seems to > exist as at most a prototype. Since it seems that there's considerable time > pressure to get a shared-tld model working soon, I'd rather use known good > parts wherever possible. If it turns out in the future that it's possible > to merge the CDB into a shared update DNS and there are working shared > update DNS servers we can point to, I have no problem with that. However, DNS has a *gigantic* advantage over any commercial database - -- it is *designed* to be distributed throughout the net...So, for example, if a remote user accesses something in the xxx.new domain, the DNS records for that domain will be cached locally. Then, for example, if a whois request is made for that domain it will go directly to the registry that has the data, and not have to hit any central server at all. This is what I was getting at when I said that a DNS solution is *intrinsically* more distributed than a commercial database solution. DNS already has a mechanism for local caching, and by having the addresses of the individual registry cached no central access needs to be made at all. - -- 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: 24 Aug 1996 19:07:12 -0700 From: johnl@iecc.com (John R Levine) Subject: Re: DNS based proposal for shared tlds >This is apparently a misconception you have about the proposal. In >fact, there is simply not that much more data in DNS than would have >to be there already. It could be as little as three fields -- the IP >address of the registry, an authentication key for the registry, and a >lifetime. Nothing else. All the rest of the data being bandied in >the CDB proposals is in databases at the registry. No whois data at >all is in DNS. Hold it, red alert, we're back to the million way merge problem. I really think it's critical that the CDB contain enough information to generate the zone file for the domain. If it doesn't, it has to poll every registry every night to collect the data for the zone file, with all the attendant problems of registries that don't answer (what if they don't have a 24/7 connection because they're in a distant corner of the world and can't afford it?), registries that return bad data, etc. The CDB I proposed back when I called it a "lightweight registry" was supposed to have enough info to generate the zone file. That only adds the names and addresses of the domain servers for each domain in the zone, not an enormous amount of extra info. If you want to treat an incrementally updated DNS as the CDB, I still suppose that's possible but I'd be a lot more comfortable with a multi-user database with a track record. I'm still not sure about whether we need a combined whois database or whether rwhois or whois++ is up to the task. - -- 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 ---------------------------------------------------------------------- Date: 24 Aug 1996 22:11:39 -0700 From: Kent Crispin Subject: Re: DNS based proposal for shared tlds John R Levine allegedly said: > > >This is apparently a misconception you have about the proposal. In > >fact, there is simply not that much more data in DNS than would have > >to be there already. It could be as little as three fields -- the IP > >address of the registry, an authentication key for the registry, and a > >lifetime. Nothing else. All the rest of the data being bandied in > >the CDB proposals is in databases at the registry. No whois data at > >all is in DNS. > > Hold it, red alert, we're back to the million way merge problem. I really > think it's critical that the CDB contain enough information to generate the > zone file for the domain. If it doesn't, it has to poll every registry > every night to collect the data for the zone file, with all the attendant > problems of registries that don't answer (what if they don't have a 24/7 > connection because they're in a distant corner of the world and can't afford > it?), registries that return bad data, etc. It doesn't work that way. There is no zillion-way merge. The total zone file is built in the primary nameserver as the registries do their IXFRs. Here's a more complete example. Two registries, A & B serve the TLD .new, and the primary nameserver, P, holds the current zone file for .new. That zone file contains records for the following subdomains (I don't try to indicate the exact syntax, 'cuz: domain nameservers registry remaining life auth s.new. <15 months> v.new. <12 months> Note that P contains no whois data. Another customer comes to B and wants domain w.new. B does a nslookup, sees that w.new is not in use (this step is not necessary, just a prelimary check). B says "Hmm. w.new is free, so I will reserve it for you". B runs a code that builds minimal information for the new domain, and does an IXFR to P. This succeeds. The zone description at P now contains: domain nameservers registry remaining life auth s.new. <15 months> v.new. <12 months> w.new. <1 day> B proceeds to take down the customers contact, which includes whois data and other data that B needs for business purposes. The whois part is put in a whois database, the rest is stored in a filing cabinet. In the meantime, A gets a customer who also wants w.new. A does an nslookup, but doesn't see anything, because B's IXFR hasn't happened yet. A says "OK", and tries to reserver the name. However, when A's IXFR request arrives, B's entry is already there. A's update can't change the entry, because it would require B's auth to change it. Instead, the IXFR gets an error. A says to the customer, "Sorry, somebody over at "Domains by B" just claimed w. Can I interest you in another name?" B collects the customers credit card information, completes the charge for 5 years of service, and does an IXFR that modifies the record. Now the zone looks like this: domain nameservers registry remaining life auth s.new. <15 months> v.new. <12 months> w.new. <60 months> Two months later B's customer happens to wander by "Domains by A", and discovers that A's rates are half of B's. Customer thinks about it at home that night, and decides to transfer to A -- it will save him money even counting for the transfer fee. Firing up his home computer, he sends an authenticated messages to A and B, with his credit card number to A. He discovers that B doesn't give refunds -- it's in the fine print of his contract, but is so pissed off that he transfers to A anyway. He pays the transfer fee, and the initiation fee to A, and the transfer happens -- B knows A's auth, of course, and sends an update. Things now look like this: domain nameservers registry remaining life auth s.new. <15 months> v.new. <12 months> w.new. <58 months> However, the nice clerk at A notices that the customer came from B, and gives the customer an extra two years: domain nameservers registry remaining life auth s.new. <15 months> v.new. <12 months> w.new. <82 months> Every night P does a full zone transfer to secondary nameservers for the TLD. > The CDB I proposed back when I called it a "lightweight registry" was > supposed to have enough info to generate the zone file. That only adds > the names and addresses of the domain servers for each domain in the zone, > not an enormous amount of extra info. It's not an enormous amount of extra info. I show each record as having the auth for the registry, but of course that's not necessary. Another Resource Record could contain that for each registry. So the only thing you would really need to add would be the registry ID and the remaining life (of course that would be coded as an expiration date, but it is easier to talk about as a lifetime). So this could be reduced to two integers worth of extra data. > If you want to treat an incrementally updated DNS as the CDB, I still > suppose that's possible but I'd be a lot more comfortable with a multi-user > database with a track record. DNS has a pretty long track record. RFC1034 or whatever, by Paul Mockapetris, clearly indicates that it was designed to hold other data, and that it was: The design goals of the DNS influence its structure. They are: - The primary goal is a consistent name space which will be used for referring to resources.... - The sheer size of the database and frequency of updates suggest that it must be maintained in a distributed manner, with local caching to improve performance. Approaches that attempt to collect a consistent copy of the entire database will become more and more expensive and difficult, and hence should be avoided. The same principle holds for the structure of the name space, and in particular mechanisms for creating and deleting names; these should also be distributed. ... - The costs of implementing such a facility dictate that it be generally useful, and not restricted to a single application. We should be able to use names to retrieve host addresses, mailbox data, and other as yet undetermined information. All data associated with a name is tagged with a type, and queries can be limited to a single type. ... 2.3. Assumptions about usage The organization of the domain system derives from some assumptions about the needs and usage patterns of its user community and is designed to avoid many of the the complicated problems found in general purpose database systems. The assumptions are: - The size of the total database will initially be proportional to the number of hosts using the system, but will eventually grow to be proportional to the number of users on those hosts to the number of hosts using the system, but will eventually grow to be proportional to the number of users on those hosts as mailboxes and other information are added to the domain system. ... - -- 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: 24 Aug 1996 22:14:49 -0700 From: Kent Crispin Subject: Re: DNS based proposal for shared tlds Simon Higgs allegedly said: > [speculations about DNS-NG deleted] You probably are not frequently accused of a lack if imagination. - -- 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