Share

From Fansub Wiki
Jump to: navigation, search
Share logo.png

Beschreibung

Share ist ein japanisches P2P-Tauschbörsenprogramm für Windows, das als Nachfolger von Winny angesehen werden kann und besonderen Wert auf Anonymität seiner Anwender legt.

Unter Fansubbern sind diese beiden Programme vor allem für den Rawprovider nützlich.

Versionen

Derzeit (d. h. Sommer 2006) existieren zwei 'aktuelle' Versionen von Share:

  • EX2 (TCP, "Extream", SHA1 = 7aa217c159f38394c0571c36817131851fe4b0aa) und
  • NT5 (UDP, "Net Test", SHA1 = 69dc36ac836c187b454ba09f515a7c5802ee31a8).

Die TCP-Variante ist die 'produktive' dieser beiden (und von dieser wird die Version EX2 von etwa drei Vierteln aller Teilnehmer verwendet, Versionsnummern älterer Versionen beginnen mit A gefolgt von zwei Ziffern); die UDP-Version wird erst seit Frühjahr 2005 entwickelt und scheint sich noch im experimentellen Stadium zu befinden.

Download des Programms

Zunächst beschafft man sich das Programm aus einer geeigneten Quelle.

Eine offizielle Homepage des Programms gibt es nur im verschlüsselten Freenet (der Autor des Vorgänger-Programms Winny wurde in Japan verhaftet und am 13. Dezember 2006 wegen Beihilfe zu Urheberrechtsverletzungen zu einer Geldstrafe von 1.5 Mio. Yen verurteilt), nicht aber im normalen HTTP-Netzwerk; aktuelle Versionen des Programms kursieren u. a.

  • im ed2k-Netzwerk (siehe unten),
  • auf einigen wenigen HTTP-Download-Seiten und natürlich
  • im Share-Netzwerk selbst.

Sobald eine neue Version des Programms veröffentlicht wird, erhalten alle Benutzer eine entsprechende Meldung in der Statuszeile des Programms und können diese neue Version aus dem eigenen Netzwerk laden. (Das ist allerdings seit Frühjahr 2006 nicht mehr geschehen.) Die symbolische Identität des Autors ist dem Programm bekannt, sodass auf diese Weise keine Fake-Versionen verbreitet werden.

Im ed2k-Netzwerk kursiert das Programm unter diversen File Hashes. Zu zweien davon kann ich den Inhalt bestätigen:

  • ed2k://|file|Share10_ex2.zip|753309|B1352541ACCC3A0681464F688B759102|/ (Share10_ex2.zip, CRC D738F27F)
    enthält die Originalversion des Programms (Version 1.0 EX2 vom 1.4.2006, laut Datei readme.txt) mit japanischen Menü-Texten.
  • ed2k://|file|Share%201.0%20EX2.rar|582779|527B135DABF9C570423F3448569E9060|/ (Share 1.0 EX2.rar, CRC DE350F3D)
    enthält gegenüber der Originalversion eine geänderte Datei locale.txt mit den nach Englisch übersetzten Menü-Texten des Programms.

Download-Seiten für das Programmarchiv (Share10_ex2.zip, ohne englische Menütexte) im WWW:

Download-Seite für die englischen Menütexte im WWW (vom Autor der Datei):

Installation des Programms

Das Programmarchiv (eine Zip-Datei) enthält die ausführbare Datei share.exe sowie eine Reihe von Textdateien; die Installation besteht einfach darin, den Inhalt des Archivs in ein beliebiges Verzeichnis zu entpacken.

Der Inhalt der Textdateien besteht bei einem japanischen Programm wie Share allerdings aus japanischen Zeichen. Sämtliche Menü-Texte sind jedoch in der Datei locale.txt enthalten, zu der es auch Übersetzungen nach Englisch bzw. Französisch gibt; die beiden Dateien locale.txt sowie hints.txt sollte man daher durch Versionen einer geeigneteren Sprache ersetzen, bevor man das Programm startet. (Dieses Dokument setzt nachfolgend die englischen Menütexte in der Übersetzung von "serika" voraus.)

Konfiguration

Nach dem ersten Programmstart sind zunächst einmal einige Einstellungen erforderlich, damit das Programm überhaupt arbeiten kann:

Konfiguration von Netzwerkeinstellungen

