BitTorrent

Aus besserwiki.de
BitTorrent
Ursprüngliche(r) Autor(en)Bram Cohen
Entwickler(n)Rainberry, Inc.
Erste Veröffentlichung2001; vor 22 Jahren
Repositorygithub.com/bittorrent/bittorrent.org
Standard(s)Die BitTorrent-Protokoll-Spezifikation
TypPeer-to-Peer-Dateiaustausch

BitTorrent ist ein Kommunikationsprotokoll für Peer-to-Peer-Filesharing (P2P), das es den Benutzern ermöglicht, Daten und elektronische Dateien dezentral über das Internet zu verbreiten.

Um Dateien zu senden oder zu empfangen, verwenden die Benutzer einen BitTorrent-Client auf ihrem mit dem Internet verbundenen Computer. Ein BitTorrent-Client ist ein Computerprogramm, das das BitTorrent-Protokoll implementiert. BitTorrent-Clients sind für eine Vielzahl von Computerplattformen und Betriebssystemen verfügbar, darunter auch ein offizieller Client, der von BitTorrent, Inc. Zu den beliebtesten Clients gehören μTorrent, Xunlei Thunder, Transmission, qBittorrent, Vuze, Deluge, BitComet und Tixati. BitTorrent-Tracker stellen eine Liste von Dateien zur Verfügung, die für die Übertragung verfügbar sind, und ermöglichen es dem Client, Peer-Benutzer, so genannte "Seeds", zu finden, die die Dateien übertragen können.

Der Programmierer Bram Cohen entwickelte das Protokoll im April 2001 und veröffentlichte die erste verfügbare Version am 2. Juli 2001. Am 15. Mai 2017 veröffentlichte BitTorrent, Inc. (später umbenannt in Rainberry, Inc.) die Spezifikation des BitTorrent v2-Protokolls. libtorrent wurde am 6. September 2020 zur Unterstützung der neuen Version aktualisiert.

BitTorrent ist eines der am weitesten verbreiteten Protokolle für die Übertragung großer Dateien, z. B. digitaler Videodateien mit Fernsehsendungen und Videoclips oder digitaler Audiodateien mit Songs. Im Februar 2013 war BitTorrent für 3,35 % der gesamten weltweiten Bandbreite verantwortlich - mehr als die Hälfte der 6 % der gesamten Bandbreite, die für Filesharing verwendet werden. Im Jahr 2019 war BitTorrent ein dominierendes Filesharing-Protokoll und generierte mit 2,46 % des Downstream- und 27,58 % des Upstream-Verkehrs einen erheblichen Teil des Internetverkehrs. Im Jahr 2013 hatte BitTorrent 15 bis 27 Millionen gleichzeitige Nutzer zu jeder Zeit. Im Januar 2012 wurde BitTorrent von 150 Millionen aktiven Nutzern verwendet. Ausgehend von dieser Zahl kann die Gesamtzahl der monatlichen Nutzer auf mehr als eine Viertelmilliarde (≈ 250 Millionen) geschätzt werden.

Die Nutzung von BitTorrent kann manchmal von Internet-Diensteanbietern (ISPs) aus rechtlichen oder urheberrechtlichen Gründen eingeschränkt werden. Die Nutzer können Seedboxen oder virtuelle private Netzwerke (VPN) verwenden, um diese Beschränkungen zu umgehen.

BitTorrent-Logo

BitTorrent (von Bit (kleinste Daten-Einheit) und englisch torrent ‚reißender Strom‘ oder ‚Sturzbach‘, von lateinisch torrens) ist ein kollaboratives Filesharing-Protokoll, das sich besonders für die schnelle Verteilung großer Datenmengen eignet. Im Gegensatz zu anderen Filesharing-Techniken setzt BitTorrent nicht auf ein übergreifendes Filesharing-Netzwerk, sondern baut für jede Datei ein dezentrales Verteilnetz auf.

Geschichte

Der mittlere Computer fungiert als "Seed", um den anderen Computern, die als Peers fungieren, eine Datei zur Verfügung zu stellen

Der Programmierer Bram Cohen, ein Absolvent der University at Buffalo, entwickelte das Protokoll im April 2001 und veröffentlichte die erste verfügbare Version am 2. Juli 2001.

Die erste Version des BitTorrent-Clients hatte keine Suchmaschine und keinen Peer-Austausch. Bis 2005 bestand die einzige Möglichkeit, Dateien auszutauschen, darin, eine kleine Textdatei namens "Torrent" zu erstellen, die auf eine Torrent-Indexseite hochgeladen wurde. Der erste Uploader fungierte als Seed, und die Downloader stellten zunächst eine Verbindung als Peers her. Diejenigen, die die Datei herunterladen wollten, luden den Torrent herunter, über den ihr Client eine Verbindung zu einem Tracker herstellte, der eine Liste der IP-Adressen der anderen Seeds und Peers im Schwarm enthielt. Sobald ein Peer den Download der vollständigen Datei abgeschlossen hat, kann er wiederum als Seed fungieren. Diese Dateien enthalten Metadaten über die freizugebenden Dateien und die Tracker, die die anderen Seeds und Peers im Auge behalten.

Im Jahr 2005 führten zunächst Vuze und dann der BitTorrent-Client die verteilte Verfolgung mit verteilten Hash-Tabellen ein, die es den Clients ermöglichten, Daten in Schwärmen direkt auszutauschen, ohne dass eine Torrent-Datei erforderlich war.

Im Jahr 2006 wurde die Funktion des Peer-Austauschs hinzugefügt, die es den Clients ermöglichte, Peers auf der Grundlage der auf verbundenen Knoten gefundenen Daten hinzuzufügen.

BitTorrent v2 soll nahtlos mit früheren Versionen des BitTorrent-Protokolls zusammenarbeiten. Der Hauptgrund für die Aktualisierung war, dass die alte kryptografische Hash-Funktion SHA-1 von den Entwicklern nicht mehr als sicher vor böswilligen Angriffen angesehen wird und v2 daher SHA-256 verwendet. Um die Abwärtskompatibilität zu gewährleisten, unterstützt das v2 .torrent-Dateiformat einen Hybridmodus, bei dem die Torrents sowohl mit der neuen als auch mit der alten Methode gehasht werden, damit die Dateien sowohl in v1- als auch in v2-Schwärmen mit Peers geteilt werden können. Eine weitere Aktualisierung der Spezifikation ist das Hinzufügen eines Hash-Baums, um die Zeit zwischen dem Hinzufügen eines Torrents und dem Herunterladen von Dateien zu verkürzen und eine genauere Überprüfung auf Dateibeschädigung zu ermöglichen. Außerdem wird jetzt jede Datei einzeln gehasht, so dass die Dateien im Schwarm dedupliziert werden können, so dass, wenn mehrere Torrents dieselben Dateien enthalten, aber die Seeder die Datei nur von einem Torrent seeden, die Downloader der anderen Torrents die Datei trotzdem herunterladen können. Magnet-Links für v2 unterstützen auch einen Hybrid-Modus, um die Unterstützung für ältere Clients zu gewährleisten.

Die US-amerikanische Firma namens BitTorrent hat Ende Februar 2007 ihre gleichnamige Website in einen Online-Shop umgewandelt, in dem sich viele Medieninhalte nur noch kostenpflichtig herunterladen lassen.

2018 verließ Bram Cohen BitTorrent, Inc.

Gestaltung

Animation der Protokollverwendung: Die farbigen Punkte unter den einzelnen Computern in der Animation stellen verschiedene Teile der freigegebenen Datei dar. Zu dem Zeitpunkt, zu dem eine Kopie jedes dieser Teile auf einen Zielcomputer abgeschlossen ist, findet bereits eine Kopie dieses Teils (oder anderer Teile) auf einen anderen Zielcomputer zwischen den Benutzern statt.

Das BitTorrent-Protokoll kann verwendet werden, um die Server- und Netzwerkbelastung bei der Verteilung großer Dateien zu verringern. Anstatt eine Datei von einem einzigen Quellserver herunterzuladen, ermöglicht das BitTorrent-Protokoll es den Benutzern, sich einem "Schwarm" von Hosts anzuschließen, um gleichzeitig von einander hoch- und herunterzuladen. Das Protokoll ist eine Alternative zur älteren Technik der Verteilung von Daten über eine einzige Quelle und mehrere Spiegelquellen und kann auch in Netzwerken mit geringerer Bandbreite effektiv eingesetzt werden. Mit dem BitTorrent-Protokoll können mehrere einfache Computer, z. B. Heimcomputer, große Server ersetzen und Dateien effizient an viele Empfänger verteilen. Diese geringere Bandbreitennutzung trägt auch dazu bei, große Spitzen im Internetverkehr in einem bestimmten Gebiet zu vermeiden, so dass die Internetgeschwindigkeiten für alle Nutzer im Allgemeinen höher bleiben, unabhängig davon, ob sie das BitTorrent-Protokoll verwenden oder nicht.

