Jak funguje BitTorrent?
BitTorrent podle studie z roku 2012 spotřebuje 12% celkové internetové dopravy v Severní Americe a 36% celkové dopravy v oblasti Asie a Tichomoří. Je to tak populární, že nový systém upozornění na autorská práva je zaměřen pouze na provoz BitTorrentu.
BitTorrent může být populárně znám jako metoda pirátství, ale není to jen pro piráty. Je to užitečný decentralizovaný protokol peer-to-peer s významnými výhodami oproti jiným protokolům v mnoha situacích.
Tento článek vám pomůže pochopit, jak funguje protokol BitTorrent a proč to není jen nástroj pirátství. Již jsme vysvětlili, jak začít s BitTorrentem.
Jak funguje BitTorrent
Když stáhnete webovou stránku, jako je tato, počítač se připojí k web serveru a stáhne data přímo z tohoto serveru. Každý počítač, který stahuje data, jej stáhne z centrálního serveru webové stránky. To je, jak velká část provozu na webu funguje.
BitTorrent je protokol peer-to-peer, což znamená, že počítače v BitTorrent "swarm" (skupina počítačů, které stahují a nahrávají stejný torrent) přenášejí data mezi sebou bez nutnosti centrálního serveru.
Tradičně se počítač připojí rotujícímu rotu BitTorrent tím, že načte soubor .torrent do klienta BitTorrent. Klient BitTorrent kontaktuje "sledovač" určený v souboru .torrent. Sledovač je speciální server, který sleduje připojené počítače. Tracker sdílí jejich adresy IP s ostatními klienty BitTorrent v roji, což jim umožňuje vzájemné propojení.
Po připojení BitTorrent klient stahuje bitů souborů v torrentu v malých kusech, stahuje všechny data, které může získat. Jakmile má klient BitTorrent nějaká data, může začít s nahráváním těchto dat jiným klientům BitTorrent v roji. Tímto způsobem si každý, kdo stáhne torrent, nahrává stejný torrent. To urychluje rychlost stahování všech. Pokud 10 000 lidí stahuje stejný soubor, nedává příliš velký důraz na centrální server. Místo toho, každý downloader přispívá šířku pásma uploadu k jiným downloaderům, což zajistí, že torrent zůstane rychlý.
Důležité je, že klienti BitTorrent nikdy skutečně stahovat soubory ze samotného sledovacího zařízení. Tracker se podílí na torrentu pouze sledováním klientů BitTorrent připojených k rojům, nikoliv vlastním stahováním nebo nahráváním dat.
Leechers a Seeders
Uživatelé stahující z rohu BitTorrentu jsou obvykle označováni jako "leechers" nebo "peers". Uživatelé, kteří zůstávají připojeni k hromadě BitTorrentu i poté, co si stáhli celý soubor a přispěli tak ke zvýšení šířky pásma, takže ostatní mohou pokračovat ve stahování souboru, označují se jako "secí stroje". Pro torrent, který má být stažitelný, musí být nejprve připojen jeden rodič, který má kompletní kopii všech souborů v torrentu, aby ostatní uživatelé mohli stáhnout data. Pokud torrent nemá žádné semeno, nebude možné jej stáhnout - žádný připojený uživatel nemá úplný soubor.
Klienti BitTorrent odměňují ostatní klienty, kteří odesílají a upřednostňují posílat data klientům, kteří přispívají k větší šířce pásma, místo aby posílali data klientům, kteří nahrávají velmi pomalou rychlostí. To urychluje časy stahování rolí jako celku a odměňuje uživatele, kteří přispívají k větší šířce pásma.
Torrent Tracker a torrenty Trackerless
V poslední době umožňuje decentralizovaný torrentový systém "trackerless" klientům BitTorrent vzájemně komunikovat bez potřeby centrálních serverů. Klienti BitTorrent používají pro tento účel distribuovanou technologii tabulky hash (DHT), přičemž každý klient BitTorrent funguje jako uzel DHT. Když přidáte torrent pomocí "magnetového propojení", uzel DHT bude kontaktovat blízké uzly a ty ostatní uzly budou kontaktovat jiné uzly, dokud nenajdou informace o torrentu.
Jak specifikace protokolu DHT říká: "V podstatě se každé peerové stává sledovatelem." To znamená, že klienti BitTorrent již nepotřebují centrální server spravující roj. Místo toho se BitTorrent stává plně decentralizovaným systémem přenosu souborů peer-to-peer.
DHT může také pracovat vedle tradičních sledovačů. Například torrent může používat jak DHT, tak tradiční tracker, který zajistí redundanci v případě, že tracker selže.
BitTorrent není jen pro pirátství
BitTorrent není synonymem pro pirátství. Blizzard používá vlastní BitTorrent klienta k distribuci aktualizací svých her včetně World of Warcraft, StarCraft II a Diablo 3. Pomáhá to urychlit stahování pro každého tím, že umožňuje lidem sdílet jejich šířku pásma při nahrávání s ostatními a využívat nepoužívanou šířku pásma k rychlejšímu stažení každý. Samozřejmě, šetří peníze Blizzard na své účty šířky pásma.
Lidé mohou pomocí BitTorrentu distribuovat velké soubory významnému počtu lidí, aniž by platili za šířku pásma webového hostingu. Bezplatný film, hudební album nebo hra by mohla být hostována na BitTorrentu, což umožňuje snadnou a bezplatnou distribuci, kde lidé, kteří si soubor stahují, také pomáhají distribuovat. WikiLeaks distribuoval data prostřednictvím BitTorrentu, přičemž z jejich serverů vybíral výrazné zatížení. Distribuce systému Linux používají nástroj BitTorrent k distribuci obrazů disků ISO.
BitTorrent, Inc. - společnost odpovědná za vývoj protokolu BitTorrent, který také zakoupil a vyvinul oblíbený torrentový klient μTorrent - vyvíjí celou řadu aplikací, které využívají protokol BitTorrent pro nové věci prostřednictvím projektu BitTorrent Labs. Experimenty Labs zahrnují aplikaci pro synchronizaci, která bezpečně synchronizuje soubory mezi několika počítači přenosem souborů přímo přes BitTorrent a experimentem BitTorrent Live, který využívá protokol BitTorrent k vysílání live, streamování videa a využívání BitTorrentu pro přenos živého videa na velké počet lidí bez současných požadavků na šířku pásma.
BitTorrent může být v současné době využíván především pro pirátství, jelikož jeho decentralizovaná a rovnocenná povaha jsou přímou reakcí na snahy o potlačování sítí Napster a dalších sítí typu peer-to-peer s centrálními body selhání. Nicméně, BitTorrent je nástroj s legitimní použití v současnosti - a mnoho dalších možných použití v budoucnu.
Image Credit: Header Image podle diagramů jacobian, central server a peer-to-peer sítě od Mauro Bieg na Wikipedii