Keep it simple

--キーワードサービスを事例に--

IIJ技術研究所
山本和彦
iij.news (August/September 2001 Vol.37)


はじめに

インターネットには「keep it simple」という至言がある。 通信規約(プロトコル)を設計する際は、 できるだけ「簡潔にせよ」という教えだ。

簡潔なものを作ることは一見簡単そうに見えるが、 実はかなり難しい。 逆に、複雑なものを思い付くのはそう難しくない。 それはすなわち、たくさんの欠点を取り繕っており、 洗練されていないことを意味しているのだから。

如実な対比例として、 ここでは国際化(多言語)ドメイン名とキーワードサービスを取り上げる。

両者のサービス形態などについては、 日経 NETWORK に掲載された 「『キーワードサービス』のススメ」 に詳しく書いた。 そこで、この記事では通信規約の設計という視点 から両者を比較してみたいと思う。


より使い易く

インターネットに関わる人には共通の夢がある。それは、「イ ンターネットをより使い易くすること」だ。

インターネットを代表するサービスである web では、ページ の識別子として URL が使われている。ご存じのように、URL は決して使い易いとは言えない。たとえば、IIJ への地図の URL は以下の通りである。

	http://www.iij.ad.jp/map/map.html
URL は長いので入力し辛いし、覚えるのも大変である。たとえ ば、電車の中吊り広告に長い URL を書かれても覚えられない し、ラジオで「エッチティーティーピーコロン...」と言われ ても聞き取れない。

ドメイン名はもともと組織名を表わしていたにもかかわらず、 この問題を解決するために、製品名のドメイン名を取得するこ とが横行してしまった。

たとえば、IIJ は SEIL T1 というルータを開発販売しており、 その販売用のドメイン名として "seil-t1.com" がある。SEIL T1 のページの正式な URL は、以下の通りである。

	http://www.seil-t1.com/
"http://" の部分はブラウザが補完してくれるし、"www" は付 けなくてもよいように設定されているので、"seil-t1.com" と 入力するだけで、このページにアクセスできる。

このようにドメイン名に製品名という意味を持たせれば、URL が短くなるから比較的覚えやすい。しかし、日本で作られる製 品の名は日本語であることが多く、英数字だけで表現するのは ぎこちない。ラジオで「エスイーアイエル...」といっても広 告効果は低いだろう。

「母国語が英語ではない人にとってもインターネットを使い易 く」という要望と、「ドメイン名は儲かる」というヨコシマな 思惑とが絡み合い、国際化ドメインという大きな流れが生まれ てしまった。

国際化ドメイン名とは、英数字に加えて、それ以外の文字、た とえば、ひらがなや漢字を使えるようにしたドメイン名である。

結論から言えば、国際化ドメイン名は、インターネットを使い 易くしたいという正しい問題に対する、間違った答だ。 「keep it simple」という至言に反しているのだから。


識別子の階層モデル

インターネットの通信規約は階層的に作られている。このため、 おのずと識別子も階層構造となる。図1に、識別子の階層構造 を示す。

図1: 識別子の階層構造

一番下の層は、IP アドレスである。メールでも web でも、最 終的にはこの識別子を用いて通信する。IP アドレスは、IPv4 にしろ、IPv6 にしろ、位置を示す。そのため位置が変れば値 も変化する。たとえば、ISP を乗り換えると、サーバの IP ア ドレスを付け換える必要がある。IP アドレスは数字で表現さ れており、意味はないから、人にとって覚えにくい。

この 2 つの欠点を軽減する識別子が、1 つ上の層に位置する ドメイン名だ。ドメイン名は位置に依存しない。また、英数字 を使い組織名などの意味ある単語を選ぶことが多いので、IP アドレスに比べれば覚えやすいし、推測しやすい。

たとえば、IIJ の web サーバの IP アドレスは何かと聞かれ て、答えられる人はほとんどいないだろう。しかし、ドメイン 名は何かと問われれば、"www.iij.ad.jp" だろうと推測できる。

ドメイン名の上に、アプリケーションごとの識別子が構成され る。図 1 では、メールと web の例を示している。メールの基 本的な識別子はメールアドレスであり、web のそれは URL で ある。

そしてさらに、それぞれアドレス帳とブックマークが位置して いる。

たとえば、アドレス帳に「山本和彦」という名で "kazu@iijlab.net" を登録していたとしよう。「山本和彦」に メールを送ると以下のように識別子は変換されていく。

	   山本和彦 
	→ kazu@iijlab.net
	→ iijlab.net (メールサーバ) + kazu
	→ iijlab.net の IP アドレス + kazu

