Nasze logo
YahooAltaVistaLycos
Google Netsprint  Hotbot


Szukaj terminu:
Zaczyna się od Zawiera Dokładny wyraz
 
Po wpisaniu nazwy lub pierwszej litery należy wybrać
rodzaj kategorii w której powinien znajdować się szukany plik.
Wpisz wyszukiwane słowo:
Zapraszamy na blogi Chat Forum Słownik Download Filmy Mobil Radio Gry Ekologia Lotnictwo
Na
PromujNewsLetterPartnerzyCzaty/GościePorównania-TestyTłumaczeniaTopXmlHtml4cmsBlogMapaSymantec
skróty
AntySpywareE-mail programySzukaj w SieciProgramowanieBadania InternetoweCSSJava DownloadKatalog DniaekoEnergia
Reklama i pozycjonowanieCMSy i dla webmasterówPodręcznik PHPAccessibility standardCentrum RSSFirewall'eMetaSearchCzasSport
MotoryzacjaWirusy Top RankingStandaryzacjaTweak-Windows-VistaSprzętAntywirusyHacking i BezpieczeństwoBanki/FinanseMedia

Partnerzy:
allegro symantec netsprint
stat mks_vir2k7  
  |   Blogi   |   Konkursy   |   Sondy   |   Blogsfera   |   Avatary Emotikony Ikony   |   Filmy   |  
 

Apollon a BitTorrent Email
31.10.2006.

 KaZaA czy BitTorrent w Linuksie


Najszybszym sposobem na rozpowszechnianie plików w Internecie jest wykorzystanie BitTorrenta, jest to jednocześnie najpopularniejszy protokół wykorzystywany w dzisiejszym Internecie. 

 Część I


Grafika

 

Najszybszym sposobem na rozpowszechnianie plików w Internecie jest wykorzystanie BitTorrenta, jest to jednocześnie najpopularniejszy protokół wykorzystywany w dzisiejszym Internecie. Idealnie nadaje się do udostępniania plików o dużej objętości, jak na przykład obrazy dystrybucji Linuksa. Mam jednak wielu znajomych, którzy do wymiany plików używają programu Kazaa. Panuje przekonanie, że protokół FastTrack używany przez program Kazaa wykorzystywany jest jedynie przez użytkowników systemu z Redmond. Faktycznie nie jest on popularny na innych platformach systemowych, choć ma pewną przewagę nad BitTorrentem: znacznie lepiej nadaje się do udostępniania małych plików. Według niektórych jest też wygodniejszy w użyciu.

 

Bittor

 


Mechanizmy działania obu protokołów są różne. FastTrack to protoplasta sieci na której opiera się Skype. Protokół zyskał popularność w czasie kiedy sieć Napster chyliła się już ku upadkowi. W błędzie będą jednak Ci, którzy twierdzą, że to dzięki temu Kazaa stała się tak popularna. Zarówno aplikacja jak i protokół w oparciu o który działała niosły ze sobą przynajmniej kilka innowacji, które wprowadziły nową jakość w świat sieci P2P. Można do nich zaliczyć możliwość wznawiania przerwanych transferów, czy jednoczesne pobieranie wielu segmentów tego samego pliku z różnych źródeł. Sieć nie posiada dedykowanych serwerów, na których opierał się Napster – to dlatego zaliczamy ją do drugiej generacji sieci P2P. Nie oznacza to jednak, że protokół FastTrack nie potrzebuje komputerów pełniących rolę serwerów indeksujących i przeszukujących sieć. Oprogramowanie klienckie posiada wbudowane funkcje umożliwiające przestawienie aplikacji w tryb Supernode (węzła). Uruchamianie tego trybu zalecane jest dla silnych komputerów z dobrym łączem, które tymczasowo pełnić będą rolę serwerów dla innych, słabszych maszyn.

 

Bittor

 

Z punktu widzenia użytkownika wszystko jest proste: W celu połączenia się do sieci, w aplikacji zapisana jest lista adresów IP maszyn działających w trybie Supernode. kiedy klient połączy się z jedną z nich, żąda pełnej listy innych węzłów. Lista taka wykorzystana będzie w celu nawiązywania przyszłych połączeń. Następnie aplikacja kliencka wybiera jeden z węzłów i wysyła do niego listę wszystkich plików jakie chce dzielić z innymi użytkownikami, przy okazji wysyłając także żądania. Komputer w trybie Supernode komunikuje się z innymi węzłami w celu wypełnienia żądań. Takim żądaniem najczęściej jest fraza służąca do odszukania pliku, który użytkownik chce pobrać. Kiedy węzeł odnajdzie szukany plik, przekazuje informacje o komputerze, który plik współdzieli. To z tym komputerem aplikacja kliencka łączy się bezpośrednio w celu rozpoczęcia transferu. Transfer realizowany jest przez protokół HTTP.

 

