Skip to main content
Метод RPC getMaxRetransmitSlot возвращает наибольший номер слота, который запрашиваемый узел RPC обработал или о котором ему известно из этапа повторной передачи. Этап повторной передачи — важная часть протокола распространения блоков Solana, известного как Turbine. На этом этапе валидаторы запрашивают и получают от других участников недостающие шреды (части блоков), чтобы восстановить полные блоки. Это значение позволяет оценить, насколько актуальны данные узла относительно вершины сети с точки зрения распространения и восстановления данных блоков.

Распространенные сценарии использования

  • Проверка состояния и синхронизации узла: Отслеживайте это значение, чтобы определить, получает ли узел сведения о последних слотах и обрабатывает ли их. Если значение maxRetransmitSlot значительно отстает от фактического наивысшего слота кластера, это может указывать на проблемы с синхронизацией данного узла.
  • Анализ сети (для опытных пользователей): Исследователи или продвинутые инструменты мониторинга могут использовать эту метрику как один из нескольких показателей общего состояния сети или скорости распространения блоков.
  • Диагностика проблем с подключением: Если узел постоянно сообщает низкое значение maxRetransmitSlot, это может указывать на проблемы с подключениями к другим участникам или с участием в протоколе повторной передачи.

Параметры запроса

Этот метод не принимает параметров.

Структура ответа

Поле result ответа JSON-RPC содержит значение типа u64 (64-битное целое число без знака), представляющее максимальный номер слота, полученный узлом на этапе повторной передачи.

Примеры

1. Получение максимального слота повторной передачи

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

Рекомендации для разработчиков

  • Значение для конкретного узла: Это значение относится к запрашиваемому узлу RPC. В любой момент времени значения разных узлов кластера могут немного различаться из-за задержки сети и индивидуального представления каждого узла о процессе повторной передачи.
  • Не абсолютный наивысший слот: Это значение представляет наивысший слот, данные которого узел получил при повторной передаче. Оно может не совпадать с абсолютным наивысшим слотом, подтвержденным кластером. Такой слот можно получить с помощью методов вроде getSlot с уровнем подтверждения finalized или getBlockHeight. Это значение скорее отражает ход распространения данных до конкретного узла.
  • Динамическое значение: Это число будет постоянно увеличиваться по мере того, как сеть создает новые слоты, а данные передаются повторно.
В этом руководстве приведены необходимые шаги для использования метода RPC getMaxRetransmitSlot. Он может быть полезен для мониторинга состояния синхронизации и работоспособности узла Solana с точки зрения распространения данных блоков.