<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://test.amule.szerverem.hu/w/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://test.amule.szerverem.hu/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Notch</id>
		<title>AMule Project FAQ - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://test.amule.szerverem.hu/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Notch"/>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/Special:Contributions/Notch"/>
		<updated>2026-04-05T09:07:04Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.3</generator>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-06-25T02:54:02Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, ocenach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to rzadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja niezależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub pierwiastek(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-06-24T23:27:32Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, ocenach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to rzadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja niezależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-06-24T23:23:39Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to rzadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-06-24T23:22:56Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest LowID i HighID?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znanym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to rzadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdarzyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-27T20:14:20Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_ocenach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-27T20:11:51Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, stawkach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski''' | [[FAQ_eD2k-Kademlia-ru|Russian]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 256GB.&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 256GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, ocenach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = ocena x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest ocena.&lt;br /&gt;
&lt;br /&gt;
Ocena może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona ocena 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, ocena jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich oceny przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Oceny dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez ocenę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T06:46:20Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwością wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne części zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez ściąganie rożnych części od&lt;br /&gt;
różnych osób (użytkownicy często przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików u tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego że, dwa klienty z LowID nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentralizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łączyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzielane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źródła. To zwiększa złożoność wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od wersji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się więcej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi ściągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robione w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w części, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części ściąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: skrót_części1+skrót_części2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałeś/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwę oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąś różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zależy od twojego klienta oraz tego czy port TCP klienta jest otwarty. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno być dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciążenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdarzają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewien czy właściwie ustawiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wcześniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Używany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawienia połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzone, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą ściągać z maksymalną prędkością X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkością Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niż limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąś z części pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego klient czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stawka 100. Ta wartość jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Normalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożona przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modyfikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartości:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłasz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dzielona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T06:17:17Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_część_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T06:16:56Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest częśc (ang. ''chunk'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest część (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-nl</id>
		<title>FAQ eD2k-Kademlia-nl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-nl"/>
				<updated>2006-01-18T05:45:21Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;Veel gestelde vragen over eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | '''Nederlands''' | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wat is ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K is een protocol dat oorspronkelijk werd gebruikt door de P2P (Peer-to-Peer) client [[eDonkey2000]], waar de naam vandaan komt. Het is een server-client gebaseerd protocol, met de mogelijkheid om bronnen uit te wisselen tussen clients.&lt;br /&gt;
&lt;br /&gt;
Het ED2K netwerk is server gebaseerd, dit in tegenstelling tot P2P netwerken als [[Kazaa]], wat betekent dat het eerste ding wat u moet doen als u [[aMule]] draait is verbinden met een server (handmatig of automatisch).&lt;br /&gt;
&lt;br /&gt;
Als u verbonden bent met een server, de client kan zoeken, lokaal (de server waarmee verbinding is) of globaal (alle servers), naar elk bestand en de servers waarop gezocht wordt zullen de client een lijst sturen van alle bestanden die voldoen aan de zoekopdracht.&lt;br /&gt;
&lt;br /&gt;
Als de gebruiker een download start, zal de client de server vragen om bronnen, die de server zal sturen in de vorm van een IP adres van de clients die de server hebben verteld dat ze het specifieke bestand hebben.&lt;br /&gt;
&lt;br /&gt;
Dan zal de client waarmee verbonden is beginnen met het uploaden van een heel blok op het moment dat u de eerste bent in de wachtrij, lees [[FAQ_eD2k-Kademlia-nl#Waar_gaat_al_dat_gedoe_met_credits,_waardering_en_score_over?|Waar gaat al dat gedoe met credits, waardering en score over?]] en, als het blok compleet verstuurd is, gaat u terug naar zijn upload wachtrij. Zo verspreiden verschillende delen zich over het ED2K netwerk, zodat, hoewel niemand op een bepaald moment het complete bestand heeft, het compleet gemaakt kan worden door de verschillende blokken van verschillende mensen te downloaden (het is bekend dat gebruikers vaak stoppen met het delen van een bestand als het compleet is).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Let op: clients uploaden slechts '''één''' blok per keer naar een andere client. Zelfs als een client in de upload wachtrij van twee verschillende bestanden van dezelfde gebruiker staat en bij beide bovenaan aankomt, zal die gebruiker maar een van de bestanden uploaden naar die client (de andere upload zal, afhankelijk van het ED2K programma die de client gebruikt, blijven staan als een hoogste prioriteit upload, maar zal niet beginnen tot het ander blok succesvol is ge-upload).&lt;br /&gt;
&lt;br /&gt;
Als beide gebruikers een Hoog ID hebben (zie [[FAQ_eD2k-Kademlia-nl#Wat_is_Laag_ID_en_Hoog_ID?|Wat is Laag ID en Hoog ID?]]) zal de overdracht direct van client naar client verlopen (Peer-to-Peer), maar als een van de clients een Lage ID heeft, zal de verbinden verlopen via de server, omdat Lage ID geen binnenkomende verbindingen kan accepteren. Het gevolg daarvan is dat twee Lage ID clients '''niet''' met elkaar kunnen verbinden.&lt;br /&gt;
&lt;br /&gt;
== Wat is Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia is een natuurlijke evolutie van het ED2K netwerk. Kademlia is de toekomst. Zie [[FAQ_eD2k-Kademlia-nl#Zijn_er_beperkingen_aan_het_ED2K_netwerk?|Zijn er beperkingen aan het ED2K netwerk?]] voor meer informatie over waarom Kademlia nodig is.&lt;br /&gt;
&lt;br /&gt;
Omdat Kademlia een gedecentraliseerd netwerk is, haalt het de bottleneck weg die eerst veroorzaakt was door de noodzaak van servers (hoewel [[Lugdunum]] goed werk heeft gedaan bij het verminderen van deze bottleneck). Nu, in plaats van verbinden met een server, verbindt u met een client (met een bekend IP-adres en poort), die het netwerk [[Kademlia]] ondersteunt. Dit wordt Boot Strapping genoemd.&lt;br /&gt;
&lt;br /&gt;
Als u verbonden bent krijgt u, afhankelijk van de mogelijkheid tot het accepteren van binnenkomende verbindingen, de status &amp;quot;open&amp;quot; of &amp;quot;firewalled&amp;quot;, gelijk aan Hoog ID en Laag ID van het ED2K netwerk. Dan krijgt u een ID.&lt;br /&gt;
&lt;br /&gt;
Op dit moment worden &amp;quot;firewalled&amp;quot; gebruikers niet ondersteund door het het Kademlia netwerk, en krijgen dus geen ID en kunnen niet verbinden. Firewalled ondersteuning wordt later toegevoegd.&lt;br /&gt;
&lt;br /&gt;
Bij het zoken, dient elke client als een kleine server en krijgt verantwoordelijkheid voor bepaalde zoekwoorden of bronnen. Dit maakt het vinden van bronnen complexer omdat er geen centrale server meer is om aan te vragen, maar een zoekopdracht moet zich nu verspreiden via het netwerk.&lt;br /&gt;
&lt;br /&gt;
Op dit moment wordt Kademlia niet ondersteund door aMule, maar dat zal binnenkort veranderen.&lt;br /&gt;
&lt;br /&gt;
== Is Kademlia het zelfde als Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Kort en duidelijk: Nee. Overnet is de natuurlijke serverloze evolutie van de eDonkey software, terwijl Kademlia de natuurlijke serverloze evolutie van *Mule clients is.&lt;br /&gt;
&lt;br /&gt;
Short and clear: No. Overnet is the natural serverless evolution of the eDonkey software, while Kademlia is the natural serverless evolution of *Mule clients. Dus, het heeft dezelfde filosofie, maar verschillende regels. Om te leren hoe Overnet werkt, kijk op http://www.edonkey2000.com/documentation/how_on.html, maar bedenk dat Overnets ontwikkeling gesloten is tot het versie 1.0 heeft bereikt, terwijl Kademlias ontwikkeling compleet open is sinds het begin.&lt;br /&gt;
&lt;br /&gt;
== Wat is een blok? ==&lt;br /&gt;
&lt;br /&gt;
Om het delen van beschadigde bestanden te voorkomen in het ED2K protocol, wordt elk bestand verdeeld in meerdere delen, die bekend staan als ''blokken'', en dan elk blok krijgt een hashwaarde (zie hieronder om te weten wat een [[FAQ_eD2k-Kademlia-nl#Wat_is_een_hash?|hash]] is). Elk blok is 9,28MB groot, dus een bestand van 15MB wordt verdeeld in twee blokken (9,28MB + 5,72MB), een 315kB bestand is één blok en een 100MB bestand wordt verdeeld in 11 blokken (10x9,28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Wat is een hash? ==&lt;br /&gt;
&lt;br /&gt;
Het opdelen van bestanden in blokken (zie [[FAQ_eD2k-Kademlia-nl#Wat_is_een_blok?|Wat is een blok?]]) voorkomt het probleem dat een heel beschadigd bestand opnieuw gedownload moet worden omdat alleen het beschadigde blok opnieuw gedwonload hoeft te worden, maar een methode om beschadigde blokken te herkennen is nodig. Dit wordt gedaan met MD4 hashes.&lt;br /&gt;
&lt;br /&gt;
Een [[MD4 hash]] is een unieke waarde die elk blok krijgt en is het resultaat van een wiskundige operatie op elke bit van het blok. Dit betekent dat het veranderen van één enkele bit in een blok een compleet verschillende hash oplevert. Daarmee is het mogelijk om te controleren of elk deel van een bestand correct is als het gedownload is.&lt;br /&gt;
&lt;br /&gt;
Niet alleen de blokken worden gehashed, maar ook, om een bestandshash te krijgen, worden alle hashes van de blokken achter elkaar gezet in de volgorde van het bestand (dat wil zeggen: hash_van_blok1+hash_van_blok2+hash_van_blok3+...) en het resultaat wordt gehashed. Op deze manier krijgt elk bestand op het ED2K netwerk een unieke identificatiecode. De bestandshash wordt niet verkregen door het hele bestand te hashen, maar door het hashen van de waarde van de hashes van de blokken.&lt;br /&gt;
&lt;br /&gt;
In werkelijkheid heeft u de hash van een bestand en de grootte nodig. Deze delen van informatie worden opgenomen in de ED2k URLs die op vele plaatsen te vinden zijn.&lt;br /&gt;
&lt;br /&gt;
Bijvoorbeeld:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/ &lt;br /&gt;
&lt;br /&gt;
Het interesante gedeelte is het vijfde deel, &amp;quot;2407949&amp;quot;, wat de grootte van het bestand is in bytes en het laatste deel, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, wat de hash is in hexadecimalen, 32 tekens lang.&lt;br /&gt;
&lt;br /&gt;
De bestandsnaam is niet belangrijk bij het identificeren van het bestand.&lt;br /&gt;
&lt;br /&gt;
== Waarom verschijnen bij het zoeken sommige bestanden die gelijk zijn als verschillende bestanden in de zoekresultaten, ook al hebben ze zelfs dezelfde naam? ==&lt;br /&gt;
&lt;br /&gt;
Als u &amp;quot;Wat is een hash&amp;quot; begreep is het makkelijk dit te begrijpen. Als een zoekopdracht begint, vertelt de server de ED2K client de bestandsnaam van de gevonden bestanden en de hash van het complete bestand voor elk bestand wat voldoet aan de zoekopdracht. Als twee bestanden, hoewel ze gelijk zijn, een verschil hebben in hun inhoud, groot of klein maakt niet uit, is de hash verschillend, dus worden ze beschouwd als een veerschillend bestand. Dat is ook de reden dat twee bestanden met verschillende bestandsnamen verschijnen als hetzelfde bestand: op het ED2K netwerk is de bestandsnaam niet belangrijk, de hash is belangrijk.&lt;br /&gt;
&lt;br /&gt;
== Wat is Laag ID en Hoog ID? ==&lt;br /&gt;
&lt;br /&gt;
Elke client krijgt een identificatiegetal, een ID, wat uniek is en hem onderscheidt van elke andere client verbonden met de server. Als dit ID lager is dan 16777216 (16 miljoen) dan heeft u een Laag ID. Als het hoger is, dan heeft u een Hoog ID. Of u een hoog of laag ID krijgt hangt er van af of TCP poort 4662 (of de poort die u heeft opgegeven in Voorkeuren) open is. Als u &amp;quot;Wat is ED2K&amp;quot; begreep, begrijpt u mogelijk dat de kans bestaat dat clients met een Laag ID niet met veel andere clients kunnen verbinden (alle andere clients met een Laag ID), en dus een lagere overdrachtssnelheid hebben. Daarom is het belangrijk dat poort 4662 TCP (of de poort opgegeven in Voorkeuren) open is. Ook weigeren sommige grote servers clients met een Laag ID, omdat clients met een Laag ID data overdragen via de server en zo kunnen de grote server overbelast raken.&lt;br /&gt;
&lt;br /&gt;
Voor clients met een Hoog ID is hun ID het resultaat van een wiskundige operatie op hun IP adres, namelijk A + 256*B + 256*256*C + 256*256*256*D, met het IP adres in de vorm van A.B.C.D. Het doel van het ID is alleen identificatie van de client, verder niks, het maakt dus niets uit hoe hoog het ID is, alleen of het hoger of lager is dan 16777216. Dit wil zeggen dat een clients met een ID van 50000000 niet beter is dan een client met een ID van 49999999.&lt;br /&gt;
&lt;br /&gt;
Er is een uitzondering. Sommige slecht geconfigureerde of erg drukke servers geven een Laag ID aan sommige clients hoewel poort 4662 TCP open is. Dit is een zeldzame uitzondering, maar het kan voorkomen.&lt;br /&gt;
&lt;br /&gt;
[http://www.amule.org/testport.php Hier] kunt u controleren of uw poorten open staan.&lt;br /&gt;
&lt;br /&gt;
== Welke poorten moet ik configureren in een firewall of router om aMule te kunnen gebruiken? ==&lt;br /&gt;
&lt;br /&gt;
U hoeft geen specifieke poorten te openen om aMule te laten werken, maar wel om een Hoog ID te krijgen. Zoals boven genoemd moet poort 4662 TCP (of de poort opgegeven in Voorkeuren) open zijn.&lt;br /&gt;
&lt;br /&gt;
Afgezien van die poort, moet u nog twee poorten open zetten om het ED2K netwerk optimaal te gebruiken. Ten eerste, UDP poort 4672 (ook deze kunt u instellen op elke andere poort in Voorkeuren) en ten tweede, de tweede UDP poort die niet ingesteld kan worden in Voorkeuren. Deze UDP poort is uw TCP poort + 3 (bijv.: TCP=4662 dan UDP=4665).&lt;br /&gt;
&lt;br /&gt;
== Waarvoor dient elke poort? ==&lt;br /&gt;
&lt;br /&gt;
Omdat de meeste poorten ingesteld kunnen worden op elk poortnummer, staan hier de standaardpoorten:&lt;br /&gt;
&lt;br /&gt;
; 4662 TCP: Client naar client overdrachten.&lt;br /&gt;
; 4672 UDP: Uitgebreid eMule protocol, Plaats in wachtrij, Bestand onieuw opvragen&lt;br /&gt;
; 4661 TCP: Geopend op de server. Staat verbinding met server toe.&lt;br /&gt;
; 4665 UDP: Geopend op de server. Staat het vragen om bronnen toe. Dit is altijd server TCP port + 3.&lt;br /&gt;
; 4711 TCP: Poort van de WebServer.&lt;br /&gt;
; 4712 TCP: Externe Verbindingen poort. Gebruikt om aMule te laten communiceren met ander programma's zoals aMule WebServer of aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
Hoewel de tweede UDP poort officeel server TCP poort + 4 is, gebruiken sommige (de meeste?) clients client TCP + 3. Deze poort wordt meestal niet gebruikt (aMule gebruikt het niet, eMule heeft het niet).&lt;br /&gt;
&lt;br /&gt;
== Zijn er beperkingen aan het ED2K netwerk? ==&lt;br /&gt;
&lt;br /&gt;
Niet veel, maar ja, er zijn beperkingen: twee natuurlijke beperkingen en een &amp;quot;gedwongen&amp;quot; beperking. De twee natuurlijke beperkingen zijn al eerder genoemd. Ten eerste, de beperking van clienst met een Laag ID (die moeten dat via de server overdragen en twee clients met een Laag ID kunnen niet delen met elkaar). De tweede is dat, hoewel ED2K een p2p protocol is, het servers nodig heeft om een p2p verbinding te starten. Deze tweede is opgelost in het Kademlia protocol.&lt;br /&gt;
&lt;br /&gt;
Over de &amp;quot;gedwongen&amp;quot; beperking, het is alleen een grens om er voor te zorgen dat clients delen zodat het ED2K netwerk niet verdwijnt: clients met een upload grens van X kBps, waar X een getal is vanaf 0 tot en met 3,99 kunnen downloaden met een maximum snelheid van X*3 kBps. Clients met een upload grens van Y kBps, waar Y een getal is vanaf 4 tot en met 9,99 kunnen downloaden met een maximum snelheid van Y*4 kBps. Clients met een upload grens van 10kBps of hoger hebben geen download grenzen. Deze beperking is ingesteld in de client, dus het kan omzeild worden door de code te hacken, maar dat resulteert waarschijnlijk in een ban van de servers waar u mee verbonden bent.&lt;br /&gt;
&lt;br /&gt;
Ook moet elke client minimaal drie upload sloten hebben, dus is het niet mogelijk om meer dan upload grens/3 kBps per slot toe te staan.&lt;br /&gt;
&lt;br /&gt;
== In het zoek venster, welk filter staat voor welk bestandstype? ==&lt;br /&gt;
&lt;br /&gt;
Bedenk dat de filters in het zoek venster niet afhangen van het bestandstype, maar van de extensie van de bestandsnamen, op de volgende manier:&lt;br /&gt;
*'''Archief:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Geluid:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''CDImage:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Plaatje:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programma:''' ''.com .exe''&lt;br /&gt;
*'''Video:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Dus, een film met als bestandsnaam &amp;quot;Verjaardag.zip&amp;quot; verschijnt in het Archief filter, maar niet in het Video filter.&lt;br /&gt;
&lt;br /&gt;
== Wat is een bron? ==&lt;br /&gt;
&lt;br /&gt;
Een bron is een client die een blok deelt van een bestand in uw download wachtrij die u nog niet compleet heeft. Logischerwijs, hoe meer bronnen u kunt krijgen voor een bestand, hoe groter de kans dat u het bestand kan downloaden en hoe sneller het gedownload wordt. Bedenk dat er een verschil is tussen &amp;quot;bronnen&amp;quot; en &amp;quot;beschikbare bronnen&amp;quot; als u een Laag ID hebt, omdat &amp;quot;bronnen&amp;quot; de clients zijn die een blok of een bestand delen wat u nog niet compleet hebt, terwijl &amp;quot;beschikbare bronnen&amp;quot; de clients zijn die een blok of bestand delen wat u nog niet compleet hebt en van wie u kunt downloaden (dus, een bron met een Hoog ID).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Waar gaat al dat gedoe met credits, waardering en score over? ==&lt;br /&gt;
&lt;br /&gt;
Alle drie gaan over de manier waarop het ED2K netwerk de upload wachtrij voorkeuren bepaalt.&lt;br /&gt;
&lt;br /&gt;
De score is de belangrijkste waarde: de client met de hoogste score is de volgende client die een slot van u krijgt. De score waarde wordt op de volgende manier berkend: score = waardering x wachttijd_in_seconden / 100&lt;br /&gt;
Om dit te begrijpen moeten we dus weten wat waardering is.&lt;br /&gt;
&lt;br /&gt;
Waardering is een objectieve voorkeur. Dat is de voorkeur voor een client waarbij het niet uitmaakt hoe lang hij heeft gewacht. Als een client toegevoegd wordt aan de upload wachtrij krijgt hij een waardering van 100. Deze waarde wordt op deze manier gewijzigd:&lt;br /&gt;
&lt;br /&gt;
Afhankelijk van de hoeveelheid credits wordt de waardering vermenigvuldigd met 1x tot 10x. Afhankelijk van de prioriteit van het bestand wordt het vermenigvuldigd met 0,2x tot 1,8x (Release: 1,8x, Hoog: 0,9x, Normaal: 0,7x, Laag: 0,6x, Heel Laag: 0,2x).&lt;br /&gt;
&lt;br /&gt;
Gebruikers van bepaalde oude clients die teveel netwerk verkeer veroorzaken worden gestraft door hun waardering te vermenigvuldigen met 0,5x.&amp;lt;br&amp;gt;&lt;br /&gt;
Gebande clients krijgen geen waardering (hun waardering wordt vermenigvuldigd met 0).&lt;br /&gt;
&lt;br /&gt;
Deze vermenigvuldigers staan bekend als &amp;quot;modifiers&amp;quot;. Client met een modifier waarde groter dan 1 worden gemarkeerd met geel in het pictogram.&lt;br /&gt;
&lt;br /&gt;
Dan blijft alleen credits over om uit te leggen. Credits zijn een prijs die u krijgt voor het uploaden van bestanden naar een bepaalde gebruiker. Credits worden uitgewisseld tussen twee specifieke clients, ze zijn niet globaal, dus u kunt uw eigen credits niet bekijken, hoewel u te weten kunt komen hoeveel credits een ander gebruiker heeft bij u (dat zijn de credits die die client tegoed heeft van u). Omdat credits beheert worden door de client die upload, kan het voorkomen dat u upload naar een client zonder ondersteuning voor credits, waarbij u geen credits krijgt bij die gebruiker, terwijl die credits krijgt bij u als hij naar u upload, omdat u wel ondersteuning hebt voor credits. Deze credits worden opgeslagen in het bestand clients.met.&lt;br /&gt;
&lt;br /&gt;
De credits modifier gebruikt door waardering is de laagste waarde van deze twee:&amp;lt;br&amp;gt;(upload_totaal x 2)/download_totaal of wortel(upload_totaal+2) waarbij zowel upload_totaal als download_totaal gemeten worden in MBs.&lt;br /&gt;
&lt;br /&gt;
Als het resultaat lager is dan 1, wordt het ingesteld op 1 en als het groter is dan 10, wordt het ingesteld op 10. Daarbij, als het ge-uploade totaal minder is dan 1MB, wordt de modifier ingesteld op 1 en als het gedownloade totaal gelijk is aan 0, wordt de modifier ingesteld op 10.&lt;br /&gt;
&lt;br /&gt;
==  Wat is een slot? ==&lt;br /&gt;
&lt;br /&gt;
Bij het uploaden van bestanden, wordt uw upload bandbreedte (die kan varieren afhankelijk van de upload grens of de natuurlijke upload grens van het type verbinding) opgedeeld in sloten. Dus, elk slot is een aantal kBps die wordt toegewezen aan elke client die probeert te downloaden van u.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_ed2k-fr</id>
		<title>FAQ ed2k-fr</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_ed2k-fr"/>
				<updated>2006-01-18T05:44:40Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | '''Français''' | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ED2K, c'est quoi ? ==&lt;br /&gt;
&lt;br /&gt;
A la base ED2K est un protocol pour le client P2P (pair-à-pair) [[eDonkey2000]], c'est de là que vient son nom. C'est un protocol basé sur une interraction  serveur-client, avec la capacité d'échanger les sources entre les clients.&lt;br /&gt;
&lt;br /&gt;
Le réseau ED2K est basé sur les serveurs à la différence des réseaux de P2P tels que [[Kazaa]], ce qui signifie que la première chose que vous faites lorsque vous lancez [[aMule]] est de vous connecter à un serveur (manuellement ou automatiquement).&lt;br /&gt;
&lt;br /&gt;
Une fois connecté avec succès à un serveur, le client peut chercher, soit localement (au serveur connecté) soit globalement (tout les serveurs), n'importe quel fichier et le serveur questionné fournira au client une liste de tout les fichiers qui répondent aux paramètres de recherche.&lt;br /&gt;
&lt;br /&gt;
Si l'utilisateur démarre un téléchargement, le client demandera alors au serveur des sources et le serveur va renvoyer le nom (sous la forme d'adresse IP) des clients qui ont répondu qu'ils avaient bien le fichier demandé.&lt;br /&gt;
&lt;br /&gt;
Ensuite le client distant va commencer à envoyer un chunk entier à votre client aussitôt que vous serrez le premier dans la file d'attente. Et, quand le chunk à été envoyé en entier, vous serez effacé de sa file des envois. Cette façon qu'on les différents chunks de se répendre autour du réseau ED2K fait que même si personne n'a à un instant donné le fichier complet, he bien il peut être complété en téléchargeant les différents chunks à partir de différentes personne ( c'est bien connu que les gens arrêtent de partager un fichier une fois qu'il à été complété).&lt;br /&gt;
&lt;br /&gt;
Remarquez que les client n'envoient que '''un''' chunk à la fois à un autre client. Même si un client est à la fois dans la file d'attente des envois pour deux fichiers différents chez un même utilisateur, et arrive en premier pour ses deux fichiers alors cet utilisateur ne lui enverra que un fichier à la fois (selon l'application ED2K que le client utilise, l'autre envoi restera probablement à une priorité maximale dans la file des envois, mais il ne commencera pas tant que l'autre chunk n'a pas été envoyé complètement).&lt;br /&gt;
&lt;br /&gt;
Si les deux utilisateurs ont un HighID le transfert sera effectué directement de client à client (Pair-à-Pair), mais si un des clients à un LowID, la connection sera établie par l'intermédiaire du serveur parceque les LowID ne peuvent pas accepter une connection entrante. A cause de ca, deux client ayant un LowID '''ne peuvent pas''' se connecter entre eux.&lt;br /&gt;
&lt;br /&gt;
== Kademlia c'est quoi ? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia est l'évolution naturelle du réseau ED2K. Kademlia est le futur. Regardez [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Y a t il des limitation au réseau ED2K?]] pour plus d'information sur la necessité de Kademlia.&lt;br /&gt;
&lt;br /&gt;
Parceque Kademlia est un réseau décentralisé, il évite le goulet d'étranglement qui était précédemment causé par le besoin de serveurs (bien que [[Lugdunum]] ait accompli un grand travail dans la réduction de ce goulet détranglement). Maintenant au lieu de vous connecter à un serveur vous ne faites que de vous connecter à un client (avec un port et une adresse IP connus), qui supporte le réseau Kademlia. C'est appellé le &amp;quot;Boot Strapping&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Une fois connecté, et selon votre capacité à accepter des connections entrantes, on vous donne le status de &amp;quot;ouvert&amp;quot; ou &amp;quot;derrière un firewall&amp;quot;, ce qui est similaire  au HighID et LowID du réseau ED2K. Ensuite on vous donne une identification.&lt;br /&gt;
&lt;br /&gt;
Pour le moment, les utilisateurs &amp;quot;derrière un firewall&amp;quot; ne sont pas supportés par le réseau kademlia. Ils ne recevront donc pas d'identification et seront incapables de se connecter. Le support des gens &amp;quot;derrière un firewall&amp;quot; sera ajouté plus tard.&lt;br /&gt;
&lt;br /&gt;
Pendant la recherche chaque client agit comme un petit serveur et reçoit la responsabilité de certaines sources ou mots clés. Cela ajoute de la complexité à trouver des sources parce qu'il n'y a plus un serveur central à questionner, mais au lieu de cela il faut propager les requêtes à travers le réseau.&lt;br /&gt;
&lt;br /&gt;
Actuellement Kademlia n'est pas supporté par aMule, mais il le sera bientôt.&lt;br /&gt;
&lt;br /&gt;
== Est ce que Kademlia c'est la même chose que Overnet? ==&lt;br /&gt;
&lt;br /&gt;
En un mot : non. Overnet est l'évolution sans serveur naturelle du logiciel eDonkey, alors que Kademlia est l'évolution sans serveur naturelle des clients *Mule. DONC, c'est le même principe, mais suivant des règles différentes. Pour aprendre le fonctionnement de Overnet, réferrez vous à http://www.edonkey2000.com/documentation/how_on.html mais gardez à l'esprit que le dévellopement de Overnet sera fermé jusqu'a ce qu'il atteigne la version 1.0 alors que le dévellopement de Kademlia est totalement ouvers depuis le début.&lt;br /&gt;
&lt;br /&gt;
== Qu'est ce qu'un chunk? ==&lt;br /&gt;
&lt;br /&gt;
Pour éviter de partager des fichiers corompus, le protocol ED2K divise chaque fichier en un certain nombre de morceaux, qui sont appelés ''chunk'', et ensuite chacun des chunks est réduit à son tour en petits morceaux (lisez plus bas pour savoir ce que sont ces petits morceaux). Chaque chunk a une taille de 9.28MB, ainsi un fichier de 15MB sera divisé en deux chunks (9.28MB + 5.72MB), un fichier de 315KB sera un seul chunk et un fichier de 100MB sera divisé en 11 chunks (10x9.28MB + 7.2MB).&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-de</id>
		<title>FAQ eD2k-Kademlia-de</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-de"/>
				<updated>2006-01-18T05:43:57Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;Häufig gestellte Fragen über eD2k&amp;amp;Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | '''Deutsche''' | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Was ist ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2k ist ein Protokoll, das ursprünglich vom P2P (Peer-to-Peer) Client [[eDonkey2000]] verwendet wurde, der ihm auch seinen Namen gab. Es ist ein Server/Client-Protokoll mit der Möglichkeit, Quellen zwischen den Clients auszutauschen.&lt;br /&gt;
&lt;br /&gt;
Das ED2k-Netzwerk ist serverbasiert, im Gegensatz zu reinen P2P-Netzwerken wie [[Kazaa]]. Nach dem Start von [[aMule]] ist also das erste, sich mit einem Server zu verbinden (entwedermanuell oder automatisch).&lt;br /&gt;
&lt;br /&gt;
Sobald die Verbindung hergestellt wurde, kann der Client eine Suchanfrage an den verbundenen Server stellen oder alle Server global absuchen. Die Antworten enthalten eine Liste aller Dateien, die den gegebenen Suchkriterien entsprechen.&lt;br /&gt;
&lt;br /&gt;
Wird vom Nutzer ein Download initiiert, fragt der Clients den Server nach Quellen, was dieser mit einer Liste von IP Adressen anderer Clients beantwortet, die die gesuchte Datei (oder Teile davon) haben.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sobald der eigene Client an der Spitze der Warteschlange des Gegenübers angekommen ist ([[FAQ_eD2k-Kademlia-de#Was_hat_es_mit_diesem_ganzen_Krempel_(Credits,_Bewertungen,_Warteschlangen_usw.)_auf_sich?|siehe auch &amp;quot;Was hat es mit diesem ganzen Krempel (Credits, Bewertungen, Warteschlangen usw.) auf sich?&amp;quot;]]), beginnt dieser einen Block der Datei heraufzuladen und, wenn der Block vollständig ist, den eigenen Client wieder in die Warteschlange einzureihen. Auf diese Weise werden die verschiedenen Teile im ED2k-Netzwerk verteilt, so dass, auch wenn eventuell niemand zu einem bestimmten Zeitpunkt die vollständige Datei hat, diese dennoch durch Downloads von verschiedenen Leuten vollständig erhältlich sein kann (leider gibt es eine Menge Leute, die eine Datei nicht weiter freigeben, nachdem sie vollständig heruntergeladen wurde).&lt;br /&gt;
&lt;br /&gt;
Zu berücksichtigen ist, dass Clients immer nur '''einen''' Block zur gleichen Zeit zu einem anderen Client hochladen. Auch wenn der Client für zwei verschiedene Dateien in der Warteschlange steht und an der Spitze ankommt, wird trotzdem nur eine der beiden an ihn hochgeladen werden (die andere, abhängig vom verwendeten ED2k-Client, bleibt eventuell an der Spitze stehen, bis der erste Download abgeschlossen ist, wird aber keinesfalls vorher beginnen).&lt;br /&gt;
&lt;br /&gt;
Haben beide Clients eine Hohe ID (siehe [[FAQ_eD2k-Kademlia-de#Was_sind_niedrige_und_hohe_IDs?|Was sind niedrige und hohe IDs?]]) läuft der Transfer direkt zwischen den beiden ab (Peer-to-Peer), hat einer aber nur eine niedrige ID, wird die Verbindung mit Hilfe des Servers (des Clients mit der niedrigen ID) aufgebaut, da eine niedrige ID bedeutet, dass der Client keine eingehenden Verbindungen annehmen kann. Daraus ergibt sich, dass zwei Clients mit niedrigen IDs '''keine''' Verbindung zwischeneinander aufbauen können.&lt;br /&gt;
&lt;br /&gt;
== Was ist Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia ist die logische Weiterentwicklung des ED2k-Netzwerkes. Kademlia ist die Zukunft. Siehe [[FAQ_eD2k-Kademlia-de#Gibt_es_Grenzen_im_ED2k-Netzwerk?|Gibt es Grenzen im ED2k-Netzwerk?]] für weitergehende Informationen und warum Kademlia notwendig ist.&lt;br /&gt;
&lt;br /&gt;
Da Kademlia ein dezentrales Netzwerk ist, entfällt der Flaschenhals der Notwendigkeit von Servern (auch wenn [[Lugdunum]] sehr viel getan hat, diesen Flaschenhals breiter zu machen). Anstatt zu einem Server verbindet man sich einfach zu einem Client (mit bekannter IP-Adresse und Port), der das [[Kademlia]]-Netzwerk unterstützt. Diesen Vorgang nennt man &amp;quot;Boot Strapping&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Besteht die Verbindung, bekommt man, abhängig von der Fähigkeit, eingehende Verbindungen anzunehmen, den Status &amp;quot;offen&amp;quot; oder &amp;quot;hinter Firewall&amp;quot;, die den hohen und niedrigen IDs des ED2k-Netzwerkes ähnlich sind. Dann erhält man eine ID.&lt;br /&gt;
&lt;br /&gt;
Im Moment werden &amp;quot;hinter Firewall&amp;quot;-Clients noch nicht von Kademlia unterstützt und erhalten daher keine ID und keine Möglichkeit, sich mit dem Netzwerk zu verbinden. Dies wird aber später noch ermöglicht werden.&lt;br /&gt;
&lt;br /&gt;
Bei der Suche fungiert jeder Client als kleiner Server und bekommt die Verantwortung für bestimmte Schlüsselwörter oder Quellen. Dies macht die Suche nach Quellen sehr viel komplexer, da es keine zentralen Server zum Fragen mehr gibt, sondern die Anfrage sich durch das Netzwerk arbeiten muss.&lt;br /&gt;
&lt;br /&gt;
Seit dem 26.07.05 besteht in der CVS-Version die Möglichkeit das KAD-Netzwerk zu nutzen.&lt;br /&gt;
&lt;br /&gt;
== Sind Kademlia und Overnet gleich? ==&lt;br /&gt;
&lt;br /&gt;
Kurez und knapp: Nein. Overnet ist die natürliche serverlose Weiterentwicklung des eDonkey-Clients, während Kademlia jene der *Mule-Clients ist. Die Philosophie ist also die gleiche, aber die Regeln sind verschieden. [http://www.edonkey2000.com/documentation/how_on.html Hier] kann man mehr über die  Arbeitsweise von Overnet erfahren, allerdings ist zu berücksichtigen, dass die Entwicklung von Overnet im geschlossenen Rahmen abläuft, bis es Version 1.0 erreicht, während Kademlia von Anfang an offen entwickelt wurde.&lt;br /&gt;
&lt;br /&gt;
== Was ist ein Block? ==&lt;br /&gt;
&lt;br /&gt;
Um die Weiterverteilung zerstörter Dateien zu vermeiden, werden im ED2k-Protokoll Dateien in mehrere Abschnitte unterteile, sogenannte &amp;lt;i&amp;gt;Blöcke&amp;lt;/i&amp;gt;, deren jeweils einzelne Prüfsumme erzeugt wird (siehe [[FAQ_eD2k-Kademlia-de#Was_ist_ein_Hash?|nächster Eintrag]]). Jeder Block hat eine Größe von 9.28MB, eine 15MB Datei wird also in zwei Blöcke (9.28MB &amp;amp; 5.72MB) aufgeteilt, eine 315KB Datei bleibt in einem Stück und eine 100MB Datei wird in 11 Teile gespalten (10*9.28MB &amp;amp; 7.2MB).&lt;br /&gt;
&lt;br /&gt;
== Was ist ein Hash? ==&lt;br /&gt;
&lt;br /&gt;
Dateien in einzelne Blöcke aufzuteilen (siehe [[FAQ_eD2k-Kademlia-de#Was_ist_ein_Block?|Was ist ein Block?]]) verhindert zwar, komplett zerstörte Dateien herunterzuladen, aber dafür ist es nötig, beschädigte Blöcke zu finden. Dafür werden MD4 Prüfsummen verwendet.&lt;br /&gt;
&lt;br /&gt;
Eine [[MD4 hash|MD4 Prüfsumme]] ist ein einzigartiger Wert für jeden einzelnen Block, der durch eine fortlaufende mathematische Berechnung unter Berücksichtigung jedes einzelnen Bits des Blocks entsteht. Schon durch Änderung nur eines Bits im Block ändert sich auch die Prüfsumme. Somit kann die Integrität jedes einzelnen Blocks nach dem Download überprüft werden.&lt;br /&gt;
&lt;br /&gt;
Aber nicht nur für die Blöcke werden Prüfsummen errechnet, sondern, um eine Prüfsumme für die gesamte Datei zu erhalten, werden die entstehenden Prüfsummen in der Reihenfolge der Blöcke aneinandergehängt und für den entstehenden String wiederum die Prüfsumme gebildet. Auf diese Art und Weise bekommt jede Datei im ED2k-Netzwerk eine einzigartige Kennzeichnung. Die Dateiprüfsumme wird also nicht durch hashen der ganzen Datei sondern aus den einzelnen Blockhashs gebildet.&lt;br /&gt;
&lt;br /&gt;
Tatsächlich benötigt man aber die Prüfsumme und die Größe einer Datei, um sie zu identifizieren. Alle diese Informationen sind in den ominösen ED2k-URIs enthalten, die überall zu finden sind.&lt;br /&gt;
&lt;br /&gt;
Hier ein Beispiel:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|aMule-2.0.0rc7.tar.bz2|1877051|527CE82275B39AAB5D902DD945B43425|/&lt;br /&gt;
&lt;br /&gt;
Die interessanten Teile sind der fünfte Teil, &amp;quot;1877051&amp;quot;, die Größe der Datei in Bytes und der letzte Teil, &amp;quot;527CE82275B39AAB5D902DD945B43425&amp;quot;, was die Dateiprüfsumme der Datei ist, als 32 hexadezimale Ziffern.&lt;br /&gt;
&lt;br /&gt;
Der Dateiname spielt übrigens für die Kennzeichnung einer Datei '''keine''' Rolle.&lt;br /&gt;
&lt;br /&gt;
== Warum erscheinen Dateien gleichen Namens als verschiedene Suchergebnisse? ==&lt;br /&gt;
&lt;br /&gt;
Wer &amp;quot;Was ist ein Hash?&amp;quot; gelesen hat, wird das schnell verstehen. Wird eine Suche gestartet, schickt der Server dem Client die Namen und Dateihashes der Dateien, die den gegebenen Suchkriterien entsprechen. Wenn sich zwei Dateien, auch wenn sie den gleichen Namen tragen, in ihrem Inhalt unterscheiden, egal wie gering, werden sie als verschieden angesehen. Aus diesem Grund können zwei Dateien mit unterschiedlichem Namen gleich erscheinen - der Dateiname interessiert nicht, nur die Prüfsumme.&lt;br /&gt;
&lt;br /&gt;
== Was sind niedrige und hohe IDs? ==&lt;br /&gt;
&lt;br /&gt;
Jeder Client bekommt eine nur ihm zugeordnete Nummer, die ihn im ED2k-Netzwerk eindeutig identifiziert und von anderen mit einem Server verbundenen Clients unterscheidet. Wenn diese ID niedriger als 16777216 (2^24) ist, dann handelt es sich um eine niedrige ID, ansonsten um eine hohe. Ob man eine hohe oder niedrige ID bekommt, hängt einzig davon ab, ob der TCP-Port 4662 (bzw. der in den Einstellungen gewählte) von außen erreichbar ist. Wer &amp;quot;Was ist ED2K?&amp;quot; gelesen hat, weiß, dass Clients mit niedriger ID sich zu bestimmten anderen (nämlich denen mit ebenfalls niedriger ID) nicht verbinden können und so niedrigere Transferraten zu erwarten haben. Daher ist Port 4662, bzw. der eingestellte, so wichtig. Außerdem verweigern manche Server Clients mit niedriger ID den Verbindungsaufbau, da sie für die Datenübertragung auf den Server angewiesen sind und große Server so überlastet werden könnten.&lt;br /&gt;
&lt;br /&gt;
Eine hohe ID ist lediglich die dezimale Darstellung der IP des Clients als big-endian (aus der IP A.B.C.D wir A+2^8*B+2^16*C+2^24*D). Ansonsten dient die hohe ID nur der Identifikation, sonst nichts, es interessiert nur, ob die ID kleiner oder größer als 2^24 ist, wie groß oder klein genau, ist irrelevant. Eine hohe ID von 50000000 ist nicht besser als 49999999.&lt;br /&gt;
&lt;br /&gt;
Es gibt eine Ausnahme, manchmal vergeben falsch konfigurierte oder überlastete Server eine niedrige ID, obwohl der Port des Clients erreichbar ist. Das ist selten, kommt aber durchaus vor.&lt;br /&gt;
&lt;br /&gt;
== Welche Ports müssen in einer Firewall oder einem Router für aMule konfiguriert werden? ==&lt;br /&gt;
&lt;br /&gt;
Außer für eine hohe ID, die Port 4662 (bzw. den eingestellten) für einkommende Verbindungen geöffnet voraussetzt, müsen keine speziellen Ports für aMule geöffnet werden.&lt;br /&gt;
&lt;br /&gt;
Abgesehen davon sollten, um eine optimale Transferleistung zu erreichen, zwei weitere Ports geöffnet werden. Zuerst UDP-Port 4672 (kann in den Einstellungen geändert werden) und zweitens TCP-Port+3 (kann nicht verändert werden), also standardmäßig 4665 (4662+3).&lt;br /&gt;
&lt;br /&gt;
ab Version 2.1.0: Für Kademliaunterstützung sollte zusätzlich der Port 4673 geöffnet  werden, ansonsten bleibt aMule als Kademliaclient hinter einem Firewall. (UDP oder TCP?)&lt;br /&gt;
&lt;br /&gt;
== Wofür sind die Ports jeweils da? ==&lt;br /&gt;
&lt;br /&gt;
Da sich die meisten Ports einstellen lassen, werden hier die Vorgabewerte aufgeführt:&lt;br /&gt;
&lt;br /&gt;
; 4662 TCP: Peer-to-Peer (Transfer zwischen den Clients)&lt;br /&gt;
; 4672 UDP: erweitertes *Mule-Protokoll, Warteschlange, Dateinachfrage&lt;br /&gt;
; 4661 TCP: Nur für Server notwendig, hierher verbinden sich die Clients&lt;br /&gt;
; 4665 UDP: Auf dem Server geöffnet, für die Frage nach Quellen, ist immer TCP-Port+3&lt;br /&gt;
; 4711 TCP: Port des *Mule WebServers&lt;br /&gt;
; 4712 TCP: externe Verbindungen, wird für Programme, die sich mit aMule verbinden, z.B. WebServer oder aMuleCMD, benötigt.&lt;br /&gt;
&lt;br /&gt;
Obwohl der zweite UDP-Port offiziell TCP-Port+4 ist, verwenden einige (die meisten?) Implementierungen es als TCP-Port+3. Aber dieser Port wird zumeist nicht verwendet (aMule benutzt ihn nicht, eMule hat ihn nicht).&lt;br /&gt;
&lt;br /&gt;
== Gibt es Grenzen im ED2k-Netzwerk? ==&lt;br /&gt;
&lt;br /&gt;
Ja, aber nicht viele. Zwei natürliche und eine &amp;quot;erzwungene&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
Die natürlichen wurden bereits erwähnt: Zuerst die Probleme mit niedrigen IDs (sie sind auf Transfers über Server angewiesen und zwei Clients mit niedrigen IDs können keine Dateien austauschen) und zweitens, obwohl ED2k eine Peer-to-Peer-Protokoll ist, werden Server benötigt, um das Netz aufzuspannen. Letzteres wird aber durch das neue Kademlia-Protokoll gelöst.&lt;br /&gt;
&lt;br /&gt;
Zur &amp;quot;erzwungenen&amp;quot; Einschränkung: Sie dient dazu, sicherzustellen, dass die im ED2k-Netzwerk teilnehmenden Clients auch zu seinem Bestehen beitragen und das Netz bestehenbleibt. Die Beschränkung wird über das Limit der Uploadbandbreite geregelt. Wenn dieses zwischen 0 und 3.99KB/s (beides inklusive) liegt, wird der Download auf das Dreifache dieses Wertes begrenzt. Liegt das Limit zwischen 4 und 9.99KB/s (ebenfalls inklusive) ist der Download auf das Vierfache beschränkt. Clients mit einem Uploadlimit von 10KB/s oder mehr unterliegen keinen Downloadbeschränkungen. Die Begrenzung wird im Clientprogramm vorgenommen, ließe sich also durch dessen Veränderung umgehen, allerdings würde dies von den Servern mit einem Rauswurf quittiert.&lt;br /&gt;
&lt;br /&gt;
Außerdem bietet jeder Client mindestens drei Uploadplätze, es ist also nicht möglich, mehr als Uploadlimit/3 KB/s pro Platz einzustellen.&lt;br /&gt;
&lt;br /&gt;
Eine weitere Begrenzung gibt es noch: Die maximale Dateigröße im Netz beträgt 4GB.&lt;br /&gt;
&lt;br /&gt;
== Für welche Dateitypen stehen jeweils die einzelnen Filter im Suchfenster? ==&lt;br /&gt;
&lt;br /&gt;
Es ist zu beachten, dass die Filter im Suchfenster nicht nach dem tatsächlicne Inhalt, sondern nach der Dateinamenserweiterung gehen. Die Zuordnung ist folgende:&lt;br /&gt;
*'''Archive:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Audio:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''CDImage:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Bilder:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programme:''' ''.com .exe''&lt;br /&gt;
*'''Videos:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Ein Film, der fälschlicherweise &amp;quot;Geburtstag.gz&amp;quot; benannnt ist, wird also unter den Archiven und nicht unter Videos einsortiert.&lt;br /&gt;
&lt;br /&gt;
== Was ist eine Quelle? ==&lt;br /&gt;
&lt;br /&gt;
Eine Quelle ist ein Client, der einen noch nicht fertiggestellten Block einer Datei anbietet, die in der eigenen Downloadliste steht. Um so mehr Quellen man für eine Datei bekommt, umso mehr Möglichkeiten zum Download hat man und um so schneller wird der Download wahrscheinlich beendet sein.&lt;br /&gt;
&lt;br /&gt;
Zu berücksichtigen ist aber, dass es einen Unterschied zwischen &amp;quot;Quellen&amp;quot; und &amp;quot;nutzbaren Quellen&amp;quot; gibt, wenn man nur eine niedrige ID hat: &amp;quot;Quellen&amp;quot; sind Clients, die ein Stück der Datei anbieten können, das man noch nicht hat, aber nur &amp;quot;nutzbare Quellen&amp;quot; sind solche, von denen man auch tatsächlich herunterladen kann (die also eine niedrige ID haben).&lt;br /&gt;
&lt;br /&gt;
== Was hat es mit diesem ganzen Krempel (Credits, Bewertungen, Ratings, Warteschlangen) auf sich? ==&lt;br /&gt;
&lt;br /&gt;
All diese Konzepte haben mit der Art und Weise zu tun, wie im ED2k-Netzwerk die Uploadwarteschlangenprioritäten ermittelt werden.&lt;br /&gt;
&lt;br /&gt;
Die Bewertung ist der wichtigste Wert: Der Client mit der höchsten Bewertung wird der nächste sein, der einen Uploadplatz bekommt. Die Bewertung wird wie folgt berechnet: Bewertung = (Rating * Wartezeit[s]) / 100&lt;br /&gt;
&lt;br /&gt;
Um das zu verstehen, muss erstmal geklärt werden, was unter dem Rating zu verstehen ist:&lt;br /&gt;
&lt;br /&gt;
Das Rating ist eine objektive Bewertung. Also eine Bewertung unabhängig davon, wie lange ein Client bereits in der Uploadwarteschlange wartet. Wenn sich ein Client in die Uploadwarteschlange einreiht, bekommt er eine Rating von 100 zugewiesen. Danach wird dieser Wert wie folgt verändert:&lt;br /&gt;
&lt;br /&gt;
Abhängig von den Credits des Clients wird die Rating mit 1 bis 10 multipliziert. Entsprechend der Dateipriorität wird sie mit 0.2 bis 1.8 multipliziert (Release 1.8, Hoch 0.9, Normal 0.7, Niedrig 0.6, Sehr niedrig 0.2).&lt;br /&gt;
&lt;br /&gt;
Sehr alte Clients, die das Netzwerk zu sehr belasten werden durch eine halbierte Rating gebremst.&lt;br /&gt;
&lt;br /&gt;
Verbannte Clients bekommen keine Rating (bzw. ihre Rating wird mit Null multipliziert).&lt;br /&gt;
&lt;br /&gt;
Diese Multiplikatoren werden als &amp;quot;Modifikatoren&amp;quot; bezeichnet. Clients mit einem Modifikator größer als Eins werden mit einem gelben Stern im Icon gekennzeichnet.&lt;br /&gt;
&lt;br /&gt;
Bleiben also nur die Credits. Credits sind die Belohnung die man für den Upload an einen anderen Client bekommt. Credits werden jeweils zwischen zwei Clients ausgetauscht, nicht global. Die eigenen Credits kann man also nicht einsehen, wohl aber die aller anderen Clients (also die Credits, die man dem jeweiligen Client schuldet). Da Credits vom hochladenden Client verwaltet werden (sie sind in der clients.met zu finden), kann es passieren, dass man keine Credits bekommt, wenn der empfangende Client dies nicht unterstützt, dieser aber trotzdem beim eigenen Client welche bekommt, wenn er etwas hochlädt.&lt;br /&gt;
&lt;br /&gt;
Der Credits Modifikator für das Rating ist der niedrigere dieser beiden Werte: (Gesamtupload[MB] * 2) / Gesamtdownload[MB] und Wurzel_aus(Gesamtupload[MB] + 2)&lt;br /&gt;
&lt;br /&gt;
Ist das Ergebnis kleiner als Eins ist, wird es auf Eins gesetzt und wenn es größer als 10 ist, wird es auf 10 gesetzt. Zusätzlich wird, wenn der Gesamtupload kleiner als 1MB ist, der Modifikator auf Eins, wenn der Gesamtdownload Null ist, auf 10 gesetzt.&lt;br /&gt;
&lt;br /&gt;
==  Was ist ein Uploadplatz? ==&lt;br /&gt;
&lt;br /&gt;
Wird ein Dateistück hochgeladen, wird die Uploadbandbreite (die von der verwendeten Verbindung und dem eingestellten Uploadlimit abhängt) für einzelne Plätze aufgeteilt, so dass mehrere Blöcke zugleich an verschiedene Clients hochgeladen werden. Wie unter &amp;quot;Gibt es Grenzen im ED2k-Netzwerk?&amp;quot; nachzulesen, stellt jeder Client mindestens drei Uploadplätze zur Verfügung.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-it</id>
		<title>FAQ eD2k-Kademlia-it</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-it"/>
				<updated>2006-01-18T05:41:56Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. di eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;(Tradotto da ''[[User:SNeo|SNeo]]'')&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | '''Italiano''' | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Che cosè ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K è un protocollo originariamente usato dal client P2P (Peer-to-Peer) eDonkey2000, da dove viene il nome. E' un protocollo basato sul sistema client-server, con l'abilità di scambiare fonti tra i client.&lt;br /&gt;
