LINUX.ORG.RU
ФорумTalks

Есть адекватные концепты proof-of-resouce?

 ,


0

1

Или как это там называется?

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

Как мне проверять сколько ресурсов он отдает, если я не хочу этот ресурс занимать постоянно на 100% как майнерка. И при этом исключить возможност злоупотреблений.

★★★★★

Последнее исправление: ya-betmen (всего исправлений: 2)

по идее достаточно смотреть сколько он фактически выделяет на другие реальные задачи, которые к нему прилетают. Если реальных задач ни от кого нет - то изредка (скажем 1% времени, а не всегда как майнерка) генерировать фиктивные задачи, которые исполнитель не должен мочь отличить от реальных ни по часттое ни по продожительности

GPFault ★★★
()

В чатгпт забанили?

foror ★★★★★
()
Ответ на: комментарий от GPFault

по идее достаточно смотреть сколько он фактически выделяет на другие реальные задачи, которые к нему прилетают

Так допустим он положил свои данные в систему, и сам на запросы поиска кидает "не найдено", т.к сам данные не хранит. Значит это всё надо закрывать какой-то криптой, но т.к. я отдаю фактически саму систему клиенту, то хз как это всё делать.

ya-betmen ★★★★★
() автор топика
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

Когда-то пробовал фантазировать на эти темы, набредилось вот такое:

Когда Вася просит тебя для него что-то сделать, то ты сначала посмотришь на его репутацию (и если репутация так себе, то и делать для него ты слишком много не будешь).

Репутация Васина заключается в том, что третьи лица (ну или ты сам) стали свидетелями того, что Вася делал что-то полезное для других.

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

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

И транзитивности добавить: Петя хорошо отзывается о Васе, но лично ты с Петей не знаком. За то ты знаком с Колей, который хорошо отзывается о Пете, но так же как и ты не имел раньше дел с Васей. И вот раз ты знаешь Колю, а Коля знает Петю, то Петино мнение о Васе ты тоже можешь в какой-то степени принимать во внимание.

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 2)
Ответ на: комментарий от ya-betmen

сам на запросы поиска кидает «не найдено», т.к сам данные не хранит.

Периодически спрашивать у него то, на что он должен точно дать ответ «найдено» и просить посчитать хеш этих данных с определённой солью как доказательство того что данные у него реально есть

GPFault ★★★
()
Ответ на: комментарий от GPFault

Хотелось от центрального сервиса избавиться конечно

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от GPFault

какое-то параноидальное и садистское решение. а если там какие-то жирные файлы? что, по желанию левой пятки вычислять хэши каждый раз от нефиг делать? зачем такая система нужна тогда?

я полагаю, что отдачу надо считать по обслуженным запросам других узлов (ну или как там проверяется работа узла). запросы обслуживаются - значит, узел работает. запросы не обслуживаются, идут отказы, значит, узел филонит.

Iron_Bug ★★★★★
()
Ответ на: комментарий от Iron_Bug

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

Частота пдобных проверок может быть подобрана так, чтоб грузить узел не более чем на 0.01%

GPFault ★★★
()
Ответ на: комментарий от GPFault

зависит от хранилки. нам о её формате заведомо ничего не известно.

Iron_Bug ★★★★★
()

Не знаю насчёт проца, но с памятью несложно же. Кладёшь ему файло оговоренного размера с твоей пустой ФС внутри. И он тебе такое же файло. Всё, место забито.

С процем сложнее, т.к. кроме RTAI нет способа аллоцировать конкретное количество мощности проца, да и то, RTAI прогнули и забили на неё, да и на современных x86 c IntelME/PSP вообще нереально что-то гарантировать в смысле ресурсов проца.

Если только не резервировать, а рассчитываться пост-фактум. Ты посчитал что-то на чужом проце, получил чек на

real    0m0.250s
user    0m3.571s
sys     0m1.028s

всё, твой пир может предъявить тебе этот чек в любой момент и ты обязан его зачесть если пир будет твой проц использовать.

Stanson ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.