Serving-D N S-P 2P-Lookup-Service-2002-Cox

Serving DNS using a Peer-to-Peer Lookup Service

http://citeseer.nj.nec.com/509010.html

@misc{ cox02serving,

author = "R. Cox and A. Muthitacharoen and R. Morris", title = "Serving DNS using a Peer-to-Peer Lookup Service", text = "R. Cox, A. Muthitacharoen, and R. T. Morris, Serving DNS using a Peer-to-Peer Lookup Service, in IPTPS, Mar. 2002.", year = "2002", url = "citeseer.nj.nec.com/article/cox02serving.html" }

概要

DNSSECのように、recordの検証も考えた、別のDNSレコードストレージを作る。 Chord上に実装した。

しかし、現在のところ、Latencyなどの問題点がDNSに比べてある。

Introduction と関連研究

DNSの紹介

chord上にLookup Serviceを実装する

設計および実装

DDNSと呼ばれるプロトタイプ実装を行った。

これは、通常のDNSと同じように、Recored Sets(RRSets)を返す実装である。

DNSSECはRecored Setsに公開鍵で署名をする。その検証には通常のDNSを使う。

DDNSは、Chordの実装であるDHashを使用した。これはLoad-balanceとrobustness に優れている。

DHashにレコードを追加・更新する場合は、レコードに公開鍵で署名する。DHash はこの鍵を検証してから受け取る。

この検証にはコストがかかることから、.comのようなドメインに対する検証は省 略するようにした。

Evaluation

条件

評価項目

評価手法

結果

これらの結果から、以下のような結論が導き出される。

Why (not) cooperative DNS?

DHTは、ドメイン管理者の責任をなくし、だれでもドメインを登録できるように なるという点がイケてる。

DNS Administration

DNSの弱点がいくつかある。(by Albitz and Liu1)

Slave Serverはzone dateをloadできない。

DDNSではそもそもslaveとかない。

Loss of Network connectivity

DDNSはrobustだよ。

また、別の問題として、あるマシンがインターネットから切り離されたら、自分 自身の名前もひけなくなるという問題がある。DNSもDDNSも両方とも、この問題 に関してはキャッシュで解決している。

DDNSは、さらに、ネットワークから切り離されたら、その中で小さなchord ring をつくって、キャッシュを共有することになる。

subdomainの委譲が失われてしまう

DNSでは、subdomainのほうが先に作られると、そのサブドメインの委譲先がなく なり、とうたつできなくなってしまう。 

Incorrect なsubdomainの委譲

管理

DNSの管理者は、ホストに関する情報(A recordとか)と名前検索に関する情報(NS record)の両方を管理しなければならない。

DDNSは、そういうことは全部自動でやってくれる。

Dynamically generated records

load balancing

Denial of Service

DDNSは現在のDNSよりDoSに対する耐性がある。なぜなら、階層構造とかが存在し ないから。

また、Recordを大量に挿入する、というDoSも考えられる。これに対しては、 それぞれの組織ごとに、DDNSに参加しているマシンの数に応じて挿入できるRecordを制限すると言うことで回避できるのではないかと考えている。

Conclusion