🌴🌴🌴
Ближайшее время поговорим о протоколах для децентрализованных сетей.
Сегодня о DHT (уже упоминалась) на примере ее реализации Kademlia
⬇️⬇️⬇️
Kademlia — это протокол виртуальной сети, созданный для функционирования полностью децентрализованных файлообменных сетей.
Протокол относится к третьему поколению p2p сетей.
Всего их существует 4:
1) Napster
Файлообменная сеть, имеющая один центральный сервер, через который пользователи ищут нужные им файлы, и далее напрямую соединяются между собой. Минус такого подхода очевиден — при закрытии центрального сервера ликвидируется вся сеть.
2) eDonkey2000, BitTorrent, Direct Connect
В сетях второго поколения реализована частичная децентрализация, когда серверов много и подключиться можно к любому из них. Если закроют большинство центральных узлов, то сеть продолжит подпольное функционирование, юзеры будут пользоваться альтернативными серверами. Но чем больше будет закрыто центральных (координирующих) серверов, тем меньше становится сеть.
3) Kademlia, Gnutella
Сеть не имеет центрального сервера, все пользователи являются серверами этой сети. Закрыть сеть практически невозможно, для этого надо отключить всех её пользователей.
4) RetroShare
Тёмные сети или даркнеты позволяют устанавливать соединения только с определёнными пользователем доверенным пирам (Friend-to-friend), что теоретически позволяет избежать любых деанонимизирующих атак. Ведь, в этом случае, IP-адреса всех пользователей сети (за исключением узкого круга доверенных) не просто трудно обнаружить, а в принципе невозможно обнаружить. Такие сети, как FreeNet и GNUnet так же способны работать в этом режиме.
Kad является заменой серверной сети eDonkey2000 (ed2k)
eDonkey2000, eD2k — это файлообменная сеть, построенная по принципу P2P на основе сетевого протокола прикладного уровня MFTP, которая официально прекратила свое существование.
Kademlia - это реализация распределённой хеш-таблицы (DHT) для одноранговых компьютерных сетей. Протокол определяет структуру сети регулирующую связь между узлами и способ обмена информацией в ней.
Узлы сети общаются между собой по протоколу транспортного уровня UDP и хранят данные посредством распределённых хеш-таблиц.
UDP - это один из ключевых элементов набора сетевых протоколов для Интернета. С UDP компьютерные приложения могут посылать сообщения (датаграммы) другим хостам по IP-сети без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных.
В итоге над существующей LAN/WAN создаётся оверлейная сеть в которой каждый узел обозначается специальным идентификатором («Node ID») играющим роль адреса и распределителя ролей для поисковой классификации в сети.
В Kademlia все пользователи сети являются серверами и равны между собой по рангу, потому она и называется «одноранговая сеть».
Каждый узел сети имеет свой идентификатор. Любой ресурс в DHT будь то ключевое слово или файл тоже имеет идентификатор. В качестве идентификаторов используется значение хеш функции — в торрентах это SHA1, в ED2K это MD4. Чтобы опубликовать или найти что-то в сети требуется хеш искомого ресурса.
В Kademlia ссылки на файлы имеют тот же вид как и в сети eDonkey2000. Но в отличии от eDonkey ей не требуется сервер для связи. У каждого клиента Kad Network на компьютере сохраняется файл с данными о источниках и информация о файлах этого источника, которые вы скачиваете. Когда через ваш компьютер идёт поисковый запрос от другого человека, то программа проверяет файл с данными и ищет подходящие источники, если находит, то передаёт информацию тому, кто ищет. Если не находит, то отсылает запрос дальше и т.д.
Ближайшее время поговорим о протоколах для децентрализованных сетей.
Сегодня о DHT (уже упоминалась) на примере ее реализации Kademlia
⬇️⬇️⬇️
Kademlia — это протокол виртуальной сети, созданный для функционирования полностью децентрализованных файлообменных сетей.
Протокол относится к третьему поколению p2p сетей.
Всего их существует 4:
1) Napster
Файлообменная сеть, имеющая один центральный сервер, через который пользователи ищут нужные им файлы, и далее напрямую соединяются между собой. Минус такого подхода очевиден — при закрытии центрального сервера ликвидируется вся сеть.
2) eDonkey2000, BitTorrent, Direct Connect
В сетях второго поколения реализована частичная децентрализация, когда серверов много и подключиться можно к любому из них. Если закроют большинство центральных узлов, то сеть продолжит подпольное функционирование, юзеры будут пользоваться альтернативными серверами. Но чем больше будет закрыто центральных (координирующих) серверов, тем меньше становится сеть.
3) Kademlia, Gnutella
Сеть не имеет центрального сервера, все пользователи являются серверами этой сети. Закрыть сеть практически невозможно, для этого надо отключить всех её пользователей.
4) RetroShare
Тёмные сети или даркнеты позволяют устанавливать соединения только с определёнными пользователем доверенным пирам (Friend-to-friend), что теоретически позволяет избежать любых деанонимизирующих атак. Ведь, в этом случае, IP-адреса всех пользователей сети (за исключением узкого круга доверенных) не просто трудно обнаружить, а в принципе невозможно обнаружить. Такие сети, как FreeNet и GNUnet так же способны работать в этом режиме.
Kad является заменой серверной сети eDonkey2000 (ed2k)
eDonkey2000, eD2k — это файлообменная сеть, построенная по принципу P2P на основе сетевого протокола прикладного уровня MFTP, которая официально прекратила свое существование.
Kademlia - это реализация распределённой хеш-таблицы (DHT) для одноранговых компьютерных сетей. Протокол определяет структуру сети регулирующую связь между узлами и способ обмена информацией в ней.
Узлы сети общаются между собой по протоколу транспортного уровня UDP и хранят данные посредством распределённых хеш-таблиц.
UDP - это один из ключевых элементов набора сетевых протоколов для Интернета. С UDP компьютерные приложения могут посылать сообщения (датаграммы) другим хостам по IP-сети без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных.
В итоге над существующей LAN/WAN создаётся оверлейная сеть в которой каждый узел обозначается специальным идентификатором («Node ID») играющим роль адреса и распределителя ролей для поисковой классификации в сети.
В Kademlia все пользователи сети являются серверами и равны между собой по рангу, потому она и называется «одноранговая сеть».
Каждый узел сети имеет свой идентификатор. Любой ресурс в DHT будь то ключевое слово или файл тоже имеет идентификатор. В качестве идентификаторов используется значение хеш функции — в торрентах это SHA1, в ED2K это MD4. Чтобы опубликовать или найти что-то в сети требуется хеш искомого ресурса.
В Kademlia ссылки на файлы имеют тот же вид как и в сети eDonkey2000. Но в отличии от eDonkey ей не требуется сервер для связи. У каждого клиента Kad Network на компьютере сохраняется файл с данными о источниках и информация о файлах этого источника, которые вы скачиваете. Когда через ваш компьютер идёт поисковый запрос от другого человека, то программа проверяет файл с данными и ищет подходящие источники, если находит, то передаёт информацию тому, кто ищет. Если не находит, то отсылает запрос дальше и т.д.