Poradnik Przedsiębiorcy

Peer-to-peer – definicja, historia powstania i wpływ na rozwój Internetu (cz. 2)

Powracamy do tematyki związanej z siecią peer-to-peer (P2P). W poprzednim artykule przedstawiliśmy jej definicję, a także historię powstania i rozwój. Nie ulega wątpliwości, że prekursorem sieci P2P jest Napster. To właśnie wraz z rozwojem Internetu i pragnieniem swobodnego dostępu do materiałów muzycznych miliony użytkowników pokochało tę formę wymiany plików. Wkrótce stało się jednak jasne, że wraz z komercjalizacją sieci i obowiązującym prawom autorskim nie będzie to łatwe zadanie.

Jak działa peer-to-peer?

Sieci peer-to-peer powstały z myślą o swobodnym przepływie materiałów cyfrowych pomiędzy użytkownikami. Ich obsługa możliwa jest przez zewnętrzne aplikacje, aby uniknąć ryzyka zamknięcia witryn, a tym samym zwolnić z odpowiedzialności ich twórców.

Peer-to-peer działa w ten sposób, że uruchamiając z poziomu komputera niewielki program, urządzenie automatycznie staje się hostem, który oprócz pobierania danych jednocześnie udostępnia część pobranych informacji. W tej formie dotarcie do osób odpowiedzialnych za udostępnianie plików objętych prawem autorskim jest praktycznie niemożliwe. Zdarzają się wprawdzie udane akcje organów ścigania, które chętnie nagłaśniają media, ale są to sytuacje sporadyczne. Sprawa jest tym bardziej dyskusyjna, jeśli weźmiemy pod uwagę fakt, że w danej chwili użytkownik nie pobiera/udostępnia całości materiału, a jedynie jego część – w dodatku w przypadkowej kolejności. Dodając do tego zmiany adresów IP przy każdorazowym logowaniu się do sieci, namierzenie wszystkich internautów udostępniających pliki za pośrednictwem P2P jest nie tyle niewykonalne, co wiąże się z ogromnymi kosztami.

Warto w tym miejscu sprecyzować sposób działania sieci P2P. Jak już wspomniano, każdy komputer łączący się z siecią peer-to-peer staje się hostem, pełniąc równolegle rolę serwera (wysyłanie) oraz klienta (pobieranie). Łącząc się z daną siecią, komputer użytkownika łączy się jednocześnie ze wszystkimi użytkownikami sieci. Ze względu na regularną zmienność struktury węzłów sieci (wynikających ze zmienności oraz lokalizacji hostów) prędkość pobierania i wysyłania w obrębie danej sieci zmienia się bezustannie. Wyróżniamy dwa typy sieci P2P:

  • sieć pozbawiona centralnego serwera – używana z myślą o anonimowej wymianie plików pomiędzy użytkownikami,

  • sieć posiadająca centralny serwer, w którym przechowywane są informacje o użytkownikach – w tym przypadku możliwe jest precyzyjne wyszukanie pliku udostępnianego przez innego hosta.

Ze względu na liczbę aktywnych użytkowników wyróżniamy następujące modele sieci peer-to-peer:

  • model pasywny – użytkownik łączy się z określoną liczbą hostów, natomiast w momencie braku aktywności sieć zatrzymuje proces wymiany plików

  • model aktywny – w przypadku utraty połączenia z wybranym hostem, serwer automatycznie wyszukuje nowe połączenie, utrzymując przy tym stabilność pobierania i wysyłania.

Poniżej prezentujemy najpopularniejsze sieci peer-to-peer, które znacząco wpłynęły na rozwój wymiany plików pomiędzy użytkownikami.

Peer-to-peer - IRC

Należy podkreślić, że nie chodzi tu o popularny kanał IRC służący do komunikacji. Nazwa wzięła się z budowy systemu P2P opartego na IRC. Sieć zbudowana jest z kanałów obsługiwanych przez boty, których zadaniem jest polecanie i wyszukiwanie plików.

Po wpisaniu komendy !find plik_którego_szukamy boty przekazują za pośrednictwem kanału listę (z reguły w prywatnej rozmowie, jeśli na kanale znajduje się więcej użytkowników). Jeśli szukany przez nas plik jest dostępny, to po chwili otrzymujemy stosowne powiadomienie. Następnie wpisujemy komendę !nazwa_bota ścieżka_pliku, po czym jesteśmy ustawiani w kolejce. Jeśli przyjdzie nasza kolej, boty łączą komputer bezpośrednio za pomocą DCC - protokołu umożliwiającego bezpośrednie połączenie pomiędzy dwoma użytkownikami, bez konieczności łączenia z zewnętrznym serwerem. Pobierany plik można w każdej chwili zatrzymać i kontynuować ściąganie w dogodnym momencie. Kanały podzielone są tematycznie, co ułatwia wyszukiwanie określonych materiałów. Zaletą jest łatwość obsługi i stabilna prędkość, choć za pośrednictwem IRC znacznie trudniej jest udostępniać pliki. Dziś nie cieszy się już taką popularnością jak dawniej, ale posiada grupę zwolenników.

Peer-to-peer - Skype