Die zu verteilende Datei wird in Segmente unterteilt, die Stücke genannt werden. Wenn jeder Peer ein neues Stück der Datei erhält, wird er zur Quelle (dieses Stücks) für andere Peers, so dass der ursprüngliche Seed dieses Stück nicht mehr an jeden Computer oder Benutzer senden muss, der eine Kopie wünscht. Bei BitTorrent wird die Aufgabe der Verteilung der Datei von denjenigen geteilt, die sie haben wollen; es ist durchaus möglich, dass der Seed nur eine einzige Kopie der Datei selbst sendet und sie schließlich an eine unbegrenzte Anzahl von Peers verteilt. Jedes Stück ist durch einen kryptografischen Hash geschützt, der im Torrent-Deskriptor enthalten ist. Dadurch wird sichergestellt, dass jede Änderung des Stücks zuverlässig erkannt werden kann, und somit sowohl versehentliche als auch böswillige Änderungen der an anderen Knoten empfangenen Stücke verhindert werden. Wenn ein Knoten mit einer authentischen Kopie des Torrent-Deskriptors beginnt, kann er die Authentizität der gesamten Datei, die er empfängt, verifizieren.

Die Stücke werden in der Regel nicht nacheinander heruntergeladen und vom BitTorrent-Client in die richtige Reihenfolge gebracht, der überwacht, welche Stücke er benötigt und welche er hat und zu anderen Peers hochladen kann. Die Stücke haben während eines einzigen Downloads die gleiche Größe (eine 10-MB-Datei kann beispielsweise in zehn 1-MB-Stücken oder in vierzig 256-KB-Stücken übertragen werden). Aufgrund dieses Konzepts kann der Download einer Datei jederzeit angehalten und zu einem späteren Zeitpunkt wieder aufgenommen werden, ohne dass zuvor heruntergeladene Informationen verloren gehen, was BitTorrent für die Übertragung größerer Dateien besonders nützlich macht. Dies ermöglicht es dem Client auch, leicht verfügbare Teile zu suchen und sie sofort herunterzuladen, anstatt den Download anzuhalten und auf das nächste (und möglicherweise nicht verfügbare) Teil in der Reihe zu warten, was in der Regel die Gesamtdauer des Downloads verkürzt. Dieser eventuelle Übergang von Peers zu Seedern bestimmt den allgemeinen "Gesundheitszustand" der Datei (der durch die Anzahl der Male bestimmt wird, die eine Datei in ihrer vollständigen Form verfügbar ist).

Die verteilte Natur von BitTorrent kann zu einer flutartigen Verbreitung einer Datei über viele Peer-Computer-Knoten führen. Je mehr Peers sich dem Schwarm anschließen, desto größer ist die Wahrscheinlichkeit eines erfolgreichen Downloads durch einen bestimmten Knoten. Im Vergleich zu herkömmlichen Internet-Verteilungsschemata ermöglicht dies eine erhebliche Verringerung der Hardware- und Bandbreiten-Ressourcenkosten für den ursprünglichen Verteiler. Verteilte Download-Protokolle bieten im Allgemeinen Redundanz bei Systemproblemen, verringern die Abhängigkeit vom ursprünglichen Verteiler und stellen Quellen für die Datei bereit, die in der Regel vergänglich sind, so dass es keinen Single Point of Failure wie bei der einseitigen Server-Client-Übertragung gibt.

Obwohl beide letztlich Dateien über ein Netzwerk übertragen, unterscheidet sich ein BitTorrent-Download von einem einseitigen Server-Client-Download (wie er z. B. bei einer HTTP- oder FTP-Anfrage typisch ist) in mehreren grundlegenden Punkten:

  • BitTorrent stellt viele kleine Datenanforderungen über verschiedene IP-Verbindungen zu verschiedenen Rechnern, während das Herunterladen über einen Server-Client normalerweise über eine einzige TCP-Verbindung zu einem einzigen Rechner erfolgt.
  • BitTorrent lädt nach dem Zufallsprinzip oder nach dem "rarest-first"-Prinzip herunter, was eine hohe Verfügbarkeit gewährleistet, während klassische Downloads sequentiell erfolgen.

Diese Unterschiede zusammengenommen ermöglichen es BitTorrent, wesentlich geringere Kosten für den Inhaltsanbieter, eine viel höhere Redundanz und eine viel größere Resistenz gegen Missbrauch oder "Flash Crowds" zu erreichen als herkömmliche Serversoftware. Dieser Schutz hat jedoch theoretisch seinen Preis: Es kann einige Zeit dauern, bis Downloads ihre volle Geschwindigkeit erreichen, weil es unter Umständen dauert, bis genügend Peer-Verbindungen hergestellt sind, und es kann dauern, bis ein Knoten genügend Daten erhält, um ein effektiver Uploader zu werden. Dies steht im Gegensatz zu regulären Downloads (z. B. von einem HTTP-Server), die zwar anfälliger für Überlastung und Missbrauch sind, aber sehr schnell die volle Geschwindigkeit erreichen und diese auch beibehalten. Zu Beginn war es aufgrund der nicht zusammenhängenden Download-Methoden von BitTorrent schwieriger, die "Streaming-Wiedergabe" zu unterstützen. Im Jahr 2014 ermöglichte der Client Popcorn Time das Streaming von BitTorrent-Videodateien. Seitdem bieten immer mehr Clients Streaming-Optionen an.

Durchsuchen

Das BitTorrent-Protokoll bietet keine Möglichkeit, Torrent-Dateien zu indizieren. Infolgedessen hat eine vergleichsweise kleine Anzahl von Websites eine große Mehrheit von Torrents gehostet, von denen viele auf urheberrechtlich geschützte Werke ohne die Genehmigung der Urheberrechtsinhaber verlinken, was diese Websites besonders anfällig für Klagen macht. Ein BitTorrent-Index ist eine "Liste von .torrent-Dateien, die in der Regel Beschreibungen" und Informationen über den Inhalt des Torrents enthält. Verschiedene Arten von Websites unterstützen das Auffinden und die Verbreitung von Daten im BitTorrent-Netzwerk. Öffentliche Torrent-Hosting-Websites wie The Pirate Bay ermöglichen es Benutzern, ihre Sammlung von Torrent-Dateien zu durchsuchen und herunterzuladen. Benutzer können in der Regel auch Torrent-Dateien für Inhalte hochladen, die sie verbreiten möchten. Häufig betreiben diese Websites auch BitTorrent-Tracker für ihre gehosteten Torrent-Dateien, aber diese beiden Funktionen sind nicht voneinander abhängig: Eine Torrent-Datei kann auf einer Website gehostet und von einer anderen, nicht damit verbundenen Website verfolgt werden. Private Host-/Tracker-Websites funktionieren wie öffentliche Websites, mit dem Unterschied, dass sie den Zugang auf registrierte Benutzer beschränken und auch die Datenmenge verfolgen können, die jeder Benutzer hoch- und herunterlädt, um das "Leeching" zu reduzieren.

Web-Suchmaschinen ermöglichen die Entdeckung von Torrent-Dateien, die auf anderen Websites gehostet und verfolgt werden; Beispiele sind The Pirate Bay und BTDigg. Diese Websites ermöglichen es dem Benutzer, nach Inhalten zu suchen, die bestimmte Kriterien erfüllen (z. B. ein bestimmtes Wort oder einen Satz enthalten), und eine Liste von Links zu Torrent-Dateien abzurufen, die diesen Kriterien entsprechen. Diese Liste kann oft nach mehreren Kriterien sortiert werden, wobei die Relevanz (Verhältnis zwischen Seedern und Leechern) eines der beliebtesten und nützlichsten ist (aufgrund der Art und Weise, wie sich das Protokoll verhält, ist die erreichbare Download-Bandbreite sehr empfindlich gegenüber diesem Wert). Metasuchmaschinen ermöglichen es, mehrere BitTorrent-Indizes und -Suchmaschinen gleichzeitig zu durchsuchen.

