Gnutella 0.6: Difference between revisions
Theodorescu (talk | contribs) No edit summary |
Theodorescu (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
==Protokollverbesserungen== |
==Protokollverbesserungen== |
||
===Ultrapeers & Leafs=== |
===Ultrapeers & Leafs=== |
||
Um den Traffic der einzelnen Servents im Gnutella-Netzwerk zu minimieren und die Netzbelastung zu reduzieren hat man das ursprüngliche Servents-Prinzip neu konzepiert: Man teilte die Servents in Ultrapeers und Leafs auf. Dabei sind Ultrapeers eine Art temporärer Server für bis zu 100 Leafs. Ultrapeers bilden dann mit anderen Ultrapeers eine Art Serververbund, Leafs verbinden sich mit einem oder mehreren Ultrapeers. Dabei wird anhand von Pings entschieden welche die optimalsten Verbindungen sind. Aufgaben der Ultrapeers sind unter anderem die Indexierung des Dateibestands ihrer Leafs und die Erstellung von Query-Routing Tabellen. Dadurch wird eine schnellere und effizientere Suche gewährleistet.<br> |
|||
Um Ultrapeer zu werden muß man gewisse Vorraussetzungen erfüllen: <br> |
|||
# Peer darf nicht hinter einer Firewall oder NAT sitzen |
|||
# Peer muß über eine schnelle Verbindung zum Internet verfügen |
|||
# Peer muß über ein Betriebssystem verfügen welches mit vielen Verbindungen umgehen kann: Linux, Windows NT-basierend oder MAC OS X |
|||
===GWebCaches=== |
|||
Hierbei handelt es sich um eine Verbessrung des Bootstrapping-Vorgangs. Ursprünglich im GNUCleus-Client implementiert, später überall. Ein GWebCache ist ein Script welches auf einem Webserver installiert werden kann und als "Kontaktbörse" dient. Softwareclients, die sich mit dem Gnutella-Netzwerk verbinden wollen, kennen mindestens einen dieser GWebCaches und tauschen mit ihm IP-Adressen von anderen Gnutella-Peers aus. |
|||
===Hashing=== |
|||
Durch das hashen von Dateien sind in der neuen Protokollversion gestückelte Downloads möglich, da nun nicht mehr auf verschiedene Dateinamen Rücksicht genommen werden muß. |
|||
Auch kann man direkt auf Dateien im Gnutella-Netzwerk verlinken mit Hilfe von Magnet-Links. |
|||
===Bye Paket=== |
|||
Peers verschicken dieses Paket wenn sie sich aus dem Gnutella-Netzwerk ausklinken. Dies erspart unnötigen Traffic an "tote" Adressen. |
|||
===XML-Anfrageschema=== |
|||
Limewire hat eine spezielle Suche implementiert in der man eine Vielzahl von Meta-Informationen abfragen kann wie zB Musikrichtung, Filmgenre, Bitrate, Autor usw. |
|||
===Paketkompression=== |
|||
Pakete können komprimiert werden, um den Traffic zu reduzieren. Dies ist allerdings nicht abwärtskompatibel, Peers vereinbaren sich darüber beim Handshaking. |
|||
[[Gnutella|Zurück zum Index]] |
|||
[[Gnutella|Zurück zum Index]] |
|||
[[Gnutella|Zurück zum Index]] |
|||
[[Gnutella|Zurück zum Index]] |
|||
[[Gnutella|Zurück zum Index]] |
[[Gnutella|Zurück zum Index]] |
Latest revision as of 13:30, 14 February 2006
Protokollverbesserungen
Ultrapeers & Leafs
Um den Traffic der einzelnen Servents im Gnutella-Netzwerk zu minimieren und die Netzbelastung zu reduzieren hat man das ursprüngliche Servents-Prinzip neu konzepiert: Man teilte die Servents in Ultrapeers und Leafs auf. Dabei sind Ultrapeers eine Art temporärer Server für bis zu 100 Leafs. Ultrapeers bilden dann mit anderen Ultrapeers eine Art Serververbund, Leafs verbinden sich mit einem oder mehreren Ultrapeers. Dabei wird anhand von Pings entschieden welche die optimalsten Verbindungen sind. Aufgaben der Ultrapeers sind unter anderem die Indexierung des Dateibestands ihrer Leafs und die Erstellung von Query-Routing Tabellen. Dadurch wird eine schnellere und effizientere Suche gewährleistet.
Um Ultrapeer zu werden muß man gewisse Vorraussetzungen erfüllen:
- Peer darf nicht hinter einer Firewall oder NAT sitzen
- Peer muß über eine schnelle Verbindung zum Internet verfügen
- Peer muß über ein Betriebssystem verfügen welches mit vielen Verbindungen umgehen kann: Linux, Windows NT-basierend oder MAC OS X
GWebCaches
Hierbei handelt es sich um eine Verbessrung des Bootstrapping-Vorgangs. Ursprünglich im GNUCleus-Client implementiert, später überall. Ein GWebCache ist ein Script welches auf einem Webserver installiert werden kann und als "Kontaktbörse" dient. Softwareclients, die sich mit dem Gnutella-Netzwerk verbinden wollen, kennen mindestens einen dieser GWebCaches und tauschen mit ihm IP-Adressen von anderen Gnutella-Peers aus.
Hashing
Durch das hashen von Dateien sind in der neuen Protokollversion gestückelte Downloads möglich, da nun nicht mehr auf verschiedene Dateinamen Rücksicht genommen werden muß. Auch kann man direkt auf Dateien im Gnutella-Netzwerk verlinken mit Hilfe von Magnet-Links.
Bye Paket
Peers verschicken dieses Paket wenn sie sich aus dem Gnutella-Netzwerk ausklinken. Dies erspart unnötigen Traffic an "tote" Adressen.
XML-Anfrageschema
Limewire hat eine spezielle Suche implementiert in der man eine Vielzahl von Meta-Informationen abfragen kann wie zB Musikrichtung, Filmgenre, Bitrate, Autor usw.
Paketkompression
Pakete können komprimiert werden, um den Traffic zu reduzieren. Dies ist allerdings nicht abwärtskompatibel, Peers vereinbaren sich darüber beim Handshaking.