Обеспечение соседей с наименьшей задержкой в ​​одноранговой сети для узлов в Интернете - PullRequest
0 голосов
/ 30 мая 2019

Как я могу гарантировать в одноранговой сети, что соседи каждого узла имеют наименьшую задержку?Есть ли в настоящее время системы, которые делают это?например, Bittorrent, blockchains

Если бы я использовал DHT, существуют ли какие-либо методы, используемые в современных системах, чтобы убедиться, что соседи каждого узла находятся ближе всего в сетевых скачках или задержке?

Ответы [ 2 ]

1 голос
/ 11 июня 2019

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

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

Также в децентрализованном режиме это уменьшит случайность сети и может увеличить векторы атаки, такие как атаки затмения .

В распределенной (и не без разрешения) среде. (центры обработки данных, распределенные базы данных и т. д.) это может быть достигнуто легче, поскольку вы можете контролировать и контролировать все узлы, не беспокоясь о злоумышленнике. Изменить: и да, в распределенной установке DHT действительно могут использоваться для уменьшения задержки в сети или скачков при распространении сообщения или поиске данных.

0 голосов
/ 27 июля 2019

Как в одноранговой сети убедиться, что соседи каждого узла имеют наименьшую задержку?

Есть несколько хитростей, изложенных в статье: Подсекундные поиски крупномасштабного оверлея на основе Kademlia (полнотекстовая версия здесь ).

Короче:

  1. имеют сходство с коллегами с низким временем отклика.Чтобы предпочесть добавить их в вашу таблицу маршрутизации, возможно, заменив существующие узлы с более высоким временем отклика.

  2. имеют сходство с «распределением» идентификаторов узлов в ваших корзинах таблицы маршрутизации.Если все так поступают, вы можете получить на 3 бита ближе к своей цели за один круг, а не 1 бит.

  3. Расположите ведра таблицы маршрутизации ближе к «вершине» (охватывающейполовина, четверть, восьмая и т. д.) должны быть больше 8. iirc, бумага предлагает 128, 64, 32, 16 для верхних ведер.Это также может сэкономить несколько битов при поиске, сохраняя циклические повторы.

Существуют ли в настоящее время какие-либо системы, которые делают это?например, Bittorrent, blockchains

Да, по крайней мере, libtorrent и uTorrent реализуют их.Я ожидал бы, что это сделают другие клиенты с битторрентом.

Если бы я использовал DHT, существуют ли какие-либо методы, используемые в современных системах, чтобы убедиться, что соседи каждого узла находятся ближе всего в сетевых скачках или задержке?

Сетевые переходы;не то, что я знаю из.Задержка;да.битторрент.

...