Choć program należący obecnie do Microsoftu uznawany jest za najpopularniejszy na świecie komunikator internetowy, to jego struktura oparta jest na sieci P2P. W początkach rozwoju sieci Skype znacznie częściej niż dziś wykorzystywany był do przesyłania pomiędzy użytkownikami rozmaitych plików. Z czasem zmieniono politykę rozwoju aplikacji, ze względu na słaby i nierzadko zawieszający się transfer, którego nie można było kontynuować. Wymiana materiałów przebiegała bezpośrednio pomiędzy podłączonymi do siebie użytkownikami.

Peer-to-peer - Audiogalaxy

Audiogalaxy to nieistniejąca już sieć peer-to-peer stworzona z myślą o udostępnianiu muzyki. Wyróżniała się interfejsem użytkownika – a właściwie jej brakiem. Wyszukiwanie plików następowało bowiem poprzez stronę internetową. Można było tutaj skorzystać z zaawansowanych wyników wyszukiwania (nazwa utworu, wykonawcy, jakość, najpopularniejsze czy polecane przez innych użytkowników), a także wejść na forum dyskusyjne. Warto dodać, że choć wyszukiwanie plików odbywało się poprzez witrynę internetową, tak już łączenie z dostępnymi źródłami oraz przełączanie na inne w przypadku braku aktywności było procesem niezależnym od użytkownika. Proces ten miał na celu zabezpieczenie prywatności odwiedzających. Ostatecznie w maju 2002 roku po przegranym procesie sądowym z RIAA (zrzeszenie amerykańskich wydawców muzyki) Audiogalaxy zablokowało funkcję przesyłania i wymiany muzyki.

Peer-to-peer - Gnutella

Gnutella to jedna z pierwszych sieci P2P pozbawiona centralnych serwerów. Aby połączyć się z siecią, należy pobrać zewnętrzną aplikację, a następnie wyszukać dowolny host należący do Gnutelli. W przypadku braku miejsc użytkownik przełączany jest na inny adres do momentu odnalezienie wolnego miejsca. Warto dodać, że nawet w przypadku nieudanego połączenia z hostem w pamięci programu zapisana zostaje historia wyszukiwania. Ten rodzaj połączeń ma jedną istotną wadę. W momencie połączenia host otrzymuje listę wszystkich wyników wyszukiwania, co ogranicza odnalezienie wartościowych materiałów. W kolejnych latach Gnutella doczekała się modyfikacji w postaci eDonkey czy Kazaa, jednak z czasem straciła na popularności.

Peer-to-peer - Direct Connect

Sieć P2P pracująca na małych serwerach, ograniczająca się do czata oraz wyszukiwarki. Elementem wyróżniającym jest możliwość ścisłej kontroli użytkowników poprzez wprowadzenie określonych zasad. W zależności od serwera użytkownik w pierwszej kolejności ma obowiązek udostępnić określoną, minimalną ilość zasobów (np. 2 GB plików z muzyką). Dzięki temu Direct Connect uniknęło największego problemu, który do dziś występuje w wielu sieciach P2P. Chodzi tu o tzw. "pijawki" (tzw. leechers), czyli osoby, które korzystają z sieci tylko po to, aby pobierać materiały, niczego nie oferując w zamian. Oprócz tego należy pamiętać o udostępnieniu minimalnej liczby slotów, odpowiadających za liczbę użytkowników mających dostęp do naszych materiałów. W przypadku niedostosowania się do określonych wymagań użytkownik może zostać wyrzucony z kanału (kick), usunięty na czas określony (ban) lub nieokreślony. Do tego dochodzi jeszcze podział na aktywnych (odblokowane porty) i pasywnych (brak możliwości przekierowania portu, sieć kryjąca się za firewallem) użytkowników. Oznacza to, że dwóch odbiorców posiadających łącze pasywne nie może od siebie pobierać plików.

Peer-to-peer - BitTorrent

Najpopularniejsza obecnie sieć P2P na świecie, która umożliwia pobieranie i wysyłanie różnorodnych materiałów (muzyka, filmy, programy, e-booki, gry). Podstawowa funkcja sieci umożliwia kopiowanie jednego pliku przez wielu użytkowników przy jednoczesnym pobieraniu i wysyłaniu jego fragmentów. Wyróżnia się następującymi elementami:

  • Peer – użytkownik udostępniający lub pobierających plik w określonym momencie,

  • Seeder – użytkownik posiadający kompletny plik (100%) i udostępniający go innym użytkownikom,

  • Tracker – serwer zawierający i przekazujący informacje o użytkownikach (adresy IP) korzystających z sieci Torrent,

  • Plik .torrent – plik niezbędny do uruchomienia procesu pobierania; pomimo niewielkiej wagi zawiera informacje o adresie i archiwum trackera, umożliwiając błyskawiczne połączenie,

  • Info hash – 40-znakowa liczba zapisana szesnastkowo, której zadaniem jest identyfikacja trackera wybranych plików,

  • Share ratio – stosunek ilości danych wysłanych do pobranych, ogólnie przyjęta norma wynosi 1, choć w przypadku prywatnych sieci Torrent możliwe są większe wymagania narzucone przez moderatorów,

  • Leecher – jak już wspomniano wcześniej, jest to osoba pobierająca pliki i jednocześnie nie udostępniająca niczego w zamian.

Zachęcamy do zapoznania się z kolejnymi częściami cyklu:

Peer-to-peer – definicja, historia powstania i wpływ na rozwój Internetu (cz. 1)