Bittor4

 


W ciekawy sposób rozwiązano ściąganie plików jednocześnie z wielu źródeł. Twórcy protokołu opracowali algorytm haszujący, obliczający sumy kontrolne w bardzo krótkim czasie dla pobieranych plików. Dodatkowo pozwala ona na pobranie nieuszkodzonego pliku nawet jeśli znaczna jego część uległa zniszczeniu. Ta jedna z najsilniejszych stron protokołu okazała się być jego piętą achillesową, ponieważ zarówno organizacje antypirackie, jak i inne środowiska opracowały metody fałszowania plików i wprowadzania ich niezauważenie do sieci.

Kolejną ciekawą cechą protokołu FastTrack jest zaimplementowane szyfrowanie przesyłanych danych. Co prawda autorzy nie udostępnili dokumentacji techniki szyfrowania użytej oryginalnie z programem Kazaa, ale programiści opensource bez większych problemów rozpracowali te algorytmy przy użyciu wstecznej inżynierii. Rozpracowana część kodu odnosi się do komunikacji między klientem i węzłem, ale nie między dwoma węzłami. Obecnie więc sytuacja jest o tyle ciekawa, że użytkownicy sieci FastTrack, korzystający z niej pod Linuksem, są tak naprawdę uzależnieni od użytkowników oryginalnych aplikacji wykorzystujących ten protokół, dostępnych dla Windows. Myślę jednak, że spowodowane jest to brakiem potrzeby dalszego hackowania protokołu. Jeśli sieć nadal cieszyć się będzie dużą popularnością, bardzo prawdopodobne, że i ten stan rzeczy ulegnie zmianie.

BitTorrent


Oprócz faktu, że FastTrack niespecjalnie nadaje się do udostępniania dużych plików, ma jeszcze jedną, zasadniczą wadę, która wiąże się z filozofią dzielenia plików w Internecie. Dzielenie, a w zasadzie współdzielenie nie może ograniczać się jedynie do brania. Jeśli poświęcam swoje łącze i pracę komputera by udostępnić innym obrazy płyt z Debianem czy innym Linuksem, robię to po to, by inni mogli z tego skorzystać. Dlatego oczekuję od ludzi, którzy już ściągną do siebie moje pliki, by też udostępnili je innym. W przypadku Fast Tracka użytkownicy bardzo często zaraz po ściągnięciu pliku, przenoszą go w niedostępne innym miejsce, bądź archiwizują plik na płytach i kasują z dysku twardego. W oczywisty sposób godzi to sieć z której korzystają, bo nie pozwala to innym lub przynajmniej znacznie utrudnia ściąganie plików. Protokół też w żaden sposób nie kontroluje ani nie wynagradza/piętnuje dobrych/złych zachowań (stara się to robić, ale kontrola została zaimplementowana w sposób, który potrafi obejść małe dziecko – wystarczy, że nie skorzysta z oryginalnego klienta). Dodatkowo udostępniać można pliki tylko w całości ściągnięte. To właśnie w tym momencie fizjonomia BitTorrenta pokazuje swoje największe wdzięki. Tutaj nie czekamy aż pliki zostaną ściągnięte do końca, by móc je udostępniać. Udostępniamy je tuż po rozpoczęciu pobierania, a pobieramy także od osób, które nie pobrały ich do końca. W naturalny sposób wiąże się to z tym, że BitTorrent zaprojektowany został do współdzielenia dużych plików. To dlatego na próżno szukać tu pojedynczych obrazów, plików muzycznych czy tekstowych. Trzeba raczej wyszukiwać całe ich zbiory, a dopiero po ich odnalezieniu można decydować jaką ich część chcemy ściągnąć. A i to tylko w przypadku gdy użytkownik, który zdecydował się je udostępnić nie spakował ich w jedno, wielkie archiwum.

Jak to wygląda od środka? Oryginalnie klient BitTorrenta był zwykłym skryptem

