📄 draft-klensin-idn-tld-00.txt
字号:
INTERNET-DRAFT John C Klensin21 October 2002Expires April 2003 National and Local Characters in DNS TLD Names draft-klensin-idn-tld-00.txtStatus of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026 except that the right to produce derivative works is not granted. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. 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.Abstract In the context of work on internationalizing the Domain Name System (DNS), there have been extensive discussions about "multilingual" or "internationalized" top level domain names (TLDs), especially for countries whose predominant language is not written in a Roman-based script. This document reviews some of the motivations for such domains and the constraints that the DNS imposes. It then suggests an alternative, local translation, that may solve a superset of the problem while avoiding protocol changes, serious deployment delays, and other difficulties.Table of Contents1 Introduction1.1 Background on the "Multilingual Name" Problem1.2 Domain Name System Constraints1.3 Internationalization and Localization2. Client-side solutions2.1 IDNA and the client2.2 Local translation tables for TLD names3. Advantages and disadvantages of local translation3.1 Every TLD in the local language and character set3.2 Unification of country code domains3.3 User understanding of local and global reference3.4 Limits on TLD propagation4. Security Considerations5. References6. Acknowledgements7. Author's Address1. Introduction1.1 Background on the "Multilingual Name" ProblemPeople who share a language prefer to communicate in it, using whatevercharacters are normally used to write that language, rather than in some"foreign" one. There have been standards for using mutually-agreedcharacters and languages in electronic mail message bodies and selectedheaders since the introduction of MIME in 1992 [MIME] and the Web haspermitted multilingual text since its inception. However, since domainnames are exposed to users in email addresses and URLs, andcorresponding arrangements in other protocols, demand rapidly arose topermit domain names in applications that used characters other thanthose of the very restrictive, ASCII-subset, "LDH" conventions [LDH].The effort to do this rapidly became known as "multilingual domainnames", although that is a misnomer, since the DNS deals only withcharacters and identifier strings, and not, except by accident, whatpeople usually think of as "names". And there has been little actualinterest in what would actually be a "multilingual name" -- i.e., a namethat contains components from more than one language -- but only the useof strings conforming to different languages in the context of the DNS.1.1.1 Approaches to the requirementIf the requirement is seen, not as "modifying the DNS", but as"providing users with access to the DNS from a variety of languages andcharacter sets", three sets of proposals have emerged in the IETF andelsewhere. They are: (1) Perform processing in client software that recodes a user-visible string into an ASCII-compatible form that can safely be passed through the DNS protocols and stored in the DNS. This is the approach used, for example, in the IETF's "IDNA" protocol [IDNA]. (2) Modify the DNS to be more hospitable to non-ASCII names and strings. There have been a variety of proposals to do this in almost as many ways, some of which have been implemented on a proprietary basis by various vendors. None of them have gained acceptance in the IETF community, primarily because they would take a long time to deploy and would leave many problems unsolved. (3) Move the problem out of the DNS entirely, relying instead on a "directory" or "presentation" layer to handle internationalization. The rationale for this approach is discussed in [DNSROLE].This document proposes a fourth approach, applicable to the top leveldomains (TLDs) only (see section 1.2.1 for a discussion of the specialissues that make TLDs problematic). That approach could be used as analternate or supplement to the strategies summarized above.1.1.2 Writing the name of one's country in its own charactersAn early focus of the "multilingual domain name" efforts was expressedin statements such as "users in my country, in which ASCII is rarelyused, should be able to write an entire domain name in their owncharacter set. In particular, since all top-level domain names, atpresent, follow the LDH rules, the somewhat more restrictive namingrules discussed in [STD3], and the coding conventions specified in[RFC1591], all fully-qualified DNS names were effectively required tocontain at least one ASCII label (the TLD name), and that was consideredinappropriate. One should, instead, be able to write the name of theccTLD for China in Chinese, the name of the ccTLD for Saudi Arabia inArabic, and so on.1.1.3 Countries with multiple languages and countries with multiple names>From a user interface standpoint, writing ccTLD names in localcharacters is a problem. As discussed in section 1.2.2, the DNS itselfdoes not easily permit a domain to be referred to by more than one name(or spelling or translation of a name). Countries with more than oneofficial language would require that the country name be represented ineach of those languages. And, just as it is important that a user inChina be able to represent the name of the Chinese ccTLD in Chinesecharacters, she should be able to access a Chinese-language site inFrance using Chinese characters, requiring that she be able to write thename of the French ccTLD in those characters rather than in a form basedon a Roman character set.1.2 Domain Name System Constraints1.2.1 Administrative hierarchyThe domain name system is designed around the idea of an "administrativehierarchy", with the entity responsible for a given node of thehierarchy responsible for policies applicable to its subhierarchies (Cf.[STD13]). The model works quite well for the domain and subdomains of aparticular enterprise, where the hierarchy can be organized to match theorganizational structure, there are established ways to set policies andthere is, at least presumably, shared assumptions about overall goalsand objectives among all registrants in the domain. It is moreproblematic when a domain is shared by unrelated entities which lackcommon policy assumptions. It is difficult to reach agreement on rulesthat should apply to all of them. That situation always prevails forthe labels registered in a TLD (second-level names) except in those TLDsfor which the second level is structural (e.g., the .CO, .AC, .GOVconventions in many ccTLD) in which case, it exists for the labelswithin that structural level.TLDs may, but need not, have consistent registration policies for thosesecond (or third) level names. Countries (or ccTLD administrators) haveoften adopted rules about what entities may register in those ccTLDs,and the forms the names may take. RFC 1591 outlined registration normsfor most of the gTLDs, even though those norms have been largely ignoredin recent years. And some recent "sponsored" domains are based on quitespecific rules about appropriate registrations. Homogeneousregistration rules for the root are, by contrast, impossible: almost bydefinition, the subdomains registered in it are diverse and no singlepolicy applying to all root subdomains (TLDs) is feasible.1.2.2 AliasesIn an environment different from the DNS, a rational way to permitassigning local-language names to a country code (or other) domain wouldbe to set up an alias for the name, or to use some sort of "see instead"reference. But the DNS does not have quite the right facilities foreither. Instead, it supports a "CNAME" record, whose label can referonto to a particular label and not to a subtree. For example, if A.B.Cis a fully-qualified name, then a CNAME reference from X to A would makeX.B.C appear to have the same values as A.B.C. However, a CNAMEreference from Y to C would not make A.B.Y referenceable (or evendefined) at all. A second record type, DNAME [RFC2672], can provide analias for a portion of the tree. But it is problematic technically, andits use is strongly discouraged except for transition uses from onedomain to another.1.3 Internationalization and LocalizationIt has often been observed that while many people talk about"internationalization" (a term we typically use for making somethingglobally accessible while incorporating a broad-range "universal"character set and conventions appropriate to all languages), they often reallymean, and want, "localization" (making things work well in a particularlocality, or well, but potentially differently, for a broad range oflocalities). Anything that actually involves the DNS must be global andhence internationalized since the DNS cannot meaningfully supportdifferent responses based, e.g., on the location of the user making aquery. While the DNS cannot support localization internally, many ofthe features discussed earlier in this section are much more easilythought about in local terms --whether localized to a geographical area,users of a language, or using some other criteria -- than in global ones.2. Client-side solutionsTraditionally, the IETF has avoided becoming involved in standardizationfor actions that take place strictly on individual hosts on the network,assuming that it should confine itself to behavior that is observable
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -