Мета-LeaseSet для мультирейтинга

Proposal 120
Отклонено
Author zzz
Created 2016-01-09
Last Updated 2016-01-11
Superceded by: 123

Обзор

Данное предложение касается реализации поддержки настоящего мультирейтинга в I2P, который может масштабироваться до больших сайтов.

Мотивация

Мультирейтинг является временным решением и, предположительно, не будет работать, например, для facebook.i2p в масштабах. Предположим, у нас есть 100 мультидомов, каждый из которых имеет 16 туннелей, это 1600 публикаций LS каждые 10 минут, или почти 3 в секунду. Floodfills будут перегружены, и запустятся ограничения. И это еще до того, как мы упомянем трафик поиска.

Нам нужен какой-то мета-LS, где LS содержит списки из 100 реальных хэшей LS. Это будет долговечный объект, намного дольше, чем 10 минут. Это будет двухступенчатый поиск для LS, но первая стадия может кэшироваться часами.

Спецификация

Мета-LeaseSet будет иметь следующий формат::

  • Назначение

  • Время публикации

  • Истечение срока действия

  • Флаги

  • Свойства

  • Количество записей

  • Количество отзывов

  • Записи. Каждая запись содержит:

    • Хэш
    • Флаги
    • Истечение срока действия
    • Стоимость (приоритет)
    • Свойства
  • Отзывы. Каждый отзыв содержит:

    • Хэш
    • Флаги
    • Истечение срока действия
  • Подпись

Флаги и свойства включены для обеспечения максимальной гибкости.

Комментарии

Это затем может быть обобщено для выполнения поиска сервиса любого типа. Идентификатор сервиса является SHA256 хэшом.

Для еще более массивного масштабирования мы могли бы иметь несколько уровней, т.е. мета-LS может указывать на другие мета-LS.