Im Menü Settings wählt man den Eintrag General Settings und geht dort die einzelnen Karteikarten durch:

  • Mit Profile kann man sich (mindestens) eine Benutzer-Identität, welche für andere Netzteilnehmer sichtbar ist, definieren. Sie besteht aus einem wählbaren (die ersten max. 8 Zeichen) und einem zufälligen Teil, welche später in unterschiedlichen Farben dargestellt werden (der zufällige Teil ist offenbar ein Tie-Breaker, um die Benutzer-Identität möglichst eindeutig zu machen).
  • Bei Network muss man mindestens folgende Werte eintragen:
    • Maximale Upload-Geschwindigkeit in kB/sec; hier ist als kleinster zulässiger Wert die Angabe 50 möglich (in Japan sind die Netzanbindungen üblicherweise deutlich schneller als hierzulande), was aber nicht bedeutet, dass das Programm mit einem langsameren Internet-Anschluss nicht funktionieren würde (man sollte dann allerdings nicht allzu viele anderen Kommunikations-Anwendungen gleichzeitig laufen lassen...)
      Der Versuch, diesen Parameter in der entsprechenden Konfigurationsdatei config.ini auf einen niedrigeren Wert zu setzen, wird vom Programm erkannt und mit einer erzwungenen Neu-Eingabe über den entsprechenden Konfigurationsdialog bestraft. ;-)
    • Maximale Download-Geschwindigkeit in kB/sec (es spricht nichts dagegen, die volle Download-Leistung der eigenen Internet-Anbindung hier anzugeben)
    • einen (festen) TCP/IP-Port (eine Zahl zwischen 1 und 65535, sinnvollerweise irgendwas Fünfstelliges)
  • Bei den übrigen Karteikarten Performance, Action und Quota reichen zunächst einmal die Default-Einstellungen.

Falls der Internet-Anschluss einen Router verwendet, muss der angegebene Port wie üblich entsprechend konfiguriert (geforwarded) werden. Für die UDP-Variante des Programms ist zusätzlich die Angabe einer Paketgröße erforderlich, wobei jedoch der vom Programm vorgegebene Standardwert üblicherweise funktionieren sollte.

Konfiguration von Verzeichnissen

Share unterscheidet drei Arten von Verzeichnissen:

Von jedem dieser drei Typen muss mindestens ein Verzeichnis definiert sein, bevor Share mit seiner Arbeit beginnen kann; solange dies nicht der Fall ist, öffnet Share nach dem Programmstart automatisch den entsprechenden Konfigurationsdialog für das Eintragen dieser Verzeichnisse.

Für das Cache-Verzeichnis kann man zusätzlich eine Beschränkung (Quota) des auf der Festplatte zu belegenden Speicherplatzes angeben.

Dem Upload-Verzeichnis ordnet man per Konfiguration ein Profil zu und kann damit seine (symbolische) Identität seinen Tauschpartnern sichtbar machen; einige dieser Profile im Share-Netzwerk sind bekannt (u. a. das Profil des Programmautors, der unter selbigem jeweils neue Programmversionen veröffentlicht).

Konfiguration von Clustern

Als nächstes sind die Cluster-Schlüsselworte zu konfigurieren. Bis zu 255 davon können definiert werden, und bis zu 5 davon dürfen maximal gleichzeitig aktiv sein. Die aktivierten Cluster-Schlüsselworte dürfen insgesamt eine Länge von 255 Zeichen nicht überschreiten. Diese Schlüsselworte dienen dazu, dass nur inhaltlich zusammenpassende Nodes (mit mindestens einem übereinstimmenden Schlüsselwort) voneinander erfahren und demzufolge Verbindung miteinander aufnehmen.

Dazu wählt man im Menü Settings den Eintrag Clusters... und trägt dort die gewünschten Cluster-Begriffe ein - und zwar natürlich in japanischen Schriftzeichen! Das Cluster-Schlüsselwort für Animes im Allgemeinen ist sinnvollerweise アニメ (= "anime"); hilfreich ist auch der Name des gesuchten Animes in seiner Originalschreibweise. Für Original-DVDs sind zudem die Cluster-Schlüsselworte DVDISO bzw. [DVDISO] sehr verbreitet.

Jedes eingetragene Cluster-Schlüsselwort wird in dem entsprechenden Fenster aufgelistet; links davor befindet sich jeweils eine kleine Checkbox, die per Maus selektiert werden muss - erst dadurch ist das Cluster-Schlüsselwort auch wirklich aktiviert (und mindestens ein solches Cluster-Schlüsselwort muss aktiviert sein, sonst kann sich das Programm nicht mit einem Node verbinden).

In der Auflistung der Nodes sieht man übrigens deren Cluster-Schlüsselworte und kann sich so einen Eindruck davon verschaffen, welche eigenen Schlüsselworte sinnvoll sein könnten. Der in dieser Ansicht dargestellte Wert "Priority" wird aus der Übereinstimmung zwischen der eigenen Schlüsselwortliste und der Schlüsselwortlisten des jeweiligen Nodes berechnet - ändert man seine eigenen Schlüsselworte, dann ändern sich auch diese Prioritätswerte der anderen Nodes.

Konfiguration von Nodes

Zuguterletzt benötigt man Informationen über andere Teilnehmer des Netzwerks (Nodes = Knoten), um mit diesen Kontakt aufnehmen zu können. (Jeder dieser Nodes hat sich ja ebenfalls als zuständig für bestimmte Cluster-Schlüsselworte definiert; auf diese Weise finden automatisch nur solche Tauschpartner zueinander, welche in ihren Cluster-Schlüsselworten dieselben Interessen ausgedrückt haben, also sehr wahrscheinlich Dateien zueinander passender Themengebiete suchen bzw. anbieten.)

