Проект "Свободные голосования"
http://gplvote.andyhost.ru/forum/

P2P сети и методы обнаружения узлов
http://gplvote.andyhost.ru/forum/viewtopic.php?f=7&t=179
Страница 1 из 3

Автор:  Андрей [ 01 окт 2011, 18:43 ]
Заголовок сообщения:  P2P сети и методы обнаружения узлов

В работе P2P сетей для меня лично самая большая загадка - метод обнаружения клиентом других клиентов. Если не брать в расчет списки, которые могут поставляться с клиентом и специальные сервера (нам-же нужна распределенная система), какие есть способы определения клиентов в сети? Может какие-то broadcast запросы?

Автор:  Kuguar [ 01 окт 2011, 19:08 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Андрей писал(а):
В работе P2P сетей для меня лично самая большая загадка - метод обнаружения клиентом других клиентов.


Изначально нужно иметь минимум один прямой IP адрес. Взять у знакомого или выбрать из вывешенного в инете списка IP адресов общедоступных p2p серверов. Это однократная акция и риск тут только в том, что этот адрес может быть не нужной сети, а какой то другой. Например липовой, специально созданной ФСБ :)
Все остальные адреса распространяются внутри самой сети, при контакте между клиентами. Т.е. то же ФСБ может получить доступ к сети и через неё набрать массив IP адресов подключенных к ней. Но узнать кто и что именно передаёт и принимает невозможно, без контроля над подавляющим поличеством узлов.

Автор:  Андрей [ 01 окт 2011, 19:11 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Не - это как-то коряво. Неужели нет нормальных способов обнаружения друг друга без серверов?

Автор:  Kuguar [ 01 окт 2011, 19:20 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Ещё можно тупо сканировать все IP адреса. Но это годится только если пользователей p2p заметный процент.

Т.е. что бы сканированием, один узел в секунду, найти один узел за одни сутки, в пространстве IP адресов должно быть ~50000 пользователей.

Броадкаст тут не катит, ибо он фильтруется на всех шлюзах.

Автор:  yurial [ 02 окт 2011, 16:42 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Однако он [broadcast] годится для обнаружения узлов в подсети и, например, обменом списков доступных узлов. Так же думаю стоит добавить поддержку multicast, на будущее.

Автор:  Андрей [ 02 окт 2011, 16:43 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Кстати, еще интересный вопрос. Как работают P2P клиенты, находящиеся за NAT?

Автор:  Kuguar [ 02 окт 2011, 17:43 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Андрей писал(а):
Кстати, еще интересный вопрос. Как работают P2P клиенты, находящиеся за NAT?


Хреново... но ежели соответствующие порты открыты, то работает.
На крайняк можно туннелить через внешние компьютеры.

Автор:  cvb [ 14 ноя 2011, 16:37 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

Распределённая хеш-таблица, или Протокол DHT.

Автор:  Андрей [ 14 ноя 2011, 16:42 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

cvb писал(а):

О! Большое спасибо за ссылки! Про DHT знаю, но для меня всегда было загадкой, каким образом оно работает без серверов.

Автор:  Андрей [ 15 ноя 2011, 20:27 ]
Заголовок сообщения:  Re: P2P сети и методы обнаружения узлов

cvb писал(а):

С этим кто-то детально разобрался? Я почитал, чуствую что это то, что надо. Но понимание пока почти на 100% интуитивное. Кто-то понимает DHT настолько что-бы обсудить практическую возможность его использования для нас?

Страница 1 из 3 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/