Понимание того, насколько хорошо Pastry-P2P-подобное распределение ресурсов через DHT - PullRequest
0 голосов
/ 22 апреля 2011

Я собираюсь разработать распределенную систему.Система, среди всех функций, должна распределять некоторые ресурсы (большие ресурсы, которые могут быть фрагментированы в меньшие блоки).Для этого я хочу использовать P2P-подход Chord / Pastry (станции в логической кольцевой сети).Кондитерские изделия имеют очень интересный подход к распределению ресурсов: когда пользовательской станции нужно что-то отправить, для поиска ключа в dht используется хеш руководства станции, поэтому рассматривается что-то вроде этого:

Пользовательская станция-> GUID (хеш на ip пользовательской станции) -> HASH -> Я получаю значение с именем X -> Используйте этот хеш и найдите в кольцевой сети Pastry станцию ​​с таким же значением GUID (хеш на открытом ключе узла Pastry):Расположение (или непосредственный предшественник) -> поместить данные туда.

Ну, это означает, что в идеале каждый пользователь всегда находит свои собственные данные на одной и той же станции Патри (узел Кондитерские изделия).Протокол также отражает данные о соседях, поэтому пользователь может найти свои данные в нескольких узлах.

Это хороший подход?Есть ли какие-либо возможные побочные эффекты при продолжении, как раньше?

1 Ответ

0 голосов
/ 12 сентября 2011

Pastry-P2P-подобные решения являются теоретическими моделями.Таким образом, вы должны принять их за то, что они есть, как абстракцию.

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

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

При этом, если результаты хеширования распределены равномерно, то различия в производительности между равноправными узлами будут низкими, если только за ними не особенно трудно достичьNAT, прокси или брандмауэр.

...