Kad Network


Kad Network — децентрализованная бессерверная файлообменная сеть, которая использует протокол оверлейной сети Kademlia. Поддерживается в eMule (Kad 2.0), iMule, aMule и MLDonkey.

Кад не используется для передачи файлов через Р2Р-сети. Когда начинается передача файлов, подключения клиентов происходят напрямую друг с другом (используя стандартные IP-сети). Как и во всех децентрализованных сетях, Кад не требует официальных или общих серверов. Она не может быть закрыта отключением ключевых узлов. Однако, поскольку узлы постоянно связываются друг с другом, сеть может нагружать отдельные машины по сравнению с централизированной сетью. Единственное, что нужно для соединения с этой сетью — IP-адрес и порт любого клиента, уже подключённого к сети. То есть требуется Bootstrap (самонастройка).

Как только происходит соединение с сетью, клиент опрашивает других клиентов, чтобы определить, можно ли с ними соединиться. Этот процесс похож на определение HighID/LowID на серверах. Если удастся свободно соединиться, узел получает высокий ID (HighID) и статус open. В противном случае присваивается статус firewalled (и, соответственно, LowID).

В ней нет серверов, отслеживающих активность клиентов. В сущности, каждый клиент — маленький сервер, работающий в сети Kademlia как сервер для ключевых слов или источников. Хеш клиента определяет ключевые слова или источники. Таким образом, цель любого запроса — найти соответствующих этому запросу клиентов. Затем вычисляется «расстояние» к конечному клиенту путём опроса других клиентов о наикратчайшем маршруте к нему.

Kad Network поддерживает поиск файлов как по имени, так и по размеру, расширению, битрейту и так далее.