Полностью децентрализованные сети - Компьютерные сети
DHT (Distributed hash table) -- децентрализованная распределенная система для объединения большого количества постоянно исчезающих и появляющихся узлов и эффективной передачи сообщений между ними. Она использует 160-битные хэши для идентификации узлов, файлов и имен файлов (ключевых слов). Каждый узел содержит информацию о месторасположении файлов с хешами, близкими к его хешу.
Kad
Сеть Kad -- это реализация DHT. Узлы, файлы и имена файлов (ключевые слова) кодируются алгоритмом SHA-1 160-битными числами. Если узел хочет расшарить файл, он обрабатывает его, получая хэш, который идентифицирует этот файл в сети. Затем узел ищет несколько узлов, ID которых близки к хэшу файла и его имени (размеры хешей файлов и узлов совпадают, расстояние вычисляется применением операции XOR к хешам). На эти узлы отдается информация об адресе узла, на котором хранится файл.
Поиск в Kad
В соответствии с хешами узлы можно разместить в двоичном дереве.
Поиск очень похож на DNS-запросы. Каждый узел (как и каждый DNS-сервер) знает адреса всех узлов в своей ветке, расположенных рядышком (на этом же уровне или ниже (зон следующего уровня или дочерних зон в DNS)) и адреса некоторых узлов "высокого уровня".
Когда узел хочет найти файл, он сравнивает хеш имени с хешами известных ему узлов, затем посылает запрос тому узлу, чей хеш наиболее близок к искомому. Тот узел возвращает ему адрес узла, чей хеш еще ближе к искомому. Тогда наш узел посылает запрос тому новому узлу, и получает от него адрес следующего узла, чей хеш еще ближе и т. д.. Таким образом, запросы постепенно стекаются к узлам, чьи хеши наиболее похожи на искомый. А эти узлы уже знают, где находится файл. Запросы итеративные. "Стоимость" такого поиска логарифмически зависит от количества узлов в сети и, если количество узлов удвоится, количество запросов возрастет на 1.
Другие приложения P2P-сетей
- - мобильный P2P; - распределенные вычисления SETI@home; - совместное работа ( Groove ); - Skype.
Похожие статьи
-
Многоуровневые сетевые модели, Сетевая модель - Компьютерные сети
Глобальные сети объединяют в себе огромное количество географически распределенных узлов. Множество вариантов программно-технической реализации передачи...
-
-сети с централизованным каталогом. Napster, Частично децентрализованные сети - Компьютерные сети
Когда пир (пользователь P2P-сети) подключается к серверу, он сообщает свой IP и имеющиеся файлы. На сервере собираются не сами файлы, а информация о них....
-
ВВЕДЕНИЕ, КЛАССИФИКАЦИЯ КОМПЬЮТЕРНЫХ СЕТЕЙ - Компьютерные сети и телекоммуникации
За последние годы глобальная сеть Интернет превратилась в явление мирового масштаба. Сеть, которая до недавнего времени использовалась ограниченным...
-
Принципы работы DNS - Компьютерные сети
Рассмотрим схему подачи запроса серверу. Студент Стэнфордского университета с университетского компьютера пытается зайти на сайт воскресной школы мехмата...
-
Недостатки и альтернативы CGI - Компьютерные сети
Недостаток CGI: вызов программы - "дорогая" операция, особенно если это скрипт, который еще нужно интерпретировать (или откомпилировать). Альтернативные...
-
Типы записей в базе данных DNS-сервера - Компьютерные сети
DNS-сервер, отвечающий за имена хостов в своей зоне, должен хранить информацию о хостах в базе данных и выдавать ее по запросу с удаленных компьютеров....
-
МЕТОДЫ ДОСТУПА К ПЕРЕДАЮЩЕЙ СРЕДЕ В ЛВС - Компьютерные сети и телекоммуникации
Несомненные преимущества обработки информации в сетях ЭВМ оборачиваются немалыми сложностями при организации их защиты. Отметим следующие основные...
-
Классификация компьютерных сетей - Компьютерные сети
Классификация компьютерных сетей по территории - Local Area Network (LAN) -- сети одной квартиры, дома, организации. - Metropolian Area Network (MAN),...
-
Для компьютерного оборудования и данных (информации) существуют три основные угрозы: Физическое воровство, которое включает подключение к различным...
-
Дополнительные функции DNS-сервера - Компьютерные сети
1. Поддержка псевдонимов серверов. Пример: mmcs. sfedu. ru, web. mmcs. sfedu. ru и web. mmcs. rsu. ru имеют один и тот же ip-адрес 2. Поддержка почтового...
-
Служба трансляции имен DNS - Компьютерные сети
Клиенты DNS - специализированные библиотеки (или программы) для работы с DNS (в Windows - служба "DNS-клиент"). Серверная сторона DNS - множество...
-
Принципы работы служб прикладного уровня - Компьютерные сети
Сетевая служба - это набор функций, которые уровень выполняет для вышележащего уровня (например, коррекция ошибок). Набор свойств и функций, которыми...
-
Функции уровней, Эталонная модель OSI - Компьютерные сети
В компьютерной сети каждый уровень может выполнять одну или несколько функций, перечисленных ниже. - адресация, - правила переноса данных: направление...
-
Восстановление файлов - Компьютерные сети. Защита и резервирование компьютерной информации
Существуют несколько способов восстановления файлов, ошибочно удаленных с диска, либо поврежденных из-за логических ошибок в файловой структуре или...
-
Коммутация каналов и коммутация пакетов - Компьютерные сети
Коммутация каналов В 60-х годах основным средством связи были телефонные линии, использующие принцип коммутации каналов. Они имели существенный...
-
-приложения - Компьютерные сети
CGI (Common Gateway Interface) -- стандарт обмена данными между прикладной программой, выполняемой по запросу пользователя, и HTTP-сервером, который...
-
Структура сети Интернет - Компьютерные сети
Локальные, региональные, магистральные провайдеры Локальный (местный) провайдер (ISP - Internet Service Provider) - поставщик услуг Интернета, работающий...
-
ОСНОВНЫЕ КОМПОНЕНТЫ WWW, URL, HTML - Компьютерные сети и телекоммуникации
World Wide Web переводится на русский язык как "Всемирная Паутина". И, в сущности, это действительно так. WWW является одним из самых совершенных...
-
Повторитель (repeater) Усиливает сигнал сетевого кабеля, который затухает на расстоянии более 100 м. Он работает на физическом уровне стека протоколов,...
-
Консорциум Всемирной паутины - Компьютерные сети
С 1994 года основную работу по развитию Всемирной паутины взял на себя Консорциум Всемирной паутины (англ. World Wide Web Consortium, W3C), основанный и...
-
История развития сети Интернет - Компьютерные сети
1969 г. Рождение ARPAnet Леонард Клейнрок рядом с первым интерфейсным процессором сообщений (коммутатором пакетов) Леонард Клейнрок -- один из авторов...
-
Способы связывания с документом - Компьютерные сети
Внешние таблицы стилей - в отдельном css-файле. Связывается с HTML-документом командой <link rel="stylesheet" href="/templates/template. css"...
-
В настоящее время большинство компьютеров используется не изолировано от других компьютеров, а постоянно или время от времени подключаются к локальным...
-
Резервирование файлов - Компьютерные сети. Защита и резервирование компьютерной информации
Необходимость резервирования информации в ЭВМ может быть вызвана нехваткой места на диске или защитой от возможной порчи и разрушения информации (при...
-
Коды ошибок, возвращаемых веб-сервером. - Компьютерные сети
200 OK: Запрос успешно обработан, объект получен и включен в ответ. 301 Moved Permanently: Объект был перемещен; новый URL-адрес указан в строке ответа...
-
ПРИНЦИПЫ, ТЕХНОЛОГИИ, ПРОТОКОЛЫ ИНТЕРНЕТ - Компьютерные сети и телекоммуникации
Основное, что отличает Internet от других сетей - это ее протоколы - TCP/IP. Вообще, термин TCP/IP обычно означает все, что связано с протоколами...
-
Компьютерный вирус - это небольшая программа, написанная в машинных кодах, которая способна внедряться в другие программы, сама себя копировать и...
-
Метод POST - Компьютерные сети
После нажатия на кнопку "отправить" браузер посылает серверу сообщение. Приводим реальные данные, перехваченные сниффером. Запрос браузера к серверу,...
-
Сервер DNS для Linux - Компьютерные сети
BIND (Berkeley Internet Name Domain) -- программный пакет системы DNS для UNIX систем. Функции сервера DNS в этом пакете реализует программа named (от...
-
Доставка писем, Протокол SMTP - Компьютерные сети
Рассмотрим процесс доставки писем на примере. Пусть Алиса хочет отправить письмо Бобу. 1. Почтовая программа Алисы (т. е. клиент или MUA - Mail User...
-
Сетевые протоколы, используемые в сети Интернет. - Использование компьютерных сетей
Иерархия протоколов TCP/IP 5 Application level 4 Transport level 3 Internet level 2 Network interface 1 Hardware level Протоколы TCP/IP широко...
-
Компьютерная сеть кодирование Клиент -- это компьютер или программа, запрашивающая услуги. Клиенты бывают толстыми, тонкими и сверхтонкими. Сравнительные...
-
Редакторы HTML - Компьютерные сети
- Adobe Dream Weaver; - Microsoft Expression Web; - SharePoint Designer (бесплатный); - Web Development Studio (бесплатная); - Word; - Microsoft Front...
-
ТЕНДЕНЦИИ РАЗВИТИЯ ИНТЕРНЕТ - Компьютерные сети и телекоммуникации
В 1961 году DARPA (Defence Advanced Research Agensy) по заданию министерства обороны США приступило к проекту по созданию экспериментальной сети передачи...
-
Кодирование и формат отправляемых данных - Компьютерные сети
По умолчанию - application/x-www-form-urlencoded Все символы не из первой половины ASCII заменяются их кодами, например, "a" на "%E0". Пробелы - на "+",...
-
История сети ИНТЕРНЕТ, Региональные компьютерные сети и Интернет - Глобальная сеть Интернет
В 1961 году Defense Advanced Research Agency (DARPA) по заданию министерства обороны США приступило к проекту по созданию экспериментальной сети передачи...
-
IDS сетевого уровня имеют много достоинств, которые отсутствуют в системах обнаружения атак на системном уровне. В действительности, многие покупатели...
-
Система IP-адресации. - Использование компьютерных сетей
Для организации всемирной сети нужна хорошая система адресации, которая будет использоваться для направления информации всем адресатам. Союз Internet...
-
Где может размещаться блок в кэш-памяти? - Компьютерные и сетевые технологии
Принципы размещения блоков в кэш-памяти определяют три основных типа их организации: Если каждый блок основной памяти имеет только одно фиксированное...
-
Уровни и межсетевые протоколы компьютерных сетей - Использование компьютерных сетей
Протокол UDP (User Datagram Protokol) -- протокол пользовательских дейтаграмм является одним из двух основных протоколов, расположенных непосредственно...
Полностью децентрализованные сети - Компьютерные сети