Der Tribler BitTorrent-Client war einer der ersten, der integrierte Suchfunktionen enthielt. Mit Tribler können Benutzer .torrent-Dateien finden, die von zufälligen Peers und Geschmackskollegen gehalten werden. Es fügt dem BitTorrent-Protokoll eine solche Fähigkeit hinzu, indem es ein Klatschprotokoll verwendet, das dem eXeem-Netzwerk ähnelt, das 2005 geschlossen wurde. Die Software bietet auch die Möglichkeit, Inhalte zu empfehlen. Nach einem Dutzend Downloads kann die Tribler-Software den Download-Geschmack des Benutzers grob einschätzen und zusätzliche Inhalte empfehlen.

Im Mai 2007 veröffentlichten Forscher der Cornell University ein Papier, in dem sie einen neuen Ansatz für die Suche nach ungenauen Zeichenfolgen in einem Peer-to-Peer-Netzwerk vorschlugen, der die Funktion einer zentralen Indexierungsseite ersetzen könnte. Ein Jahr später implementierte dasselbe Team das System als Plugin für Vuze namens Cubit und veröffentlichte einen weiteren Bericht über den Erfolg.

Eine ähnliche Möglichkeit, allerdings mit einem etwas anderen Ansatz, bietet der BitComet-Client mit seiner Funktion "Torrent Exchange". Wenn zwei Peers, die BitComet (mit aktiviertem Torrent Exchange) verwenden, eine Verbindung zueinander herstellen, tauschen sie Listen aller Torrents (Name und Info-Hash) aus, die sie im Torrent Share-Speicher haben (Torrent-Dateien, die zuvor heruntergeladen wurden und für die der Benutzer die Freigabe durch Torrent Exchange aktiviert hat). Auf diese Weise erstellt jeder Client eine Liste aller Torrents, die von den Peers, mit denen er in der aktuellen Sitzung verbunden ist, freigegeben wurden (oder er kann die Liste sogar zwischen den Sitzungen beibehalten, wenn er dazu angewiesen wird).

Der Benutzer kann jederzeit in dieser Torrent-Sammlungsliste nach einem bestimmten Torrent suchen und die Liste nach Kategorien sortieren. Wenn der Benutzer einen Torrent aus dieser Liste herunterladen möchte, wird die Torrent-Datei automatisch (nach dem Info-Hash-Wert) im DHT-Netz gesucht und, wenn sie gefunden wird, vom anfragenden Client heruntergeladen, der dann eine Download-Aufgabe erstellen und einleiten kann.

Herunterladen und Weitergabe

Die Benutzer finden einen Torrent, der sie interessiert, auf einer Torrent-Indexseite oder mithilfe einer in den Client integrierten Suchmaschine, laden ihn herunter und öffnen ihn mit einem BitTorrent-Client. Der Client stellt eine Verbindung zu dem/den in der Torrent-Datei angegebenen Tracker(n) oder Seeds her, von denen er eine Liste von Seeds und Peers erhält, die derzeit Teile der Datei(en) übertragen. Der Client stellt eine Verbindung zu diesen Peers her, um die verschiedenen Teile zu erhalten. Wenn der Schwarm nur den ersten Seeder enthält, verbindet sich der Client direkt mit ihm und beginnt, Stücke anzufordern. Die Clients verfügen über Mechanismen zur Optimierung ihrer Download- und Upload-Raten.

Die Effektivität dieses Datenaustauschs hängt weitgehend von den Richtlinien ab, die die Clients verwenden, um zu bestimmen, an wen sie Daten senden. Clients können es vorziehen, Daten an Peers zu senden, die wiederum Daten an sie zurücksenden (ein Austauschschema "wie du mir, so ich dir"), was den fairen Handel fördert. Strenge Richtlinien führen jedoch oft zu suboptimalen Situationen, z. B. wenn neu hinzugekommene Peers keine Daten empfangen können, weil sie selbst noch keine Stücke zum Tauschen haben, oder wenn zwei Peers mit einer guten Verbindung untereinander keine Daten austauschen, weil keiner von ihnen die Initiative ergreift. Um diesen Effekten entgegenzuwirken, verwendet das offizielle BitTorrent-Clientprogramm einen Mechanismus namens "optimistisches Unchoking", bei dem der Client einen Teil seiner verfügbaren Bandbreite für das Senden von Stücken an zufällige Peers (nicht notwendigerweise bekannte gute Partner, so genannte bevorzugte Peers) reserviert, in der Hoffnung, noch bessere Partner zu entdecken und sicherzustellen, dass Neulinge eine Chance erhalten, dem Schwarm beizutreten.

Obwohl das "Schwärmen" gut skaliert, um "Flash-Crowds" für populäre Inhalte zu tolerieren, ist es weniger nützlich für unpopuläre oder Nischenmarkt-Inhalte. Peers, die nach dem anfänglichen Ansturm eintreffen, stellen möglicherweise fest, dass der Inhalt nicht verfügbar ist und müssen auf die Ankunft eines "Seed" warten, um ihre Downloads abzuschließen. Das Eintreffen des Seeds wiederum kann lange dauern (dies wird als "Seeder-Promotion-Problem" bezeichnet). Da die Aufrechterhaltung von Seeds für unbeliebte Inhalte hohe Bandbreiten- und Verwaltungskosten mit sich bringt, läuft dies den Zielen von Verlegern zuwider, die BitTorrent als kostengünstige Alternative zu einem Client-Server-Ansatz schätzen. Dies geschieht in großem Ausmaß; Messungen haben ergeben, dass 38 % aller neuen Torrents innerhalb des ersten Monats nicht mehr verfügbar sind. Eine von vielen Verlegern angewandte Strategie, die die Verfügbarkeit unbeliebter Inhalte deutlich erhöht, besteht darin, mehrere Dateien in einem einzigen Schwarm zu bündeln. Es wurden auch ausgefeiltere Lösungen vorgeschlagen, die im Allgemeinen auf Cross-Torrent-Mechanismen zurückgreifen, durch die mehrere Torrents zusammenarbeiten können, um Inhalte besser zu teilen.

Erstellen und Veröffentlichen

Der Peer, der eine Datei verteilt, behandelt die Datei als eine Reihe von gleich großen Stücken, in der Regel mit Byte-Größen einer Potenz von 2 und typischerweise zwischen 32 kB und 16 MB pro Stück. Der Peer erstellt für jedes Stück einen Hash mit der SHA-1-Hash-Funktion und speichert ihn in der Torrent-Datei. Stücke mit einer Größe von mehr als 512 kB reduzieren die Größe einer Torrent-Datei für eine sehr große Nutzlast, aber es wird behauptet, dass sie die Effizienz des Protokolls verringern. Wenn ein anderer Peer später ein bestimmtes Stück erhält, wird der Hash des Stücks mit dem aufgezeichneten Hash verglichen, um zu prüfen, ob das Stück fehlerfrei ist. Peers, die eine vollständige Datei bereitstellen, werden als Seeder bezeichnet, und der Peer, der die erste Kopie bereitstellt, wird als Initial Seeder bezeichnet. Die genauen Informationen, die in der Torrent-Datei enthalten sind, hängen von der Version des BitTorrent-Protokolls ab.

Der Name einer Torrent-Datei hat vereinbarungsgemäß die Endung .torrent. Torrent-Dateien haben einen "announce"-Abschnitt, der die URL des Trackers angibt, und einen "info"-Abschnitt, der (vorgeschlagene) Namen für die Dateien, ihre Länge, die verwendete Stücklänge und einen SHA-1-Hash-Code für jedes Stück enthält, die alle von den Clients verwendet werden, um die Integrität der empfangenen Daten zu überprüfen. Obwohl SHA-1 Anzeichen einer kryptografischen Schwäche gezeigt hat, hielt Bram Cohen das Risiko anfangs nicht für groß genug, um eine rückwärtskompatible Änderung z. B. zu SHA-3 vorzunehmen. Ab BitTorrent v2 wurde die Hash-Funktion auf SHA-256 aktualisiert.

