<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Chord</id>
	<title>Chord - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Chord"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Chord&amp;action=history"/>
	<updated>2026-06-02T04:08:49Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Chord&amp;diff=878877&amp;oldid=prev</id>
		<title>imported&gt;Rmcharb: Änderungen von 2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF (Diskussion) auf die letzte Version von Uncopy zurückgesetzt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Chord&amp;diff=878877&amp;oldid=prev"/>
		<updated>2020-04-23T07:45:21Z</updated>

		<summary type="html">&lt;p&gt;Änderungen von &lt;a href=&quot;/index.php/Spezial:Beitr%C3%A4ge/2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF&quot; title=&quot;Spezial:Beiträge/2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF&quot;&gt;2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF&lt;/a&gt; (&lt;a href=&quot;/index.php?title=Benutzer_Diskussion:2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer Diskussion:2A00:79C0:7E2:E000:F0A3:CBA5:AD44:C2AF (Seite nicht vorhanden)&quot;&gt;Diskussion&lt;/a&gt;) auf die letzte Version von &lt;a href=&quot;/index.php?title=Benutzer:Uncopy&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Benutzer:Uncopy (Seite nicht vorhanden)&quot;&gt;Uncopy&lt;/a&gt; zurückgesetzt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Begriffsklärungshinweis}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Chord&amp;#039;&amp;#039;&amp;#039; ist ein strukturiertes [[Peer-to-Peer]]-System, welches im Gegensatz zu den meisten unstrukturierten Systemen eine effiziente Suche nach Inhalten ermöglicht. Wie auch [[Gnutella]] ist Chord keine konkrete Implementierung, sondern ein Protokollsystem. Es wird am [[Massachusetts Institute of Technology|MIT]] entwickelt und der [[Quelltext]] der aktuellen Version steht unter der [[MIT-Lizenz]] zum freien Herunterladen und Benutzen zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
== Strukturiertes Overlaynetzwerk ==&lt;br /&gt;
Über der eigentlichen [[Transportschicht]] ([[TCP/IP]]) bilden Peer-to-Peer-Systeme ein sogenanntes [[Overlay-Netzwerk]]. Dieses Overlay-Netzwerk beschreibt die Netzwerktopologie der einzelnen Peers, die über das Peer-to-Peer-System verbunden sind. Die zentrale Frage stellt sich beim Hinzufügen und Entfernen neuer Peers (Netzwerkknoten): Mit wem soll der neue Knoten verbunden werden? Genauso beim Löschen: War der Knoten eventuell eine Verbindung zwischen zwei anderen, sodass das Entfernen des Knotens eine Verschlechterung der Qualität des Overlaynetzwerks darstellt?&lt;br /&gt;
&lt;br /&gt;
Bei [[Gnutella]] werden diese Fragen nicht gestellt, neue Knoten verbinden sich wahllos mit den Knoten, die sie durch Flooding des Netzwerkes ermitteln können. Bei Chord hingegen wird ein sogenannter Chord-Ring aufgebaut: Alle Netzwerkknoten werden in einer Ringstruktur angeordnet, wobei jeder Knoten Verbindungen zu seinem Vorgänger, Nachfolger sowie bestimmten anderen Knoten im Netzwerk hat. Diese Ringstruktur ermöglicht (mit Hilfe einer [[Verteilte Hashtabelle|Verteilten Hashtabelle]]) eine binäre Suche, was im Allgemeinen Suchkosten von &amp;lt;math&amp;gt;\mathcal{O}(log(n))&amp;lt;/math&amp;gt; bei der Suche nach Inhalten im Netzwerk verursacht.&lt;br /&gt;
(Im Gegensatz dazu verursacht Gnutella z.&amp;amp;nbsp;B. immense Suchkosten, – etwa 70 % der Netzwerklast in Gnutella-Netzwerken entsteht durch Suchen.)&lt;br /&gt;
Der Nachteil liegt in der komplexeren Handhabung der Ringstruktur – beim Hinzufügen und Entfernen von Netzwerkknoten ist jeweils immer darauf zu achten, dass die Ringstruktur und die Querverweise erhalten bleiben.&lt;br /&gt;
&lt;br /&gt;
== Inhaltsverteilung ==&lt;br /&gt;
[[Datei:Chord fingers full.svg|thumb|250px|Chord-Fingertabelleneinträge auf weiterführende Knoten]]&lt;br /&gt;
Allein mit Hilfe der Ringstruktur ist noch keine binäre Suche möglich: Im naiven Ansatz müsste – zur Suche von Inhalten – der Ring einmal in aufsteigender Reihenfolge der GUIDs durchlaufen werden, um einen „exact match“, d.&amp;amp;nbsp;h. eine präzise Antwort auf eine Suchanfrage zu bekommen. Das ist zwar besser als die Suche in einem unstrukturierten Netz, aber immer noch relativ „teuer“. &lt;br /&gt;
&lt;br /&gt;
Um Daten, also den eigentlichen zu verbreitenden Inhalt des Netzwerkes, korrekt zu identifizieren, wird eine globale Hash-Funktion benötigt. Diese weist jedem Datensatz (z.&amp;amp;nbsp;B. Dateien im Fall von Filesharing) eine eindeutige ID zu, die durch die Verwendung der [[Secure Hash Algorithm#SHA-1|SHA-1]]-Hashfunktion zustande kommt (160-Bit-Schlüssel). Jeder Knoten verwaltet nun einen bestimmten Teil der globalen Hashtabelle, der durch ein Intervall des Schlüssels repräsentiert wird. Jeder Knoten weiß jetzt also für einen Teil der Daten, auf welchen anderen Knoten bzw. Intervallen sich diese jeweils befinden.&lt;br /&gt;
&lt;br /&gt;
Bei der Variante &amp;quot;Scalable Key Location&amp;quot; benutzt das Chord-Netzwerk zur Suche und Durchquerung des Ringes Verweise auf entfernte Knoten, eine sogenannte Fingertabelle. Die Einträge werden wie folgt erstellt: Der &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt;-te Finger (&amp;lt;math&amp;gt;1 \leq i \leq m&amp;lt;/math&amp;gt;) des Knoten mit der ID &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; verweist auf den Knoten, der für den Hashwert &amp;lt;math&amp;gt;(x+2^{(i-1)}) \bmod 2^m&amp;lt;/math&amp;gt; zuständig ist, wobei &amp;lt;math&amp;gt;m&amp;lt;/math&amp;gt; der Anzahl der Bits entspricht, die einen Knoten darstellen. Das modulo &amp;lt;math&amp;gt;2^m&amp;lt;/math&amp;gt; sorgt dafür, dass man auf der Ringstruktur bleibt. Dadurch ist gesichert, dass man viel schneller als mit linearer Suche zu dem gesuchten Element gelangen kann.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://pdos.csail.mit.edu/chord/ The Chord Project]&lt;br /&gt;
* [http://sarwiki.informatik.hu-berlin.de/Chord Erklärung von Chord, HU Berlin]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Peer-to-Peer]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Rmcharb</name></author>
	</entry>
</feed>