... napisanym w Pythonie. Obecnie kod źródłowy udostępniony jest na licencji Open Source i choć nie jest to GPL (stworzono specjalnie zmodyfikowaną licencję Jabbera - BitTorrent Open Source License), bardzo pozytywnie, szczególnie w świetle protokołu FastTrack, odbija się to na implementacji standardu w aplikacjach dla Linuksa i innych platform systemowych. Programy klienckie BitTorrenta implementują ten protokół i są w stanie przygotowywać, żądać i transferować dowolne pliki poprzez sieć. W surowej formie Bittorrenta, nieco trudniejsze (mniej wygodne) w porównaniu z klientami FastTrack jest pobieranie plików. Wymaga bowiem wejścia na stronę zawierającą pliki torrent, ściągnięciu wybranego pliku torrent, otwarcie go w aplikacji i rozpoczęcie pobierania. Plik torrent zawiera informacje o sumie kontrolnej ściąganego pliku, serwerze z którym powinien się połączyć program kliencki (trackerze) oraz o udostępnianych plikach. Udostępnianie prywatnych plików wymaga stworzenia plików torrent własnoręcznie i choć te operacje mogą być w różnym stopniu automatyzowane, to jednak bezsprzecznie nie ma tu takiej wygody jaka charakteryzuje FastTrack. W każdym wypadku należy odwiedzić stronę www na której zamieszczony zostanie plik torrent. Dopiero kiedy taki plik zyskamy, nasz klient będzie mógł połączyć się do trackera, czyli komputera który dostarczy listę innych klientów ściągających i udostępniających dany plik.

 

Protokół BitTorrenta


Protokół BitTorrenta dzieli pliki na wiele małych części, zwykle od 256 kB do 4096kB (dla pliku o objętości 4,37GB). Każda cząstka sprawdzana jest przez specjalny algorytm hashujący, by wyeliminować ewentualne błędy. Każdy klient posiada mechanizmy optymalizujące prędkości pobierania i wysyłania plików, na przykład za pomocą schematów. Cząstki ściągane są w kolejności losowej, dzięki temu zwiększa się szanse wymiany danych między dwoma użytkownikami pobierającymi jednocześnie ten sam plik. Efektywność wymiany danych między użytkownikami zależy w dużej mierze od polityki poszczególnych klientów. Najczęściej jest tak, że klient będzie wysyłał dane w pierwszej kolejności do tych, którzy dzielą się z innymi. Jednak zbyt restrykcyjna polityka w tym zakresie potrafi więcej popsuć niż poprawić, ponieważ może się zdarzyć, że użytkownik, który dopiero co dołączył i nie ma czego udostępniać, nie jest w stanie otrzymać żadnych danych. Ilustracją takie sytuacji może być przypadek w którym dwaj użytkownicy z dobrym łączem nie dzielą się danymi, ponieważ żaden z nich nie chce przejąć inicjatywy i wykonać „pierwszego kroku”. Ten problem rozwiązano w oficjalnym kliencie BitTorrenta w ten sposób, że pewna część pasma rezerwowana jest na wysyłanie danych do losowych użytkowników. Mechanizm nazwano optimistic unchoking.

Piotr Kangurski


Autor Współpracuje z Wydawcą  Linux +

 
« poprzedni artykuł   następny artykuł »

Konkursy

Przypakowani mężczyźni Siłownia

... ale chyba nie do końca tacy męscy
Niedźwiedź vs człowiek niedźwiedz

Karate niedźwiedź
Sex tutorial sex tutorial

film instruktażowy jak używać prezerwatywy


Jedenastoletni kickboxer jedynastoletni kickbokser

To dopiero zawodnik
breakdance by małolat dzicko tanczy braekdance

Dzieciak będzie kiedyś niezły
Rosyjska szkoła Rosyjska szkoła

Zobacz jak niebezpiecznie może być w szkole.
Niebezpieczne wyciskanie Wysickanie

Ten sportowiec nie miał profesjonalnej asekuracji
Niesforna animacja Niesforna animacja

Uważajcie co na to jak nazywacie swoją animacje.
Tajski boks

... w wykonaniu dzieci
Polonez z FSO Polonez

Poloneza za 1.4 miliona
NIEMOŻLIWE   :P
Małe rozrabiaki kotki

Słodki instynkt zabujcy
Reklama Orange Orenge

Coś czego kobieta nie zrobi publicznie :P
Super glina Super glina

Nieźle operuje swoim gnatem.
Maciej Stuhr - tłumacz Maciej Stuhr

Zobaczcie jak wygląda praca tłumacza
Śmieszne karate Śmieszne karate

Prawie jak mistrz...
...prawie robi wielką różnice

 


POLECAMY:

Pobierz przeglądarkę: Aktualną wersję Java Inne przydatne programy:

opera
 
GetJava Download Button

PRZYJACIELE:

Bo nie jesteśmy sami w internecie...

hosting

Wspieramy i korzystamy
  |   redakcja   |   partnerzy   |   polityka prywatności   |   zasady korzystania   |   reklama   |   pomoc   |  
© Dzień e-mail - Internauty 2005-08.