Dazu wählt man im Hauptfenster die Karteikarte Nodes und klickt dort zunächst einmal auf den Schaltknopf Show Sleep Nodes. Anschließend klickt man auf Add node, woraufhin sich ein Eingabefenster für Node-Informationen öffnet.

Nun begibt man sich auf eine unten angegebenen Webseiten mit Nodes-Listen, markiert dort den Inhalt der mittleren Tabellenspalte unterhalb der Überschrift ノード(暗号化アドレス) ("noudo (angouka adoresu)" bzw. "Knoten (verschlüsselte Adresse)") mit der Maus, kopiert ihn in das Eingabefeld des in Share geöffneten Dialogs und klickt auf den Schaltknopf Add. Damit werden die Informationen über diese Nodes in die Programmkonfiguration eingetragen - und dadurch, dass wir die "Sleep Nodes" haben anzeigen lassen, sehen wir im Hauptfenster nun eine Liste von Nodes (als Feedback dafür, dass das Eintragen überhaupt etwas bewirkt hat - sonst sieht man nämlich gar keinen Effekt).

ShareNodes.jpg

Die angegebenen Nodes-Listen beschreiben jeweils auch die Version des jeweils verwendeten Share-Client. (Nodes für UDP-Clients mit der Programmversion NT5 habe ich auf den angegebenen Nodes-Seiten allerdings keine gefunden.)

Als letztes selektiert man die Schaltfläche Connect im Nodes-Hauptfenster des Programms und beendet selbiges durch einen Klick auf das Close-Widget rechts oben - einen Menü-Eintrag zum Beenden gibt es nicht.

Beim nächsten Programmstart verbindet sich Share mit allen für die aktivierten Cluster-Schlüsselworte zuständigen Nodes, und das eigentliche Arbeiten mit dem Programm kann beginnen.

Wenn man einmal Verbindung mit anderen Nodes hatte, dann liefern diese einem Informationen über zahlreiche weitere Nodes; es ist völlig normal, mehrere tausend Nodes zu einem einzigen Cluster-Schlüsselwort in seiner Liste zu haben (weshalb man in diesem Fall die Anzeige der "Sleep Nodes" nun wieder abschalten sollte...); tatsächlich verbunden ist man jeweils nur mit einer Handvoll dieser Nodes.

Share speichert Informationen über die ihm bekannten Nodes in der Datei nodes.db in seinem Installationsverzeichnis; das Programm benötigt also Schreibrecht auf dieses Verzeichnis. Die Nodes-Datei kann innerhalb weniger Stunden auf 10 MB anwachsen (wobei diese Größe vermutlich von der maximalen Anzahl 10000 gleichzeitig zu verwaltender Nodes abhängt, denn ein weiteres Wachstum konnte ich bisher nicht beobachten).

Diese Nodes-Seite liefert übrigens einen recht guten Überblick über den Betriebszustand des Share-Clients, wenn man die entsprechenden Informationen zu deuten weiß. Jeder dargestellte Node kann einen der folgenden Zustände einnehmen:

  • Sleep: Node im Ruhezustand, Zustand längere Zeit nicht aktualisiert. (Nach einem Programmneustart sehen alle Nodes so aus.)
  • Sleep: Node im Ruhezustand, Zustand relativ aktuell. (Ab einem Programmneustart nimmt der Anteil solcher Zeilen nach und nach zu.)
  • Sleep: Node im Ruhezustand, Verbindungsaufbau zu diesem Node gescheitert. (Einzelne Zeilen dieser Art sind kein Grund zur Sorge, aber sollten sich solche Symptome häufen - oder gar über 50% aller Nodes ausmachen -, dann liegt ein schwerwiegendes Problem vor, üblicherweise ein Verbindungsengpass. Ein Neustart des Programms kann genügen, um dieses zu beheben; falls das nicht reicht, kann eine Trennung und ein Neuaufbau der Internetverbindung helfen.)
  • Share (Up/Down): Aktueller Datenaustausch mit diesem Node. An der Verbindungsdauer kann man erkennen, dass solche Übertragungen oft mehrere Stunden ohne Unterbrechung dauern können. (3-4 gleichzeitige Share-Down-Verbindungen sind schon ziemlich gut.)
  • Search (Up/Down): Durchsuchen der Nodes nach interessanten Dateien bzw. Nodes; aufgrund dieser Funktion genügt ein einziger bekannter (aktiver) Node, um in das Netz einzusteigen und weitere Tauschpartner zu finden. (1-3 solcher Verbindungen wird man üblicherweise gleichzeitig haben.)
  • Test (Up/Down): Versuch eines Verbindungsaufbaus zu diesem Node (Protokoll-Handshake). (1-2 solcher Verbindungsversuche hat man üblicherweise gleichzeitig laufen.)
  • Check (Up/Down): Abfrage der Cluster-Informationen des entsprechenden Nodes, welche als Ergebnis eines erfolgreichen "Check" auf dieser Seite eingeblendet werden. (Ich habe selten mehr als 1 gleichzeitige Check-Verbindung gesehen.)
  • Diffuse (Up/Down): Anonymisierung von Daten fremder Übertragungen. Durch solche Indirektion von Verbindungen erschwert das Share-Netzwerk eine Beobachtung der eigentlichen Datentransfers - im Gegensatz zu Torrent- oder ed2k-Netzwerken sind hier nämlich üblicherweise nicht die beiden Daten austauschenden Nodes direkt miteinander verbunden. Nachteil der Methode ist, dass ein Vielfaches des übertragenen Datenvolumens an Netzbandbreite erforderlich ist. Deshalb übernimmt ein Node nur dann "Diffuse"-Aufgaben, wenn er dazu genügend Bandbreite übrig hat - tendentiell leisten die schnellsten Nodes des Netzwerkes den überwiegenden Teil an "Diffuse"-Arbeit für die langsameren Nodes mit. (Ich habe nur selten eigene "Diffuse"-Funktionen beobachtet, allerdings meistens gleichzeitig mit sehr guten eigenen Download-Leistungen - es wäre also denkbar, dass "Diffuse"-leistende Nodes für ihre eigene Belieferung mit Daten einen Bonus bei fremden Nodes erhalten.)

