Libtorrent fügt Unterstützung für BitTorrent v2 hinzu, ein potenzieller Spielveränderer

Millionen von Menschen nutzen BitTorrent jeden Tag, aber nur wenige kennen alle Vor- und Nachteile seiner Funktionsweise.
Unterdessen ist eine noch kleinere Gruppe aktiv an der Gestaltung der Zukunft des File-Sharing-Protokolls beteiligt.
BitTorrent wurde vom Erfinder Bram Cohen vor fast zwei Jahrzehnten erstmals öffentlich gemacht. Obwohl es rasch von der breiten Masse angenommen wurde, war das Protokoll selbst bei weitem nicht perfekt. Im Laufe der Jahre wurden viele neue Funktionen hinzugefügt, darunter DHT, UDP-Tracker, Peer-Austausch und Unterstützung für Streaming.
Als Entwickler einer der führenden BitTorrent-Bibliotheken, Libtorrent, war Arvid Norberg eng an der Entwicklung des Protokolls beteiligt. Es ist sein Code, der dafür sorgt, dass eine Vielzahl von Torrent-Clients ordnungsgemäß funktionieren. Dazu gehören uTorrent Web, Deluge und qBittorrent.
LibTorrent 2.0 und BitTorrent v2
Diese Woche kündigte Norberg die neueste Version von Libtorrent an; Version 2.0. Diese neue Version bringt viele Änderungen mit sich, die schließlich ihren Weg zu den Torrent-Clients finden werden. Die wichtigste davon ist die Implementierung der BitTorrent v2-Protokollspezifikation.
BitTorrent v2 ist eine verbesserte Version der frühen BitTorrent-Standards und enthält mehrere technische Änderungen. Es wurde erstmals 2008 von Bram Cohen vorgeschlagen und im Laufe der Zeit aktualisiert und verbessert. Da die meisten Änderungen unter der Haube stattfinden, wird die breite Öffentlichkeit sie bis auf eine Ausnahme nicht sofort erkennen.
Technisch versierte Leser können den vollständigen Überblick auf der Libtorrent-Seite erhalten, aber der Einfachheit halber konzentrieren wir uns darauf, wie sich die Änderungen auf die Benutzer auswirken werden.
V2 Ströme und getrennte Schwärme
BitTorrent v2 ändert die Art und Weise, wie Torrents “kompiliert” werden, und die neuere Version ist nicht abwärtskompatibel. Ältere Torrents haben einen SHA-1-Hash und die neuen Versionen verwenden SHA-256-Hashing. Das bedeutet, dass es in Zukunft verschiedene Torrent-Versionen geben wird.
Diese verschiedenen (v1 und v2) Torrents werden auch separate Torrentschwärme erzeugen. Personen, die einen v1-Torrent herunterladen, können nichts mit Personen teilen, die einen v2-Torrent herunterladen und umgekehrt. Das klingt zwar wie ein Rückschritt, aber die Realität ist gar nicht so schlecht.
Es gibt die Möglichkeit, so genannte “hybride” Torrents zu erstellen, die sich mit beiden Schwärmen verbinden können. Das sind im Grunde zwei Torrents in einem. Infolgedessen werden sich alle Wildbäche die gleiche Anzahl von Menschen teilen.
“Ein v2-fähiger Client wäre immer noch in der Lage, mit allen Peers zu sprechen, und der Peer-Austausch würde weiterhin zwischen v1- und v2-fähigen Peers funktionieren. Die Hauptauswirkung besteht meiner Meinung nach darin, dass ein v2-kompatibler Peer zweimal für einen Hybrid-Torrent ankündigen würde, einmal für jeden Info-Hash. Sowohl für die Tracker als auch für das DHT”, sagt Norberg.
Im Moment macht es Sinn, dass Verlage, einschließlich Torrent-Sites, am besten hybride Torrents verwenden. Schließlich werden Torrents, die nur die v2-Spezifikation verwenden, Zugang zu einer begrenzten Anzahl von Peers haben. Norberg stimmt dem zu.
“Ich denke, es wäre für Verlage sinnvoll, Hybrid-Torrents zu generieren. Experimentieren Sie zumindest damit, um sicherzustellen, dass es gut funktioniert. Nur v2-Torrents würden im Moment nur für geschlossene Ökosysteme Sinn machen, in denen der Verlag auch alle Clients kontrolliert.
Wichtige Änderungen unter der Haube
Während neue Wildbäche die sichtbarste Veränderung sind, ist sie für Außenstehende nur ein Nebenprodukt wichtiger Veränderungen unter der Haube. Beispielsweise wird durch den Wechsel von SHA-1- zu SHA-256-Hashing eine mögliche Hash-Kollision verhindert, die für Angriffe und Exploits genutzt werden kann.
Norberg erklärt, dass das Risiko dieser Angriffe meist theoretischer Natur ist, aber das kann sich mit der Zeit ändern. Ein Wechsel zu SHA-256 ist daher sicherlich klug. Eine noch aufregendere Änderung, so der Entwickler, ist die Verwendung von “Hash-Bäumen pro Datei” für die Stückhashes.
Merkle-Hash-Baum
Vereinfacht ausgedrückt bedeutet dies, dass alle Dateien in einem Torrent ihre eigene eindeutige Kennung (Hash) haben. Eine Sammlung von 100 Fotos wird also einen eindeutigen Hash für jedes Foto haben. Dies bringt mehrere Vorteile mit sich.
Zum Beispiel können Torrent-Kunden damit schnell überprüfen, ob sie die richtige Datei erhalten. Dies verhindert Verschmutzungsangriffe, die von Außenstehenden dazu benutzt werden können, Torrent-Übertragungen zu verlangsamen.
“Mit den v2-Hash-Bäumen werden korrupte Daten sofort erkannt und der dafür verantwortliche Peer kann abgeschaltet werden. Gegenwärtig ist die Zuweisung korrupter Daten an einen Peer mit einer komplexeren Heuristik verbunden, was bedeutet, dass ein böswilliger Peer etwas mehr Schaden anrichten kann, bevor die Verbindung unterbrochen wird”, sagt Norberg.
Veränderliche Ströme und verschmelzende Schwärme
Darüber hinaus öffnet es die Tür für Gleichgesinnte, dieselbe Datei von mehreren Torrents zu erhalten. Dies ist bereits heute technisch möglich, wie die Funktion “Schwarmzusammenführung” von BiglyBT zeigt, aber mit einzigartigen Datei-Hashes ist es einfacher und zuverlässiger.
“Das zu tun, ist heute schon technisch möglich, aber es generell für beliebige Torrents funktionieren zu lassen, ist sehr kompliziert. Mit ‘pro-Datei-Merkle-Bäumen’ wird die Implementierung erheblich vereinfacht”, bemerkt Norberg.
Das Gleiche gilt für so genannte ‘wandelbare Torrents’, bei denen die Verlage Torrents aktualisieren können, um Dateien hinzuzufügen oder zu entfernen. Mit BitTorrent v2 ist das viel einfacher.
Abschließend sollten wir erwähnen, dass sich nicht nur die .torrent-Dateien ändern werden. Auch die v2- und Hybrid-Magnet-Links sind unterschiedlich. Und sie werden wahrscheinlich schneller mit dem Herunterladen beginnen, da die anfängliche Übertragung aller Stück-Hashes kleiner sein wird. Das macht sich vor allem beim Streaming oder beim Herunterladen großer Archive bemerkbar.
Wie schnell die v2-Torrents funktionieren werden, hängt davon ab, wann die Kunden auf die neueste Libtorrent-Version aktualisieren. Das kann Tage, aber auch mehr als ein Jahr dauern. Wann große Verlage und Torrent-Sites die Änderungen übernehmen werden, ist ebenfalls ungewiss, aber letztendlich ist es der Weg nach vorn für alle.

Libtorrent fügt WebTorrent-Unterstützung hinzu, wodurch die Reichweite des Browser-Torrenting erweitert wird

9. Juli 2020, 22:29 von Ernesto Van der Sar

0

Limettendraht wird bei BitTorrent ernster

4. Juli 2009, 16:38 von Ernesto Van der Sar

56

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.