Frage

Nachdem ich etwas mehr über die Funktionsweise von Gnutella und anderen P2P-Netzwerken gelesen hatte, wollte ich mein eigenes Peer-to-Peer-System starten.Ich ging davon aus, dass ich viele Tutorials und sprachunabhängige Richtlinien finden würde, die angewendet werden könnten, stieß jedoch auf einen vagen, vereinfachten Überblick.

Ich konnte nur sehr kleinen, präzisen P2P-Code finden, der nicht viel mehr tat, als die Client/Server-Architektur für alle Benutzer zu nutzen, was nicht wirklich das war, was ich suchte.Ich wollte so etwas wie Gnutella, aber es scheint keine offenen Artikel für den Beitritt zum Netzwerk zu geben.

War es hilfreich?

Lösung

Ich musste mit Web Services einen einfachen Gnutella-Client in C# schreiben und ich denke, die Kursnotizen zu den P2P-Sachen sind immer noch verfügbar Hier Und Hier.

Andere Tipps

RFC 4981, könnte mit seiner umfangreichen Bibliographie ein sehr guter Ausgangspunkt sein.

Möglicherweise haben Sie bei der Recherche zu Bittorrent mehr Erfolg. Ich glaube, dass der Ersteller einige Artikel geschrieben hat, und es scheint, dass es auch andere sind.

BitTyrant Bittorent.org, siehe Abschnitt „Entwickler“.

Ich weiß nicht, welche Plattform Sie verwenden möchten, aber hier ist sie ein anständiger Artikel zu diesem Thema für .NET.

Ich habe das gefunden TheoryOrg Inoffizielle BitTorrent-Spezifikation die beste Online-Quelle für Bittorrent-Informationen zu sein.Außerdem ist der Monotorrent-Code ziemlich einfach und leicht zu verstehen.Es gibt auch ein Projekt namens „GCT“, das P2P im JGroups-Stil für LAN/Multicast-Umgebungen implementiert, und dessen Code ähnlich leicht zu verstehen ist (wenn auch etwas fehlerhaft).

Sie können versuchen zu lesen Gnutella2 und versuchen Sie, Messaging zu implementieren.Zum Lesen von konzeptionellem Material können Sie Distributed Systems von Andrew Tannenbaum lesen.

Sie können einen Blick darauf werfen JXTA.Ziel war es, ein generisches, plattformunabhängiges P2P-Framework zu sein, im Gegensatz zu anderen P2P-Implementierungen, die normalerweise einem ganz bestimmten Zweck dienen (wie Gnutella).

Lassen Sie sich nicht von der Java-Optik täuschen, es gibt Bindungen für C/C++/C#, aber die Kernprotokolle sind in XML implementiert, das in jede Sprache übersetzt werden sollte.

Sie können auch ein kostenloses Buch herunterladen Hier.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top