Sdílení souborů na Internetu a sítě P2P - základní technologický přehled

25. 11. 2009

Sdílet

Jedním z hlavních důvodů pro využívání Internetu bylo vždy stahování či výměna souborů. Platí to jak pro e-mailové služby, chat (IRC) a newsgroups (Usenet), tak pro FTP přenosy, tak i pro web či pro dnes již historický gopher.

Sdílení souborů na Internetu a sítě P2P - základní technologický přehled


Během posledních 10 let v oblasti stahování souborů z internetu velmi vzrostla úloha tzv. výměnných sítí typu peer-to-peer, z nichž je v poslední době asi nejpopulárnější síť s protokolem Bittorrent, která má řádově desítky miliónů uživatelů a desítky klientů (μTorrent, Vuze/Azureus). Fenoménem posledních 5 let je pak i rostoucí obliba veřejných komerčních webových serverů pro sdílení souborů (filehosting), z nichž nejznámější je patrně Rapidshare.com, ale v širším smyslu se sem dají zařadit i systémy, které řeší spolupráci více lidí na jednom dokumentu či synchronizaci souborů (Google Docs resp. Humyo.cz).

Sítě peer-to-peer

InternetPojem sítě peer-to-peer (P2P, „rovný s rovným“) je velmi obecný. Znamená vlastně jakoukoliv síť, kde probíhá nějaká symetrická komunikace či interakce mezi počítači (každý z nich umí iniciovat či naopak na základě vnější iniciace/požadavku vykonat potřebné transakce a operace). Nelze tedy její uzly funkčně rozlišit na dva rozdílné klasické druhy - klienty a servery. V důsledku toho je potlačena klasická centrální úloha serverů a vzniká jeden hybridní, univerzální druh počítačového uzlu – tzv. servent (často se i zde ze setrvačnosti používá název klient). Decentralizace Internetu, která začala již kdysi dávno v době Usenetu (1979) a Fidonetu (1984, systémy BBS), je tedy pomocí sítí P2P dovedena opravdu do důsledků. Rovnocennost všech počítačů v síti však neznamená, že je tato síť ve všech uzlech homogenní co do kvantitativních parametrů jako jsou např. rychlost připojení, objem sdílených dat, lokální konfigurace, rychlost procesingu apod.

