Internet DRAFT - draft-chung-idn-idnx
draft-chung-idn-idnx
IDN Edmon Chung & David Leung
Internet Draft Neteka Inc.
<draft-chung-idn-idnx-00.txt>
Intended Category: Informational June 2002
Internationalized Domain Name Transition (IDNX)
STATUS 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 reader is cautioned not to depend on the values that appear in
examples to be current or complete, since their purpose is primarily
educational. Distribution of this memo is unlimited.
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.
Abstract
This document describes a strategy for domain name server operators
to prepare and transition their services for multilingual domain
names (IDN û Internationalized Domain Names).
The IDNX approach accepts that users with non-IDN aware applications
will be attempting to access multilingual domain names. Hence it is
the registry or domain operator's responsibility to provide an IDN
solution that resolves these issues to make it a seamless transition
experience for technically unsophisticated users.
In essence, the IDNX approach embraces a complementary server-side
implementation to smooth the transition. IDNX compliant domain
servers will successfully resolve IDN requests sent via non-IDN aware
applications, whether they are formatted in local encoding, UTF-8 or
an identifiable variant.
The IDNX approach also utilizes a dynamic CNAME mechanism to
provision for the sub-delegation of multilingual domain names to
hosts running non-IDN aware DNS servers.
Chung & Leung [Page 1]
IDNX IDN Transition June 2002
Table of Contents
Abstract...........................................................1
1. Introduction....................................................2
1.1 Terminology....................................................2
1.2 Assumptions....................................................2
2. Common Misconceptions & The IDNX Premise........................2
3. The reality of a Purebred IDNA Approach.........................3
3.1 Lengthy Transition & User Confusion............................4
3.2 Registry Responsibilities......................................5
4. Complementary Server-end Brute Force Resolution.................5
4.1 Resolving Domain Names.........................................5
4.2 Extent of Resolution...........................................6
4.3 Ambiguity Resolution...........................................6
4.4 Complementing IDNA.............................................7
5. Delegating Multilingual Domain Names............................7
5.1 Dynamic CNAME..................................................7
5.2 Setting up a Multilingual Domain Name at the Registry..........8
5.3 Setting up a Multilingual Domain Zone at the Host..............9
5.4 Complementing IDNA.............................................9
6. Security Considerations.........................................9
7. Intellectual Property Considerations............................9
8. References.....................................................10
1. Introduction
During the lengthy discussion at the IETF IDN workgroup, the question
about time-to-deployment is often being raised and considered a
critical consideration. However little word was said on any actual
solid transition path towards IDN. This document will provide a
comprehensive guide to the issues surrounding the deployment as well
as information on resolving them during the transition period.
1.1 Terminology
The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED",
and "MAY" in this document are to be interpreted as described in RFC
2119 [RFC2119].
1.2 Assumptions
This document assumes that the reader has basic knowledge of the DNS
and IDN. For more information on the IDN discussions and background
knowledge checkout: http://neteka.com/en/pages/products/position.html
2. Common Misconceptions & The IDNX Premise
There is a common misconception among domain registries and
registrars that once a proposed IETF standard (in the form of an RFC:
Request for Comments) for multilingual and Internationalized domain
names (IDNÆs) is published; Registries will immediately be able to
accept registrations and deliver a working multilingual domain names
Chung & Leung [Page 2]
IDNX IDN Transition June 2002
to end-users. In fact, the publishing of RFCs for IDN is but the
beginning of a long transition towards a common and universal
multilingual namespace.
Another common misconception is that a server-end approach would
cause a lengthier transition. That however is only based on a server
protocol overhaul for IDN and not the use of a server-end transitory
solution. IDNX is specifically designed for the transition.
The premises of IDNX are:
1. To support the adoption of the open IDN standard.
2. To present a working solution that provides a seamless transition
to the IDN standard.
3. Understanding that the client only approach to IDN will not work
speedily because there is no effective distribution method and
will result in low initial acceptance and accessibility, causing
customer confusion, dissatisfaction, customer support issues and
ultimately slower adoption.
4. Be fully compliant with the IDN standard by preparing the
registry for multilingual domain requests sent via existing
applications as well as upgraded IDN (Internationalized Domain
Names) aware applications;
5. It accepts and addresses the fact that multilingual domain
requests will be successfully sent to the registry from existing
software and will resolve those requests instead of avoid them;
6. Provide a solution that will make multilingual domain names
functional immediately;
7. To allow the host for a multilingual domain name to use an
existing (BIND, etc.) DNS software by using only an ACE record
(only registry Servers need be updated or supplemented);
8. To complement a client end approach with a transitional strategy
on the server end;
In short, we understand that a server side approach to IDN is a
crucial component for the successful deployment of a Multilingual
Registry to ensure accessibility to multilingual domain names and the
seamless migration to the IDN standard. This document will outline
the approaches to the resolving of an IDN and how the IDNX solution
can both accelerate adoption and reduce the risk of deployment of the
IDN standard for registries.
3. The reality of a Purebred IDNA Approach
Simply put, ACE is a process whereby multilingual domain names are
converted into an alphanumeric string containing only A-Z, 0-9 and
hyphens ô-ô (e.g. bq--ad9ebbvfnqerv.com). IDNA mandates that this
transformation take place before an application, for example the
browser, sends a DNS request over the Internet to a registry name
server.
Chung & Leung [Page 3]
IDNX IDN Transition June 2002
Success of a ôClientô only approach has two inherent pre-conditions;
1. Firstly, all software programs that interact with a domain name
MUST be upgraded with the ACE standard (browsers, email
applications, html editors, audio/video streaming applications,
word processors, operating system tools, ftp agents, etc.) before
the prescribed IDN system would function universally; and
2. The success of IDNÆs will depend on the successful propagation of
the client software, which will be highly dependant on a) the
successful dustribution of client plug-in in the short-term and
b) the incorporation of the standard in next generations of
application software (e.g. IE ad Outlook)
3.1 Lengthy Transition & User Confusion
A key concern with respect to a client only approach to IDN is that
there are simply no efficient or effective means to distribute the
client plug-ins. Companies, who have been dedicated advocates of the
client approach to multilingual domain names failed to achieve a
critical mass of adoption of their respective client software even
with aggressive promotion for over 2 years now. And, the recent
demise of RealNames has made it difficult for registries that elected
to align their IDN strategy with RealNamesÆ anticipated strategy of
being a launch pad for client distribution.
Furthermore, even if we assume that a dominant software provider,
such as Microsoft, with their stranglehold on the browser and email
client market, was to introduce a new version of its Internet
Explorer and Outlook line of products with the IDNA client built in,
it will still take a considerable amount of time before these new
versions reach the majority of desktops around the Internet. Using
Microsoft IE 6.0 as a yardstick for new browser adoption rates, which
yielded an eye-popping 36% penetration within 9 months of its
release, the industry is still effectively looking at a minimum of
24-36 months or more before a critical mass of Internet users will
have adopted an IDN standard-ready-browser. That is not taking into
consideration the lead-time for Microsoft to release the next version
of their software, let alone whether IDN will make the cut for its
next version, and that the IDNA components are stable. This will
realistically add another 12 months to the process.
Under some very realistic assumptions, even if Microsoft incorporates
the IETF standard into the next version of Internet Explorer, less
than half of the worldwide Internet users will have a browser that
supports the IETF standard by the end of 2004. In short, even if
third party software vendors like Microsoft do adopt the standard and
Registries like VeriSign do put effort in promoting a client plug-in,
these combined efforts will still not achieve any meaningful
universality in 24-36 months and beyond.
Finally, the client side approach to internationalized domains is
especially susceptible to client plug-in software conflicts as
Chung & Leung [Page 4]
IDNX IDN Transition June 2002
providers scramble to push out these plug-in software applications.
Client plug-in providers may purposefully or inadvertently interfere
with how the browsers handle multilingual characters causing greater
confusion.
To summarize, the purebred client approach requires no changes to the
DNS infrastructure but does require fast and efficient distribution
of client software that supports the standard û as we have
demonstrated above this will be difficult to achieve. Registries
that cannot guarantee almost universal access to multilingual domains
from the start will likely experience support headaches and many
dissatisfied customers who are confused and frustrated because their
multilingual domain names do not work. Further, without universal
access the value of multilingual domains will be compromised.
3.2 Registry Responsibilities
Because the average Internet user is not expected to be technically
sophisticated and know that they have to upgrade their existing
applications (such as the browser) before using multilingual domain
names, it will become the registryÆs responsibility to provide a
multilingual domain deployment that is transparent to its users. In
other words, the registry should be prepared to accept and resolve
multilingual domain requests from users with existing software when
they deploy and offer multilingual domain registrations to
registrants.
4. Complementary Server-end Brute Force Resolution
Multilingual domain name requests sent by existing software
(browsers, etc.) will reach the registry server. Whether the
registry decides to resolve the name or not is the relevant question.
Server side solutions that resolve these domain requests provide an
easy transition to the IETF standard and user-friendly approach to
implementing multilingual domains. Client-only approaches that are
likely to result initially in lower resolution rates, and greater
customer confusion and are likely to cause support nightmares.
4.1 Resolving Domain Names
In general, there are three types of IDN requests that a registry
server will receive: 1. Domain in the form of UTF8 encoding; 2.
Domain in the form of its local encoding (GB, Big-5, JIS, KSC,
ISO8859-1..13 etc.); 3. Domain is in an ACE (ASCII Compatible
Encoding) format. Each of these types includes both the possibility
that the received request is in its pure form or that it is a variant
of the type. Because the application (browser or the operating
system) was not designed for multilingual domain names, even though
it does send out the domain request, it often tampers with the
characters before sending, causing the advent of a variant being
generated.
Chung & Leung [Page 5]
IDNX IDN Transition June 2002
4.2 Extent of Resolution
Type 1 requests, where a domain is sent in the form of UTF8 encoded
characters, are generally received from more recent versions of
browsers and operating platforms. These include Microsoft Internet
Explorer 5 and above, Netscape 6 and above and applications based on
the Windows 2000 or XP platform. These applications were designed to
deal with multilingual characters using Unicode, however, because it
was not specifically programmed for IDNs, it sometimes malfunction
when presented with such. The result is that a variant of original
UTF8 character is formed and sent to the DNS.
Type 2 requests, where a domain is sent in the form of local encoded
characters (GB, Big-5, JIS, KSC, ISO8859-1..13, etc.), are generally
received from earlier versions of browsers and operating platforms.
These include Microsoft Internet Explorer 4, Netscape 4 most other
applications based on the Windows 98 or earlier platform. These
applications were not designed to deal with multilingual characters
using Unicode at all and therefore will be sending out the IDN in its
local encoding. Mostly, the domain is also not tampered with before
sending; therefore a pure local encoding may be received. However
under some platforms and circumstances, it will also try to
reinterpret a multilingual domain name. The result is that a variant
of original local encoded character is formed and sent to the DNS.
Type 3 requests, where a domain is sent in the form of ACE encoded
characters (RACE, DUDE, UTF5, AMC-Z, etc.), means that the
application has been upgraded with an IDN client. Because of the
evolving standard depending on the version or provider of the client,
the type of ACE string may be different. Additionally, these client
plug-ins are susceptible to buggy code, as they are being created as
beta products by providers experimenting with the evolving IDN
standard. Misbehaviors caused by browsers and operating systems,
which are not taken into consideration by the client also gives way
to the creation of variants in ACE formats.
Even though variants are created as a derivation form the pure form,
these variations are consistent and predictable, and therefore can be
resolved definitively and uniquely. There is no guessing involved.
An IDNX capable server could be designed to handle both requests sent
in its pure form as well as its variants from the three types of
multilingual domain name requests. The extent of the coverage is
only dependent on the extent of research an implementer has put on
the subject and their understanding of the IDN issues.
4.3 Ambiguity Resolution
Another concern is for character encoding conflicts between the
various 8-bit encoding schemes (including UTF8 and local encoding
schemes). The IDNX solution suggests the handling of these issues at
the point of registration. On the registration side, the domain name
is definitively registered using Unicode, regardless of whether
Unicode or local encoding was used as input. The desired domain name
Chung & Leung [Page 6]
IDNX IDN Transition June 2002
is confirmed with the user at the interface, ensuring that the name
registered is accurate.
During the availability search, encoding conflict is checked to
ensure no existing domain name caused an encoding conflict with the
requested domain. In essence, it SHOULD maintain uniqueness of a
codepoint string regardless of its original encoding scheme. The
system SHOULD reject domain names on a first come first serve basis
for domains that will cause conflict with any local encoding or UTF8
string (or variants if applicable).
By taking care of both the domain registration and the resolution
side at a domain registry, IDNX can ensure a complete solution and
extensive coverage for multilingual domain resolution. Not only will
users with IDN aware plug-ins be able to access the multilingual
domain names offered by registries or domain operators with IDNX,
users who are using existing software, existing browsers will also be
able to successfully access these names, making it a truly seamless
and transparent transition.
4.4 Complementing IDNA
To complement the propagation of IDNA clients, IDNX servers could
also improve the download experience by dynamically prompting the
user for download when the first tries to access a multilingual
domain name. Because the IDNX solution includes a server-end
deployment, the server could be configured to act as a channel for
the IDN client at the point of access to multilingual domain names.
In essence, with an IDNX capable server, the registry would be able
to successfully intercept multilingual domain requests and offer the
user the option to download an IDN client plug-in. If the user
chooses to download the plug-in, then the domain would be resolved
using the ACE format. If the user declines the option to download,
IDNX, preserving the seamless resolution experience for the end-user,
would still resolve the domain.
5. Delegating Multilingual Domain Names
Besides being backward compatible with existing client side
applications, the IDNX solution also intends to make it backward
compatible for name servers hosting delegated multilingual domain
names. Besides resolving the IDNs, the other biggest challenge for a
registry in rolling out multilingual domain names is how domain
registrants could host it. With IDNX deployed at the registry level,
the delegated domain hosts SHOULD simply use their existing name
server (BIND, etc.) and load in the long term ACE as the domain.
They could also further delegate sub-domains to other hosts, just
like with the current English only domain names.
5.1 Dynamic CNAME
The ability to sub-delegate multilingual domain names to ACE only
hosts is achieved by using a dynamic CNAME mechanism to glue the
Chung & Leung [Page 7]
IDNX IDN Transition June 2002
multilingual domain name to the long term ACE equivalent at the
registry DNS server.
The following is a brief explanation on how the dynamic CNAME SHOULD
work:
- Application sends www.<ML>.example to DNS
- .example Registry responds with:
www.<ML>.example CNAME www.xx--ACE.example
- Application then uses www.xx--ACE.example to query the host
- Therefore the host will only have to setup the xx--ACE.example zone
While the registrant for a multilingual domain names will be able to
host their names with their existing DNS server software and be able
to create English sub-domains from it, if multilingual sub-domains
are desired, then the registrant SHOULD also make their system IDNX
capable.
5.2 Setting up a Multilingual Domain Name at the Registry
The concept of Dynamic CNAME is relatively simple, imagine the
multilingual domain name being setup at the registry as:
*.<ML>.example IN CNAME *.xx--ACE.example
xx--ACE.example IN NS ns1.xx--ACE.example
An IDNX compatible DNS will therefore successfully provide the
requestor the corresponding ACE record of a multilingual domain
request via a CNAME response, which is supported by regular DNS
resolvers.
In essence, no matter what the sub-domains may be for the
<ML>.example domain, it will be successfully sub-delegated to the
host server in its ACE name.
The setup of the different types of possible requests and variants
could also be conceptually imagined to be set up as:
*.<ML-Type1>.example IN CNAME *.xx--ACE.example
*.<ML-Type1-variant>.example IN CNAME *.xx--ACE.example
*.<ML-Type2>.example IN CNAME *.xx--ACE.example
The actual implementation of an IDNX compatible server however may
cause the setup to be different. For example, the implementation
SHOULD make the forking of the variants transparent to the zone
administrator, so the administrator only needs to provide one
definitive record, for example simply:
xx--ACE.example IN NS ns1.xx--ACE.example
Upon loading the zone file, the IDNX server should identify the xx--
ACE.example domain as a multilingual domain and fork the variants out
automatically for resolution purposes.
Chung & Leung [Page 8]
IDNX IDN Transition June 2002
5.3 Setting up a Multilingual Domain Zone at the Host
The multilingual domain name will simply be setup as a regular
English only domain name with the ACE record. For example:
xx--ACE.example IN SOA ns1.xx--ACE.example dnsmaster.xx (
2002062400
1800
900
86400
3600 )
NS ns1.xx--ACE.example
MX 0 mail.xx--ACE.example
ns1 A 123.4.5.6
www A 123.4.5.7
mail A 123.4.5.8
As you may see, it is exactly identical to what you would do for
setting up an English only domain.
5.4 Complementing IDNA
Furthermore, because the IDNX architecture for registries allows for
the delegation of IDNs in ACE format to non-IDN aware host servers,
this again complements the evolving client side standard whereby the
hosts do not necessarily have to upgrade their system for
multilingual domains.
6. Security Considerations
This document does not talk about DNS security issues, and it is
believed that the proposal does not introduce additional security
problems not already existent and/or anticipated by adding
multilingual characters to DNS and/or using ACE.
Although some may argue that multilingual characters create more
ambiguity issues and hence are more susceptible to confusion and
attacks, it is actually no more problematic than issues brought about
by the use of the letter ôOö and the digit ô0ö or the letter ôIö and
the digit ô1ö.
Because DNSSEC provides coverage for wildcard records, the Dynamic
CNAME feature will also not cause any additional security concerns.
7. Intellectual Property Considerations
It is the intention of Neteka to submit the elements of the Neteka
multilingual domain name server solution to IETF for review, comment
and/or standardization.
Neteka Inc. has applied for one or more patents on the technology
related to multilingual domain name server software and multilingual
email server software suite. If a standard is adopted by IETF and
Chung & Leung [Page 9]
IDNX IDN Transition June 2002
any patents are issued to Neteka with claims that are necessary for
practicing the standard, any party will be able to obtain the right
to implement, use and distribute the technology or works when
implementing, using or distributing technology based upon the
specific specifications under fair, reasonable and non-discriminatory
terms.
8. References
[IDNA] Internationalizing Domain Names in Applications,
draft-ietf-idn-idna, Feb 2002, Patrik Faltstrom,
Paul Hoffman, Adam M. Costella
[PUNYCODE] Punycode: An encoding of Unicode for use with IDNA,
draft-ietf-idn-punycode, Feb 2002, Adam M. Costella
[STRINGPREP]Preparation of Internationalized Strings,
draft-hoffman-stringprep, Feb 2002, Paul Hoffman,
Marc Blanchet
[NAMEPREP] Nameprep: A Stringprep Profile for Internationalized
Domain Names, draft-ietf-idn-nameprep, Feb 2002,
Paul Hoffman, Marc Blanchet
Authors:
Edmon Chung
Neteka Inc.
Suite 100, 243 College St. Toronto,
Ontario, Canada M5T 1R5
edmon@neteka.com
David Leung
Neteka Inc.
Suite 100, 243 College St. Toronto,
Ontario, Canada M5T 1R5
david@neteka.com
Chung & Leung [Page 10]