国際化ドメイン

国際化ドメインには、さまざまな実現方法が提案されている。 話を簡単にするために、ここでは主流である「Unicode を英数 字に変換して登録する方法」(ACE)について考える。

国際化ドメインには、少なくとも以下の 3 つの効用があると 言われている。

  1. ブラウザの URL バーに入力できる
  2. HTML の HREF の値として書ける
  3. メールアドレスにも使える
これは当たり前と言えば当たり前である。ドメイン名を拡張す るのだから、その上に乗っているアプリケーションの識別子に は、すべて有効となる。

果たしてそれは、よいことだろうか?

広告の例などから分かるように、(1) がもっとも重要な用途で ある。しかし、たとえば「東京大学.jp」のような中途半端な 文字列で、ユーザは満足できるだろうか?

(2) に対する需要はあまりないだろう。もし使うとしたら、事 態は複雑になる。日本語の HTML の多くは、Shift_JIS で書か れているが、国際化ドメインは Unicode である。Shift_JIS のファイルの中に、Unicode をどうやって記述するのだろう?

(3) に対する需要はあるかもしれない。しかし、メールアドレ スに国際化ドメインを利用するためには、種々のメールリーダ を大幅に書き直す必要がある。それに、アドレス帳の方が素直 だ。

「Unicode を英数字に変換する」という複雑さをドメイン名に 押し込むと、それに依存しているものすべてが複雑になる。そ して、その結果産み出されるものは、あまり役に立ちそうもな い。

「すべての要求を満そうとするとなんの要求も満せなくなると」 とよく言われる。国際化ドメインは、この典型例である気がし てならない。

間違いの本質は、ドメイン名に「案内サービス」の役割を負わ せたことに端を発している。「まずドメイン名ありき」という 誤った方向性のもと、国際化を試みても、よい結果は得られな い。

ドメイン名は、英数字のままの簡潔さを保たなければならない。 そして、そこに登録すべきなのは組織名のみだ。こうすること によって、ドメイン名の数を押さえ、ドメイン名システムの破 綻を回避できる。

案内サービスは、アプリケーションごとに目標を絞り、ドメイ ン名の上に簡潔に設計すべきである。以下に例を見ていこう。


キーワードサービス

(1) に対する筋のよい実現方法として、キーワードサービスが ある。キーワードサービスは、「文字列」を URL へ変換する サービスである。URL だから、ドメイン名だけでなくパス名も 指定できる。

ブラウザとして IE 5.0 以上をお使いであれば、URL バーにた とえば「東京大学」と入力してみて欲しい。 "www.u-tokyo.ac.jp" へアクセスでき、現時点でもこのサービ スが利用可能であることが分かるだろう。

キーワードサービスは、ブックマークの拡張に他ならない。ブッ クマークを共有する仕組みと考えてもよい。このサービスは、 web に閉じているから、他のアプリケーションに影響を与える ことはない。

詳細は割愛するが、キーワードサービスの通信規約(CNRP)は簡 潔であり、実装も容易である。国際化ドメイン名に対し時間を 浪費するぐらいなら、キーワードサービスの普及に努めて欲し いものだ。

また、キーワードサービスは、メールの向かうべき方向も示唆 しているように思える。すなわち、アドレス帳の共有である。 考えてみれば、日常生活において電話帳は実に当たり前のサー ビスだ。


デジタルデバイド

昨今、デジタルデバイドが問題視されている。この用語は混乱 されて使われているように思えるので、ここでは「通信の分断」 と「文化の分断」に分けて考えてみたい。

「通信の分断」は起こしてはならない。両者が望むならお互い に通信できる環境を整えるべきだ。しかし、その基盤の上で、 「文化の分断」が起こるのは自然な流れだ。たとえば、日本人 は日本人と多く通信したいのだから。

国際化ドメインは、通信の分断を引き起こす。たとえば、日本 語ドメイン名だけを取得した場合、アメリカ人はそれを入力で きない。

キーワードサービスは、文化の分断を引き起こすが、通信の分 断は起こさない。仮に、ある英数字のドメイン名と日本語のキー ワードを取得したとしよう。アメリカ人は、そのキーワードは 入力できないかもしれないが、最低限の通信はドメイン名によ り保証される。


おわりに

国際化ドメインとキーワードサービスを比較した。前者は複雑、 後者は単純。どちらが優れているか、"keep it simple" とい う至言に照らし合わせれば、答えはおのずと見えてくる。
Email: kazu@iijlab.net
URL: http://www.mew.org/~kazu/