In der Anfangszeit wurden Torrent-Dateien in der Regel auf Torrent-Index-Websites veröffentlicht und bei mindestens einem Tracker registriert. Der Tracker führte Listen mit den Clients, die derzeit mit dem Schwarm verbunden waren. In einem System ohne Tracker (dezentrales Tracking) fungiert jeder Peer als Tracker. Azureus war der erste BitTorrent-Client, der ein solches System mit der Methode der verteilten Hashtabelle (DHT) implementierte. Ein alternatives und inkompatibles DHT-System, bekannt als Mainline DHT, wurde drei Wochen später im Mainline-BitTorrent-Client veröffentlicht (obwohl es sich seit 2002 in der Entwicklung befand) und anschließend von den Clients μTorrent, Transmission, rTorrent, KTorrent, BitComet und Deluge übernommen.

Nach der Übernahme des DHT wurde inoffiziell eine "private" Kennzeichnung - analog zur Broadcast-Kennzeichnung - eingeführt, mit der die Clients die Verwendung der dezentralen Verfolgung unabhängig von den Wünschen des Benutzers einschränken können. Das Kennzeichen wird absichtlich im Info-Abschnitt des Torrents platziert, damit es nicht deaktiviert oder entfernt werden kann, ohne die Identität des Torrents zu ändern. Der Zweck der Markierung besteht darin zu verhindern, dass Torrents an Clients weitergegeben werden, die keinen Zugriff auf den Tracker haben. Die Kennzeichnung wurde im August 2008 zur Aufnahme in die offizielle Spezifikation beantragt, aber noch nicht akzeptiert. Klienten, die die Privat-Flagge ignoriert haben, wurden von vielen Trackern gesperrt, was diese Praxis entmutigt.

Anonymität

BitTorrent selbst bietet seinen Nutzern keine Anonymität. In der Regel kann man die IP-Adressen aller Peers in einem Schwarm in seinem eigenen Client oder Firewall-Programm sehen. Dies kann Benutzer mit unsicheren Systemen Angriffen aussetzen. In einigen Ländern sammeln Urheberrechtsorganisationen Listen von Peers und senden den Internetdienstanbietern von Nutzern, die sich an Schwärmen von urheberrechtlich geschützten Dateien beteiligen, Abmahnungen. In einigen Ländern können Urheberrechtsinhaber gegen Up- oder Downloader wegen Rechtsverletzung klagen, und die Polizei kann in solchen Fällen Verdächtige festnehmen.

Um die Anonymität zu fördern, wurden verschiedene Mittel eingesetzt. Der BitTorrent-Client Tribler beispielsweise stellt ein Tor-ähnliches Zwiebelnetz zur Verfügung, das optional Übertragungen durch andere Peers leitet, um zu verschleiern, welcher Client die Daten angefordert hat. Der Ausgangsknoten wäre für die Peers in einem Schwarm sichtbar, aber die Tribler-Organisation stellt Ausgangsknoten zur Verfügung. Ein Vorteil von Tribler ist, dass Clearnet-Torrents heruntergeladen werden können, ohne dass die Download-Geschwindigkeit durch einen "Hop" der Weiterleitung verringert wird.

i2p bietet eine ähnliche Anonymitätsschicht, obwohl in diesem Fall nur Torrents heruntergeladen werden können, die in das i2p-Netzwerk hochgeladen wurden. Der BitTorrent-Client Vuze ermöglicht es Nutzern, die nicht auf Anonymität bedacht sind, Torrents von Clearnet zu nehmen und sie im i2p-Netzwerk verfügbar zu machen.

Die meisten BitTorrent-Clients sind nicht darauf ausgelegt, Anonymität zu bieten, wenn sie über Tor benutzt werden, und es gibt eine Debatte darüber, ob Torrenting über Tor eine Belastung für das Netzwerk darstellt.

Private Torrent-Tracker sind in der Regel nur auf Einladung zugänglich und verlangen von den Mitgliedern, dass sie sich am Hochladen beteiligen, haben aber den Nachteil, dass es nur einen zentralen Fehlerpunkt gibt. Oink's Pink Palace und What.cd sind Beispiele für private Tracker, die abgeschaltet wurden.

Bei Seedbox-Diensten werden die Torrent-Dateien zunächst auf die Server des Unternehmens heruntergeladen, so dass der Nutzer die Datei direkt von dort herunterladen kann. Die IP-Adresse des Nutzers ist für den Seedbox-Anbieter sichtbar, nicht aber für Dritte.

Virtuelle private Netzwerke verschlüsseln die Übertragungen und ersetzen die IP-Adresse des Nutzers durch eine andere, so dass jeder, der einen Torrent-Schwarm überwacht, nur diese Adresse sieht.

Verbundene Technologien

Verteilte Tracker

Am 2. Mai 2005 wurde Azureus 2.3.0.0 (jetzt bekannt als Vuze) veröffentlicht, das die Unterstützung für "trackerlose" Torrents durch ein System namens "verteilte Datenbank" einführte. Dieses System ist eine verteilte Hash-Tabellen-Implementierung, die es dem Client ermöglicht, Torrents zu verwenden, die keinen funktionierenden BitTorrent-Tracker haben. Stattdessen wird nur ein Bootstrapping-Server verwendet (router.bittorrent.com, dht.transmissionbt.com oder router.utorrent.com). Im darauffolgenden Monat veröffentlichte BitTorrent, Inc. die Version 4.2.0 des Mainline-BitTorrent-Clients, der eine alternative DHT-Implementierung unterstützte (im Volksmund als "Mainline DHT" bekannt, die in einem Entwurf auf ihrer Website beschrieben wird), die mit der von Azureus nicht kompatibel ist. Im Jahr 2014 ergaben Messungen, dass die Zahl der gleichzeitigen Nutzer von Mainline DHT zwischen 10 Millionen und 25 Millionen lag, mit einer täglichen Abwanderung von mindestens 10 Millionen.

Die aktuellen Versionen des offiziellen BitTorrent-Clients, μTorrent, BitComet, Transmission und BitSpirit sind alle mit der Mainline DHT kompatibel. Beide DHT-Implementierungen basieren auf Kademlia. Seit der Version 3.0.5.0 unterstützt Azureus zusätzlich zu seiner eigenen verteilten Datenbank auch Mainline DHT durch die Verwendung eines optionalen Anwendungs-Plugins. Dadurch kann der Azureus/Vuze-Client möglicherweise einen größeren Schwarm erreichen.

Eine weitere Idee, die in Vuze aufgetaucht ist, ist die der virtuellen Torrents. Diese Idee basiert auf dem verteilten Tracker-Ansatz und wird verwendet, um eine Webressource zu beschreiben. Derzeit wird sie für Instant Messaging verwendet. Es wird über ein spezielles Messaging-Protokoll implementiert und erfordert ein entsprechendes Plugin. Anatomisches P2P ist ein weiterer Ansatz, bei dem ein dezentrales Netzwerk von Knoten verwendet wird, die den Verkehr an dynamische Tracker weiterleiten. Die meisten BitTorrent-Clients verwenden zusätzlich zu Trackern und DHT auch Peer Exchange (PEX), um Peers zu sammeln. Peer Exchange prüft bei bekannten Peers, ob diese andere Peers kennen. Mit der Version 3.0.5.0 von Vuze verfügen nun alle großen BitTorrent-Clients über einen kompatiblen Peer-Austausch.

BEP 5 beschreibt den Einsatz einer verteilten Hashtabelle (englisch „Distributed Hash Table“; DHT) auf Basis des Kademlia-Algorithmus für den „trackerlosen“ (englisch „trackerless“) Betrieb. Diese Erweiterung ist derzeit noch im Entwurfsstadium, der Einsatz ist jedoch schon weit verbreitet. Die Trackerfunktion wird dabei von der Clientsoftware übernommen. Dies vermeidet einige der bisherigen Probleme (zum Beispiel die fehlende Ausfallsicherheit des Trackers), auch wenn tracker-gestützter Betrieb weiter möglich sein wird. Es erleichtert auch das Anbieten, da Tracker den aufwändigsten Teil in BitTorrent darstellen. Seit der im November 2005 erschienenen Version 4.2.0 unterstützt der Referenz-Client den trackerlosen Betrieb und setzt dabei auf den Kademlia-Algorithmus. Der Tracker kann dabei dezentral, ähnlich wie im Kademlia-Netzwerk, als verteilte Hashtabelle auf den Clients selbst abgelegt und verwaltet werden.

