alibek писал(а):Почитай про любой P2P. Если хочешь качественно, то поищи инфу по Skype.
Чистого P2P не бывает, без серверов-каталогов все-равно не обойтись.
jangle писал(а): И еще вариант, чтобы сообщения доходили от самых удаленных узлов обратно к "командиру". Например узел 2 хочет сообщить узлу 0, что у него села батарейка. Но в его таблице нет такого адреса, поэтому он сообщает знакомым узлам 1,3,5 просьбу передать это важное сообщение команду узлу 0. Узел 3 передает своим знакомым, и наконец 4 узел находит в своей таблице адрес 0 и передает ему данные.В некотором роде, это классическая партизанская или террористическая сеть, очень устойчивая к разрушению и жизнеспособная.
твоя сеть умрет на первом же маршрутизаторе. Кроме того, в подобной сети можешь забыть про "эффективную передачу данных".
Мне пока хочется понять чисто логически, как такой алгоритм может работать. Допустим если исследовать распостранение слухов и информационных потоков в социальной среде.
jangle писал(а):Мне пока хочется понять чисто логически, как такой алгоритм может работать.
jangle писал(а):Первое, что приходит в голову на счет протокола, "командир" должен нумеровать свои команды:
alibek писал(а):А я создаю антипартизанский узел (узлы), которые всем говорят, что знают про любые узлы и могут доставить любые сообщения. На самом деле они будут слать все полученные пакеты в /dev/nul, а также генерировать шум (или не шум, а пакеты, которые приведут к зацикливанию маршрута) и рассылать его всем. И твоя очень устойчивая к разрушению сеть помрет очень быстро.
alibek писал(а):Командир? Мы все еще про P2P?
jangle писал(а):На самом деле это вопрос доверия (протокола) между узлами. Например, если к тебе прийдет "товарищ в штатском" и предложил рассказать всю подноготную о твоих знакомых(других узлах твоей социальной сети). Ты ему расскажешь всю правду? Сомнительно, ибо он не прошел аутенфикацию как доверенный нод, поэтому ему можно "лить гамно в уши" т.е. выдавать дезу.
alibek писал(а):Ты не понимаешь, о чем ты говоришь.
Какая аутентификация, какой доверенный нод?
P2P это сеть между равнозначными узлами, там нет узла, который главнее и может удостоверить личность другого узла.
Как ты собираешься отличить правильный узел от неправильного? Объясни по пунктам.
jangle писал(а):...для объединения большого количества постоянно исчезающих и появляющихся узлов и эффективной передачи сообщений между ними?
alibek писал(а):Итак, появился правильный узел. Как он подключится к сети?
jangle писал(а):Этот узел должен подключиться к другому узлу, назовем его Super Node. Это обычный узел, только выполняющий функции маршрутизатора.
jangle писал(а):У SN есть таблица адресов обычных узлов, подключенных к нему, а также "cоседних" SN узлов. Можно назвать такую конструкцию пулом нодов или кластером нодов.
jangle писал(а):Копия этих таблиц есть и у обычных узлов (на случай выхода из строя SN узла, обычный узел тогда станет SN и соберет всю конструкцию заново. Система самовосстановления сети.)
jangle писал(а):"Правильный узел" пытаясь подключиться/зарегистрироваться на SN, генерирует некий код в зависимости от времени на time.windows.com, и посылает его SN, тот в свою очередь тоже генерирует код в зависимости от текущего времени, сравнивает. Они они совпадают, то прописывает IP адрес нового узла в свою таблицу, и также посылает эту измененую таблицу остальным узлам которые подключены к SN. С этого момента новый узел подключен ко всей сети, и может быть доступен с любого другого узла сетки - /SN1/узел6
alibek писал(а):Если сеть только создается (а следовательно, у всех потенциальных SN таблицы пусты), как они найдут друг друга?
Копия этих таблиц будет и у неправильных нодов. И никто им не мешает провозгласить себя SN. Откуда обычным нодам знать, который из двух SN правильный, а который неправильный?
Это пять. Выясни хотя бы, как p2p сети с этим боряться. Вдруг откроется что новое...Ведь есть же черви в p2p сетях которые полностью эмулируют реальных пользователей, пиринговые сети от это еще не умерли.
jangle писал(а):Самый первый SN можно создать вручную, заполнив его таблицы нужными IP. Все последующие SN будут "пристыковаваться" к этому первому SN. Таким образом проблема "пустых таблиц" не возникнет.
jangle писал(а):Мне кажется эта проблема не столь существенна, даже если в сети окажется несколько зловредных узлов, большого вреда они не нанесут.
Денис писал(а):Я считаю, что распределенную сеть нужно строить как минимум на двух уровнях организации сети: сначала по TCP/IP устанавливаются открытые соединения с одним или несколькими узлами, а потом по этим соединениям передается шифрованный поток данных, в котором сериализованы объекты-письма с атрибутами-адресатами, временными штампами, подписями и пр.
Денис писал(а):Кроме того, принцип регистрафии по типу фидо - очень хорош! Зря его забыли. (Я имею ввиду личный контакт, либо по телефону. Только так автор отсеет хакеров (а точнее - оперов) из своей сети)
alibek писал(а):Ты про ТОР слышал?
alibek писал(а):И где теперь ФИДО?
alibek писал(а):Ты похоже просто ленишься думать.
Такая ситуация возникнет не только один раз при создании сети. Такая проблема будет вставать перед каждым SN, который будет включаться в сеть.
Откуда подключаемый SN будет знать, к какому именно существующему SN ему надо "пристыковаться"? Откуда существующий SN будет знать, что новый SN следует к себе пристыковать и что это правильный супернод, а не хакерский? При масштабных сбоях в работе сети, когда будет отключен сразу большой сегмент, каким образом два ранее соединенных SN снова подключатся друг к другу (а заодно, как два изолированно работающих некоторое время сегмента вновь соединятся)?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 44