Unabhängig von der Anzahl meiner Up- bzw. Downloads und der aktuellen Verbindungsgeschwindigkeit habe ich nie mehr als ein Dutzend Nodes beobachtet, zu denen gleichzeitig eine Verbindung existierte; Share geht also sehr ökonomisch mit seinen Verbindungen um und kann deshalb relativ gut gleichzeitig mit anderen File-Sharing-Applikationen betrieben werden (sofern man das von der erforderlichen Upload-Bandbreite hinkriegt). Dies ist gleichzeitig aber auch der Grund, weshalb es eine Weile dauert, bis Suchvorgänge im Netz neue Informationen liefern: In diesem Verbindungsaufbautempo dauert es mehrere Stunden, bis Share sämtliche ihm bekannten 10000 Nodes einmal abgeklappert und seine lokalen Informationen auf den neuesten Stand gebracht hat.

Betrieb des Programms

Nach dem Programm-Neustart geht es nun daran, Dateien zu suchen und Downloads zu starten (mindestens ein Neustart ist erforderlich, sonst beginnen keine Downloads, sagt "serika" in seinem englischen HowTo).

Suchen von Dateien

Suchen mit dem Share-Client

Zum Suchen definiert man eine Suchanfrage, eine Query. Dazu gibt man in das Eingabefeld links oben im Hauptfenster einen geeigneten Suchbegriff (in japanischer Schrift, beispielsweise aus AniSearch) ein und klickt auf die Schaltfläche Search. Unterhalb des Suchbegriffs kann man die Suche auf eine bestimmte (z. B. besonders vertrauenswürdige) Identität eines Nodes beschränken.

Als Ergebnis erhält man die Anzahl der "Hits" (d. h. gefundene Dateien) unterhalb des Such-Eingabefelds angezeigt; außerdem wechselt das Hauptfenster automatisch auf die Karteikarte Queries, welche unterhalb der farbigen Schaltflächen zur Filterung der Such-Ergebnisse eine Liste von Karteikarten mit den jeweiligen Suchbegriffen anzeigt. Jede dieser Karteikarten enthält eine Liste der gefundenen Dateien, mit den Informationen

  • File name (Dateiname, kann in Form verschiedener Synonyme mehrdeutig sein)
  • ID (die Identität des Releasers dieser Datei, falls angegeben)
  • File size (exakte Größe der Datei in Bytes)
  • Status mit den möglichen Bedeutungen:
    • DB = virtuelle Datei auf dem lokalen Rechner (Metadaten liegen bereits vor, aber noch kein Datei-Inhalt).
    • Remote = virtuelle Datei auf einem entfernten Rechner (potentieller Download)
    • Local = die Datei liegt bereits teilweise auf dem lokalen Rechner vor (aktueller Download)
    • Complete = die Datei liegt bereits vollständig auf dem lokalen Rechner vor (fertiger Download)
  • Cache Amount (die Anzahl der Nodes, welche diese Datei in ihrem Cache haben?)
  • Last update (Datum/Uhrzeit im Format "YY.MM.DD hh:mm:ss", offenbar der Zeitpunkt der letzten Aktualisierung der Informationen über diese Datei)
  • Hash (Prüfsumme über den Inhalt dieser Datei, nach dem Verfahren SHA-1; dies ist die eindeutige Beschreibung eines Download)

