Network Working Group M. Mealling Internet-Draft Network Solutions, Inc.
Category: Informational February 1999Expires: August 02, 19991, 2000 R.D. Daniel Metacode, Inc. February 2000 Assignment Procedures for URI Resolution using DNS draft-ietf-urn-net-procedures-02.txtdraft-ietf-urn-net-procedures-03.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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 entireThe list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories, seeDirectories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on August 02, 1999.1, 2000. Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved. Abstract RFC2168RFCXXXX defines a how DNS resource record and an algorithm for using DNSis used as a registry for retrievingResolver Discovery System database that contains URI delegation rules (sometimes called resolution hints). That document specifies that the first step in that algorithm is to append 'uri.net''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"."http.URI.NET". URN resolution also follows a similar procedure but uses the 'urn.net''URN.NET' zone as its root. This document describes the procedures for inserting a new rule into the 'uri.net''URI.NET' and 'urn.net''URN.NET' zones. Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved.Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . .3 2. URI Resolution vs URN Resolution . . . . . . . . . . . . . . .3 3. URIRegistration ProcedurePolicies . . . . . . . . . . . . . . . . . . . 3 4. URN3.1 URI.NET Registration Procedure. . . . . . . . . . . . . . . . . . . . 3 5. Requirements on rules3.1.1 Only Schemes in the IETF Tree Allowed . . . . . . . . . . . 3 3.1.2 Scheme Registration Takes Precedence . . . . . . . . . . . . 3 6. Submission Procedure3.1.3 NAPTR Registration May Accompany Scheme Registration . . . . 4 3.1.4 Registration or Changes after Scheme Registration . . . . . 4 3.2 URN.NET Registration . . . . . . . . . . . . . . . . . . . . 4 220.127.116.11 NID Registration TemplateTakes Precedence . . . . . . . . . . . . . 4 3.2.2 NAPTR Registration May Accompany NID Registration . . . . . 4 3.2.3 Registration or Changes after Scheme Registration . . . . . 4 4. Requirements on hints . . . . . . . . . . . . . . . . . . . 5 7.1 Key5. Submission Procedure . . . . . . . . . . . . . . . . . . . . 6 6. Registration Template . . . . . . . . . 5 7.2 Authority. . . . . . . . . . 6 6.1 Key . . . . . . . . . . . . . . . . 5 7.3 Records. . . . . . . . . . . . 6 6.2 Authority . . . . . . . . . . . . . . . 5 8.. . . . . . . . . . 6 6.3 Records . . . . . . . . . . . . . . . . . . . . . . . . . . 6 7. Example Template . . . . . . . . . . . . . . . . . . . . . . . 5 9.7 8. The URN Registration in the uri.netURI.NET zone . . . . . . . . . . . 5 10.7 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 67 References . . . . . . . . . . . . . . . . . . . . . . . . . 7 Authors' Addresses . . 6 Author's Address. . . . . . . . . . . . . . . . . . . 8 Full Copyright Statement . . . . 7. . . . . . . . . . . . . . 9 1. Introduction This document defines the policies and procedures for inserting NAPTR records into the 'uri.net''URI.NET' and 'urn.net''URN.NET' zones for the purpose of resolving URIs according to "Resolution of Uniform Resource Identifiers using the Domain Name System", RFCXXXX, which is an application of the NAPTR DNS Resource Record defined in RFCXXXX. 2. URI Resolution vs URN Resolution RFCXXXX defines how both URI resolution and URN resolution work.work when DNS is used as the delegation rule (or hint) database. Specifically it says that allthe initial instructions ('hints') for DNS-based resolution of URIs rulesare registeredstored as resource records in 'uri.net'.the 'URI.NET' DNS zone. Since a URN is a URI it follows the same rules. Thus onekind of URI, a hint for resolution of the rules in the 'uri.net' zone isURI prefix 'urn:' will also be stored in the one for a URN.'URI.NET' zone. This rule states that the namespace id id is extracted, 'urn.net''URN.NET' is appended to the end of the namespace id, and the next NAPTR recordresult is retrieved.used as the key for retrieval of a subsequent NAPTR record. 3. URIRegistration Procedure At this time there is no set procedurePolicies The creation of a given URI scheme or URN namespace id (NID) follows the appropriate registration documents for registering newthose spaces. URI schemes other than a published RFC. Duefollow "Registration Procedures for URL Scheme Names" (RFC 2717). URN namespace ids follow "URN Namespace Definition Mechanisms" (RFC 2611). 3.1 URI.NET Registration 3.1.1 Only Schemes in the IETF Tree Allowed In order to be inserted into the URI.NET zone, the subsequent URI scheme MUST be registered under the IETF URI tree. The requirements for this lacktree are specified in . 3.1.2 Scheme Registration Takes Precedence The registration of a NAPTR record for a URI scheme MUST NOT precede proper registration of that scheme and the existencepublication of non-published schemes such as "about"a stable specification in accordance with . The IESG or its designated expert will review the request for 1. correctness and "res", there is an IETF working group discussing how to dealtechnical soundness 2. consistency with this problem. Thus, at this timethe only requirementspublished URI specification, and 3. to ensure that the NAPTR record for requesting an entry ina DNS-based URI does not delegate resolution of the uri.net zoneURI to a party other than the holder of the DNS name. This last rule is to insure that thea given URI's resolution hint doesn't hijack (inadvertently or otherwise) network traffic for a given domain. 3.1.3 NAPTR Registration May Accompany Scheme Registration A request for a URI.NET registration MAY accompany a request for a URI scheme (in accordance with ), in which case both requests will be publishedreviewed simultaneously by IESG or in use somewhere and that it not conflict withits designated experts. 3.1.4 Registration or Changes after Scheme Registration A request for a NAPTR record (or an request to change an existing NAPTR record) MAY be submitted after the URI scheme. Whenprefix has been registered. If the IETF does standardize a set of proceduresspecification for vetting and registering newthe URI schemes,prefix is controlled by some other party than IETF, IESG will require approval from the owner/maintainer of that specification before the 'uri.net'registration procedures MUST adherewill be accepted. This is in addition to those procedures for determining ifany technical review of the URI schemeNAPTR registration done by IESG or its designated experts. 3.2 URN.NET Registration 3.2.1 NID Registration Takes Precedence The registration of a NAPTR record for a URN NID MUST NOT precede proper registration of that NID and publication of a stable specification in questionaccordance with . This is valid. 4. URNto prevent the registration of a NAPTR record in URN.NET from circumventing the NID registration process. 3.2.2 NAPTR Registration Procedure RFCXXXX definesMay Accompany NID Registration A request for a URN.NET registration MAY accompany a request for a NID (in accordance with ), in which case both requests will be reviewed at the proceduressame time. 3.2.3 Registration or Changes after Scheme Registration A request for assignment of new URN namespace-ids. Sincea NAPTR record (or an request to change an existing NAPTR record) MAY be submitted after the NID has been registered. If the 'urn.net' registration procedures only deal withspecification for the namespace-id portion ofNID is controlled by some other party than IETF, IESG will require approval from the URN space,owner/maintainer of that document isspecification before the sole determining document for what canregistration will be entered intoaccepted. This is in addition to any technical review of the urn.net zoneNAPTR registration done by IESG or its designated experts. Note that this applies to all NAPTR records for a URN. 5.particular NID, even though a NAPTR record might affect only part of the URN space assigned to an NID 4. Requirements on ruleshints Delegation of a namespace can happen in two ways. In the case of most URIs whereURIs, the entitykey being delegated to is hard-coded into the identifier itself, theitself (i.e. a hostname in an HTTP URL). The syntax of where this new key is located is set. Inpredetermined by the case wheresyntax of the entity being delegated to is set inscheme. In other cases, the rule, that entitynew key can change asbe part of the rule changes. Onehint itself. This is the functional equivalent of saying, "if this rule matches then this is always the optimizations thatkey." In order to minimize the bothquery load on the URIURI.NET and URN registries attempts to makeURN.NET zones, it is anticipated that any entrythe resource records in that zone shouldthose zones will have anextremely long time"times to live. 'Extremely long' should belive" (TTLs), perhaps measured in years if possible.years. Thus, for any rule that can change must be delegated out ofURI prefix or URN namespace for which the urn.net zone by a replacementresolution hints are likely to change, the actual rule should be stored in thesome other (less stable) DNS zone, and within URI.NET or URN.NET a stable NAPTR record.record should be used to delegate queries to that less stable zone. For example, the 'foo' URN namespace has flexible rules for how delegation takes place. Instead of putting those rules in the urn.netURN.NET zone, the entry instead punts those rules off to a nameserver that has a shorter time to live. The record in urn.netURN.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 first step will be to query foo.URN.NET to find the above record, 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.netURI.NET zone. The record would look like this: http IN NAPTR 100 100 "" "" "/http:\\/\\/([^\\/:]+)/\\2/i" . Thus, the second step of resolution is to attempt to contactuse the host containeddomain-name found in the URL itself. 6.as the next key in the cycle. If, for example, that NAPTR was terminal and contains some hostname in the replacement field, then the client could contact that host in order to ask questions about this particular URI. 5. Submission Procedure Using the MIME Content-Type registration mechanismas a model for a successful registration mechanism, the 'uri.net''URI.NET' and 'urn.net''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. o Registrations for the 'uri.net''URI.NET' zone are sent to 'firstname.lastname@example.org'.'register@URI.NET'. o Registrations for the 'urn.net''URN.NET' zone are sent to 'email@example.com'.'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. 7.6. Registration Template The template to be sent to the appropriate list MUST contain the following values: 7.16.1 Key This is the URN NID or URL scheme, which is used as the domain portion of the DNS entry. 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. 7.26.2 Authority This is the authority doing the registration of the record. It must be an authority recognized as either the IESG or any authority defined in the URN NID or URL scheme registration documents. 7.36.3 Records The actual DNS records representing the rule set for the key. The required values are Preference, Order, Flags, Services, Regex, and Replacement as defined by RFCXXXX. 8.7. Example Template To: firstname.lastname@example.org@URN.NET From: email@example.com Key: foo Authority: Foo Technology, Inc as specified in RFCFOO Record: foo IN NAPTR 100 100 "" "" "" urn.foo.com. 9.8. The URN Registration in the uri.netURI.NET zone Since this document discusses the uri.netURI.NET and urn.netURN.NET zones and the URN rule that exists in the uri.netURI.NET zone, it makes sense for the regisrationregistration template for the URN URI rule to be specified here: To: firstname.lastname@example.org@URI.NET From: The IETF URN Working Group Key: urn Authority: RFC2141 Record: urn IN NAPTR 0 0 "" "" "/urn:([^:]+)/\\2/i" . 10.9. 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 o to create and maintain (or designate some other entity to maintain) a primary nameserver for the uri.netURI.NET and urn.netURN.NET zones; o to maintain the mailing lists "email@example.com""register@URI.NET" and "firstname.lastname@example.org""register@URN.NET" as the forum for discussions of submissions; and o to act as the party that determines if all objections have been noted and accommodated. References  Mealling, M.,M. and R. Daniel, R.,"Resolution of Uniform Resource Identifiers using the Domain Name System", November 1998.  Mealling, M.,M. and R. Daniel, R.,"The Naming Authority Pointer (NAPTR) DNS Resource Record", November 1998.  Moats, R., "URN Syntax", RFC 2141, May 1997.November 1998.  Berners-Lee, T., Fielding, R.,R. and L. Masinter, L.,"Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, August 1998.  Freed, N., Klensin, J.,J. and J. Postel, J.,"Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures", RFC 2048, November 1996.  Faltstrom, P., Iannella, R., Daigle, L.,L. and D. van Gulik, D.,"URN Namespace Definition Mechanisms", RFC 2611, October 1998.  Petke, R.,R. and I. King, I.,"Registration Procedures for URL Scheme Names", RFC 2717, January 1999. Author's AddressAuthors' Addresses Michael Mealling Network Solutions, Inc. 505 Huntmar Park Drive Herndon, VA 22070 US Phone: +1 770 935 5492(703) 742-0400 EMail: email@example.com Ron Metacode, Inc. 139 Townsend Street, Ste. 100 San Francisco, CA 94107 US Phone: +1 415 222 0100 EMail: firstname.lastname@example.org URI: http://www.netsol.comhttp://www.metacode.com Full Copyright Statement Copyright (C) The Internet Society (1999).(2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implmentation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgement Funding for the RFC editor function is currently provided by the Internet Society.