&lt;br /&gt;
La rete ED2K si basa sui server non come reti quali Kazaa, significa che la prima cosa da fare quando avvii aMule è collegarsi a un server (manualmente o automaticamente).&lt;br /&gt;
&lt;br /&gt;
Una volta connesso su un server, il client può ricercare, o localmente (al server in cui si è connesso) o globalmente (a tutti i server), qualsiasi file,e i server a cui è stata inviata la richiesta forniranno al client una lista con tutti i file che corrispondono ai criteri di ricerca.&lt;br /&gt;
&lt;br /&gt;
Se un utente comincia un download, il client chiederà al server le fonti, che saranno fornite dal server sotto forma di indirizzi IP dei client che hanno comunicato al server di avere il file specificato.&lt;br /&gt;
&lt;br /&gt;
== Che cosè Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Traduzione e binari per amule-cvs presenti su [http://gift.altervista.org/index_it.php?section=50 questo sito]&lt;br /&gt;
&lt;br /&gt;
== Kademlia è come Overnet? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè un chunk? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè un hash? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Perchè dopo una ricerca, certi file che sono gli stessi appaiono come file differenti tra i risultati, sebbene abbiano lo stesso nome? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè il Basso e Alto ID? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quali porte devo configurare in un firewall o in un router per avviare aMule? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Cosa fa ogni porta? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ci sono qualche limitazioni nella rete ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Traduzione e binari per amule-cvs presenti su [http://gift.altervista.org/index_it.php?section=50 questo sito]&lt;br /&gt;
&lt;br /&gt;
== Nella finestra ricerca, che filtro si usa per ogni tipo di file? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè una fonte? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè tutta quella roba sui crediti, velocità e punteggio? ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Che cosè uno slot? ==&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-es</id>
		<title>FAQ eD2k-Kademlia-es</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-es"/>
				<updated>2006-01-18T05:40:36Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added Polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. sobre eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt;(Traducido por ''[[User:Kno|KNO]]'')&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | '''Español''' | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K es un protocolo usado originalmente por el cliente P2P (Peer-to-Peer) [[eDonkey2000]], que es de donde proviene. Es un cliente basado en la arquitectura cliente-servidor, con la posibilidad de intercambio de fuentes entre clientes.&lt;br /&gt;
&lt;br /&gt;
La red ED2K está basado en servidores no como las redes P2P como [[Kazaa]], lo cual quiere decir que lo primero que tienes que hacer cuando ejecutas [[aMule]] es conectarte a un servidor (manual o automáticamente).&lt;br /&gt;
&lt;br /&gt;
Una vez conectado correctamente a un servidor, el cliente puede buscar cualquier fichero, tanto localmente (en el servidor al que está conectado) o globalmente (todos los servidores), y los servidores responderán con una lista de todos los ficheros que concuerden con los parámetros de la búsqueda.&lt;br /&gt;
&lt;br /&gt;
Si el usuario comienza una descarga, el cliente empezará a pedir a los servidores fuentes, que los servidores responderán en forma de direcciones IP de clientes que han dicho al servidor que tienen ese fichero.&lt;br /&gt;
&lt;br /&gt;
Lo que se hace en este momento es pedir un sitio en las colas de todas estas fuentes.&lt;br /&gt;
Cuando llegas a la primera posición de una de estas colas, el cliente remoto te empieza a dar un chunk lee [[FAQ_ed2k-es#¿Qué_es_todo_esto_de_créditos_tasa_y_puntuación?|¿Qué es todo esto de créditos tasa y puntuación?]], y cuando has descargado ese chunk te vuelves a poner en la cola. De esta manera, diferentes chunks están distribuidos por la red ED2K, así que aunque en un momento dado nadie tenga el fichero completo, se podría completar obteniendo diferentes chunks de gente diferente (es bien sabido que la gente tiende a dejar de compartir un fichero una vez que se lo ha descargado).&lt;br /&gt;
&lt;br /&gt;
Fijate que un cliente solo da '''un''' chunk a la vez a otro cliente. Aunque un cliente esté en dos colas de subida de diferentes archivos y lleguen al principio de la cola, ese cliente solo dará uno de los archivos a la vez al otro cliente (el otro envio, dependiendo de la aplicación ED2K que use el cliente, probablemente quedará con la máxima prioridad de envio, pero no comenzará hasta que el otro chunk haya sido completamente enviado).&lt;br /&gt;
&lt;br /&gt;
Si ambos usuarios tienen ID alta (ver &lt;br /&gt;
[[FAQ_ed2k-es#¿Qué_es_ID_baja_e_ID_alta?|¿Qué es ID baja e ID alta?]]) la transferencia se realizará directamente de cliente a cliente (Peer-to-Peer), pero si uno de los clientes tiene ID baja, la conexión se establecerá a través del servidor, ya que un cliente con ID baja no puede aceptar conexiones entrantes. Como resultado, dos clientes con ID baja '''no pueden''' conectarse el uno al otro.&lt;br /&gt;
&lt;br /&gt;
== ¿Que es Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia es la evolución natural de la red ED2K. Kademlia es el futuro. Mira [[FAQ_ed2k-es#¿Hay_limitaciones_en_la_red_ED2K?|¿Hay limitaciones en la red ED2K?]] para mas información de por que'Kademlia es necesario.&lt;br /&gt;
&lt;br /&gt;
Como Kademlia es una red descentralizada, desaparece el cuello de botella que se creaba con la necesidad de servidore (a pesar de que [[Lugdunum]] ha hecho un gran trabajo reduciendo este cuello de botella). Ahora, en vez de conectarte a un servidor, te conectas a un cliente (con una dirección IP y puerto conocidos), que soporte la red [[Kademlia]]. Esto se llama Boot Strapping.&lt;br /&gt;
&lt;br /&gt;
Una vez conectado, dependiendo de la posibilidad de aceptar conexiones entrantes, se te dará el estado de &amp;quot;abierto&amp;quot; o &amp;quot;firewalled&amp;quot;, que es parecido a IDAlta e IDBaja en la red ED2K. En este momento se te da una ID.&lt;br /&gt;
&lt;br /&gt;
Cuando se busca, cada cliente actúa como un pequeño servidor y se le da la responsabilidad de ciertas palabras clave o fuentes. Esto añade compejidad a encontrar fuentes, ya que no tienes un servidor centrar al que preguntar, pero a cambio tendrás tu consulta propagada através de la red.&lt;br /&gt;
&lt;br /&gt;
Actualmente, versiónes estable de aMule no soporta Kademlia, pero lo incorporará pronto. Si ud quiere probar Kademlia, ya esta incorporado en [[AMule_CVS-es|aMule-CVS]].&lt;br /&gt;
&lt;br /&gt;
== ¿Es Kademlia lo mismo que Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Corto, claro y conciso: No. Overnet es la evolución natural sin servidores del programa eDonkey, mientras que Kademlia es la evolucion naturar sin servidores de los clientes *Mule. Aún así, es la misma filosofía, pero diferentes reglas. Para saber como funciona Overnet, ve a http://www.edonkey2000.com/documentation/how_on.html pero ten en cuenta que el desarrollo de Overnet es cerrado hasta que llegue a la versión 1.0, mientras que el de Kademlia es completamente abierto desde el principio.&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es un chunk? ==&lt;br /&gt;
&lt;br /&gt;
En el protocolo ED2K, para prevenir la descarga de archivos corruptos, cada archivo se divide en varias partes, que son conocidas como ''chunks'' y se obtiene el hash de cada ''chunk'' (lee más abajo para saber que es un [[FAQ_ed2k-es#¿Qué_es_un_hash?|¿Qué es un hash?]]). Cada ''chunk'' tiene 9.28MB, así que, por ejemplo, un archivo de 15MB se divide en dos chunks (9.28MB + 5.72MB), un archivo de 315KB será un solo chunk y un archivo de 100MB se dividirá en 11 chunks (10x9.28MB + 7.2MB).&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es un hash? ==&lt;br /&gt;
&lt;br /&gt;
Dividiendo cada archivo en chunks (ver [[FAQ_ed2k-es#¿Qué_es_un_chunk?|¿Qué es un chunk?]]) nos evitamos el bajar un archivo entero incorrecto ya que únicamente tendremos que bajar de nuevo el chunk corrupto, pero se necesita un método para identificar chunks corruptos. Esto se hace usando el algoritmo de hash MD4.&lt;br /&gt;
&lt;br /&gt;
Un [[MD4 hash]] es un valor único para cada chunk que es el resultado de una función matematica en cada bit del chunk. Esto significa que modificando un único bit en un chunk el hash resultante será completamente distinto. De este modo se asegura la integridad de cada parte de los archivos a la vez que se descargan.&lt;br /&gt;
&lt;br /&gt;
No solo se obtiene el hash de los chunks, sino que también se obtiene del archivo completo (todos los chunks juntos), así que cada fichero en la red ED2K tiene un identificador único. El hash del archivo no se crea haciendo hash del archivo, sino que se obtiene haciendo el hash de todos los chunks del archivo.&lt;br /&gt;
			&lt;br /&gt;
En realidad se necesita tanto el hash del archivo como su tamaño. Esta información está empotrada en las direcciones &amp;lt;i&amp;gt;URL&amp;lt;/i&amp;gt; del protocolo ED2k que se ven en multitud de sitios. &lt;br /&gt;
&lt;br /&gt;
Por ejemplo:&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/ &lt;br /&gt;
&lt;br /&gt;
Las partes interesantes son la quinta parte, &amp;quot;2407949&amp;quot;, que es el tamaño del fichero en bytes y la última parte, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, que es el propio hash, expresado en notación hexadecimal, de 32 caracteres de longitud.&lt;br /&gt;
&lt;br /&gt;
El nombre de archivo es irrelevante en el procoso de identificar el archivo.&lt;br /&gt;
&lt;br /&gt;
== ¿Por qué después de buscar, algún archivo aparece como diferente fichero en los resultados, a pesar de que tienen el mismo nombre? ==&lt;br /&gt;
&lt;br /&gt;
Si has entendido [[FAQ_ed2k-es#¿Qué_es_un_hash?|¿Qué es un hash?]] entenderás esto rápidamente. Cuando se inicia una búsqueda, el servidor le dice al cliente ED2K el nombre del archivo encontrado y el hash del archivo completo, para cada archivo que concuerde con la búsqueda. Si dos archivos, a pesar de ser el mismo, tienen alguna diferencia en su contenido, no importa si es mayor o menor, el hash es diferente, así que se considera como un archivo diferente. Esta es la razón por la que dos archivos con nombre diferente aparecen como el mismo archivo: en la red ED2K, el nombre no importa, el hash si.&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es ID baja e ID alta? ==&lt;br /&gt;
&lt;br /&gt;
A cada cliente se le asigna un número de identificación, un ID, que sea único y que lo distinguirá de cualquier otro cliente en el servidor. Si este ID está por debajo de 16777216 (16 millones) entonces tienes una ID baja. Si está por encima, entonces tienes una ID alta. Que te den una ID baja o una ID alta solo depende de si tienes abierto el puerto 4662 (u otro configurado en las Preferencias). Si has entendido [[FAQ_ed2k-es#¿Qué_es_ED2K?|¿Qué es ED2K?]] entenderás las oportunidades que tienen los clientes que tienen ID baja, ya que no pueden conectarse a muchos otros clientes (los que tienen ID baja) y a los que si se puede conectar, lo hace a través del servidor, asi que tendrás tasas bajas de descarga. Esto es por lo que el puerto 4662 TCP (o el que hayas configurado en las preferencias) es tan importante. También, algunos servidores defectuosos rechazan clientes con ID baja ya que los clientes con ID baja tienen que transferir a traes de ellos, así que los grandes servidores se sobrecargarían.&lt;br /&gt;
&lt;br /&gt;
Para los clientes con ID alta, su ID es el resultado de una operación matemática con su IP que corresponde a A + 256*B + 256*256*C + 256*256*256*D, donde la IP es A.B.C.D. También hay que pensar que este ID es para identificarse, nada más, aparte de tener un ID por encima o por debajo del número 16777216, no importa si el número es mayor o menor. Esto significa que un cliente con una id como 50000000 no es mejor que un cliente con una ID como 49999999.&lt;br /&gt;
Hay una exepción. Algunos servidores mal configurados o muy ocupados dan ID baja a algunos clientes a pesar de que su puererto 4662 TCP está abierto. Esto es una rara excepción, pero puede pasar a veces.&lt;br /&gt;
&lt;br /&gt;
Para conocer si se tiene abiertos o no los puertos, se puede visitar [http://www.amule.org/testport.php la página de tests de puertos].&lt;br /&gt;
&lt;br /&gt;
== ¿Que puertos tengo que configurar en un firewall o router para ejecutar aMule? ==&lt;br /&gt;
&lt;br /&gt;
No hay que tener abiertos ninguno en concreto para que funcione aMule, pero si para tener una ID alta. Como se ha mencionado arriba, para tener una ID alta, el puerto 4662 TCP (o el que esté configurado en las Preferencias) debe estar escuchando.&lt;br /&gt;
&lt;br /&gt;
A parte de ese puerto, para tener una experiencia óptima con ED2K, deben estar abiertos dos puertos más. El primero el puerto UDP 4672 (que puede ser configurado por otro número en las Preferencias también) y segundo, el puerto secundario UDP que no puede ser configurado en las Preferencias. Este puerto UDP es tu puerto TCP + 3 (por ejemplo: TCP=4662 entonces UDP=4665).&lt;br /&gt;
&lt;br /&gt;
== ¿Qué hace cada puerto? ==&lt;br /&gt;
&lt;br /&gt;
Bien, como la mayoria pueden ser configurado por otro número, ponemos los que son por defecto:&lt;br /&gt;
&lt;br /&gt;
; 4662 TCP: Transferencias cliente a cliente.&lt;br /&gt;
; 4672 UDP: Protocolo extendido de eMule, puestos en cola, Ping para Repetición de Archivo&lt;br /&gt;
; 4661 TCP: Abierto en servidores. Permite conectarse al servidor.&lt;br /&gt;
; 4665 UDP: Abierto en servidores. Permite pedir fuentes. Es siempre el mismo que el puerto de conectarse + 3.&lt;br /&gt;
; 4711 TCP: El puerto donde escucha el Sercidor Web.&lt;br /&gt;
; 4712 TCP: Puerto para Conexiones Externas. Se usa para comunicar aMule con otras aplicaciones como el Servidor Web o aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
Aunque oficialmente el puerto UDP secundario es el puerto del servidor TCP + 4, algunas (la mayoría?) de las implementaciones lo usan como el puerto TCP del cliente + 3. En cualquier caso, este puerto no se usa mucho (aMule no lo usa y eMule no lo tiene).&lt;br /&gt;
&lt;br /&gt;
== ¿Hay alguna limitación en la red ED2K? ==&lt;br /&gt;
&lt;br /&gt;
No muchas, pero si, las hay: dos límites naturales y una limitación &amp;quot;forzada&amp;quot;. Los dos límites naturales se han mencionado antes. El primero el problema de los usuarios con ID baja (sus transferencias envian datos a través del servidor y dos clientes con ID baja no pueden compartir entre ellos). La segunda, aunque ED2K es un protocolo p2p, necesita de servidores para establecer las conexiones p2p. Este último esta solucionado en el protocolo Kademlia.&lt;br /&gt;
&lt;br /&gt;
En cuanto a la limitación &amp;quot;forzada&amp;quot;, es solo un límite para asegurarse que los clientes compartan y que la red ED2K no desaparezca: los clientes que tienen un limite de subida de X KBps, donde X está entre 0 y 3.99 (ambos incluido) pueden descargar a un máximo de X*3 KBps. Los clientes que tienen un límite de subida de Y KBps, donde Y está entre 4 y 9.99 (ambos incluidos) pueden descargar a un máximo de Y*4 KBps. Los clientes con un límite de subida de 10Kbps o más no tienen límite de descarga. Esta restricción se establece en la aplicación cliente y puede ser eliminada hackeando el código, pero probablemente resulte en que seas baneado en los servidores que te conectes.&lt;br /&gt;
&lt;br /&gt;
También, cualquier cliente está forzado para permitir al menos tres slots de subida, así que no es posible permitir mas que limite_subida/3 KBps por slot.&lt;br /&gt;
&lt;br /&gt;
Hay un límite más: El tamaño máximo del fichero es de 4GB.&lt;br /&gt;
&lt;br /&gt;
Y por parte de los clientes, habitualmente se limita el numero de carácteres de los nombres de archivo a 161.&lt;br /&gt;
&lt;br /&gt;
== ¿Hay alguna limitación en la red Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Sólo una. Al tener que mantener compatibilidad con la red ed2k en lo que a identificación única de los archivos se refiere, la limitación de que el tamaño máximo de los archivos sea 4GB también existe en la red Kademlia.&lt;br /&gt;
*Por lo mismo, existe la limitación de 161 carácteres en los nombres de archivo.&lt;br /&gt;
&lt;br /&gt;
== En la ventana de Búsqueda, ¿Que filtros hay pra cada tipo de archivo? ==&lt;br /&gt;
Ten en cuenta que los filtros de la ventana de Búsqueda no dependen del tipo de archivo, si no de las extensiones de los nombres de archivo, de la siguiente manera:&amp;lt;br&amp;gt;&lt;br /&gt;
*'''Archivos:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Audio:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Imágenes de CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Imágenes:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programas:''' ''.com .exe''&lt;br /&gt;
*'''Vídeos:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Por ello, una película cuyo nombre sea &amp;quot;Cumpleaños.zip&amp;quot; aparecerá en el filtro Archivos, pero no en el filtro Vídeos.&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es una fuente? ==&lt;br /&gt;
&lt;br /&gt;
Una fuentes es un cliente que está compartién algún chunk de algún archivo que tienes en tu cola de descargas y que aún no has completado. Obviamente, cuantas mas fuentes puedas conseguir de un determinado archivo, mas posibilidades tendrás de descargar el archivo y más rápidamente lo descargaras. Ten encuenta que hay diferencias entre &amp;quot;fuentes&amp;quot; y &amp;quot;fuentes disponibles&amp;quot; si tienes ID baja, ya que fuentes serán clientes que comparten un chunk o archivo que aún no has completado mientras que &amp;quot;fuentes disponibles&amp;quot; serán los clientes que comparten un chunk o archivo que aún no has completado y desde los que tu puedes descargar (esto es, una fuente para quien tiene ID alta)&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es todo esto de créditos, tasa y puntuación? ==&lt;br /&gt;
Estos tres conceptos tienen que ver con cómo la red ED2k establece las preferencias en las colas de subida.&lt;br /&gt;
&lt;br /&gt;
La puntuación es el valor más importante: el cliente con la puntuación más alta será el siguiente al que se le asignará un slot. El valor de la puntuación es: puntuación = tasa x tiempo_esperando_en_segundos / 100&lt;br /&gt;
pero para entenderlo tenemos que saber que es la tasa.&lt;br /&gt;
&lt;br /&gt;
La tasa se puede entender como una preferencia objetiva, esto es, la preferencia que se da sin tener en cuenta cuánto tiempo ha estado esperando. Cuando un cliente se añade a la cola de subida, se le da una tasa de 100, este valor se va modificando de acuerdo con lo siguiente:&lt;br /&gt;
&lt;br /&gt;
La cantidad de créditos, la tasa se multiplica de 1x a 10x.&lt;br /&gt;
Dependiendo de la prioridad del fichero puede multiplicarse de 0.2x a 1.8x (Lanzamiento 1.8x, Alta 0,9x Normal 0.7x, Baja 0,6x, Muy baja 0.2x).&lt;br /&gt;
&lt;br /&gt;
Los usuario de clientes viejos que crean mucho tráfico en la red serán penalizados multiplicando su tasa por 0.5x.&lt;br /&gt;
&lt;br /&gt;
Los usuarios ''baneados'' no tendrán tasa (esto es, su tasa se multiplicara por 0).&lt;br /&gt;
Estos valores multiplicadores son conocidos como &amp;quot;modificadores&amp;quot;. Los clientes con una valor modificador mayor que 1 serán cargados con amarillo en el icono.&lt;br /&gt;
&lt;br /&gt;
Así que solo nos falta de saber qué son los créditos. Los créditos son un premio por subir archivos a un cliente. Los créditos se intercambian entre dos clientes y no son globales, así que tu no puedes ver tus propios créditos pero puedes saber cuantos créditos tienen los otros usuarios contigo (esto es, los créditos que debes a esos clientes). Como los créditos son manejados por el cliente que sube, puedes estar subiendo a un cliente que no soporte los créditos, asi que no ganarás créditos con él, pero ese cliente ganará créditos contigo si obtienes algo de él, ya que tú si tienes soporte de créditos. Estos créditos se guardan en el fichero clients.met.&lt;br /&gt;
&lt;br /&gt;
El modificador usado para la tasa es el menor de entre:&lt;br /&gt;
&lt;br /&gt;
(upload_total x 2)/download_total o sqrt(upload_total+2) donde upload_total y download_total están medidos en MiBs.&lt;br /&gt;
&lt;br /&gt;
Si el resultado es menor que 1, entonces se pone a 1 y si es mayor de 10, se pone a 10. Además, si el upload_total es menor que 1MB, el modificador se pone a 1 y si el download_total es 1, el modificador se pone a 10.&lt;br /&gt;
&lt;br /&gt;
== ¿Qué es un slot? ==&lt;br /&gt;
&lt;br /&gt;
Cuando estás subiendo archivos, tu ancho de banda (que puede variar dependiendo de los limites de subida o de el límite natura de tu tipo de conexión) se dividirá en slots. Así, cada slot tendrá una cantidad de KBps que será asignada a cada cliente que intente descargar algo de tí.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia</id>
		<title>FAQ eD2k-Kademlia</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia"/>
				<updated>2006-01-18T05:38:43Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: added Polish translation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. on eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''English''' | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | [[FAQ_eD2k-Kademlia-pl|Polski]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== What is ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K is a protocol originally used by the P2P (Peer-to-Peer) client [[eDonkey2000]], which is where the name comes from. It is a server-client based protocol, with the ability to exchange sources between clients. &lt;br /&gt;
&lt;br /&gt;
The ED2K network is server based like many other P2P networks such as [[Kazaa]] (Kazaa is server based, but hides the server connection from the user), which means that the first thing you do when you run [[aMule]] is to connect to a server (either manually or automatically). &lt;br /&gt;
&lt;br /&gt;
Once successfully connected to a server, the client can search, either locally (the connected server) or globally (all servers), for any file and the servers asked will provide the client with a list of all the files which match search parameters. &lt;br /&gt;
&lt;br /&gt;
If the user starts a download, the client will then ask the server for sources, which the server will return in the form of IP addresses for the clients that have told the server that they have the specific file.&lt;br /&gt;
&lt;br /&gt;
Then the remote client will begin to upload a whole chunk to your client as soon as you are the [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|first in the queue]], and when the chunk has been completly sent, you will be taken back to its upload queue. This way different chunks get spread around the ED2K network, so that, although no-one may have at a same given moment the complete file, it may be completed by downloading the different chunks from different people (it is well known that users tend to stop sharing a file once it has been completed).&lt;br /&gt;
&lt;br /&gt;
Note that clients upload only '''one''' chunk at a time to another client. Even if a client is in the upload queue of two different files of a same user and gets to the top of both, that user will only upload one of the files to that client (the other upload, depending on the ED2K application the client uses, will probably remain as a maximum priority upload, but will not begin until the other chunk has been successfully uploaded).&lt;br /&gt;
&lt;br /&gt;
If both users have HighID (see [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|What is LowID and HighID?]]) the transfer will be done directly from client to client (Peer-to-Peer), but if one of the clients have LowID, the connection will be established through the server, since LowID cannot accept incoming connections. As a result, two LowID clients '''cannot''' connect to each other.&lt;br /&gt;
&lt;br /&gt;
== What is Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia is a natural evolution of the ED2K network. Kademlia is the future. See [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Are there any limitations on the ED2K network?]] for more information on why Kademlia is necessary.&lt;br /&gt;
&lt;br /&gt;
Since Kademlia is a decentralized network, it removes the bottleneck that was previously caused by the need for servers (though [[Lugdunum]] has done great work in reducing this bottleneck). Now, instead of connecting to a server, you just connect to a client (with a known IP-address and port), which supports the network [[Kademlia]]. This is called the Boot Strapping.&lt;br /&gt;
&lt;br /&gt;
Once connected, depending on your ability to accept incoming connections, you are given either &amp;quot;open&amp;quot; or &amp;quot;firewalled&amp;quot; status, which is similar to the HighID and LowID of the ED2K network. Then you are given an ID. &lt;br /&gt;
&lt;br /&gt;
When searching, each client acts as a small server and is given responsibility for certain keywords or sources. This adds to the complexity of finding sources, as you no longer have a central server to ask, but instead will have to propagate the query through the network.&lt;br /&gt;
&lt;br /&gt;
Kademlia is supported in aMule since the 2.1.0 version.&lt;br /&gt;
&lt;br /&gt;
== Is Kademlia the same as Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Short and clear: No. Overnet is the natural serverless evolution of the eDonkey software, while Kademlia is the natural serverless evolution of *Mule clients. Both are based on the original [[Kademlia]] algorithm but have been applied in different ways and therefore are incompatible. So, it's the same philosophy, but different rules. To learn about how Overnet works, refer to http://www.edonkey2000.com/documentation/how_on.html but, keep in mind, Overnet's development is closed until it reaches version 1.0, while Kademlia's development is completly open from the very beginning.&lt;br /&gt;
&lt;br /&gt;
== What is a chunk? ==&lt;br /&gt;
&lt;br /&gt;
In the ED2K protocol, to avoid sharing corrupt files, each file is divided into various parts, which are known as ''chunks'', and then each chunk is hashed (read below to know what a [[FAQ_eD2k-Kademlia#What_is_a_hash?|hash]] is). Each chunk is 9.28MB in size, so a 15MB file will be divided into two chunks (9.28MB + 5.72MB), a 315KB file will be a single chunk and a 100MB file will be divided into 11 chunks (10x9.28MB + 7.2MB).&lt;br /&gt;
&lt;br /&gt;
== What is a hash? ==&lt;br /&gt;
&lt;br /&gt;
Dividing each file into chunks (see [[FAQ_eD2k-Kademlia#What_is_a_chunk?|What is a chunk?]]) will avoid the problem of downloading a whole corrupted file since only the corrupted chunk will have to be downloaded again, but a method to identify corrupted chunks is needed. This is done by using MD4 hashes.&lt;br /&gt;
&lt;br /&gt;
A [[MD4 hash]] is a unique value each chunk is given and is the result of a mathematical operation on every single bit on the chunk. This means that modifying a single bit in a chunk would result in a completely different hash. That means that the [[client]] needs to verify the integrity of each part of a file as it is downloaded. &lt;br /&gt;
&lt;br /&gt;
Not only are the chunks hashed but also, in order to get a file-hash, all chunks's hashes are concatenated one after the other in their file order (that is: chunk1's_hash+chunk2's_hash+chunk3's_hash+...) and the resulting string is hashed. This way, each file on the ED2K network has a unique identifier. The file hash isn't taken from hashing the whole file, but from hashing the value of the chunk's hashes.&lt;br /&gt;
&lt;br /&gt;
In reality, you need both the hash of a file and its size. These pieces of information is embedded in the ED2k URLs found in many places.&lt;br /&gt;
&lt;br /&gt;
Take this for example:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/ &lt;br /&gt;
&lt;br /&gt;
The interesting parts are the fifth part, &amp;quot;2407949&amp;quot;, which is the size of the file in bytes and the last part, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, which is the hash itself, stored as hex-decimals, 32 letters long.&lt;br /&gt;
&lt;br /&gt;
The filename itself is irrelevant in the process of identifying the file.&lt;br /&gt;
&lt;br /&gt;
== Why after searching, some files which are the same appear as a different file in the results, although they even have the same name? ==&lt;br /&gt;
&lt;br /&gt;
If you understood &amp;quot;What is a hash&amp;quot; you will understand this quickly. When a search is started, the server tells the ED2K client the filename of the found file and the hash of the complete file for each file which matches the search. If two files, although being the same, have some difference in their content, no matter if it's big or small, the hash is different, so they are considered as a different file. That's also the reason why two file with different file name appear as the same file: on the ED2K network, the filename isn't important, the hash is.&lt;br /&gt;
&lt;br /&gt;
== What is LowID and HighID? ==&lt;br /&gt;
&lt;br /&gt;
Each client is assigned an ID (Identification) number which is unique and will distinguish the client from all other clients on the server. If this ID is below 16777216 (16 million) then you have a LowID and anything over is a HighID. Whether your client receives a high or low ID will depend on your client and whether or not the Client TCP port is open. Client TCP Port is an customisable option located in Preferences -&amp;gt; Connection. The default port is 4662 which is fine. If you understand [[FAQ_ed2k#What_is_ED2K?|what ED2K is]], odds are you'll understand the chances that clients with LowIDs may be unable to connect to other clients with LowIDs which reduces transfer rates significantly. This is the reason why having port 4662 TCP (or the one set in Preferences) is so important. Some of the larger servers refuse clients with LowIDs and disallow connections since LowID clients have data transfered through the server, rather than directly from the other client, which in turn adds more overhead for the server.&lt;br /&gt;
&lt;br /&gt;
For clients with a HighID, their ID is the result of a mathematical operation with their IP which corresponds to A + 256*B + 256*256*C + 256*256*256*D, where the IP is A.B.C.D. Keep in mind that this ID has identification purposes as well. Apart from having an ID over or under 16777216, it does not matter if the ID is bigger or smaller. This means a client with an ID of 50000000 isn't any better than a client with an ID of 49999999. The only exception is at times servers are either incorrectly configured or are very busy and issue LowIDs to clients even though port 4662 TCP is open. These are rare exceptions but it can happen sometimes.&lt;br /&gt;
&lt;br /&gt;
If you're unsure about having proper port settings, you can test your ports [http://www.amule.org/testport.php here].&lt;br /&gt;
&lt;br /&gt;
== Which ports do I have to configure in a firewall or router to run aMule? ==&lt;br /&gt;
&lt;br /&gt;
One has to distinguish between incoming and outgoing connections. Normally, all ports of a router are open for sending data (outgoing connection).&lt;br /&gt;
&lt;br /&gt;
So, in this normal case, You only have to configure the ports for ''incoming'' connections:&lt;br /&gt;
&lt;br /&gt;
aMule works even with no specific ports opened, but you won't get a HighID in this case. As mentioned above, to be given a HighID, port 4662 TCP (or the one set in the Preferences) must be listening (i.e. opened in your firewall and forwarded in your router).&lt;br /&gt;
&lt;br /&gt;
Apart from that port, to have an optimal ED2K experience, two more port should be enabled for listening as well: UDP ports 4672 and 4665 (that is, TCP_PORT+3) (both can be changed to any other number in the Preferences).&lt;br /&gt;
&lt;br /&gt;
== What does each port do? ==&lt;br /&gt;
&lt;br /&gt;
Well, since most ports can be configured to be set to any other number, the defaults will be listed. The traffic direction is from client perspective (you):&lt;br /&gt;
*4661 TCP (outgoing): Port, on which a server listens for connection (defined by server).&lt;br /&gt;
*4662 TCP (outgoing and incoming): Client to client transfers.&lt;br /&gt;
*4665 UDP (outgoing): Used for global server searches and global source queries. This is always Client TCP port + 3&lt;br /&gt;
*4672 UDP (outgoing and incoming): Extended eMule protocol, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: WebServer listening port.&lt;br /&gt;
*4712 TCP: External Connection port. Used to communicate aMule with other applications such as aMule WebServer or aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Are there any limitations on the ED2K network? ==&lt;br /&gt;
&lt;br /&gt;
Not much, but yes, there are: two natural limits and a &amp;quot;forced&amp;quot; limitation. The two natural limits have already been mentioned before. First, the issues on LowID users (their transfers involve data through the server and two LowID clients can't share between them). The second, although ED2K is a p2p protocol, it needs servers to establish the p2p connection. This latter one is solved in the Kademlia protocol.&lt;br /&gt;
&lt;br /&gt;
About the &amp;quot;forced&amp;quot; limitation, it's only a limit to make sure that clients share so that the ED2K network will not disappear: clients which have an upload limit of X KBps, where X is between 0 and 3.99 (both included) can download at a maximum of X*3 KBps. Clients which have an upload limit of Y KBps, where Y is Between 4 and 9.99 (both included) can download at a maximum of Y*4 KBps. Clients with an upload limit of 10KBps or more have no downloading limitations. This restriction is set in the client application so it could be by-passed by hacking the code, but that would probably result in being banned from the servers you connect to.&lt;br /&gt;
&lt;br /&gt;
Also, any client is forced to allow at least three upload slots, so it's not possible to allow more than upload_limit/3 KBps per slot.&lt;br /&gt;
&lt;br /&gt;
There is one last limit: Network file limit is slightly under 4GB aproximately (exactly 4294967295 bytes, allthough aMule will only support files up to 4290048000 bytes).&lt;br /&gt;
&lt;br /&gt;
Additionally, this is not an eD2k limitation but a server limitation, servers will only send 300 results for your searches, so don't expect any more results.&lt;br /&gt;
&lt;br /&gt;
And on the clients side, filenames are usually limited to 161 [[character]]s.&lt;br /&gt;
&lt;br /&gt;
== Are there any limitations on the Kademlia network? ==&lt;br /&gt;
&lt;br /&gt;
*As it is a network derived from the ed2k network and, therefore, has to maintain compatibility when it comes to identify files uniquely, the 4GB maximum file size limit exisits in the Kademlia network too.&lt;br /&gt;
*Same happens with the 161 characters limit.&lt;br /&gt;
&lt;br /&gt;
== In search window, what filter stands for which filetype? ==&lt;br /&gt;
&lt;br /&gt;
Keep in mind that the filters in the search window don't depend on the file type, but on the extensions of the filenames, in the following way:&lt;br /&gt;
*'''Archive:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Audio:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''CDImage:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Picture:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Program:''' ''.com .exe''&lt;br /&gt;
*'''Video:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
So, a movie file that has the name &amp;quot;Birthday.zip&amp;quot; will appear in the Archive filter, but not in the Video filter.&lt;br /&gt;
&lt;br /&gt;
== What is a source? ==&lt;br /&gt;
&lt;br /&gt;
A source is a client which is sharing some chunk in some file you have in your downloading queue which you still have not completed. Obviously, the more sources you can get for a given file, the more possibilities you have to download the file and the quicker you'll download it. Keep in mind that there's a difference between &amp;quot;sources&amp;quot; and &amp;quot;available sources&amp;quot; if you're on LowID, since &amp;quot;sources&amp;quot;s stands for clients sharing a chunk or file you still haven't completed, while &amp;quot;available sources&amp;quot; stands for clients sharing a chunk or file you still haven't completed and from who you can download (that is, a source who is on HighID).&lt;br /&gt;
&lt;br /&gt;
== What is all this talk about credits, ratings and scoring about? ==&lt;br /&gt;
&lt;br /&gt;
All three concepts have to do with the way in which the ED2K network establishes the uploading queues preferences.&lt;br /&gt;
&lt;br /&gt;
The score is the most important value: the client with the higher score will be the next client which you'll provide a slot to. The way in the score value is set is this: score = rate x time_waiting_in_seconds / 100&lt;br /&gt;
So, to understand this, we must known what rate is.&lt;br /&gt;
&lt;br /&gt;
Rate is can be understood as an objective preference. This is, the preference which a client is given without caring how much time it's been waiting. When a client is added to the uploading queue, it gets a rate of 100. This value is modified following according to this:&lt;br /&gt;
&lt;br /&gt;
According to the amount of credits, the rate will be multiplied by 1x to 10x.&lt;br /&gt;
Depending on the file priority, it will be multiplied by 0.2x to 1.8x (Release 1.8x, High 0.9x, Normal 0.7x, Low 0.6x, Very Low: 0.2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Users on specific old clients which load too much the network traffic will get penalized by multiplying their rate by 0.5x.&lt;br /&gt;
&lt;br /&gt;
Banned clients will instantly get no rate (that is, their rate will by multiplied by 0).&lt;br /&gt;
&lt;br /&gt;
This multiplying values are known as &amp;quot;modifiers&amp;quot;. Clients with a modifier value strictly bigger than 1 will be marked as yellow in the icon.&lt;br /&gt;
&lt;br /&gt;
So we only have credits left to known. Credits are a prize you get for uploading files to a specific user. Credits are exchanged between two specific clients, they are not global, so your own credits can't be viewed, although you can know the credits any other user has on you (that is, the credits you owe that client). Since credits are managed by the uploading client, you might be uploading to some client with no credits support, so you will gain no credits on him, although that client will actually get credits on you if it uploads to you, since you do have credits support. This credits are stored in clients.met file.&lt;br /&gt;
&lt;br /&gt;
The credits modifier used by rate is the lower between these two: &amp;lt;br&amp;gt;(upload_total x 2)/download_total or sqrt(upload_total+2) where both upload_total and download_total are measured in MBs.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
==  What is a slot? ==&lt;br /&gt;
&lt;br /&gt;
When uploading files, your upload bandwidth (which may vary depending on the upload limit or the natural connection-type upload limit) will be divided into slots. So, each slot is an amount of KBps which will be assigned to each client who tries to download from you.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:21:58Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:17:30Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia-pl#O_co_chodzi_w_tych_wszystkich_kredytach,_stawkach_i_punktach?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:15:06Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;br /&gt;
&lt;br /&gt;
== Czym jest slot? ==&lt;br /&gt;
&lt;br /&gt;
Kiedy wysyłsz pliki, twoja przepustowość (która może być różna w zależności od limitu wysyłania oraz naturalnych właściwości łącza) będzie dziolona na sloty. Tak więc, każdy slot jest to ilość KBps, która będzie przydzielana każdemu klientowi próbującemu pobrać od ciebie.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:06:46Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, stawkach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzez pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożyna przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:04:54Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, stawkach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&amp;lt;br&amp;gt;&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzeż pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożony przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:04:26Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =O co chodzi w tych wszystkich kredytach, stawkach i punktach?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący:&lt;br /&gt;
&amp;lt;br&amp;gt;punkty = stawka x czas_czekania_w_sekundach / 100&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzeż pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożony przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:03:33Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest źródło?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (tzn. źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący: punkty = stawka x czas_czekania_w_sekundach / 100&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzeż pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożony przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T05:01:31Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
*Ponieważ jest to sieć pochodząca od ED2K oraz musi być z nią zgodna, jeśli chodzi o identyfikację plików, limit 4GB na plik obowiązuje również w tej sieci.&lt;br /&gt;
*Tak samo wygląda to z limitem 161 znaków w nazwie pliku.&lt;br /&gt;
&lt;br /&gt;
== Jakie typy plików odpowiadają poszczególnym filtrom w oknie wyszukiwania? ==&lt;br /&gt;
&lt;br /&gt;
Powinieneś wiedzieć, że filtry z okna wyszukiwania nie zależą od typu pliku, ale od jego rozszerzenia w następujący sposób:&lt;br /&gt;
*'''Archiwa:''' ''.ace .arj .rar .tar.bz2 .tar.gz .zip .Z''&lt;br /&gt;
*'''Dźwięk:''' ''.aac .ape .au .mp2 .mp3 .mp4 .mpc .ogg .wav .wma''&lt;br /&gt;
*'''Obrazy CD:''' ''.bin .ccd .cue .img .iso .nrg .sub''&lt;br /&gt;
*'''Obrazki:''' ''.bmp .gif .jpeg .jpg .png .tif''&lt;br /&gt;
*'''Programy:''' ''.com .exe''&lt;br /&gt;
*'''Filmy:''' ''.avi .divx .mov .mpeg .mpg .ogg .ram .rm .vivo .vob''&lt;br /&gt;
&lt;br /&gt;
Więc plik z filmem, który nazywa sie &amp;quot;Birthday.zip&amp;quot; pokaże się w filtrze Archiwa, a nie w filtrze Filmy.&lt;br /&gt;
&lt;br /&gt;
== Czym jest źródło? ==&lt;br /&gt;
&lt;br /&gt;
Źródło jest to klient udostępniający którąś część pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości. Oczywiście im więcej źródeł masz dla danego pliku, tym więcej możliwości aby go pobrać i tym szybciej zostanie on pobrany. Powinieneś wiedzieć, że jest różnica pomiędzy &amp;quot;źródłami&amp;quot; (ang. ''sources'') a &amp;quot;dostępnymi źródłami&amp;quot; (ang. ''available sources'') jeśli dostałeś LowID. &amp;quot;Źródło&amp;quot; jest to klient udostepniający którąś z części pliku, znajdującego się w twojej kolejce ściagania, którego jeszcze nie pobrałeś w całości, natomiast &amp;quot;dostępne źródło&amp;quot; jest to klient udostępniający którąs z częsci pliku, znajdującego się w twojej kolejce ściągania, którego jeszcze nie pobrałeś w całości i od którego możesz pobierać (to jest, źródło z HighID).&lt;br /&gt;
&lt;br /&gt;
== O co chodzi w tych wszystkich kredytach, stawkach i punktach? ==&lt;br /&gt;
&lt;br /&gt;
Wszystkie trzy koncepcje są związane ze sposobem w jaki sieć ED2K ustanawia preferencje kolejki wysyłania.&lt;br /&gt;
&lt;br /&gt;
Punkty są z nich najważniejsze: klient z większą ilością punktów będzie następnym, dla którego przydzielisz slot. Sposób w jaki wyliczane są punkty jest następujący: punkty = stawka x czas_czekania_w_sekundach / 100&lt;br /&gt;
Tak więc, aby to zrozumieć, musimy wiedzieć czym jest stawka.&lt;br /&gt;
&lt;br /&gt;
Stawka może być rozumiana jako obiektywna preferencja. To jest, preferencja nie zależna od czasu, od jakiego kilent czeka. Kiedy klient jest dodawany do kolejki wysyłania, zostaje mu przydzielona stwaka 100. Ta wartośc jest modyfikowana zgodnie z następującymi zasadami:&lt;br /&gt;
&lt;br /&gt;
Odpowiednio do wartości kredytu, stawka jest mnożona przez 1x do 10x. W zależności od priorytetu pliku, zostaje pomnożona przez 0,2x do 1,8x (Relase 1,8x, Wysoki 0,9x, Narmalny 0,7x, Niski 0,6x, Bardzo Niski 0,2x).&amp;lt;br&amp;gt;&lt;br /&gt;
Użytkownicy niektórych starszych klientów, które znacznie obciążają sieć zostają ukarani poprzeż pomnożenie ich stawki przez 0,5x.&lt;br /&gt;
&lt;br /&gt;
Stawka dla klientów zbanowanych jest od razu ustawiana na 0 (mnożony przez 0).&lt;br /&gt;
&lt;br /&gt;
Wartości przez które mnożymy są nazywane &amp;quot;modyfikatorami&amp;quot;. Klienty z modifikatorem większym od 1 są oznaczane żółtą ikoną.&lt;br /&gt;
&lt;br /&gt;
Do omówienia zostały nam już tylko kredyty. Kredyty są nagrodą, jaką dostajemy za wysyłanie danych do danego użytkownika. Kredyty są wymieniane pomiędzy dwoma ustalonymi klientami, nie są globalne, więc nie możesz ich poznać. Możesz jednak poznać kredyty jakie inni użytkownicy mają u ciebie (tzn. kredyty jakie jesteś im winny). Ponieważ kredyty są zarządzane przez klienta do którego wysyłamy, może się zdażyć, że będziemy wysyłać do klienta nie obsługującego kredytów, więc nic u niego nie zyskamy. Jeśli jednak ten sam klient będzie wysyłał do ciebie, zyska u ciebie kredyty, ponieważ twój klient je obsługuje. Te kredyty przechowywane są w pliku clients.met.&lt;br /&gt;
&lt;br /&gt;
Modyfikator kredytu używany przez stawkę jest mniejszą w dwóch wartosci:&lt;br /&gt;
&amp;lt;br&amp;gt;(całkowity_upload x 2)/całkowity_download lub sqrt(całkowity_upload+2), gdzie całkowity_upload oraz całkowity_download są mierzone w MB.&lt;br /&gt;
&lt;br /&gt;
If the result is lower than 1, then it is set to 1 and if it is bigger than 10, it is set to 10. In addition, if the uploaded total is less than 1MB, the modifier is set to 1 and if the downloaded total is equal to 0, then the modifier is set to 10.&lt;br /&gt;
&lt;br /&gt;
Jeśli wynik jest mniejszy od 1, zostaje ustawiony na 1, jeśli jest większy od 10, zostaje ustawiony na 10. Ponadto, jeśli całkowity upload jest mniejszy od 1MB, modyfikator jest ustawiany na 1, a jeśli całkowity download jest równy 0, na 10.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:24:50Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku jest uzyskiwany nie poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:22:25Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest LowID i HighID?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_eD2k-Kademlia-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:21:10Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest LowID i HighID?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k-pl#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:20:13Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:19:39Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest częśc (ang. ''chunk'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia-pl#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#?|Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:16:38Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia-pl#Czym_jest_LowID_i_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia-pl#Czy_są_jakieś_ograniczenia_sieci_ED2K?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#Czym_jest_skrót_(ang._hash)?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#?|Czym_jest_częśc_(ang._chunk)?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:08:15Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czy są jakieś ograniczenia sieci ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia z klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest pomiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:05:18Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czy są jakieś ograniczenia sieci ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danych pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest powmiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale to prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
And on the clients side, filenames are usually limited to 161 [[character]]s.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T03:04:31Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;br /&gt;
&lt;br /&gt;
== Czy są jakieś ograniczenia sieci ED2K? ==&lt;br /&gt;
&lt;br /&gt;
Nie ma ich dużo, ale jednak. Są dwa naturalne ograniczenia i jedno &amp;quot;wymuszone&amp;quot;. Ograniczenia naturalne zostały wspomniane wcześniej. Pierwszym jest problem z użytkownikami z LowID (ich transfery angażują serwery w przesyłanie danych a dwa klienty z LowID nie mogą wymieniać danymi pomiędzy sobą). Drugie: mimo że ED2K jest protokołem p2p, wymaga on serwera do zestawiena połączenia klientem. Drugie ograniczenie zostało rozwiązane w protokole Kademlia.&lt;br /&gt;
&lt;br /&gt;
Ograniczenie &amp;quot;wymuszone&amp;quot; zostało wprowadzne, aby się upewnić, że klienty będą udostępniać dane, tak aby sieć ED2K nie zniknęła: klienty z limitem prędkości wysyłania ustawionym na X KBps, gdzie X jest pomiędzy 0 i 3,99 (włącznie) mogą sciągać z maksymalną prędkościa X*3 KBps. Klienty z limitem wysyłania Y KBps, gdzie Y jest powmiędzy 4 i 9,99 (włącznie) mogą ściągać z maksymalną prędkościa Y*4 KBps. Klienty z limitem 10 KBps lub więcej nie mają żadnych limitów na prędkość ściągania. To ograniczenie jest ustawione w aplikacji klienckiej, więc może zostać zdjęte przez zmianę kodu, ale to prawdopodobnie spowodowałoby to zbanowaniem klienta na serwerze do którego się podłączyliśmy.&lt;br /&gt;
&lt;br /&gt;
Poza tym, każdy klient musi udostępnić przynajmniej 3 sloty, więc nie jest możliwe aby przyznać więcej niz limit_wysyłania/3 KBps na slot.&lt;br /&gt;
&lt;br /&gt;
I ostanie ograniczenie: limit rozmiaru plików wynosi trochę powyżej 4GB (dokładnie 4294967295 bajtów, ale aMule obsługuje tylko pliki do 4290048000 bajtów)&lt;br /&gt;
&lt;br /&gt;
Dodatkowo (nie jest to ograniczenie sieci ED2K tylko serwerów) serwery wysyłają jedynie 300 wyników wyszukiwania, więc nie spodziewaj się niczego więcej.&lt;br /&gt;
&lt;br /&gt;
And on the clients side, filenames are usually limited to 161 [[character]]s.&lt;br /&gt;
&lt;br /&gt;
Po stronie klienta, nazwy plików są zazwyczaj ograniczone do 161 [[character|znaków]]&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T02:22:45Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T02:19:11Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest ED2K?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WebServer lub aMuleCMD.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T02:18:19Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest Kademlia?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieci ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WbServer lub aMuleCMD.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T02:17:01Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Które porty muszę skonfigurować w firewallu albo routerze, abu uruchomić aMule=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, aby uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WbServer lub aMuleCMD.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T02:15:49Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;br /&gt;
&lt;br /&gt;
== Które porty muszę skonfigurować w firewallu albo routerze, abu uruchomić aMule ==&lt;br /&gt;
&lt;br /&gt;
Należy rozróżnić połączenia przychodzące od wychodzących. Normalnie, wszystkie porty na routerze są otwarte na wysyłanie danych (połączenie wychodzące).&lt;br /&gt;
&lt;br /&gt;
Tak więc, w normalnym przypadku, musisz tylko skonfigurować porty do połączeń ''przychodzących'':&lt;br /&gt;
&lt;br /&gt;
aMule działa nawet kiedy nie jest otwarty żaden określony port, ale w takim przypadku nie dostaniesz HighID. Jak wspomniano wczesniej, aby dostać HighID, port 4662 TCP (albo ten wybrany w Preferencjach) musi nasłuchiwać połączeń (np. powinien być otwarty w firewallu i forwardowany na routerze).&lt;br /&gt;
&lt;br /&gt;
Aby doświadczenia z ED2K były jak najlepsze, oprócz tego portu, dwa inne również powinny nasłuchiwać: porty 4672 i 4665 UDP (to jest: PORT_TCP+3) (oba mogą zostać zmnienione na dowolne inne w Preferencjach).&lt;br /&gt;
&lt;br /&gt;
== Do czego służą poszczególne porty? ==&lt;br /&gt;
&lt;br /&gt;
Ponieważ większość portów może zostać ustawiona na dowolną wartość, niżej podane zostały wartości domyślne. Kierunek ruchu jest od klienta (ciebie):&lt;br /&gt;
*4661 TCP (wychodzący): Port, na którym serwer słucha przychodzących połączeń (definiowane przez serwer).&lt;br /&gt;
*4662 TCP (wychodzący i przychodzący): transfery klient-klient.&lt;br /&gt;
*4665 UDP (wychodzący): Uzywany do globalnych przeszukiwań i globalnych zapytań o źródła. Zawsze port TCP klienta + 3&lt;br /&gt;
*4672 UDP (wychodzący i przychodzący): Rozszerzony protokół eMule, Queue Rating, File Reask Ping&lt;br /&gt;
*4711 TCP: port nasłuchiwania WebServera&lt;br /&gt;
*4712 TCP: port Komunikacji Zewnętrznej. Używany do komunikacji eMule z innymi aplikacjami takimi jak aMule WbServer lub aMuleCMD.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T01:43:42Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę? ==&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T01:43:01Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;br /&gt;
&lt;br /&gt;
Nazwa pliku jest nieistotna w procesie jego identyfikacji.&lt;br /&gt;
&lt;br /&gt;
== Dlaczego po wyszukiwaniu, niektóre pliki, które są takie same, pojawiają się jako inne w rezultatach wyszukiwania, skoro mają nawet taką samą nazwę?&lt;br /&gt;
&lt;br /&gt;
Jeśli zrozumiałes/aś &amp;quot;Czym jest skrót&amp;quot;, to zrozumiesz to szybko. Gdy wyszukiwanie się rozpocznie, serwer przesyła klientowi nazwe oraz skrót każdego znalezionego pliku, spełniającego warunki wyszukiwania. Jeśli dwa pliki, mimo że takie same, mają jakąs różnicę w swojej zawartości, nie ważne czy małą czy dużą, ich skróty są rożne, są więc one postrzegane jako różne pliki. To jest również powodem, dla którego dwa pliki z innymi nazwami, pojawiają się jako jeden plik: w sieci ED2K nazwa pliku nie jest ważna, w przeciwieństwie do skrótu.&lt;br /&gt;
&lt;br /&gt;
== Czym jest LowID i HighID? ==&lt;br /&gt;
&lt;br /&gt;
Każdemu klientowi przydzielany jest unikalny numer ID (Identyfikator), pozwalający odróżnić danego klienta od wszystkich innych podłączonych do serwera. Jeśli ID jest poniżej 16777216 (16 milionów) masz LowID, wszystkie wartości wyższe oznaczają HighID. To czy twój klient dostanie LowID czy HighID, zalezy od twojego klienta oraz tego czy port TCP klienta jest otwary. Port klienta jest konfigurowalną opcją znajdującą sie w Preferencje -&amp;gt; Połączenie. Domyślne ustawienie portu, 4662, powinno byc dobre. Jeśli zrozumiałeś [[FAQ_ed2k#Czym_jest_ED2K?|czym jest ED2K]], bez wątpienia rozumiesz ze klient z LowID może nie być w stanie połączyć sie z innym klientem z LowID, co powoduje znaczne ograniczenia transferu. To jest właśnie powodem, dla którego posiadanie otwartego portu 4662 TCP (albo innego ustawionego w Preferencjach) jest takie ważne. Niektóre większe serwery odrzucają połączenia od klientów z LowID, ponieważ transfer danych odbywa się wtedy poprzez serwer, a nie bezpośrednio od innego klienta, co z kolei powoduje znaczne obciązenia serwerów.&lt;br /&gt;
&lt;br /&gt;
ID klientów z HighID jest wynikiem operacji matematycznej na ich adresie IP, zgodnie ze wzorem A + 256*B + 256*256*C + 256*256*256*D, gdzie adres IP jest postaci A.B.C.D. ID ma również znaczenie przy identyfikacji klientów. Z kolei ważne jest jedynie, czy ID jest powyżej czy poniżej 16777216, nie ma znaczenia czy ID jest większe czy mniejsze. To oznacza, że klient z ID 50000000 nie jest wcale lepszy od klienta z ID 49999999. Jedynym wyjątkiem jest, kiedy serwer jest albo źle skonfigurowany, albo bardzo zajęty. Może wtedy przydzielić klientowi LowID, mimo otwartego portu 4662. Są to żadkie przypadki, czasami sie jednak zdażają.&lt;br /&gt;
&lt;br /&gt;
Jeśli nie jesteś pewnien czy właściwie ustwaiłeś porty, możesz możesz je sprawdzić [http://www.amule.org/testport.php tutaj].&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:43:08Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URL-ach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:40:43Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:38:14Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest skrót (ang. ''hash'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie skracany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:35:37Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest częśc (ang. ''chunk'')?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie jedną częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie haszowany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:33:27Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czy Kademlia jest taka sama jak Overnet?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamknięte dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie pojedzyńczą częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie haszowany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:31:22Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: =Czym jest Kademlia?=&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i źrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamkniętu dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie pojedzyńczą częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie haszowany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:29:01Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i żrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamkniętu dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie pojedzyńczą częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót (ang. ''hash'')? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4]] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie haszowany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	<entry>
		<id>http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl</id>
		<title>FAQ eD2k-Kademlia-pl</title>
		<link rel="alternate" type="text/html" href="http://test.amule.szerverem.hu/wiki/FAQ_eD2k-Kademlia-pl"/>
				<updated>2006-01-18T00:25:57Z</updated>
		
		<summary type="html">&lt;p&gt;Notch: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&amp;lt;h4&amp;gt;F.A.Q. o eD2k-Kademlia&amp;lt;/h4&amp;gt;&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[FAQ_eD2k-Kademlia|English]] | [[FAQ_eD2k-Kademlia-es|Español]] | [[FAQ_eD2k-Kademlia-it|Italiano]] | [[FAQ_eD2k-Kademlia-de|Deutsche]] | [[FAQ_ed2k-fr|Français]] | [[FAQ_eD2k-Kademlia-nl|Nederlands]] | '''Polski'''&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Czym jest ED2K? ==&lt;br /&gt;
&lt;br /&gt;
ED2K jest protokołem oryginalnie używanym przez klienta P2P&lt;br /&gt;
(Peer-to-Peer) [[eDonkey2000]], stąd nazwa. Jest oparty na protokole&lt;br /&gt;
klient-serwer, z możliwościa wymiany źródeł pomiędzy klientami.&lt;br /&gt;
&lt;br /&gt;
Sieć ED2K jest siecią opartą na serwerach, tak jak wiele innych sieci&lt;br /&gt;
P2P takich jak [[Kazaa]] (Kazaa jest oparta na serwerach, ale ukrywa przed&lt;br /&gt;
użytkownikiem połączenie z nim), co oznacza, że pierwszą rzeczą którą&lt;br /&gt;
powinieneś zrobić po uruchomieniu [[aMule]] jest podłączenie do serwera&lt;br /&gt;
(ręcznie albo automatycznie).&lt;br /&gt;
&lt;br /&gt;
Po podłączeniu do serwera, klient sieci może wyszukiwać dowolne pliki,&lt;br /&gt;
zarówno lokalnie (serwer do którego jesteśmy podłączeni), albo&lt;br /&gt;
globalnie (wszystkie serwery). Serwer zwraca klientowi listę&lt;br /&gt;
wszystkich plików spełniających parametry wyszukiwania.&lt;br /&gt;
&lt;br /&gt;
Kiedy użytkownik rozpoczyna ściąganie, klient wysyła do serwera&lt;br /&gt;
zapytanie o źródła, na które serwer odpowiada w formie adresów IP&lt;br /&gt;
klientów, które zgłosiły posiadanie danego pliku.&lt;br /&gt;
&lt;br /&gt;
Następnie, klient zdalny rozpocznie wysyłanie całej części do ciebie,&lt;br /&gt;
kiedy tylko staniesz się [[FAQ_eD2k-Kademlia#What_is_all_this_talk_about_credits,_ratings_and_scoring_about?|pierwszym w jego kolejce]]. Kiedy cała część&lt;br /&gt;
zostanie przesłana, zostaniesz przesunięty na koniec jego kolejki. W&lt;br /&gt;
ten sposób rożne częsci zostają rozprzestrzenione po całej sieci ED2K,&lt;br /&gt;
więc nawet jeśli w danym momencie żaden klient nie ma całego pliku,&lt;br /&gt;
możliwe jest skompletowanie go, poprzez sciąganie rożnych części od&lt;br /&gt;
różnych osób (użytkowicy czesto przestają udostępniać dany plik, kiedy&lt;br /&gt;
tylko sami go ściągną).&lt;br /&gt;
&lt;br /&gt;
Warto zauważyć, że w danym momencie klient wysyła tylko '''jedną''' część pliku do innego klienta. Nawet, jeśli dany klient jest w kolejce wysyłania do&lt;br /&gt;
dwóch rożnych plików od tego samego użytkownika i stanie się pierwszym&lt;br /&gt;
w obu, wysyłany będzie tylko jeden plik (wysyłanie drugiego, w&lt;br /&gt;
zależności od aplikacji ED2K używanej przez klienta,&lt;br /&gt;
najprawdopodobniej pozostanie z najwyższym priorytetem, ale nie&lt;br /&gt;
zacznie się dopóki tamta część nie zostanie pomyślnie przesłana).&lt;br /&gt;
&lt;br /&gt;
Jeśli obaj użytkownicy maja HighID (zobacz [[FAQ_eD2k-Kademlia#What_is_LowID_and_HighID?|Czym jest LowID i HighID?]])&lt;br /&gt;
transfer będzie następował bezpośrednio od jednego do drugiego klienta&lt;br /&gt;
(Peer-to-Peer), ale jeśli jeden z nich ma LowID, połączenie będzie&lt;br /&gt;
zestawione poprzez serwer, ponieważ LowID nie potrafią przyjmować&lt;br /&gt;
połączeń przychodzących. Wynika z tego ze, dwa klienty z LowId nie mogą&lt;br /&gt;
się ze sobą połączyć.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Czym jest Kademlia? ==&lt;br /&gt;
&lt;br /&gt;
Kademlia powstała drogą naturalnej ewolucji z sieci ED2K. Kademlia jest przyszłościa. Zobacz [[FAQ_eD2k-Kademlia#Are_there_any_limitations_on_the_ED2K_network?|Czy są jakieś ograniczenia sieći ED2K?]] dla dalszych informacji, na temat dlaczego Kademlia jest niezbędna.&lt;br /&gt;
&lt;br /&gt;
Jako, że Kademlia jest siecią zdecentalizowaną, usuwa ona wąskie gardło, jakim była wcześniej potrzeba serwerów (chociaż [[Lugdunum]] zrobił bardzo dużo redukując tą potrzebę). Teraz, zamiast łaczyć się do serwera, po prostu łączysz się z innym klientem (ze znamym adresem IP i portem), który obsługuje sieć [[Kademlia]]. Jest to nazywane Boot Strapping-iem.&lt;br /&gt;
&lt;br /&gt;
Kiedy jesteś już podłączony, w zależności od tego czy możesz przyjmować połączenia przychodzące, dostajesz status &amp;quot;open&amp;quot; lub &amp;quot;firewalled&amp;quot;, który jest podobny do HighID i LowID znanych z sieci ED2K. Naspępnie przydzialane jest ci ID.&lt;br /&gt;
&lt;br /&gt;
W czasie wyszukiwania, każdy klient działa jak mały serwer, odpowiadający za pewne słowa kluczowe i żrodła. To zwiększa złożonośc wyszukiwania, ponieważ teraz nie ma już centralnego serwera do zapytań, a zamiast tego twoje zapytanie musi zostać rozpropagowane w sieci.&lt;br /&gt;
&lt;br /&gt;
Kademlia jest obsługiwana przez aMule od versji 2.1.0&lt;br /&gt;
&lt;br /&gt;
== Czy Kademlia jest taka sama jak Overnet? ==&lt;br /&gt;
&lt;br /&gt;
Krótko i zwięźle: Nie. Overnet jest naturalnym bezserwerowym rozszerzeniem eDonkeya, natomiast Kademlia jest naturalnym bezserwerowym rozszerzeniem klientów *Mule. Oba bazują na oryginalnym algorytmie [[Kademlia]], ale został on zastosowany w rożny sposób, dlatego też są one niekompatybilne. Tak więc, jest to ta sama filozofia, ale inne zasady. Aby dowiedzieć się wiecej, o tym jak działa Overnet, sprawdź http://www.edonkey2000.com/documentation/how_on.html ale pamiętaj, że rozwijanie Overnetu jest zamkniętu dopóki nie osiągnie on wersji 1.0, natomiast Kademlia jest wolna od samego początku.&lt;br /&gt;
&lt;br /&gt;
== Czym jest częśc (ang. ''chunk'')? ==&lt;br /&gt;
&lt;br /&gt;
Aby zapobiegać udostępnianiu nieprawidłowych plików, w protokole ED2K każdy plik jest dzielony na kilka części (ang. ''chunk''), a następnie dla każdej części obliczany jest skrót (czytaj niżej o tym [[FAQ_eD2k-Kademlia#What_is_a_hash?|Czym jest skrót]]). Każda część ma rozmiar 9.28MB, więc plik o rozmiarze 15MB zostanie podzielony na dwie części (9.28MB + 5.72MB), plik o rozmiarze 315KB będzie pojedzyńczą częścią, a plik o rozmiarze 100MB zostanie podzielony na 11 części (10x9.28MB + 7,2MB).&lt;br /&gt;
&lt;br /&gt;
== Czym jest skrót? ==&lt;br /&gt;
&lt;br /&gt;
Dzielenie pliku na części (zobacz [[FAQ_eD2k-Kademlia#What_is_a_chunk?|Czym jest część?]]) zapobiega problemowi sciągnięcia całego niepoprawnego pliku, ponieważ tylko niepoprawna część musi zostać ściągnięta ponownie. Potrzebna jest więc metoda do identyfikacji niepoprawnych części. Jest to robine w oparciu o skróty MD4.&lt;br /&gt;
&lt;br /&gt;
[[MD4_hash|Skrót MD4 (ang. ''MD4 hash'']] jest unikalną wartościa przypisaną do każdej części pliku i jest on wynikiem operacji matematycznych, przeprowadzanych na każdym bicie danej części. Dzięki temu zmiana pojedynczego bitu w częsci, prowadzi do kompletnej zmiany skrótu. Tak więc [[client|klient]] powinien sprawdzić integralność każdej części sciąganego pliku.&lt;br /&gt;
&lt;br /&gt;
Haszowane są nie tylko poszczególne części. Aby otrzymać skrót pliku wszystkie skróty części są łączone jeden z drugim w porządku odpowiadającym występowaniu w pliku (to jest: sktót_części1+skrót_częsci2+skrót_części3+...) a uzyskany ciąg znaków jest ponownie haszowany. W ten sposób, każdy plik w sieci ED2K ma swój unikalny identyfikator. Skrót pliku nie jest więc uzyskiwany poprzez haszowanie całego pliku, a poprzez haszowanie wszystkich skrótów.&lt;br /&gt;
&lt;br /&gt;
W rzeczywistości potrzebujesz zarówno skrótu pliku, jak i jego rozmiaru. Tego rodzaju informacje zawarte są w URLach ED2K, które można znaleźć w wielu miejscach.&lt;br /&gt;
&lt;br /&gt;
Weźmy jako przykład:&lt;br /&gt;
&lt;br /&gt;
ed2k://|file|eMule0.42f-Sources.zip|2407949|CC8C3B104AD58678F69858F1F9B736E9|/&lt;br /&gt;
&lt;br /&gt;
Interesującymi częściami są: część piąta, &amp;quot;2407949&amp;quot;, która jest rozmiarem pliku w bajtach oraz część ostatnia, &amp;quot;CC8C3B104AD58678F69858F1F9B736E9&amp;quot;, która jest skrótem, zapisanym heksadecymalnie, o długości 32 znaków.&lt;/div&gt;</summary>
		<author><name>Notch</name></author>	</entry>

	</feed>