Außerdem liefert die Farbe der Zeile weitere Informationen über die jeweilige Datei:

  • weiß = normales Ergebnis
  • orange = "gutes" Ergebnis (viele Anbieter der vollständigen Datei)
  • rot = "schlechtes" Ergebnis (Markierung als "Fake")
  • türkis = aktueller Download
ShareQuery.jpg

Einmal definierte Queries bleiben geöffnet und werden von Zeit zu Zeit automatisch aktualisiert (die Menge der verbundenen Nodes ändert sich ja), ohne dass man dafür explizit etwas tun müsste. Der Umfang des Such-Ergebnisses kann dabei sowohl zu- als auch wieder abnehmen! Für die dauerhafte Aufbewahrung von Such-Ergebnissen siehe den Abschnitt über Trigger.

Die Ergebnisanzeige für eine Query wird nicht automatisch aktualisiert, noch nicht einmal dann, wenn die Sortierung der Zeilen durch den entsprechenden Mausklick aufgrund einer anderen Spalte angefordert wird! (Sinn der Sache ist, dass der Benutzer auf diese Weise die angezeigten Informationen markieren und kopieren kann, ohne dabei von einer sich ständig ändernden Anzeige behindert zu werden.)

Um eine Aktualisierung der Anzeige zu erzwingen, gibt es folgende Möglichkeiten:

  • Die Eingabe eines anderen Suchbegriffs (oder desselben Suchbegriffs nochmal).
  • Ein Klick auf den "Search"-Button. (Seit Programmversion A77 bewirkt dies nicht mehr das Aussenden weiterer Such-Pakete an andere Nodes, aber es bewirkt die Aktualisierung der Anzeige.)
  • Ein zweifacher Mausklick auf den "Synonym"-Button dieser Query-Anzeige.
  • Ein zweifacher Mausklick auf den "Filter"-Button dieser Query-Anzeige.

Suchen mit Web-Frontend KeyDB

Die Suchmaschine KeyDB bietet die Möglichkeit, per Web-Browser nach Dateien des Share-Netzwerkes zu suchen. Auf diese Weise kann auch ohne die Installation von Share überprüfen, ob sich dessen Einsatz für ein konkretes Projekt vermutlich lohnen wird.

Bearbeiten von Such-Ergebnissen

Trigger

Statt sich tagelang vor die Tastatur zu setzen und zu beobachten, ob eine gesuchte Datei irgendwann einmal innerhalb einer der definierten Queries auftaucht, kann man auch eine automatische Reaktion auf einen solchen Fall definieren: Einen Trigger. Dabei definiert man zunächst einmal, worauf man reagieren will; angeben kann man:

  • den Suchbegriff für den Dateinamen
  • die ID eines Nodes
  • den Hash einer Datei (z. B. falls man den aus einer anderen Quelle kennt)
  • die Mindestgröße der Datei
  • die Maximalgröße der Datei

Alle angegebenen Bedingungen werden überprüft, also mit "und" verknüpft. Außerdem kann man noch festlegen, ob gleichzeitig definierte Filter berücksichtigt oder ignoriert werden sollen, und man kann einen Trigger auch als "aktiv" bzw. "passiv" kennzeichnen.

Wird nun in einem Suchergebnis eine Datei gefunden, die allen Bedingungen eines aktiven Triggers entspricht (ohne dass es von einem Filter verhindert wird), dann "feuert" der Trigger. Wie auf dieses Ereignis reagiert werden soll, kann man in ihm ebenfalls definieren:

  • Der Trigger kann wahlweise weiter bestehen oder gelöscht werden, und
  • die gefundene Datei kann wahlweise nur in die Datenbank übernommen oder sofort als Download gestartet werden.

Wobei letzteres übrigens nur bei der Suche nach einem konkreten Hash zu empfehlen ist, weil man sich auf diese Weise ansonsten eine Menge Spam einhandeln kann, welcher erstens unnötigerweise die eigene Festplatte füllt und zweitens vom eigenen Client auch noch weiter verbreitet wird.

Auch bei Verwendung eines Triggers erhält man sinnvolle Such-Ergebnisse allerdings nicht in Nullzeit; ein paar Stunden muss man schon warten, bis alle bekannten Nodes reihum mindestens einmal nach dem gesuchten Objekt befragt wurden.

Filter

Im Gegensatz zu Triggern sind Filter immer dauerhafte Definitionen. In einem Filter definiert man dieselben Kriterien wie in einem Trigger (Suchbegriff, ID, Hash, Mindest- und Maximalgröße).

Filter wirken auf Suchergebnisse (durch Filter kann man also die Anzeige von Teilmengen von Ergebnissen in allen Queries ausblenden) und damit implizit auch auf Trigger (falls dies innerhalb des Triggers nicht anders konfiguriert wurde), wobei man die Auswirkung aller aktiven Filter auf die Anzeige eines Query-Ergebnisses innerhalb derselben über einen entsprechenden Button ein- bzw. ausschalten kann. Darüberhinaus kann ein Filter so definiert sein, dass entsprechende Dateien aus der lokalen Datenbank entfernt oder sogar als "Fake" angezeigt werden.