Moderne BitTorrent-Clients können daher auf Tracker verzichten und dezentral arbeiten („trackerlos“). Allerdings verwenden sie noch unterschiedliche Protokolle, sodass die Kommunikation zwischen verschiedenen Clients auf DHT-Basis nicht immer möglich ist. Untereinander kompatibel sind zurzeit BitComet, Deluge, µTorrent, KTorrent, qBittorrent, rTorrent, Transmission und der Referenz-Client. Die Entwickler arbeiten verstärkt daran, Kompatibilität herzustellen.

Web-Seeding

Web-"Seeding" wurde 2006 als Fähigkeit von BitTorrent-Clients implementiert, Torrent-Stücke von einer HTTP-Quelle zusätzlich zum "Schwarm" herunterzuladen. Der Vorteil dieser Funktion besteht darin, dass eine Website einen Torrent für eine bestimmte Datei oder einen Stapel von Dateien verteilen und diese Dateien zum Herunterladen von demselben Webserver bereitstellen kann. Theoretisch würde dies die Nutzung von BitTorrent für einen Web-Publisher fast so einfach machen wie das Erstellen eines direkten HTTP-Downloads. Darüber hinaus könnte der "Web-Seed" deaktiviert werden, wenn der Schwarm zu populär wird, während die Datei immer noch leicht verfügbar wäre. Für diese Funktion gibt es zwei verschiedene Spezifikationen, die beide von Libtorrent und den über 26 Clients, die es nutzen, unterstützt werden.

Die erste wurde von John "TheSHAD0W" Hoffman entwickelt, der auch BitTornado entwickelt hat. Diese erste Spezifikation erfordert das Ausführen eines Webdienstes, der Inhalte nach Info-Hash und Stückzahl und nicht nach Dateinamen bereitstellt.

Die andere Spezifikation wurde von den GetRight-Autoren erstellt und kann sich auf einen einfachen HTTP-Downloadbereich (mit Byte-Serving) stützen.

Im September 2010 wurde ein neuer Dienst namens Burnbit eingeführt, der mithilfe von Webseeding einen Torrent aus einer beliebigen URL erzeugt. Es gibt serverseitige Lösungen, die das anfängliche Seeding der Datei vom Webserver über das standardmäßige BitTorrent-Protokoll bereitstellen und die Bereitstellung der Datei von der ursprünglichen Quelle einstellen, wenn die Anzahl der externen Seeder eine bestimmte Grenze erreicht.

RSS-Feeds

Eine Technik namens Broadcatching kombiniert RSS-Feeds mit dem BitTorrent-Protokoll, um ein System zur Bereitstellung von Inhalten zu schaffen, das die Verbreitung von Inhalten weiter vereinfacht und automatisiert. Steve Gillmor erläuterte das Konzept in einer Kolumne für Ziff-Davis im Dezember 2003. Die Diskussion verbreitete sich schnell unter den Bloggern (Ernest Miller, Chris Pirillo, usw.). In einem Artikel mit dem Titel Broadcatching with BitTorrent erklärte Scott Raymond:

Ich möchte RSS-Feeds von BitTorrent-Dateien. Ein Skript würde in regelmäßigen Abständen den Feed auf neue Elemente überprüfen und diese zum Starten des Downloads verwenden. Dann könnte ich einen vertrauenswürdigen Herausgeber eines Alias-RSS-Feeds finden und alle neuen Episoden der Serie "abonnieren", die dann automatisch heruntergeladen werden - wie die "Season Pass"-Funktion des TiVo.

- Scott Raymond, scottraymond.net

Der RSS-Feed verfolgt die Inhalte, während BitTorrent die Integrität der Inhalte durch kryptografisches Hashing aller Daten sicherstellt, so dass die Feed-Abonnenten unverfälschte Inhalte erhalten. Einer der ersten und beliebtesten Software-Clients (kostenlos und quelloffen) für Broadcatching ist Miro. Andere kostenlose Software-Clients wie PenguinTV und KatchTV unterstützen inzwischen ebenfalls Broadcatching. Der BitTorrent-Webdienst MoveDigital fügte 2006 die Möglichkeit hinzu, Torrents für jede Webanwendung verfügbar zu machen, die in der Lage ist, XML über seine standardmäßige REST-basierte Schnittstelle zu parsen, obwohl dies inzwischen eingestellt wurde. Darüber hinaus entwickelt Torrenthut eine ähnliche Torrent-API, die dieselben Funktionen bietet und dazu beiträgt, die Torrent-Community auf Web 2.0-Standards zu bringen. Parallel zu dieser Veröffentlichung gibt es eine erste PHP-Anwendung, die mit der API namens PEP gebaut wurde und die jeden RSS 2.0-Feed (Really Simple Syndication) analysiert und automatisch einen Torrent für jede in diesem Feed gefundene Anlage erstellt und seeden kann.

Drosselung und Verschlüsselung

Da BitTorrent einen großen Teil des gesamten Datenverkehrs ausmacht, haben einige Internetdienstanbieter beschlossen, BitTorrent-Übertragungen zu "drosseln" (zu verlangsamen). Aus diesem Grund wurden Methoden entwickelt, um den BitTorrent-Verkehr zu verschleiern, um diese Bemühungen zu vereiteln. Protocol Header Encrypt (PHE) und Message Stream Encryption/Protocol Encryption (MSE/PE) sind Funktionen einiger BitTorrent-Clients, die versuchen, BitTorrent schwer zu erkennen und zu drosseln. Seit November 2015 unterstützen Vuze, Bitcomet, KTorrent, Transmission, Deluge, μTorrent, MooPolice, Halite, qBittorrent, rTorrent und der letzte offizielle BitTorrent-Client (v6) die MSE/PE-Verschlüsselung.

Im August 2007 verhinderte Comcast das BitTorrent-Seeding, indem es die Kommunikation zwischen Peers überwachte und störte. Der Schutz vor diesen Bemühungen besteht darin, dass der Client-Tracker-Verkehr über einen verschlüsselten Tunnel zu einem Punkt außerhalb des Comcast-Netzwerks geleitet wird. Im Jahr 2008 schloss Comcast einen "Waffenstillstand" mit BitTorrent, Inc. mit der Absicht, den Datenverkehr protokollunabhängig zu gestalten. Fragen über die Ethik und Rechtmäßigkeit des Verhaltens von Comcast haben zu einer erneuten Debatte über die Netzneutralität in den Vereinigten Staaten geführt. Obwohl es durch die Verschlüsselung schwierig sein kann, festzustellen, was ausgetauscht wird, ist BitTorrent im Allgemeinen anfällig für die Analyse des Datenverkehrs. Selbst mit MSE/PE kann ein Internetdienstanbieter BitTorrent erkennen und feststellen, dass ein System keine Daten mehr herunterlädt, sondern nur noch hochlädt, und die Verbindung durch Einspeisen von TCP RST-Paketen (Reset Flag) beenden.

Multitracker

Eine weitere inoffizielle Funktion ist eine Erweiterung des BitTorrent-Metadatenformats, die von John Hoffman vorgeschlagen und von mehreren Indexierungs-Websites implementiert wurde. Sie ermöglicht die Verwendung mehrerer Tracker pro Datei, so dass bei Ausfall eines Trackers die anderen die Dateiübertragung weiterhin unterstützen können. Es ist in mehreren Clients implementiert, z. B. in BitComet, BitTornado, BitTorrent, KTorrent, Transmission, Deluge, μTorrent, rtorrent, Vuze und Frostwire. Die Tracker werden in Gruppen oder Ebenen unterteilt, wobei ein Tracker aus der obersten Ebene zufällig ausgewählt und ausprobiert wird und zur nächsten Ebene übergeht, wenn alle Tracker in der obersten Ebene versagen.

Torrents mit mehreren Trackern können die Zeit, die für das Herunterladen einer Datei benötigt wird, verkürzen, haben aber auch ein paar Konsequenzen:

  • Schlecht implementierte Clients können mehrere Tracker kontaktieren, was zu mehr Overhead-Verkehr führt.
  • Torrents von geschlossenen Trackern können plötzlich auch von Nicht-Mitgliedern heruntergeladen werden, da diese sich über einen offenen Tracker mit einem Seed verbinden können.

Peer-Auswahl

Im Dezember 2008 arbeitete BitTorrent, Inc. zusammen mit Oversi an neuen Policy-Discovery-Protokollen, die den ISP nach Fähigkeiten und Informationen zur Netzwerkarchitektur befragen. Die vom ISP gehostete NetEnhancer-Box von Oversi soll die Peer-Auswahl verbessern, indem sie den Peers hilft, lokale Knoten zu finden, die Download-Geschwindigkeiten zu verbessern und gleichzeitig die Belastung des ISP-Netzwerks zu reduzieren.

