eMule Hilfe + eMule-Einstellungen + FAQ Vorwort:
Dieser Beitrag soll helfen die Funktionsweise von eMule besser zu verstehen. Ich habe versucht möglichst die Themen aufzugreifen, die gerade Neueinsteigern die meisten Probleme bereiten und darum immer wieder hier am Board gefragt werden. Dieser Beitrag soll nur als Ergänzung zu den
offiziellen eMule-FAQ und den
Board-FAQ dienen, diese aber nicht ersetzen. Alle hier empfohlenen Einstellungen sind Richtwerte, welche bei den meisten Usern gute Ergebnisse brachten. Auf Basis dieser Richtwerte kann jeder für sich durch experimentieren seine persönliche Optimalkonfiguration finden.
Dieser Beitrag soll nicht nur sagen was einzustellen ist, sondern vielmehr über das Warum informieren. Die wichtigsten Punkte gibt es ganz am Ende noch einer Kurzzusammenfassung.
Generell gilt:
eMule ist kein Downloadmanager! Um mit eMule zu guten Downloads zu kommen braucht es gerade am Anfang sehr viel Zeit. Zudem kommt es auch auf die Art der Datei an die man herunterlädt. Dies hängt von der Popularität der Dateien ab. Um veschiedene eMule-Versionen, bzw. Mods, aber auch Einstellungen zu testen bedarf es vieler Stunden (am besten mind. 24) um einigermaßen zuverlässige Aussagen zu treffen, ob die getestete Version/Einstellung nun bessere oder schlechtere Ergebnisse erzielte als die Vorherige.
Der Start:
Nach dem Start von eMule, muß sich das Programm mit einem Server verbinden. Welche Server es gibt und wie sie gefunden werden steht in der Datei
server.met. Eine solche Datei gibt es z.B.
hier. Zusätzliche Infos gibt es
hier.
Die Aufgabe eines Servers ist bei eMule lediglich Auskunft zu erteilen welche User Teile des gesuchten Files anbieten. Im Gegenzug teilt ihr dem Server mit, welche Files bzw. Teile von Files (sog. chunks) ihr anbietet.
Wer eMule zum ersten mal startet muß wahrscheinlich erst einmal lange warten bis er Download bekommt. Dies hängt mit dem Hintergrund zusammen, daß sich euer eMule erst mal bei den anderen eMule-Benutzern hinten anstellen muß. Wer zuerst kommt malt zuerst. Bei welchen Usern ihr an welcher Warteschlangenposition (
QR = Queue Ranking)) steht sehr ihr durch einen Doppelklick auf das File im Download. Eine Übersicht über die Symbole gibt es
hier.
Was passiert genau nach dem Start?
eMule sucht sich beim verbundenen Server pro File möglichst viele Quellen. Die maximale Anzahl der Quellen pro File kann man durch die Einstellung
Hardlimit bestimmen. Die gefundenen Quellen frägt eMule nun nach und nach ab. Downloads mit hoher Priorität zuerst. Beim Abfragen versucht eMule als allererstes zur jeweiligen Quelle eine Verbindung herzustellen (Status: Verbindung wird hergestellt). Funktioniert die Verbindungsaufnahme, wird die Quelle nun gefragt, welche Teile der gewünschten Datei sie denn hat. Hat der befragte Client Teile die man selbst braucht, stellt man sich in seiner Warteschlange an und bekommt die Warteschlangenposition zurückgeliefert.
Der hier beschriebene Vorgang dauert im Optimalfall nur ein paar Sekunden, oder gar noch weniger. Maximal wartet Dein eMule auf die Rückantwort 40 Sekunden, in manchen Versionen auch 60 Sekunden. Hat der befragte Client bis dahin nicht geantwortet (weil er z.B. zwischenzeitlich ausgeschalten wurde oder überlastet ist) wird er als Quelle verworfen.
Wird ein Client abgefragt, bzw. wird man selbst abgefragt, fließen ein paar kilobyte über die Leitung, der sog.
Overhead. Es sollte klar sein, daß umsomehr Clients gleichzeitig abgefragt werden, umsomehr Overhead entsteht. Da jeder Internetbenutzer nur eine eingeschränkte Bandbreite (vor allem Uploadbandbreite in Deutschland) zur Verfügung hat, sollte man niemals zu viele Clients gleichzeitig abfragen.
Das Zusammenspiel zwischen gefundenen Quellen und Anzahl der Verbindungen
Mit der Einstellung
Verbindungen pro 5 Sekunden kann man festlegen, wieviele neue Verbindungen zu anderen Clients in eine Zeitspanne von 5 Sekunden hergestellt werden (Standardwert ist 20). Wie gerade schon erwähnt benötigt jede Verbindung eine gewisse Zeit, zwischen ein paar Sekunden bis zu 40 Sekunden, falls der Client nicht antwortet. Es ist also klar, daß es langsam immer mehr Verbindungen werden, so lang nicht allen Quellen abgefragt wurden. Da aber auch immer wieder ältere Verbindungen nach erfolgter bzw. erfolgloser Abfrage aufgelöst werden hat die Summe aller Verbindungen einen natürlichen Grenzwert. Diesen Grenzwert kann man allerdings auch manuell in eMule festlegen als Option
maximale Verbindungen. Diesen Grenzwert festzulegen macht insofern Sinn, da z.B. Win98 ab einer Anzahl von 150 Verbindungen sehr instabil wird. Auch modernere Betriebssysteme haben ihr Limit. Viel entscheidenter ist allerdings die Tatsache, daß viele gleichzeitige Verbindungen auch viel Overhead verursachen, was wiederum den eigenen Upload stört (Bandbreitenbeschränkung). Als guter Wert hat sich ein Verbindungslimit von zwischen 300 und 500 bewiesen. Bei einem gut konfiguriertem eMule sollte diese Grenze auch nur in der Startphase erreicht werden. Sind erst mal alle Quellen abgefragt, sollte dieser Wert deutlich zurückgehen.
Die Problematik von 'zu viele Verbindungen'
Zuallererst sollte man sich darüber im Klaren sein, daß man die Quellen nach und nach abfrägt. Bedingt durch den Wert von Verbindungen pro 5 Sekunden und den Wert maximale Verbindungen müssen manche Quellen also auf ihre Verbindung warten. Sie erhalten in diesem Fall den Status
"zu viele Verbindungen". Desweiteren muß man wissen, daß jede Quelle alle 20 Minuten erneut abgefragt werden muß um ihr zu signalisieren "ich will noch immer was von Dir". Problematisch wird das Ganze nun, wenn man zu viele Quellen findet. Hier ein mögliches Szenario: nach dem Start von eMule findet dieser 8000 Quellen. Nach 20 Minuten sind erst 5000 Quellen abgefragt. Während eMule sich über die verbleibenden 3000 Quellen hermacht, hat es keine Verbindungen mehr zur Verfügung um den 20-Minuten "refresh" der bisherig abgefragten Quellen durchzuführen. Daraus ergeben sich 2 gravierende Nachteile: die nicht aktualisierten Quellen geben euch unter Umständen keinen Download, und eure Bandbreite ist ständig mit Overhead zugeknallt.
Wie sollten die optimalen Werte aussehen ?
Die besten Resultate erzielt ihr dann, wenn ihr durchschnittlich eine moderate Anzahl an Verbindungen habt. Bewährt haben sich folgende Werte:
Verbindungen pro 5 Sekunden: 20 bis 25
max. Verbindungen: 300 bis 500
Gesamtzahl der gefundenen Quellen: 3000 bis 4000
Um in benannten Bereich von gesamt gefundenen Quellen zu kommen ist folgendes zu beachten:
Nicht zu viele Downloads gleichzeitig laufen lassen. Je nach Verbreitungsgrad der gewünschten Files sind ~20 ein guter Wert.
Die gefundenen Quellen pro File über den Wert Hardlimit einschränken.
Beispiel:
Bei 20 Downloads zu denen es rein theoretisch sehr viele Quellen gibt--> Hardlimit von 200--> 20 * 200 = 4000 Quellen insgesamt.
Beispiel 2:
20 Downloads, allerdings findet emule zu 15 von diesen jeweils nur 100 Quellen. --> 15 * 100 = 1500. -->Hardlimit auf 400--> für die restlichen 5 files werden weitere 5 * 400 = 2000 Quellen gefunden. Gesamte Quellen: 1500 + 2000 = 3500 Quellen
Natürlich könnt ihr auch mehr oder weniger als 20 Files gleichzietig laden, dann entsprechend das Hardlimit anpassen. Achtung: viele Quellen werden erst nach einer Stunde Laufzeit gefunden. Zu dieser Zeit also die gesamt gefundenen Quellen in der Statistik überprüfen und Hardlimit anpassen.
Bitte auch dies
hier beachten.
Wie findet eMule Quellen ?
Die eine Möglichkeit, Quellen über den verbundenen Server zu bekommen wurde schon angesprochen. Es gibt allerdings noch zwei weitere.
1. Das
Source-Exchange (oft auch einfach XS). In regelmäßigen Abständen frägt der eigene Client die Anderen nach deren Quellen. Ebenso wird man aber auch selbst abgefragt. Man tauscht somit also gegenseitig die bekannten Quellen aus. Diese Option sollte immer aktiviert sein. Ist das Hardlimit erreicht geschieht die Anfrage nur alle 90 Minuten. Ansonsten alle 10 Minuten. Bei weniger als 40 Quellen noch öfters. Mehr Infos
hier.
2. Auch die anderen Server eurer server.met, werden in bestimmten Intervallen nach ihren Quellen abgefragt.
Blacklist
Da viele User viel zu viele Files mit viel zu vielen Quellen oft gleichzeitig geladen haben, hat dieser Umstand die Server zu sehr belastet. Schließlich wird jeder Server immer wieder von eMule nach Quellen gefragt. Aus diesem Grund erlauben einige große Server den eMule-Benutzern nur maximal 30 Files gleichzeitig zu laden. Andernfalls schmeißt er euch nach einiger Zeit raus und ihr steht auf seiner "Blacklist".
Anmerkung: Manche Server benutzen ein kompliziertes Punktesystem um zu bestimmen welcher Client geblacklistet wird. Die Anzahl gleichzietiger Downloads ist darum nicht das einzige Kriterium das es zu beachten gibt. Auch ein zu hohes Hardlimit oder zu viele Files im Share haben Einfluß. Desweiteren haben diverse eMule-Versionen (insbesondere ab 0.30a) diverse Techniken implementiert um durch weniger agressive Quellenanfrage nicht geblacklistet zu werden.
Der Assistent und der Upload
Grundsätzlich ist zu sagen, daß man mit eMule mindestens 10 kbs upload zur Verfügung stellen sollte. Ansonsten gilt ein fest programmiertes Downloadlimit welches auf ein Ratio von 1:4 (upload : download) beschränkt. Beispiel: upload auf 9 kbs eingestellt --> maximaler Download von 4*9 = 36 kbs.
Der upload sollte keinesfalls zu hoch eingestellt werden. Wie schon erwähnt frißt nämlich auch der Overhead Bandbreite. Zudem schickt eMule für jedes empfangene Datenpacket ein kleines Bestätigungspacket.
Die eMule-Entwickler empfehlen den upload 20% unter dem Kapazitätslimit zu halten. Bei normalen DSL (16 kbs upload) wären dies dann ~13 kbs. Mancher Assistent stellt nach eingegebener Kapazität den upload automatisch auf einen Wert 20% kleiner ein. Nicht jeder Assistent macht dies!
Sollte euer Upload zu stark schwanken (seht ihr in der Statistik) so empfiehlt es sich ihn Schrittweise um 1 kbs zu senken bis das Schwanken aufhört. Vorsicht: minimum sollte 10kbs sein! Es ist weiterhin zu bedenken, daß bei einem hohen Download auch mehr Uploadbandbreite durch die Bestätigungspackete verbraucht wird.
Ein Mißverständnis im Umgang mit dem Assistenten gibt es noch aufzuklären. Ganz oben im Assistent findet man die Einstellmöglichkeit für "Anzahl gleichzeitiger Downloads". Dieser Wert sagt NICHT, daß man nur so viele Files gleichzeitig laden kann. Ebenso sagt dieser Wert auch nicht, daß man nur gleichzetig von soundsoviel Quellen Download bekommt. Der Zweck des Wertes liegt allein in der Berechnung des Hardlimits, ähnlich wie oben schon erklärt.
Dateien Tauschen durch Chunks
eMule teilt sämtliche Dateien in 9,28MB Stücke ein, den sog.
Chunks. Nur komplette Chunks können getauscht werden. Hab ich z.B. nur einen halben Chunk kann ich ihn nicht an Andere übermitteln. Eine Datei, die man lädt, taucht darum auch erst im Fenster Dateien auf, nachdem man mindestens einen kompletten Chunk hat. In den Einstellungen zu Dateien kann man angeben, daß immer versucht wird komplette Chunks hochzuladen. Es geht hier wohlgemerkt ums uploaden und nicht ums downloaden. Ist diese Option aktiviert bricht der upload ab, sobald die Grenze eines Chunks erreicht wurde. Das heißt nun nicht, daß immer 9,28 MB hochgeladen werden. Frägt der andere Client z.B. einen Chunk an der fast fertig ist, so kann der Upload auch schon nach ein paar Kilobyte beendet sein. Welcher Chunk übertragen wird bestimmt immer der Downloader. Generell gilt, daß diese Funktion nur von dem alleinigen releaser eines files angeschalten werden sollte! Alle anderen lassen sie besser deaktiviert, sonst kommt es zu häufig zu sehr kurzen downloads - man stand bei einem Client über 24 h an und wird nach wenigen kB wieder aus dem uploadslot entfernt. Das wollen doch die wenigsten.
Filesharing und das Creditsystem
Da Creditsystem wurde eingeführt um diejenigen zu belohnen die viel hochladen. Wie ganz am Anfang erwähnt stellt sich am Anfang jeder Client ganz hinten in der Warteschlange an. Hat man zu dem Client in dessen Warteschlange (Queue) man steht allerdings schon einmal hochgeladen, so hat er sich dies gemerkt und man wird schneller in seiner Queue vorankommen. Man überholt quasi die Anderen. So kann es durchaus vorkommen, daß man bei einem Client binnen ein paar Stunden von Platz 5000 auf 1 rückt, während man bei einem Anderen in gleicher Zeit nur ein paar Plätze gut machen konnte. Wieviel sog. Credits man bei einem Anderen gut hat steht in dessen
clients.met Datei. In der eigenen clients.met steht hingegen drin, wieviel die anderen bei einem selbst haben. Mehr Details gibts
hier.
Irgendwann kommt aber jeder dran! Dies ist genau das Prinzip des Filesharings. Man gibt auch anderen die nichts (keine benötigten Chunks) für einen haben. Schließlich hat man bei Beginn eines Downloads selbst noch nichts zum sharen und ist auf Andere angewiesen. Im Gegensatz zu Filesharing gibt es auch ein Filetrading, bei welchem nur diejenigen upload bekommen die einem selbst auch etwas geben. eMule arbeitet nicht nach diesem Prinzip.
Leecher, Userhash und die sichere Identifizierung
Leecher sind eMule-Clients welche durch ungerechte Methoden zu mehr Download kommen wollen. Zu solchen Methoden gehört zum Beispiel, daß sie nur zu solchen Clients Daten hochladen, von denen sie auch Download erwarten können (siehe oben Filetrading). Viel schlimmer und mehr verbreitet sind allerdings Leecher, welche den sog.
Userhash eines Anderen stehlen. Jeder Client der am eDonkey-Netzwerk teilnimmt, bekommt normalerweise automatisch einen eindeutigen userhash über den er sich identifiziert. Der userhash ist eine 32 stellige Hexadezimalzahl. Er wird beim ersten Start von eMule generiert und bleibt fortan für immer erhalten. Nutzer werden nur anhand des userhashes unterschieden, der eingetragene Namen spielt keine Rolle.
Es gibt nun Leecher die sich einfach mit dem userhash eines anderen Users bei anderen Clients anmelden. Sie probieren einfach verschiedene Userhashes aus, solange bis sie den höchsten Platz in den Warteschlangen herausgefunden haben.
Um dies zu verhindert hat eMule seit Version 0.29c die sog.
sichere Identifikation (SI oder auch SUI) eingeführt. Das Prinzip hiervon ist, daß zum userhash ein privater 384 Bit RSA-Schlüssel und ein öffentlicher Schlüssel gespeichert wird. Verbinden sich nun 2 Clients welche beide die sichere Identifikation benutzen, so tauschen sie ihren öffentlichen Schlüssel aus und speichern diesen in der clients.met ab. Versucht nun ein Leecher sich mittels gestohlenem Userhash bei einem Client mit SI anmelden, so erkennt dieser Client, daß der Leecher nicht den passenden Schlüssel besitzt und wird ihm keinen upload geben. Sicher erkannte Clients sind an einem roten Häkchen zu erkennen. Details zu SI gibt es
hier.
Was ist zu beachten bei SI ?
Beim Umstieg von einer nicht SI Version (<0.29b) auf eine SI-Version wird dringend geraten sich einen neuen userhash erstellen zu lassen. Am besten ihr installiert diese Version ganz neu (sog. saubere Installation).
Solltet ihr mit gleichem userhash auf eine SI Version umsteigen (wovon abzuraten ist), werden eure Credits, die ihr bereits bei anderen SI-clients habt auf 0 zurückgesetzt (dies geschieht bei den anderen Clients). Dies ist aus sicherheitstechnischen Gründen unumgänglich. Darum besser gleich einen neuen Userhash erzeugen lassen, ihr verliert eure Credits eh.
Wichtig: solltet ihr von einer SI Version auf eine nicht SI Version downgraden, so muß unbedingt ein neuer userhash erstellt werden, eMule also neu installiert werden. Anderenfalls werdet ihr als Leecher erkannt, da ihr euch nicht mehr sicher identifizieren könnt.
Dateien bei eMule
preferences.dat enthält den userhash. Durch Löschen dieser Datei wird ein neuer userhash erstellt.
cryptkey.dat (nur bei SI Versionen) enthält euren privaten Schlüssel. Wird diese Datei gelöscht, muß auch die preferences.dat gelöscht werden.
clients.met - in ihr werden die Credits der anderen User gespeichert. Genauer gesagt wird hier gespeichert, zu welchem userhash ihr wieviel Bytes hoch/runtergeladen habt. Bei SI Versionen wird hier zusätzlich noch der public key gespeichert.
known.met - sie enthält Informationen über Dateien die ihr runtergeladen habt bzw. im incoming-Ordner habt.
prefences.ini - in ihr sind die eMule-Einstellungen gespeichert. Durch löschen dieser Datei werden die Einstellungen auf die Defaultwerte zurückgesetzt.
emfriends.met - hier sind die Freunde gespeichert.
server.met beinhaltet eure euch bekannten Server. Diese Liste wird durch eMule selbst aktualisiert und verwaltet.
staticservers.dat - diese Liste der Server wird nur vom Benutzer verwaltet. Im Server-Fenster von eMule können dieser Liste Server hinzugefügt oder entfernt werden.
AC_SearchStrings.dat enthält die Suchbegriffe früherer Suchanfragen.
AC_ServerMetURLs.dat enthält die URLs, die manuell eingegeben wurden um die server.met zu aktualisieren.
Mehr Infos
hier Kurzzusammenfassung:
Gesamt gefundene Quellen (abzulesen in der Statistik) sollten zwischen 3000 und 4000 Quellen liegen. Ansonsten hat eMule zu viel mit der Quellenabfrage zu tun.
Verbindungen pro 5 Sekunden: 20 - 25 haben sich bewährt.
max. Verbindungen: bei Betriebsystem Win2k und XP: zwischen 300 und 500 haben sich bewährt.
upload schwankt ?
upload in 1 kbs-Schritten runtersetzen bis das Schwanken aufhört. Mindestens 10 kbs freigeben.
Aufteilung eines files in Chunks à 9,28 MB
Beim upgrade eines nicht SI-eMules auf eine SI Version wird eine Neuinstallation empfohlen.
Beim downgrade von einer SI-Version auf eine nicht-SI-Version muß eine Neuinstallation erfolgen.
prefences.dat = userhash, cryptkey.dat = Schlüssel, clients.met = Credits der anderen User, known.met = Informationen zu Dateien, prefences.ini = Einstellungen, server.met = Liste der Server