Označení P2P se však v posledních letech stalo téměř mediálním synonymem právě pro internetové výměnné sítě (tj. systémy pro sdílení souborů), i když na tomto principu může fungovat i mnoho jiných typů aplikací – třeba aplikace pro distribuované výpočty, šíření novinek a zpráv, hlasová komunikace a chat (IRC, Skype, Qnext, DKMessenger) či P2P vysílání internetových rádií a TV stanic. Mediální stereotypy také v podstatě ztotožnily sítě P2P (pro sdílení souborů) s pirátskou činností. Aniž bychom se snažili postihnout, do jaké míry tomu tak skutečně je, je třeba poznamenat, že např. síť Bittorrent je s výhodou využívána i k legálnímu šíření velmi velkých programů a souborů (linuxové distribuce) a existují též torrentové katalogy a trackery, které evidují a pomáhají šířit jen legální (např. filmový) materiál charakteru public domain (http://www.legittorrents.info/, http://beta.legaltorrents.com/, http://www.publicdomaintorrents.com/, http://www.jamendo.com/en/), tj. ten, který je zcela legálně zdarma.

Společným znakem výměnných sítí P2P je vlastně jen to, že v jejich rámci lze sdílet soubory či textové zprávy uložené na kterémkoliv počítači, připojeném k Internetu (a samozřejmě vybaveném běžícím klientem/serventem dotyčné sítě).  Jinak se sítě technicky značně liší, jak co do reálného stupně své funkční symetrie resp. homogenity a (de)centralizace, tak co do stupně relativní "anonymity". (Dokonalá anonymita je na Internetu samozřejmě nemožná.) Podle těchto znaků se někdy zhruba rozlišují jejich různé generace.

Generace sítí P2P

První generací byly sítě, které měly uloženy seznamy a adresy souborů i počítačů na speciálním centrálním serveru či jejich větším počtu (Napster, OpenNap, chat – IRC (již od r. 1988)/IRC@find, Soulseek – ten poslední dodnes funguje a je používán relativně menší komunitou fanoušků hudby). Evolučně nejstarší výměnné P2P sítě tedy používají pro část svých činností centralizovanou strukturu typu klient-server. Zejména jde o připojení k síti a o vyhledávání zdrojů (souborů) na ní. Pro rutinní komunikaci a sdílení mezi koncovými klienty už serverů není třeba ani zde, to probíhá ryze formou peer-to-peer.

Sítě druhé generace jsou ty, které dnes nejčastěji potkáváme. Zde chybí centrální servery, ale ve skutečnosti nejsou tyto sítě drtivou většinou založeny jen na úplně rovnocenných a stejných serventech-uzlech, tj. každý počítač není v síti kvalitativně úplně nahraditelný kterýmkoliv jiným (výjimkou jsou jen některé, např. síť s protokolem Gnutella či Freenet).  V praxi se z dokonalé symetrie v rámci principu peer-to-peer často slevuje, a to kvůli zefektivnění a větší spolehlivosti hledání či identifikace souborů a zrychlení jejich stahování.
Data
Dnešní systémy P2P se proto často vyznačují "lokálně-centralistickými" či speciálně delegovanými/dedikovanými prvky, jako jsou různé "superuzly" (síť FastTrack s klienty jako Kazaa), huby (DirectConnect, DC++) nebo hledače a indexátory (OpenFT), kterými se mohou (volitelně) stát všechny jednotlivé počítače.  Tyto speciální „naduzly“ jsou důležité pro rychlé napojení a katalogizaci všech ostatních, řadových počítačů-uzlů a jejich zdrojů a pro předcházení výskytu „úzkých hrdel“ v tocích dat. Dalšími "asymetrickými" prvky bývají specializované úložné servery, poskytující digitální hashovací otisky jednotlivých souborů (identifikační signatury, např. torrenty-BitTorrent, magnet linky – zejména Gnutella, linky ed2k – eDonkey/Overnet), resp. servery, pomáhající koordinovat zrychlené "rojové" stahování jednotlivých parciálních datových segmentů mezi počítači (trackery).

Přesto novější sítě používají strukturu typu peer-to-peer víceméně pro všechny účely a úkoly a proto se jim také říká "skutečné sítě P2P". Skutečné sítě typu peer-to-peer mají navíc tu příjemnou vlastnost, že jejich celková přenosová či komunikační kapacita pro průměrného uživatele s růstem počtu uživatelů/uzlů stoupá, nikoliv klesá, jako u centralizovaných systémů. To je navíc prohloubeno technologiemi pro segmentové stahování.

Druhá generace je také typická svými víceprotokolovými klienty, které umějí vyhledávat a stahovat soubory v rámci více sítí (protokolů), někdy i najednou. Jde např. o klienty MLDonkey, KCeasy a Shareaza. Speciální otázkou jsou tzv. překryvné protokoly, vytvářející jakousi „nadsíť“ v rámci dané sítě (Overnet).

Vynořující se třetí generace sítí a příslušných klientů zavádí či posiluje prvky šifrování (maskování datového provozu, to je volitelně obsaženo už u sítě BitTorrent) a anonymity či pseudonymity, tj. utajení IP adres počítačů-uzlů (šifrování vzájemného routingu či linkování). Také se snaží o ještě větší decentralizaci, než je obvyklá dnes (Freenet, GNUnet). Na některé tyto sítě se nedostaneme bez schválení ostatními uživateli (sítě typu friend-to-friend - ANts P2P, WASTE, MUTE) Jiné se blíží svým charakterem téměř tzv. virtuálním privátním sítím (VPN), např. I2P, na nichž je možno provozovat veškeré internetové činnosti důvěrně. Někdy tyto sítě nezahrnují jen prosté sdílení souborů, ale kladou důraz i na chráněný prostor pro komunikaci a publikaci dokumentů bez možnosti cenzurních zásahů, čímž se stávají decentralizovaným, chráněným a privátním groupwarem. Záporem těchto systémů bývá menší uživatelský komfort a relativní pomalost.

PC
Zmíněná internetová rádia a TV vysílání (souborně internetové streamy) typu peer-to-peer se někdy řadí do P2P aplikací čtvrté generace (TVUPlayer, PPLive, PeerCast, PPStream). Jistá část systémů P2P-TV je založena na bázi protokolu BitTorent nebo na protokolech podobných (zde však často jde o televizi "on-demand", ne o streaming v reálném čase), avšak ty hlavní používají systémy vlastní, odlišné. Celkově se takto daří vysílat desítky až stovky TV kanálů (často sportovních) a to s poměrně značnou účinností (danou tím, že každý přijímající uzel může být současně i retranslačním vysílačem pro uzly další).

Filehosting

Hostování souborů na (veřejných a komerčních) webových serverech je naproti tomu službou spíše technologicky „zastaralou“ a konzervativní, přesto při dnešních rychlostech připojení velmi účinnou. V této oblasti existuje nabídka snad přes 100 důležitých serverů zahraničních a možná až 10 serverů českých. Podmínky a systémy jejich užívání na straně downloadu i uploadu se individuálně různí, mají však často dva různé downloadovací módy – kapacitně či časově omezené stahování zdarma (placeno reklamou a omezeno přes OCR/captcha systémy, dočasné linky a časové intervaly) a „prémiové“, daleko méně omezené či prakticky neomezené stahování za jistý uživatelský poplatek. Uveďme si zde jistý zkrácený výběr těchto serverů - bez doménových přípon, které si jistě snadno doplníte v případě zájmu sami.

Zahraniční:

Rapidshare, depositfiles, filefactory, megaupload, mediafire, sendspace, uploading, zshare, ifolder, hotfile, icefile, letitbit, filefront, ifile, easy-share.

České:

bitcoin školení listopad 24

Edisk, uloz.to, czshare, leteckaposta, quickshare, bagruj, nahraj.

V této oblasti se vyskytlo několik programů, které stahování z těchto serverů mohou do značné míry automatizovat a tedy ulehčit – např. Universal Share Downloader (USD) nebo RapGet.

Další zajímavé odkazy:

  • www.filesharing.eu Souhrn o sdílení souborů přes sítě P2P
  • www.slyck.com Novinky a portál Slyck
  • www.zeropaid.com Novinky a portál Zeropaid
  • www.filesharingz.com Novinky
  • www.p2pnet.net Novinky
  • www.p2pforums.com Diskusní a novinkový portál
  • www.infoanarchy.org "Decentralizační" P2P wiki-portál
  • www.openp2p.com O´Reillyho stránka , věnovaná oblasti P2P
  • www.planetpeer.de Portál pro anonymní sítě nejen pro sdílení souborů (MUTE, I2P, Freenet apod.)
  • www.fileshareworld.com Rozcestník k výměnným systémům a P2P klientům
  • www.ftc.gov/bcp/workshops/filesharing Názory americké Federal Trade Commission na sdílení souborů
  • http://cs.wikipedia.org/wiki/Peer-to-peer České heslo na Wikipedii
  • http://p2ptv.yourglobaltv.com/ a http://www.tvavailable.com/P2P_TV/   Přehledy nejpoužívanějších klientů P2P TV
  • http://en.wikipedia.org/wiki/P2PTV Základní článek o P2P TV
  • http://www.yourglobaltv.com/p2pchannels/ Hlavní sportovní kanály P2P televize
  • http://en.wikipedia.org/wiki/File_hosting_service Hostingové servery obecně
  • http://www.dimonius.ru/dusd.php - Universal Share Downloader (USD) - automatický stahovač
  • http://www.rapget.com/en/ RapGet – něco jako předešlý USD.