Обнаружение контента
Bitsocial не включает в протокол ни один глобальный канал, поисковый индекс или алгоритм ранжирования. Он разделяет обнаружение контента на два уровня:
- Поиск в сети позволяет найти узлы, которые в настоящее время обслуживают известное сообщество.
- Курирование приложения определяет, какие сообщества, доски, списки или публикации будут показываться в первую очередь.
Благодаря этому протокол остается небольшим, но при этом остается место для конкуренции со многими открытиями.
Поиск сети
Каждое сообщество имеет стабильный адрес, полученный на основе его открытого ключа. Когда клиент уже знает этот адрес, он опрашивает облегченные HTTP-маршрутизаторы, чтобы найти одноранговые узлы, которые объявили себя поставщиками для него.
Маршрутизаторы возвращают только адреса одноранговых узлов провайдера. Они не хранят сообщения, метаданные, списки пользователей или удобочитаемые каталоги сообществ. После того как клиент получает адреса одноранговых узлов, он подключается к этим одноранговым узлам и извлекает последние метаданные сообщества, а также указатели контента, а затем извлекает фактические данные публикации по хэшу.
Это отвечает на вопрос протокола: «Где я могу получить последние данные о состоянии этого сообщества?»
Курирование приложений
Отдельный вопрос по продукту: «Какие сообщества пользователь должен увидеть в первую очередь?»
Bitsocial оставляет это на усмотрение приложений, списков и пользователей вместо того, чтобы загружать один ответ в сеть. Примеры включают в себя:
- клиент, показывающий сообщества, на которых пользователь уже подписан
- a curated default list for a Reddit-style app
- Слоты каталога для приложения в стиле имиджборда
- индексы поиска или рейтинга, поддерживаемые конкретным приложением
- прямые ссылки, которыми делятся пользователи
Приложения могут индексировать, ранжировать, фильтровать или выделять разные вещи, не превращая этот выбор в протокольный закон. Если поверхность обнаружения одного приложения бесполезна, другое приложение может создать другую на основе тех же базовых сообществ.
Текущие приложения
В настоящее время 5chan использует знакомые пути к каталогам, такие как /b/ или /g/. Назначения каталогов сегодня управляются через общедоступный список, а в будущих версиях ожидается поддержка создания доски в приложении и голосования за места в каталоге.
Seedit использует списки сообществ по умолчанию для своей главной страницы. Сообщества по-прежнему можно создавать и совместно использовать за пределами этого списка по умолчанию.
В обоих случаях список на уровне приложения помогает пользователям найти что-то, что можно открыть, а поиск на уровне протокола затем разрешает выбранное сообщество в одноранговые сети.
Почему это разделение имеет значение
Единая децентрализованная сеть по-прежнему требует хорошего обнаружения, но уровень обнаружения должен быть заменяемым. Основной протокол Bitsocial ориентирован на адресацию, поиск одноранговых узлов, публикацию и защиту от спама. Курирование находится над этим уровнем, где приложения могут экспериментировать с каталогами, списками по умолчанию, лентами, политиками поиска, голосования и модерации, не требуя миграции по всей сети.