Download von Dateien

Start eines Downloads

Hat man nun innerhalb einer Query eine Datei gefunden, die man haben will, dann genügt ein Doppelklick auf die entsprechende Zeile der Query-Anzeige (oder ein Klick mit der rechten Maustaste und die Auswahl des Eintrags Add to download aus dem dadurch geöffneten Kontextmenü), um die Datei für einen Download auszuwählen.

(Manchmal wundern sich Anwender, wieso ein Doppelklick auf eine bestimmte Datei nicht den entsprechenden Download startet, d. h. der Dateiname nicht blau wird. Die wahrscheinlichste Ursache dafür ist, dass der entsprechende Download bereits aktiv ist, weil der gerade angeklickte Eintrag nur ein anderer Name, ein Synonym, für die Datei eines bereits aktiven Downloads darstellt. Möglich ist auch, dass die maximale Anzahl der Downloads bzw. Keys für diesen Benutzer bereits erreicht ist; leider gibt Share keinen Hinweis darauf, welcher diese dieser Ursachen vorliegt... 100 gleichzeitige Downloads sind jedenfalls kein Problem)

Da Share mehr und mehr von sogenannten "Fake" Dateien überschwemmt wurde und es auch meist mehrere Quellen gibt, von dem man etwas laden kann, auch noch ein Tipp.
Man sollte sich immer die Datei mit einer richtigen "ID" laden. Der Rest werden Viren, Fakes oder andere Dateien sein, die man nicht so gern auf dem PC haben will.
Auch gibt es in Share meist schon Raws, die es noch gar nicht geben kann, weil der Anime noch nicht Ausgestrahlt wurde oder die Folge.
Auch das sind Fakes, erkennt man aber auch an der ID.

Informationsanzeige über aktive Downloads