Implementierungen

Die BitTorrent-Spezifikation ist frei verwendbar und viele Clients sind quelloffen, so dass BitTorrent-Clients für alle gängigen Betriebssysteme und in einer Vielzahl von Programmiersprachen entwickelt wurden. Der offizielle BitTorrent-Client, μTorrent, qBittorrent, Transmission, Vuze und BitComet sind einige der beliebtesten Clients.

Einige BitTorrent-Implementierungen wie MLDonkey und Torrentflux sind für den Betrieb als Server ausgelegt. Dies kann z. B. verwendet werden, um die gemeinsame Nutzung von Dateien auf einem einzigen dedizierten Server zu zentralisieren, auf den die Benutzer im Netzwerk gemeinsam zugreifen. Serverorientierte BitTorrent-Implementierungen können auch von Hosting-Anbietern an einem Standort mit einer Internetverbindung mit hoher Bandbreite (z. B. in einem Rechenzentrum) gehostet werden, was erhebliche Geschwindigkeitsvorteile gegenüber der Nutzung von BitTorrent über eine normale Breitbandverbindung zu Hause bieten kann. Dienste wie ImageShack können Dateien über BitTorrent für den Benutzer herunterladen und ermöglichen es ihm, die gesamte Datei per HTTP herunterzuladen, sobald sie fertig ist.

Der Opera-Webbrowser unterstützt BitTorrent von Haus aus. Der Webbrowser Brave wird mit einer Erweiterung ausgeliefert, die WebTorrent unterstützt, ein BitTorrent-ähnliches Protokoll, das auf WebRTC anstelle von UDP und TCP basiert. BitLet ermöglichte es Benutzern, Torrents direkt von ihrem Browser aus mit einem Java-Applet herunterzuladen (bis die Browser die Unterstützung für Java-Applets einstellten). Immer mehr Hardware-Geräte werden für die Unterstützung von BitTorrent entwickelt. Dazu gehören Router und NAS-Geräte mit BitTorrent-fähiger Firmware wie OpenWrt. Proprietäre Versionen des Protokolls, die DRM, Verschlüsselung und Authentifizierung implementieren, finden sich in verwalteten Clients wie Pando.

Annahme

Immer mehr Einzelpersonen und Organisationen nutzen BitTorrent, um ihre eigenen oder lizenzierten Werke zu verbreiten (z. B. Indie-Bands, die digitale Dateien ihrer neuen Songs verbreiten). Unabhängige Anwender berichten, dass die BitTorrent-Technologie den Bedarf an privater Netzwerkhardware und -bandbreite reduziert, was für gemeinnützige Gruppen mit großem Internetverkehr unerlässlich ist.

Einige Verwendungen von BitTorrent für den Dateiaustausch können in einigen Ländern gegen Gesetze verstoßen (siehe Abschnitt "Gesetzgebung").

Film, Video und Musik

  • BitTorrent Inc. hat eine Reihe von Lizenzen von Hollywood-Studios für die Verbreitung beliebter Inhalte über deren Websites erhalten.
  • Sub Pop Records veröffentlicht Titel und Videos über BitTorrent Inc., um seine über 1000 Alben zu verbreiten. Babyshambles und The Libertines (beides Bands von Pete Doherty) haben Torrents ausgiebig genutzt, um Hunderte von Demos und Live-Videos zu verbreiten. Die US-amerikanische Industrial-Rock-Band Nine Inch Nails vertreibt ihre Alben häufig über BitTorrent.
  • Podcasting-Software beginnt, BitTorrent zu integrieren, um Podcastern bei der Bewältigung der Downloadanforderungen ihrer MP3-"Radio"-Programme zu helfen. Insbesondere Juice und Miro (früher bekannt als Democracy Player) unterstützen die automatische Verarbeitung von .torrent-Dateien aus RSS-Feeds. Auch einige BitTorrent-Clients wie μTorrent sind in der Lage, Webfeeds zu verarbeiten und die darin gefundenen Inhalte automatisch herunterzuladen.
  • DGM Live-Käufe werden über BitTorrent bereitgestellt.
  • VODO, ein Dienst, der "free-to-share" Filme und Fernsehsendungen über BitTorrent verbreitet.

