URN Working Group M.Mealling INTERNET-DRAFT Network Solutions, Inc. Expires six months from November 1998 Intended category: Experimental draft-ietf-urn-net-procedures-01.txt Assignment Procedures for the URI Resolution using DNS (RFC2168) Status of this Memo This document is an Internet-Draft. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." To view the entire list of current Internet-Drafts, please check the "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern Europe), ftp.nic.it (Southern Europe), munnari.oz.au (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). Abstract RFC2168 defines a DNS resource record and an algorithm for using DNS as a registry for retrieving URI delegation rules (sometimes called resolution hints). That document specifies that the first step in that algorithm is to append 'uri.net' to the URI scheme and retrieve the NAPTR record for that domain-name. I.e., the first step in resolving "http://foo.com/" would be to look up a NAPTR record for the domain "http.uri.net". URN resolution also follows a similar procedure but uses the 'urn.net' zone as its root. This document describes the procedures for inserting a new rule into the 'uri.net' and 'urn.net' zones. 1. Introduction This document defines the policies and procedures for inserting NAPTR records into the 'uri.net' and 'urn.net' zones for the purpose of resolving URIs according to "Resolution of Uniform Resource Identifiers using the Domain Name System", RFCXXXX [1], which is an application of the NAPTR DNS Resource Record defined in RFCXXXX [2]. 2. URI Resolution vs URN Resolution RFCXXXX [1] defines how both URI resolution and URN [4] resolution work. Specifically it says that all URIs rules are registered in 'uri.net'. Since a URN is a URI it follows the same rules. Thus one of the rules in the 'uri.net' zone is the one for a URN. This rule states that the namespace id [4] is extracted, 'urn.net' is appended to the end of the namespace id, and the next NAPTR record [2] is retrieved. Mealling [Page 1] RFCXXXX URI.NET and URN.NET Registration Procedures November 1998 3. URI Registration Procedure At this time there is no set procedure for registering new URI schemes other than a published RFC. Due to this lack and the existence of non-published schemes such as "about" and "res", there is an IETF working group discussing how to deal with this problem. Thus, at this time the only requirements for requesting an entry in the uri.net zone is that the URI scheme be published or in use somewhere and that it not conflict with an existing URI scheme. When the IETF does standardize a set of procedures for vetting and registering new URI schemes, the 'uri.net' registration procedures MUST adhere to those procedures for determining if the URI scheme in question is valid. 3. URN Registration Procedure RFCXXXX [7] defines the procedures for assignment of new URN namespace-ids. Since the 'urn.net' registration procedures only deal with the namespace-id portion of the URN space, that document is the sole determining document for what can be entered into the urn.net zone for a URN. 4. Requirements on rules Delegation of a namespace can happen in two ways. In the case of most URIs where the entity being delegated to is hard-coded into the identifier itself, the syntax of where this is located is set. In the case where the entity being delegated to is set in the rule, that entity can change as the rule changes. One of the optimizations that the both the URI and URN registries attempts to make is that any entry in that zone should have an extremely long time to live. 'Extremely long' should be measured in years if possible. Thus, any rule that can change must be delegated out of the urn.net zone by a replacement rule in the NAPTR record. For example, the 'foo' URN namespace has flexible rules for how delegation takes place. Instead of putting those rules in the urn.net zone, the entry instead punts those rules off to a nameserver that has a shorter time to live. The record in urn.net would look like this: foo IN NAPTR 100 10 "" "" "" urn-resolver.foo.com. Thus, when the client starts out in the resolution process, the second step is to begin asking 'urn-resolver.foo.com' for the NAPTR records that contain the resolution rules. The TTL at the root is very long. The TTL at the 'urn-resolver.foo.com' is much shorter. Conversely, the 'http' URL scheme adheres to a particular syntax that specifies that the host to ask is specified in the URL in question. Since this syntax does not change, that rule can be specified in the uri.net zone. The record would look like this: http IN NAPTR 100 100 "" "" "/http:\\/\\/([^\\/:]+)/\\2/i" . Mealling [Page 2] RFCXXXX URI.NET and URN.NET Registration Procedures November 1998 Thus, the second step of resolution is to attempt to contact the host contained in the URL itself. 5. Submission Procedure Using the MIME Content-Type registration mechanism [6] as a model for a successful registration mechanism, the 'uri.net' and 'urn.net' procedures consist of a request template submitted to an open mailing list made up of interested parties. If no objections are made within a two week period, a representative of the registration authority considers the submission to be accepted and enters that submission into the nameserver. Registrations for the 'uri.net' zone are sent to 'register@uri.net'. Registrations for the 'urn.net' zone are sent to 'register@urn.net'. At this time the registration authority is expected to be the IANA. Objections are restricted to those that point out impacts on the zone itself or to DNS in general. Objections to the URL scheme or to the URN namespace-id are not allowed, as these should be raised in their respective forums. The logical conclusion of this is that ANY sanctioned URL scheme or URN namespace MUST be allowed to be registered if it meets the requirements specified in this document as regards times to live and general impact to the DNS. 6. Registration Template The template to be sent to the appropriate list MUST contain the following values: 6.2 Key This is the domain portion. It must be valid according to the procedures specified in the URN namespace-id assignment document and any future standards for registering new URL schemes. 6.3 Authority This is the authority doing the registration of the record. It must be an authority recognized as either the IESG or an authority specified in the documents submitted for approval by any URN or URL registration mechanism. 6.4 Records One or more records representing the rule set for the key. The required values are Preference, Order, Flags, Services, Regex, and Replacement as defined by RFC2168. Mealling [Page 3] RFCXXXX URI.NET and URN.NET Registration Procedures November 1998 7. Example Template To: register@urn.net From: joe@foo.com Key: foo Authority: Foo Technology, Inc as specified in RFCFOO Record: foo IN NAPTR 100 100 "" "" "" urn.foo.com. 8. The URN Registration in the uri.net zone Since this document discusses the uri.net and urn.net zones and the URN rule that exists in the uri.net zone, it makes sense for the regisration template for the URN URI rule to be specified here: To: register@uri.net From: The IETF URN Working Group Key: urn Authority: RFC2141 Record: urn IN NAPTR 0 0 "" "" "/urn:([^:]+)/\\2/i" . 8. IANA Considerations This document describes a mechanism for registering representations of protocol items that have already been registered with some IETF sanctioned agency (probably the IANA as well). This means that the IANA need not determine appropriateness of the underlying namespaces, since that is determined by another process. The only real impact on the IANA will be to maintain (or designate some other entity to maintain) a primary nameserver for the uri.net and urn.net zones; to maintain the mailing lists "register@uri.net" and "register@uri.net" as the forum for discussions of submissions; and to act as the party that determines if all objections have been noted and accommodated. Mealling [Page 4] RFCXXXX URI.NET and URN.NET Registration Procedures November 1998 7. References [1] M. Mealling, R. Daniel, "Resolution of Uniform Resource Identifiers using the Domain Name System", . November 1998. [2] M. Mealling, R. Daniel, "The Naming Authority Pointer (NAPTR) DNS Resource Record". . November 1998. [3] K. Sollins, "Architectural Principles of Uniform Resource Name Resolution", RFC 2276, January 1998. [4] Ryan Moats, "URN Syntax", RFC 2141, May 1997. [5] T. Berners-Lee, R. Fielding, L. Masinter. "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, August 1998. [6] N. Freed, J. Klensin, J. Postel, "Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures", RFC 2048, November 1996. [7] P. Faltstrom, R. Iannella, L. Daigle, D. van Gulik, "URN Namespace Definition Mechanisms", 10/26/1998, 8. Author Contact Information Michael Mealling Network Solutions 505 Huntmar Park Drive Herndon, VA 22070 voice: (703) 742-0400 fax: (703) 742-9552 email: michaelm@rwhois.net Mealling [Page 5]