Informationen über den aktuellen Stand des Download sind in zwei Karteikarten des Hauptfensters verfügbar:

  • In der Karteikarte Download sieht man zu jedem gestarteten Download
    • den Dateinamen,
    • die ID des Releasers dieser Datei,
    • das bereits übertragene Dateivolumen sowie die Gesamtgröße der Datei,
    • die Download-Priorität (Downloads mit der kleineren Priorität haben Vorrang, falls die eigene Download-Kapazität voll ausgelastet ist (was tatsächlich jederzeit vorkommen kann, angesichts der für deutsche Verhältnisse enorm schnellen Netzanbindung der Japaner) oder falls ein anderer Node mehrere der gesuchten Dateien mit Daten beliefern könnte (damit kann man also einstellen, ob man mehrere zusammengehörige Dateien eher nacheinander oder eher gleichzeitig saugen möchte, indem man für letzteres alle paar Tage den zurückhängenden Downloads die kleinere, also bessere Priorität gibt).
    • einen Statusbalken (eine graphische Darstellung der bereits empfangenen Blöcke mit einer Anzeige, wieviele Blocks dieser Datei derzeit von den aktuell verbundenen Nodes angeboten werden) sowie
    • den SHA1-Hash der Datei.

Die Anzahl der sichtbaren Blocks einer Datei ist hierbei eine ganz wesentliche Information. Wenn nicht innerhalb der ersten Tage eines Downloads mindestens einmal alle Blocks als verfügbar anzeigt werden, dann ist die Wahrscheinlichkeit hoch, dass es sich bei dieser Datei um eine Leiche handelt, die im Netzwerk nicht mehr vollständig vorhanden ist. Zuverlässig herausfinden kann man das leider nur durch die 'harte' Lösung, also ausprobieren und warten; die Geschwindigkeit der eintreffenden Daten ist kein Kriterium (im Gegenteil, "Leichen" werden von den anderen Wartenden oftmals besonders schnell beliefert, um anschließend zu 'vertrocknen').

Informationsanzeige über aktuelle Datenübertragungen

  • In der Karteikarte Tasks sieht man (u. a.) zu jedem in diesem Moment belieferten Download
    • den Dateinamen,
    • das bereits übertragene Dateivolumen sowie die Gesamtgröße der Datei,
    • einen Statusbalken (eine graphische Darstellung der bereits empfangenen Blöcke mit einer Prozent-Anzeige),
    • die geschätzte Zeitdauer bis zum Abschluss der Übertragung sowie
    • die aktuelle Übertragungsgeschwindigkeit des konkreten Nodes für diese Datei (es können gleichzeitig mehrere Tasks für dieselbe Daten aktiv sein, von denen dann jeder seine eigene Anzeige-Zeile bekommt).

Während eine Datei beliefert wird, sieht man also nicht, ob zu dieser Datei alle Blöcke aktuell verfügbar sind!

Informationsanzeige über den gesamten aktuellen Traffic

In der Statuszeile des Programms sieht man zudem die gesamte Upload- und Download-Geschwindigkeit des Programms in diesem Moment - wobei zu beachten ist, dass Share keineswegs nur die eigenen Downloads empfängt, sondern im Zuge der Anonymisierung des gesamten Netzwerks auch Daten anderer Transfers durchreicht und außerdem ja ständig Aufwand für das Suchen von Nodes und Dateien anfällt. Es kann also durchaus vorkommen, dass man eine Download-Geschwindigkeit von 10-20 kB/sec angezeigt bekommt, aber gleichzeitig kein einziger Task für einen eigenen Download in diesem Augenblick aktiv ist.

Im schwarzen Abschnitt des Programmfensters oben rechts werden zumindest die Anzahl der gerade laufenden Upload- und Download-Prozesse sowie die Anzahl der laufenden Suchanfragen des eigenen Client an andere Nodes und die Anzahl der gerade beantworteten Antwortprozesse auf solche Anfragen durch andere Nodes angezeigt, allerdings ohne jegliche Detail-Informationen, Geschwindigkeiten etc.

Innerhalb der Nodes-Ansicht kann man zudem sehen, wie lange man mit einem konkreten Node bereits verbunden ist, nicht aber, welche Datei dabei übertragen wird.

Zwischenspeicherung und Konvertierung der empfangenen Daten

Solange ein Download noch nicht vollständig ist, speichert Share alle Daten zu der entsprechenden Datei in einer zugehörigen Datei des Cache-Verzeichnisses, welche sequentiell wächst, also jeweils nur soviel Platz belegt, wie Daten zu diesem einen Download empfangen wurden.

Am Ende des Downloads wird die eigentliche Datei aus dieser Cache-Datei (automatisch) konvertiert, es werden also alle Datenblöcke in der richtigen Reihenfolge zusammengefügt und in eine Datei im definierten Ausgabeverzeichnis kopiert. Der Download belegt nun also doppelt soviel Platz auf der Festplatte wie zuvor - das sollte man bei der Dimensionierung seiner Verzeichnisse berücksichtigen.

Man kann eine solche Konvertierung übrigens auch bei unvollständigen Dateien jederzeit manuell anstoßen; Share gibt dann die Daten ab dem Beginn der Datei bis zum ersten fehlenden Block aus (und am Statusbalken des Downloads kann man abschätzen, wieviel das ungefähr sein wird). Es gibt Fälle, in denen man auf diese Weise aus Dateileichen des Netzwerks noch ein paar sinnvolle Daten gewinnen kann; ein Beispiel dafür sind RAR-Archive, welche auch im unvollständigen Zustand lesbar sind und aus denen man deshalb zumindest die bereits vollständig empfangenen Archiv-Elemente extrahieren kann, ohne den Download vollständig abgeschlossen zu haben - das ist zwar nicht ideal, aber manchmal besser als nichts. Auch DVD-ISOs sind im unvollständigen Zustand zumindest in Einzeldateien zerlegbar (und wenn man viel Glück hat, dann fehlt nur am Ende der DVD ein Block aus der VOB-Datei mit einem Werbe-Trailer, während die Episoden selbst vollständig vorhanden sind), während diese Methode bei Dateiformaten, die auf Informationen am Ende der Datei angewiesen sind (z. B. AVI-Container), nichts nützt.

Löschen der Cache-Instanz einer empfangenen Daten

Die Cache-Kopie bleibt auch nach der Konvertierung zunächst einmal erhalten (aus dieser Kopie führt das Programm während des Tauschens eventuelle Uploads durch).

Um sie zu entfernen (und damit den Speicherplatz auf der eigenen Festplatte wieder freizugeben), muss man den Download explizit aus dem Cache löschen, und zwar innerhalb einer Query-Ansicht mit der Tastenkombination Cntrl-Del (der entsprechende Eintrag im Kontextmenü scheint keine Wirkung zu haben).

Von direktem Löschen der Cache-Datei wird abgeraten - das kann den Inhalt des Cache-Verzeichnisses korrumpieren. Außerdem wäre es ohne "Blindflug", gar nicht möglich, da die Dateinamen innerhalb des Cache kryptisch sind und die Größe zwischen fertiger Datei und Cache-Datei nicht exakt übereinstimmen (in der Cache-Datei sind zusätzlich die Verwaltungstabellen drin, welcher Dateiblock an welche Position der fertigen Datei gehört usw.).

Upload von Dateien

Man kann in Share natürlich auch eigene Dateien zum Upload anbieten. Dazu legt man diese Dateien in eines der zuvor in der Share-Konfiguration definierten Upload-Verzeichnisse (von denen man mehrere gleichzeitig haben kann, auch unter verschiedenen Identitäten), begibt sich in den Bereich "Folders" innerhalb des Programms und wendet dort die Operation "check" an. Von dieser existieren zwei Varianten:

  • Quick Check prüft, ob in dem angegebenen Verzeichnis Dateien enthalten sind, die der Konfiguration noch nicht bekannt sind. Ist dies der Fall, dann werden diese Dateien vorverarbeitet (es wird vermutlich eine Blockübersichtstabelle mit Prüfsummen etc. aufgebaut) und eine zugehörige Datei (von etwa 20 kB Größe) im Cache-Verzeichnis von Share angelegt. Solcherart zum Upload angebotene Dateien sind in der Anzeige von Queries etc. als "Link" dargestellt.
  • Recheck führt auf jeden Fall eine komplette Analyse des Upload-Verzeichnisses durch, auch für bereits bekannte Dateien. Auf diese Weise kann man eventuelle Probleme des Cache-Inhalts reparieren - dafür dauert die Verarbeitung bei sehr großen angebotenen Dateien (die im Share-Netzwerk üblich sind) entsprechend lange.

Eine zum Upload angebotene Datei wird vom Programm Share sofort geöffnet und entsprechend gesperrt, kann also während der Dauer des Programmlaufs nicht gelöscht werden.

Liste aller Dateien im Programmverzeichnis

Dateiname Format Bedeutung
cache.idx binär Index aller Dateien im Cache-Verzeichnis; das Löschen dieser Datei bewirkt die automatische Löschung aller Dateien im Cache-Verzeichnis (welche ohne diesen Index nicht mehr verarbeitet werden können).
cluster.txt Text Liste aller derzeit aktiven Cluster-Schlüsselworte.
clusterlist.txt Text Liste alle in der Cluster-Dialogbox angegebenen Cluster-Schlüsselworte.
config.ini Text Diverse Betriebseinstellungen.
diffuse.db binär Zustand aller aktuell hochgeladenen Dateien.
download.tmp binär Zustand der Schlüssel aller aktuell heruntergeladenen Dateien.
download.txt Text Liste der Hashes aller aktuell heruntergeladenen Dateien.
filter.txt Text Liste aller aktuell ignorierten Dateien und Schlüsselwörter.
folder.ini Text Liste aller für das Programm Share konfigurierten Verzeichnisse.
hash.db binär Zustand der Metadaten aller Dateien.
hint.txt Text Hilfetexte (im ZIP-Archiv der Programm-Auslieferung enthalten).
history.txt Text Liste der Programmänderungen der jüngeren Vergangenheit (im ZIP-Archiv der Programm-Auslieferung enthalten). Für den Betrieb des Programms nicht erforderlich.
info.txt Text Zusätzliche entwicklerspezifische Anmerkungen des Programmautors (im ZIP-Archiv der Programm-Auslieferung enthalten). Für den Betrieb des Programms nicht erforderlich.
keymgr.tmp binär Zustand der Schlüssel und der aktuellen Such-Ergebnisse.
locale.txt Text Die von der Benutzeroberfläche des Programms verwendeten Zeichenketten mit entsprechender Übersetzung (im ZIP-Archiv der Programm-Auslieferung enthalten).
Das Löschen dieser Datei bewirkt, dass Share sämtliche GUI-Elemente mit den im Programmcode definierten Bezeichnungen beschriftet (also in japanischen Schriftzeichen).
nodes.db binär Liste aller dem Programm aktuell bekannten Nodes.
Das Löschen dieser Datei macht Share praktisch unbenutzbar, zumindest bis zur Installation einer neuen Nodes-Liste.
oldhistory.txt Text Liste der Programmänderungen der älteren Vergangenheit (im ZIP-Archiv der Programm-Auslieferung enthalten). Für den Betrieb des Programms nicht erforderlich.
plugin.ini Text Plugin-Konfiguration des Programms. (Plugin-spezifische Einstellungen befinden sich jedoch üblicherweise in deren eigenen Konfigurationsdateien, nicht in dieser hier.)
point.db binär Gespeicherte "Karma"-Punkte der Tauschpartner dieser Installation (seit Programmversion A67c nicht mehr verwendet).
profile.id binär ID-Daten für Upload-Verzeichnisse.
query.txt Text Liste der Schlüsselworte für die Dropdown-Liste aller Queries.
queryid.txt Text Liste der IDs für die Dropdown-Liste aller Queries.
querytab.txt Text Liste der Schlüsselworte, für welche Query-Karteikarten angezeigt werden sollen.
readme.txt Text Benutzerhandbuch (im ZIP-Archiv der Programm-Auslieferung enthalten). Für den Betrieb des Programms nicht erforderlich.
Share.exe binär Ausführbares Programm (im ZIP-Archiv der Programm-Auslieferung enthalten).
Share.ini Text Konfigurationseinstellungen der Benutzeroberfläche des Programms (Größe und Position von Fenstern etc.).
trigger.txt Text Liste aller Trigger-Regeln.

Nodes-Listen

Aktive Listen

Inaktive Listen

Weblinks