news, hacks, programme, logs,
tipps und tricks rund um das internet

Artikel / Tipps und Tricks Forum 
Distributed DNS

DDNS ist ein P2P Programm, welches einen dezentralen, verteilten DNS anbietet. Der heutige Domain Name Service (DNS) ist eine weltweit verteilte Datenbank, die immer noch zentrale Elemente hat. Dieses Projekt untersucht die Machbarkeit eines dezentralen DNS. Dazu wird eine Peer-to-Peer Distributed Hashtable verwendet, die stark an das Kademlia Protokoll angelehnt ist.

Autor: tom - Date: 05.03.2004 - Size: 5004 chars - Hits / Day: 6.71 - Total Hits: 16055
Dieser Prototyp ist zum öffentlichen Testen freigegeben. Aber Achtung, der Prototyp hat bekannte Schwächen. Das System ist noch nicht stabil und es ist kein Verlass auf das Speichern von Namen. Feedback, Diskussionen und Anregungen sind erwünscht. <!l>http://distributeddns.sourceforge.net<!/l>Announcement auf freshmeat: <!l>http://freshmeat.net/releases/159578/<!/l><!i0left>

<b>Ausgangslage</b>

Der heutige Domain Name Service ist eine weltweit verteilte Datenbank, die immer noch zentral organisiert wird. Die Top Level Domains (TLDs) werden von der Organisation ICANN vergeben.

Für die weitere Aufteilung (2nd Level Domain) sind so genannte Registratoren zuständig. Für die Schweiz ist SWITCH und für Deutschland ist DeNIC zuständig. Der 2nd Level Domainname muss bei den jeweiligen TLD-Registratoren gekauft werden. Der Name wird zentral in einer Datenbank des Registrators eingetragen.

Die Zahl der registrierten Domains Ende Januar 2004 ist aus der folgenden Tabelle ersichtlich.

<table border=1><tr><td><table border=0><tr><td>TLD</td><td> Anzahl</td></tr><tr><td> .com</td><td>26.519.305</td></tr><tr><td> .de</td><td>7.050.853</td></tr><tr><td> .uk</td><td>4.777.227</td></tr><tr><td> .net</td><td>4.394.156</td></tr><tr><td> .org</td><td>2.799.082</td></tr><tr><td> .info</td><td>1.093.261</td></tr></table></td><td><table border=0><tr><td>TLD</td><td> Anzahl</td></tr><tr><td> .nl</td><td>1.032.885</td></tr><tr><td> .it</td><td>994.785</td></tr><tr><td> .biz</td><td>913.905</td></tr><tr><td> .us</td><td>744.206</td></tr><tr><td> ...</td><td>...</td></tr><tr><td> .ch</td><td>564’873</td></tr></table></td></tr></table>

Quellen: <!l>http://www.denic.de/de/domains/statistiken/domainvergleich_tlds/index.html<!/l>, <!l>http://www.switch.ch/id/stat/stat-ch.html<!/l>

<b>Neuer Ansatz mit DDNS</b>
Der neue Ansatz (DDNS) soll komplett dezentral laufen. Dazu wird ein P2P Netz gewählt welches in die Kategorie DHT (Distributed Hashtable) fällt. Ein anderer Ansatz wäre das Broadcastverfahren oder ein Ansatz mit Super Peers. Beide haben jedoch Nachteile. Das Broadcastverfahren skaliert nicht besonders gut, und der Ansatz mit den Super Peers führt wieder eine Hierarchie ein.

DDNS geht einen neuen Weg und versucht ohne Hierarchie auszukommen. Nun mag sich der interessiert Leser fragen: "Was passiert wenn man beliebig viele Namen speichert? Etwa mit folgender Codezeile <i>while(true) insertName(loop over all possible names);</i>". Ganz einfach: Das System kollabiert. Um das zu verhindern muss eine knappe Ressource her. Im DNS ist es das Geld und beim DDNS ist es die Rechenzeit. Jedes Speichern eines Namens benötigt Rechenzeit.

Was tun mit soviel Rechenzeit? Nun die Rechenzeit steht jedem zur Verfügung. Es ist nicht wichtig was gerechnet wird, es ist wichtig dass etwas gerechnet wird.

Die Geschwindigkeit ist O(log n) welches akzeptabel ist, aber wesentlich langsamer als DNS mit O(1). Mit Caching kann man noch eine wenig mehr Geschwindigkeit rausholen, aber es bleibt immer noch O(log n).

Das Programm kann man auf der folgenden Seite downloaden. <!l>http://sourceforge.net/project/showfiles.php?group_id=99882<!/l>

<b> Hintergründe</b>
Dieses Projekt entsteht im Rahmen meiner Diplomarbeit an der Universität Zürich. Es handelt sich um eine Machbarkeitsanalyse, welches durch einen Prototyp veranschaulicht werden soll.

<b> In the News</b>
Das Projekt ist auf folgenden Seiten erschienen:
<!l>http://www.golem.de/0405/31113.html<!/l>
<!l>http://www.symlink.ch/articles/04/05/03/1554227.shtml<!/l>
<!l>http://freshmeat.net/projects/distributeddns/release_id=159578<!/l>
<!l>http://www.numlock.ch/news/<!/l>
Bemerkungen, Kommentare und Feedback
Beiträge: 2 
  19.05.2004 12:28
Beiträge: 1 
  18.05.2004 23:58
Beiträge: 2 
  05.05.2004 20:45

Du kannst auch selber einen Thread starten, indem du hier klickst.
 Home
Artikel / Tipps und Tricks
Artikel Navigation
Internes
0 Artikel
    Links and Friends
    5 Links
    Artikel erscheinen ungefähr jeden Monat in unregelmässigen Abständen.

    RSS-feed: rss.xml
    Nope bietet keinerlei Garantie für die auf dieser Seite enthaltenen Tipps, Artikel und Programme. Für Schaden, der aus der Anwendung der hier enthaltenen Daten entsteht, übernehmen wir keine Haftung. Die Nope Homepage enthält Links zu anderen Seiten auf deren Inhalte wir keinen Einfluss haben. Wir übernehmen keine Verantwortung für fremde Inhalte und distanzieren uns ausdrücklich davon.© nope.tv. Die Artikel auf dieser Seite, soweit nicht anders im Artikel erwähnt, stehen unter CreativeCommons License. Die Programme auf dieser Seite, soweit nicht anders im Artikel oder Programm erwähnt, stehen unter der GNU Public License (GPL).