W najnowszej wersji eMule został zaimplementowany zupełnie nowy rodzaj sieci, tzw. Kad. Przetestowaliśmy jak w praktyce sprawdzi się ta technologia.
Oczywiście, pod pojęciem sieci nie kryje się tutaj żadna fizyczna struktura łącząca użytkowników (np. kable), ale schemat zależności określających ich zasady współpracy. Zarówno Kad, jak i eD2k są odpowiedzialne za organizację wyszukiwania zasobów i wskazywanie ich źródeł. Pobieranie danych przebiega później identycznie, bez względu na to, jak znaleźliśmy dany plik. Mechanizm Kada jest oparty na rozwiązaniach rozproszonych i globalnych – wyeliminowano serwery centralne, które mogą ograniczać działanie sieci na większą skalę. Dzięki temu eMule nie podzieli losu Napstera, gdzie zamknięcie centralnego serwera unieruchomiło całą sieć.
W tradycyjnej sieci eD2k przy każdej próbie połączenia, serwer zanim nas “wpuści”, decyduje o naszych prawach, nadając nam status ID. Klient eMule przekazuje serwerowi listę naszych plików. Ich nazwy oraz identyfikatory dołączane są do centralnej bazy danych, z której korzystają wszyscy użytkownicy podczas poszukiwań. Późniejsze przeczesywanie tych informacji może mieć charakter miejscowy lub globalny. W pierwszej kolejności eMule wysyła do serwera miejscowego identyfikator pliku, którego poszukujemy, z prośbą o wskazanie źródła. W przypadku wyszukiwania globalnego w następnym kroku pytanie to jest kierowane do pozostałych serwerów. Po jego zadaniu generowane są odpowiedzi pozwalające klientowi podjąć decyzję co do wyboru źródeł i dopiero wtedy następuje wymiana danych.
eMule 0.42e |
Wymagania: Windows 9x/Me/NT/XP/2000, ok. 9 MB na dysku |
+ skuteczne wyszukiwanie danych, kontrola integralności przesyłanych danych, przejrzysty interfejs programu – niezbyt wygodna wbudowana przeglądarka plików |
Licencja: Freeware www.emule-project.net |
W zaprezentowanym podejściu całość powyższych operacji zachodzi pomiędzy ograniczoną liczbą serwerów centralnych a stale wzrastającą bazą użytkowników. Nie trzeba zbyt bujnej wyobraźni, by przewidzieć skutki takich zależności. Z czasem serwery centralne mogą być zbyt obciążone i efektywność całego systemu dramatycznie spadnie. Dzięki dodaniu obsługi sieci Kad w kliencie “eMuła” najprawdopodobniej uda się uniknąć tego czarnego scenariusza.
W najnowszym eMule 0.42e, jeśli chcemy skorzystać z Kada, musimy najpierw uaktywnić stosowną opcję na zakładce Parametry Łącza w panelu z Ustawieniami programu. Po restarcie aplikacji zauważymy nową ikonkę Kad. W celu połączenia się z tą siecią niezbędna będzie znajomość adresu IP oraz portu chociaż jednego z dostępnych klientów. Żeby uzyskać odpowiednie numery IP, w praktyce wystarczy skorzystać z przycisku Bootstrap na zakładce Kad. Po połączeniu z innymi klientami Kada podejmowana jest po ich stronie decyzja dotycząca naszego statusu w sieci. Proces ten jest bardzo podobny do określania poziomu ID w przypadku serwera centralnego i także polega na sprawdzeniu dostępu do naszych zasobów. Jeżeli otrzymamy status Open, możemy w pełni korzystać z danych udostępnianych przez pozostałych klientów. Jeśli zostaniemy zidentyfikowani jako Firewalled, nasze prawa w sieci zostaną częściowo ograniczone.
Funkcje serwerów centralnych przejmują tu poszczególne klienty – każdy identyfikowany unikatowym numerem. Odpowiedzialność za działanie systemu jest więc rozłożona pomiędzy użytkowników korzystających z sieci Kad. Każdy klient pełni funkcje małego serwera, gromadząc część informacji potrzebnych do prawidłowego działania sieci. Proces poszukiwania plików może trwać nieco dłużej niż w przypadku sieci eD2k. Z drugiej jednak strony przeszukiwanie zasobów z wykorzystaniem Kada zawsze odbywa się globalnie.
Takie zachowanie zauważyliśmy zresztą w czasie naszych testów z wykorzystaniem najnowszej wersji klienta – eMule 0.42e. Gdy porównaliśmy skuteczność wyszukiwania plików, okazało się, że na razie nieco więcej odpowiedzi dostarczają klasyczne centralne serwery. Różnica ta powinna jednak niedługo się zmienić na korzyść nowego rozwiązania – szczególnie gdy Kad stanie się domyślną siecią, z którą łączy się aplikacja. Po uzyskaniu z nowej sieci informacji dotyczących źródeł sam transfer pliku przebiega tak jak z wykorzystaniem mechanizmu eD2k. Dlatego w praktyce nie zauważyliśmy zmian w transferach przy korzystaniu z sieci Kad.
Zaimplementowany w eMule 0.42e nowy rodzaj sieci, pomimo że wciąż jest na dość wczesnym etapie rozwoju, już teraz doskonale spełnia swoje zadania.