Ogólny zarys ed2k
Co oznacza tajemnicza nazwa ed2k? Ed2k jest protokołem sieciowym w rodzaju p2p. Klientem, który jako pierwszy obsługiwał ten protokół bym eDonkey2000, dlatego taka właśnie nazwa oraz biorące się z tego powodu niejasności. Wiążą się one z określeniem systemu eDonkey jako klienta, a niekiedy jako rodzaju sieci. Autor protokołu ed2k stworzył również protokół o nazwie Overnet. Znaczna część aplikacji klientów obsługuje także Overnet, przez co obie sieci mogą ze sobą współpracować. Sieć eDonkey jest siecią zdecentralizowaną, ale mimo to nie może obyć się bez komputerów, które odgrywają rolę serwerów. Funkcją serwerów jest przede wszystkim łączenie ze sobą klientów, którzy wymieniają się wzajemnie plikami. Oprogramowanie, które jest zgodnie z protokołem ed2k zawarte jest w wersjach ale niemalże wszystkich systemów operacyjnych. Przedstawienie zasad ed2k. W sieci protokołu ed2k dany plik odnajdowany jest poprzez określenie jego rozmiarów oraz sumy MD4. Właściwości MD4 sprawiają, że dwa pliki różniące się od siebie chociażby jednym bajtem mają zupełnie odmienną sumę MD4. Dla zapewnienia komfort użytkowania aplikacji używa się tradycyjnego nazewnictwa plików. Pliki znajdujące się w sieci ed2k dzielone są na odcinki zwane z angielskiego chunks. W wyniku takiego zabiegu, w czasie ściągania pliku o dużych rozmiarach, komputer natychmiast staje się dostępny dla innych urządzeń. Jedynie wystarczy, aby z pierwszego źródła do wielu innych pozycji trafiły poszczególne odcinki pliku, a system samodzielnie scali się u każdego z odbiorców w jedna całość dzięki posługiwaniu się sumami MD4. Efekt tego działania jest takie, ze plik cieszący się dużą popularnością rozpowszechnia się w bardzo szybkim tempie. Warto zauważyć, iż osoba, która zamieszcza plik w sieci ed2k nie musi posiadać jakiegoś szczególnie szybkiego łącza. Jeśli zbierze się pokaźna ilość chętnych, aby posiadać dany plik na swoim komputerze, wtedy właśnie ta grupa stanie się kolejnymi źródłami jego rozpowszechniania. Wnioskując, sieć ed2k może zostać użyta do dystrybucji ogromnej ilości danych na szeroką skalę. Pliki o dużych rozmiarach mogę trafić bezpośrednio do całego grona odbiorców bez konieczności ponoszenia jakichkolwiek kosztów. Czasami niektóre z witryn internetowych – w Polsce np. www.osiolek.com oraz www.osloskop.net – posiadają informacje o plikach, które warto pobrać z sieci ed2k. W dodatku sama sieć protokołu ed2k zawiera pewnego rodzaju system wyszukiwania plików. Aby mieć możliwość włączenia się do sieci eDonkey trzeba przede wszystkim poszukać w zasobach internetowych listy aktywnych serwerów, ponieważ faktem jest, że jest ich bardzo wiele. Sieć ed2k stanowi potężne archiwum treści multimedialnych. Ważna zaletą są tutaj sumy kontrolne, zapewniające minimalną możliwość ściągnięcia fałszywego bądź wadliwego pliku. Posiadanie publicznego adresu IP jest niezbędne do wykorzystania w pełni wszystkich sieci p2p. Adres ten może zostać automatycznie przydzielony przez DHCP. Jeśli komputer posiada dostęp do sieci internetowej poprzez proxy albo NAT oraz administrator nie zgodzi się na forwardowanie portów, wtedy użytkownik ed2k otrzymuje status Low ID. Klienci posiadający ten właśnie status mogą pobierać jedynie pliki od klientów z statusem High ID. Użytkownicy z statusem High ID mogą ściągać pliki od klientów zarówno z jednym jak i drugim statusem. Zatem status Low ID daje użytkownikowi dostępność do mniejszej ilości zasobów, a także wolniejsze pobieranie plików.
ed2k jest to protokół sieciowy typu P2P. Pierwszym klientem, który obsługiwał ten protokół był eDonkey2000. Od tego klienta wziął swą nazwę ten rodzaj sieci i stąd wynikają niejednoznaczności, że czasem eDonkey to określenie jednego, a czasem drugiego zagadnienia. Należy wspomnieć, że autor aplikacji ed2k, czyli Jed McCaleb opracował również protokół Overnet, czyli bezserwerowej wersji P2P ed2k, która korzysta z algorytmu Kademlia. Niektóre aplikacje klienckie również obsługują Overnet, co powoduje, że obie sieci ze sobą współpracują. Sieć eDonkey charakteryzuje się decentralizacją, jednak żeby pracować i istnieć potrzebuje komputerów, które pełnią rolę serwerów. Serwery te mają za zadanie kojarzenie ze sobą klientów, który wymieniają się plikami. Prawie wszystkie dostępne obecnie systemy operacyjne mają oprogramowanie zgodne z protokołem ed2k. Odnaleźć plik w sieci ed2k pozwalają dwie jego cechy, pierwsza to rozmiar, a druga to suma MD4. Dzięki właściwościom MD4 (do wynalezienia komputerów skrót ten służył w kryptografii) dwa pliki, które różnią się nawet jednym bajtem mają różne sumy MD4. Dodatkową zaletą stosowania sum kontrolnych jest zmniejszenie szans na ściągnięcie uszkodzonego lub fałszywego pliku z sieci. Oczywiście dla wygody użytkowników używane są też normalne nazwy plików. Każdy plik dzielony jest na fragmenty zwane z angielskiego chunks. Dzięki tej prostej operacji, podczas ściągania dużego pliku, nasz komputer natychmiast staje się źródłem poboru fragmentów tego pliku dla innych komputerów podłączonych do sieci. Oznacza to, że kiedy z pierwotnego źródła trafią do wielu innych użytkowników poszczególne fragmenty tego samego pliku, to system złoży je u każdego z odbiorców w całość posługując się sumami MD4. W efekcie popularny plik bardzo szybko się rozpowszechnia. Ważne jest podkreślenie faktu, że osoba umieszczająca w sieci ed2k dowolny plik nie musi posiadać szybkiego łącza, by go skutecznie przesłać dalej. Jeżeli wielu użytkowników pobierze ten plik, to w tym momencie oni staną się kolejnymi jego dystrybutorami. W efekcie cecha ta może być wykorzystywana do szybkiego i masowego rozpowszechniania bardzo dużych ilości danych. Przy niewielkich kosztach duże pliki mogą trafić prosto i szybko do zainteresowanych nimi odbiorców. Strony internetowe takie jak na przykład polskie osloskop.net i osiolek.com, zawierają duże bazy z informacjami jakie pliki warto aktualnie ściągać poprzez sieć ed2k. Również sam protokół zawiera pewne mechanizmy wyszukiwania. Istnienie wielu serwerów powoduje, że po włączeniu się do sieci eDonkey należy poszukać poprzez internet aktywnych serwerów. W chwili obecnej istnieje ogromna ilość darmowych i otwartych klientów sieci ed2k. Ostatnio dużą popularnością cieszy się klient eMule, który działa w systemie Microsoft Windows, i jego wersja xMule, pracująca w Linuksie. Innym klientem tej sieci jest MLDonkey, który pracuje na prawie wszystkich platformach i obsługuje inne sieci P2P (np. BitTorrent, lub Kazaa).