Peer to Peer: методы поиска пиров - PullRequest
56 голосов
/ 22 ноября 2008

Существуют ли какие-либо известные методы поиска пиров без использования выделенного центрального сервера?

т.е.: если у меня есть одноранговые узлы, которые отключаются и повторно подключаются к Интернету, но каждый раз получают новый IP-адрес, и я хочу подключиться к ним без настройки выделенного сервера для регистрации.

Я думал об использовании адреса электронной почты одноранговых узлов для периодической отправки манифеста подключенных одноранговых узлов с каким-то временным кодом, что устраняет необходимость в выделенном сервере. Это было бы резервом, если ни один из одноранговых узлов не мог быть подключен после попытки всех ранее известных адресов одноранговых узлов. Но существующие модели поиска пиров предпочтительнее.

Ответы [ 13 ]

1 голос
/ 22 ноября 2008

Ваш метод отправки электронной почты использует выделенный сервер; точнее, почтовый сервер.

Грубо говоря, я не думаю, что это возможно без использования какого-либо выделенного хранилища или сервера (что позволяет подход электронной почты, хотя и косвенно), ЕСЛИ ВЫ не можете охарактеризовать подключение к Интернету, которое используют ваши коллеги.

В основном, если у вас есть набор из числа пиров X, которые соединяются в течение периода времени Y, а затем они находятся вне сетки в течение периода времени Z ... по сути, вы можете построить уравнение вероятности относительно вероятности это то, что набор пиров, с которыми вы в последний раз связывались, все еще доступен; там, где эта вероятность приближается к 1 (для заданного набора X, Y и Z выше), вы, скорее всего, можете поддерживать одноранговую сеть без использования хранилища.

Возможно, больше в духе; вместо того, чтобы иметь «выделенный центральный сервер», используйте простой онлайн бесплатный сервис для определения списка пиров. Создать группу Yahoo или что-то в этом роде; клиенты могут автоматически искать его и получать адрес однорангового узла, с которого можно запросить набор одноранговых узлов; клиент может быть закодирован с помощью аутентификации для отправки в группу и может периодически публиковать свой IP-адрес, чтобы другие могли запросить набор известных активных одноранговых узлов.

Если вы хотите стать действительно хитрым, вы можете начать использовать в основном стеганографические методы, чтобы скрыть информацию о местоположении сверстников. То есть получить в Google поиск по "бла"; найти первый сайт, указанный в результатах, который имеет незащищенную (без CAPTCHA) доску объявлений; найдите третий (или любой другой) пост, который начинается с «Несомненно» (или любой другой), и найдите там заголовок первого сообщения, и там есть IP-адрес партнера. Если это не сработает, перейдите к следующему списку условий поиска.

Но это подлый. : -)

0 голосов
/ 17 мая 2009

Если вы ищите уже установленный центральный сервер, смотрите запись метасервера на странице здесь:
http://martindevans.appspot.com/
Вы можете зарегистрировать пиров там, и тогда другие перы смогут их найти. Очевидно, что это центральный сервер, но он не требует обслуживания с вашей стороны.

0 голосов
/ 29 марта 2009

Это типичное использование алгоритма распределенной хеш-таблицы. Я бы посоветовал посмотреть на что-то вроде теста. Он использует оверлейную сеть (сеть прикладного уровня) поверх других уровней.

У каждого узла есть GUID, который используется для маршрутизации запросов по одноранговой сети.

...