Rundfunkanstalten

  • Im Jahr 2008 war die CBC die erste öffentliche Rundfunkanstalt in Nordamerika, die eine komplette Sendung (Canada's Next Great Prime Minister) über BitTorrent zum Download bereitstellte.
  • Die Norwegische Rundfunkanstalt (NRK) experimentiert seit März 2008 mit der online verfügbaren BitTorrent-Distribution. Es werden nur ausgewählte Werke veröffentlicht, an denen NRK alle Lizenzrechte besitzt. Die Reaktionen waren sehr positiv, und NRK plant, mehr Inhalte anzubieten.
  • Die niederländische Rundfunkorganisation VPRO veröffentlichte 2009 und 2010 vier Dokumentarfilme unter einer Creative-Commons-Lizenz und nutzte dazu die Inhaltsverteilungsfunktion des Mininova-Trackers.

Cloud-Service-Anbieter

  • Der Simple Storage Service (S3) von Amazon AWS unterstützte bis zum 29. April 2021 die gemeinsame Nutzung von Bucket-Objekten mit BitTorrent-Protokollen. Ab dem 13. Juni 2020 ist die Funktion nur noch in Serviceregionen verfügbar, die nach dem 30. Mai 2016 eingeführt wurden. Die Funktion für bestehende Kunden wird nach der Abschaltung um weitere 12 Monate verlängert. Nach dem 29. April 2022 werden BitTorrent-Clients keine Verbindung mehr zu Amazon S3 herstellen.

Software

  • Blizzard Entertainment verwendet BitTorrent (über einen proprietären Client namens "Blizzard Downloader", der mit dem Blizzard "BattleNet"-Netzwerk verbunden ist), um Inhalte und Patches für Diablo III, StarCraft II und World of Warcraft, einschließlich der Spiele selbst, zu verbreiten.
  • Wargaming verwendet BitTorrent für seine beliebten Titel World of Tanks, World of Warships und World of Warplanes, um Spielaktualisierungen zu verbreiten.
  • CCP Games, Hersteller des Weltraumsimulations-MMORPGs Eve Online, hat angekündigt, dass ein neuer, auf BitTorrent basierender Launcher veröffentlicht werden soll.
  • Viele Softwarespiele, vor allem solche, die wegen ihrer Größe aufgrund von Bandbreitenbeschränkungen, extrem häufigen Downloads und unvorhersehbaren Änderungen des Netzwerkverkehrs schwer zu hosten sind, werden stattdessen einen spezialisierten, abgespeckten BitTorrent-Client mit ausreichender Funktionalität zum Herunterladen des Spiels von den anderen laufenden Clients und dem Primärserver (der aufrechterhalten wird, falls nicht genügend Peers verfügbar sind) verteilen.
  • Viele große Open-Source- und freie Software-Projekte fördern sowohl BitTorrent als auch herkömmliche Downloads ihrer Produkte (über HTTP, FTP usw.), um die Verfügbarkeit zu erhöhen und die Last auf ihren eigenen Servern zu verringern, insbesondere wenn es um größere Dateien geht.
  • Resilio Sync ist ein BitTorrent-basiertes Tool zur Synchronisierung von Ordnern, das eine Alternative zu serverbasierten Synchronisierungsdiensten wie Dropbox darstellen kann.

Auch außerhalb des Software-Bereiches gibt es konkrete Anwendungen: Die britische BBC unternimmt derzeit Pilotversuche, um aktuelle Sendungen und Dokumentationen unmittelbar nach der Ausstrahlung online über BitTorrent zur Verfügung zu stellen. Das Freie-Musik-Projekt Jamendo verteilt Alben über BitTorrent. Die Podcasts des Chaosradio-Netzwerks werden seit 2010 auch über BitTorrent verbreitet.

Regierung

  • Die britische Regierung nutzte BitTorrent, um Informationen darüber zu verbreiten, wie die Steuergelder der britischen Bürger ausgegeben wurden.

Bildung

  • Die Florida State University verwendet BitTorrent, um große wissenschaftliche Datensätze an ihre Forscher zu verteilen.
  • Viele Universitäten, die BOINC-Projekte für verteiltes Rechnen durchführen, haben die BitTorrent-Funktionalität des Client-Server-Systems genutzt, um die Bandbreitenkosten für die Verteilung der clientseitigen Anwendungen zur Verarbeitung der wissenschaftlichen Daten zu senken. Wenn eine BOINC-Anwendung für verteiltes Rechnen aktualisiert werden muss (oder nur an einen Benutzer gesendet werden soll), kann dies mit geringen Auswirkungen auf den BOINC-Server erfolgen.
  • Das in der Entwicklung befindliche Human Connectome Project verwendet BitTorrent, um seinen offenen Datensatz zu verbreiten.
  • Academic Torrents ist ein BitTorrent-Tracker, der von Forschern in Bereichen genutzt wird, die große Datensätze freigeben müssen.

Andere

  • Facebook verwendet BitTorrent, um Aktualisierungen auf Facebook-Servern zu verbreiten.
  • Twitter verwendet BitTorrent, um Aktualisierungen auf Twitter-Servern zu verbreiten.
  • Das Internet Archive hat BitTorrent im August 2012 in seine Optionen zum Herunterladen von mehr als 1,3 Millionen bestehenden Dateien und allen neu hochgeladenen Dateien aufgenommen. Diese Methode ist das schnellste Mittel zum Herunterladen von Medien aus dem Archiv.

Anfang 2015 schätzte AT&T, dass BitTorrent 20 % des gesamten Breitbandverkehrs ausmacht.

Router, die Network Address Translation (NAT) verwenden, müssen Tabellen mit Quell- und Ziel-IP-Adressen und -Ports führen. Da BitTorrent häufig 20-30 Server pro Sekunde kontaktiert, sind die NAT-Tabellen einiger Router für Privatanwender schnell gefüllt. Dies ist eine bekannte Ursache dafür, dass einige Heimrouter nicht mehr richtig funktionieren.

Gesetzgebung

Obwohl das Protokoll an sich legal ist, ergeben sich Probleme aus der Verwendung des Protokolls für den Verkehr urheberrechtsverletzender Werke, da BitTorrent häufig zum Herunterladen ansonsten kostenpflichtiger Inhalte wie Filme und Videospiele verwendet wird. Die Verwendung von BitTorrent-Trackern ist sehr umstritten. BitTorrent-Metadateien selbst speichern keine Dateiinhalte. Es ist umstritten, ob die Herausgeber von BitTorrent-Metadateien Urheberrechte verletzen, indem sie ohne Genehmigung der Urheberrechtsinhaber auf urheberrechtlich geschützte Werke verlinken. Verschiedene Gerichtsbarkeiten haben rechtliche Schritte gegen Websites unternommen, die BitTorrent-Tracker hosten.

Zu den bekanntesten Beispielen gehört die Schließung von Suprnova.org, TorrentSpy, LokiTorrent, BTJunkie, Mininova, Oink's Pink Palace und What.cd. Die von einer schwedischen Gruppe gegründete BitTorrent-Suchmaschine The Pirate Bay ist bekannt für den "rechtlichen" Bereich ihrer Website, in dem Briefe und Antworten zu angeblichen Urheberrechtsverletzungen öffentlich angezeigt werden. Am 31. Mai 2006 wurden die Server von The Pirate Bay in Schweden von der schwedischen Polizei wegen angeblicher Urheberrechtsverletzungen durch die MPAA durchsucht; der Tracker war jedoch drei Tage später wieder in Betrieb. In der Studie, die zur Bewertung von NBC Universal bei der Fusion mit Comcast verwendet wurde, untersuchte Envisional die 10.000 von PublicBT verwalteten Torrent-Schwärme mit den meisten aktiven Downloadern. Nach dem Ausschluss pornografischer und nicht identifizierbarer Inhalte wurde festgestellt, dass nur ein Schwarm legitime Inhalte anbot.

In den Vereinigten Staaten wurden seit 2010 mehr als 200.000 Klagen wegen Urheberrechtsverletzungen über BitTorrent eingereicht. Im Vereinigten Königreich wies der High Court of Justice am 30. April 2012 fünf Internetanbieter an, The Pirate Bay zu sperren.

Sicherheit

Ein Problem ist der UDP-Flood-Angriff. BitTorrent-Implementierungen verwenden häufig μTP für ihre Kommunikation. Um hohe Bandbreiten zu erreichen, wird als zugrunde liegendes Protokoll UDP verwendet, das das Spoofing von Quelladressen des Internetverkehrs ermöglicht. Es war möglich, in einer P2P-Laborumgebung Denial-of-Service-Angriffe durchzuführen, bei denen Benutzer, die BitTorrent-Clients ausführen, als Verstärker für einen Angriff auf einen anderen Dienst fungieren. Dies ist jedoch nicht immer ein wirksamer Angriff, da die Internetdienstanbieter überprüfen können, ob die Quelladresse korrekt ist.

In mehreren Studien über BitTorrent wurde festgestellt, dass zum Download bereitgestellte Dateien Malware enthalten. So ergab eine kleine Stichprobe, dass 18 % aller zum Download angebotenen ausführbaren Programme Malware enthielten. Eine andere Studie behauptet, dass bis zu 14,5 % der BitTorrent-Downloads Zero-Day-Malware enthalten und dass BitTorrent als Verbreitungsmechanismus für 47 % aller gefundenen Zero-Day-Malware verwendet wurde.

BitTorrent-Technik

Offizielle Protokollerweiterungen

Die Entwicklung der BitTorrent-Protokolle wurde der Community übergeben. In den BitTorrent Enhancement Proposals (BEP) sammeln sich neue Funktionen, die in der Regel von den Autoren verschiedener BitTorrent-Software eingeführt und nun darin standardisiert wurden.

UDP-Trackerprotokoll

Mit der Erweiterung aus BEP 15 kann ein Tracker per UDP abgefragt werden, was das Datenverkehrsaufkommen am Tracker stark reduzieren kann. Diese Erweiterung ist derzeit noch im Entwurfsstadium.

HTTP/FTP Seeding

BEP 17 und 19 beschreiben Verfahren zur Nutzung von HTTP- oder FTP-Webservern als vollständige Quellen (Seeds) in einem BitTorrent-Schwarm.

Siehe Artikel Webseed

Ankündigen und Auffinden von Peers mittels Zeroconf

Mit der in BEP 26 (noch im Entwurfsstadium) beschriebenen Erweiterung können sich Peers mittels DNS Service Discovery (Zeroconf) in einem lokalen Netzwerk finden. Innerhalb eines lokalen Netzwerkes sind in der Regel deutlich höhere Übertragungsraten möglich und ist der Aufwand für die Übertragung geringer. Mit dieser Erweiterung können Peers im selben lokalen Netzwerk, die am selben Torrent interessiert sind, dies nun entlastend für den Schwarm und die gemeinsame Außenanbindung nutzen und können eventuell mehr Peers gefunden werden. Dazu muss auf den jeweiligen Systemen ein Zeroconf-Daemon laufen.

Auffinden von BitTorrent-Zwischenspeichern

Die im BEP 22 (noch im Entwurfsstadium) beschriebene Erweiterung ermöglicht das Aufspüren netzwerk-topologisch naheliegender Knoten wie zum Beispiel Pufferspeichern eines Internetdienstanbieters.

Dies kann in vielerlei Hinsicht nützlich sein: Indem Internetdienstanbieter Verkehr von auf ihrem Netz populären Torrents zwischenspeichern und auf ihrem Netz betriebene Clients aus dem Zwischenspeicher speisen, kann teurerer externer Datenverkehr eingespart werden. Für die Kunden ergibt sich damit eine Verbesserung der Zuverlässigkeit des Torrents und der Geschwindigkeit beim Herunterladen. Die Daten von Torrent-Transfers können damit unkompliziertere Routen durchs Internet nehmen.

Diese Erweiterung wurde mit Version 4.20.0 des Original-Clients (mainline) eingeführt.

Protokollverschleierung

Viele Clients bieten mittlerweile eine Verschlüsselung des Datenstromes mit dem unsicheren Algorithmus RC4 (Stromchiffre) und dem „Infohash“ des jeweiligen Torrents als Schlüssel, um das Protokoll des Datenstromes zu verschleiern und Internetdienstanbietern das Traffic-Shaping zu erschweren.

Der ursprüngliche Entwickler des BitTorrent-Protokolles Bram Cohen hält dieses Vorgehen für schlecht, und das entsprechende BEP (BEP 8) ist zurückgestellt.

Für Kunden einiger Internetdienstanbieter ist es die einzige Möglichkeit, einer selektiven Drosselung ihres Datenverkehres zu entgehen, andererseits nimmt es den Anbietern auch die Möglichkeit des Betriebes von BitTorrent-Zwischenspeichern und braucht mehr Rechenleistung.

µTorrent und Azureus führten die Erweiterung zusammen ein, was schlagartig einen Großteil aller Peers kompatibel zu verschlüsselten Verbindungen machte.

Peer Exchange

Peer Exchange (PEX) ist ein alternatives Verfahren zum Auffinden von Peers. Damit können Peers ihre Peer-Listen untereinander austauschen und somit zusätzliche Peers von verbundenen Peers bezogen werden. Obwohl die entsprechende BEP 11 noch nicht angenommen ist, ist das Verfahren schon weit verbreitet.

Internetcache

Ab Version 4.20.0 unterstützt BitTorrent das Internet Cache Protocol (ICP), um die Datenübertragungsrate der Provider zu schonen. Dazu wurde das Zusatz-Protokoll Cache Discovery Protocol definiert. Bisher wurde die Technik aber noch nicht genutzt. Da Caching-Provider durch den Digital Millennium Copyright Act (DMCA) nicht für den durchgeleiteten Datenverkehr haften müssen, bestehen zumindest in den Vereinigten Staaten juristisch keine Probleme.

Anti-Leech-Tracker (ALT)

BitTorrent beruht – wie alle Filesharing-Netzwerke – auf dem Prinzip „Geben und Nehmen“. Nicht wenige Teilnehmer deaktivieren ihre eigene Seed-Funktion („upload“) und missachten damit das Prinzip aller Filesharing-Netzwerke. Als Reaktion auf dieses Ausnutzen haben sich sogenannte „Anti-Leech-Tracker“ (ALT) etabliert, die das Verhalten der Teilnehmer stetig beobachten und Teilnehmer, die nur herunterladen oder dies in unfairem Verhältnis tun, vom Netzwerk ausschließen, sobald gegen vordefinierte Regeln verstoßen wird. Als Maßstab gilt hier die sogenannte Ratio („file ratio“, „overall ratio“ oder beim µTorrent „Share-Rate“), die sich aus dem Quotienten von gesendeter und empfangener Datenmenge errechnet.

Bei diesem System sind jedoch Teilnehmer mit geringerer Datenübertragungsrate benachteiligt. So kann es passieren, dass solche Nutzer vom ALT verbannt werden, wenn sie ihre Ratio nicht rechtzeitig einhalten können. Daher wird auf einigen ALT mit dem sogenannten „Only Upload“ gegen diesen Missstand vorgegangen. Bei „Only Upload“ wird ausschließlich die Masse an hochgeladenen Daten angerechnet. Ferner wird diesem Problem auch verstärkt mit einem sogenannten „Seedbonus“ begegnet, bei dem Punkte für die Zeitspanne des Sendevorgangs („upload“) vergeben werden, die dann wiederum in „Upload-Guthaben“ eingetauscht werden können.

Eine weitere Problematik: Der ALT ist zum Errechnen des Verhältnisses auf Berichte der teilnehmenden Clients angewiesen. Diese können leicht verfälscht werden, entweder absichtlich durch Manipulationen von Schummlern oder versehentlich durch fehlerhaft konfigurierte Client-Software. Hier wurden mittlerweile jedoch auch Methoden entwickelt, die solche potentiellen Betrugsversuche erkennen und damit zum sofortigen Ausschluss führen.

Künftige Weiterentwicklungen

In Zukunft wird die Weiterentwicklung des Protokolls nicht mehr alleine von Bram Cohen, sondern auch von anderen Entwicklern getragen. BitTorrent-Benutzer sind in letzter Zeit zunehmend (teils unwissentlich) vom Traffic-Shaping ihrer Provider betroffen. Werden dabei Pakete als P2P-Pakete klassifiziert, wird der Upload in vielen Fällen stark gedrosselt. Als Antwort darauf implementierten die Clients Vuze (früher Azureus) und µTorrent eine Ende-zu-Ende-Verschlüsselung (mit RC4-Stromchiffre), um das Traffic-Shaping zu umgehen. BitComet, rTorrent, Transmission sowie KTorrent unterstützen die neue Protokoll-Verschlüsselung ebenfalls.

Einsatzgebiete, Vor- und Nachteile

Besonders gut geeignet ist BitTorrent für die schnelle Verteilung großer Dateien, für die eine aktuell große Nachfrage vorhanden ist. Bei etwas älteren oder weniger gefragten Dateien ist unter Umständen das Herunterladen über FTP oder HTTP wegen der zu geringen Anzahl von Uploadern vorzuziehen. Dieser Nachteil kann durch die Nutzung sogenannter Webseeds aufgehoben werden. Der Vorgang der Datendistribution mit BitTorrent unterscheidet sich grundsätzlich von der Arbeitsweise der bekannten Filesharing-Tauschbörsen, bei denen jeder Teilnehmer parallel eigene Dateien anbietet. Durch die zunehmende Implementierung von trackerlosen Techniken sowie Suchfunktionen in den Clients lassen sich diese jedoch auch wie traditionelle Tauschbörsen verwenden.

Da die Größe der Datenübertragungsrate, die jeder Downloader bekommen kann, von der Menge der fertigen und der Menge der unfertigen Downloads (Peers) im Netz sowie der Uploadraten der Nutzer abhängt, kann es je nach Menge der Anbieter (Seeder), der Downloader (Leecher) und der Verteilungsrate zu mehr oder weniger Kilobytes pro Sekunde kommen. Da ein Nutzer mit vollständigem Download praktisch keinerlei Downloadrate benötigt, steigt die maximal verfügbare Datenübertragungsrate für das gesamte Netz, weil dieser fertige Nutzer nur hochlädt (seedet). Umgekehrt beanspruchen Downloader Datenübertragungsrate, tragen aber selbst mit ihrer Uploadrate bei. Am folgenden (nur sehr theoretischen) Beispiel soll die Auswirkung von unterschiedlichen Mengen von reinen Anbietern (Seeder) und Downloadern (Leecher) dargestellt werden:

  • 5 vollständige Downloads, jeder der Anschlüsse hat im Schnitt eine Uploadrate von 30 KiloBytes pro Sekunde: 5 × 30 = 150 KByte/s
  • 10 unvollständige Downloads, jeder der Anschlüsse hat im Schnitt eine Uploadrate von 30 KiloBytes pro Sekunde: 10 × 30 = 300 KByte/s

Die gesamte Datenübertragungsrate im Netzwerk beträgt also 150 KByte/s plus 300 KByte/s, insgesamt also 450 KByte/s. Da 10 Nutzer gleichzeitig herunterladen, teilt sich diese verfügbare Datenübertragungsrate auf in 10× durchschnittlich 45 KByte/s.

In der Realität wird solch ein Wert auf großen, öffentlichen Trackern aber meist nur bei beliebten Torrents erreicht, da auch Datenübertragungsrate durch Wartezeiten, Zuordnungen, verschiedene Erreichbarkeiten etc. verloren geht. Außerdem sind in der Praxis auch verschiedene Anschlussgeschwindigkeiten und Prioritäten für ein mehr oder weniger schnelles Herunterladen verantwortlich. Zudem haben viele Benutzer ihren Client oder ihre Firewall falsch konfiguriert.

Tor-Netzwerk

BitTorrent sollte nicht via Tor genutzt werden, sofern die Nutzung anonymisiert erfolgen soll.

Sonstiges

Einer Studie der ipoque GmbH vom Februar 2009 zufolge macht die Datenübertragung über das BitTorrent-Protokoll in Deutschland 37 % des gesamten Datenverkehrs aus und belegt damit den Spitzenplatz, mit weitem Abstand zu HTTP mit einem Anteil von 15 %. Die Repräsentativität dieser Studie wird jedoch bezweifelt, da nur ausgewählte Kunden der ipoque GmbH untersucht wurden.

Weiterhin gibt ipoque an, dass BitTorrent das einzige Filesharing-Protokoll sei, das signifikant für legale Inhalte genutzt werde.

Zwischenzeitlich hat Google das Wort bittorrent über die Autocomplete-Funktion nicht angezeigt.