Этот документ был мотивирован нашей работой над Спецификация FOCIL consensus 23, где мы поняли, что протокол требует более вдумчивого рассмотрения ограничений ресурсов, так как некоторые детали не были явно указаны в FOCIL Ethereum исследовательский пост 14.
Перед тем, как мы начнем, мы предполагаем следующую настройку, чтобы создать чистую отправную точку для наших размышлений:
Прежде чем продолжить, мы предполагаем, что следующие участники являются частью протокола и анализируют их обязанности:
Мы предполагаем следующую последовательность событий, в которой комитет IL, предложитель и аттестаторы выполняют некоторые честные действия:
Члены комитета IL извлекают список транзакций IL из клиента EL, учитывая заголовок (CL → EL вызов), затем они подписывают локальный IL (транзакции + сводки) и выпускают его в сеть сплетен.
Узлы, следующие за цепочкой, загрузят IL, проверят его на предмет анти-DOS (пока не импортируют его в EL) и перешлют его другим узлам. Узлы также импортируют IL в выбор вилки и отслеживают, какие IL были видны, используя общий кэш. Аттестанты и узлы, следующие за цепочкой, должны иметь одинаковое представление о цепочке.
Предлагающий для следующего слота активно мониторит сеть передачи слухов IL и собирает и агрегирует локальные IL, затем при срезе агрегации IL (интервал №2) предлагающий обновляет процесс создания блока списком транзакций IL, которые должны быть включены в его блок. Для этого требуется вызов CL на EL.
Если предложитель следующего слота обнаруживает достаточное количество списков включения на основе хэша родительского блока, которого он не видел, то ему нужно будет вручную запросить отсутствующий блок битвы, импортировать блок и строить на его основе.
Исходя из вышеизложенного, мы можем выявить потенциально ресурсоемкие области и сузить на них фокус:
Заявитель обновляет процесс построения блока с помощью списка включенных транзакций. Это вызов CL → EL.
Просмотр списка включения блокировки. Прекратить принятие локального списка включения с этой точки.
Заявитель извлекает выполнение нагрузки из клиента EL (CL → EL вызов) и выпускает ее в сеть рассылки блоков маяка. Затем все остальные проверяют блок.
Узлы получают маяк блок и проверяют его. Новые шаги верификации включают проверку списка включения аггрегации и подтверждение того, удовлетворяет ли список включения функции оценки, которая должна быть завершена на CL. Проверка условий IL (можно ли их пропустить из-за конфликтов или нет) будет выполнена на EL.
Дополнительные обязанности для заявителя, по-видимому, не являются значительной проблемой. Новые этапы верификации для узлов - проверка того, что список включений соответствует удовлетворительным условиям - могут ввести дополнительную нагрузку на ЦП, но это, кажется, не является серьезной проблемой.
Аттестатор голосует за блок бэйкон с использованием правила выбора вилки LMD GHOST. Аттестаторы будут голосовать только за блок бэйкон, который удовлетворяет функции оценки списка включений на основе наблюдений из интервала 1.
Сегодня нет разницы.
Как видно из вышесказанного, самые значительные проблемы, связанные с ресурсами, касаются загрузки, скачивания списка включений и потенциального спама с точки зрения узла. Еще одной ключевой проблемой является нагрузка на узлы при проверке и импорте списка включений, а также необходимость обновления процесса создания блоков предлагающего узла для удовлетворения списка включений. Эти аспекты требуют тщательного рассмотрения и разработки для обеспечения эффективности и безопасности.
Исходя из вышеизложенного, мы выделяем несколько открытых вопросов, которые повлияют на то, как будет написана спецификация:
Этот документ был мотивирован нашей работой над Спецификация FOCIL consensus 23, где мы поняли, что протокол требует более вдумчивого рассмотрения ограничений ресурсов, так как некоторые детали не были явно указаны в FOCIL Ethereum исследовательский пост 14.
Перед тем, как мы начнем, мы предполагаем следующую настройку, чтобы создать чистую отправную точку для наших размышлений:
Прежде чем продолжить, мы предполагаем, что следующие участники являются частью протокола и анализируют их обязанности:
Мы предполагаем следующую последовательность событий, в которой комитет IL, предложитель и аттестаторы выполняют некоторые честные действия:
Члены комитета IL извлекают список транзакций IL из клиента EL, учитывая заголовок (CL → EL вызов), затем они подписывают локальный IL (транзакции + сводки) и выпускают его в сеть сплетен.
Узлы, следующие за цепочкой, загрузят IL, проверят его на предмет анти-DOS (пока не импортируют его в EL) и перешлют его другим узлам. Узлы также импортируют IL в выбор вилки и отслеживают, какие IL были видны, используя общий кэш. Аттестанты и узлы, следующие за цепочкой, должны иметь одинаковое представление о цепочке.
Предлагающий для следующего слота активно мониторит сеть передачи слухов IL и собирает и агрегирует локальные IL, затем при срезе агрегации IL (интервал №2) предлагающий обновляет процесс создания блока списком транзакций IL, которые должны быть включены в его блок. Для этого требуется вызов CL на EL.
Если предложитель следующего слота обнаруживает достаточное количество списков включения на основе хэша родительского блока, которого он не видел, то ему нужно будет вручную запросить отсутствующий блок битвы, импортировать блок и строить на его основе.
Исходя из вышеизложенного, мы можем выявить потенциально ресурсоемкие области и сузить на них фокус:
Заявитель обновляет процесс построения блока с помощью списка включенных транзакций. Это вызов CL → EL.
Просмотр списка включения блокировки. Прекратить принятие локального списка включения с этой точки.
Заявитель извлекает выполнение нагрузки из клиента EL (CL → EL вызов) и выпускает ее в сеть рассылки блоков маяка. Затем все остальные проверяют блок.
Узлы получают маяк блок и проверяют его. Новые шаги верификации включают проверку списка включения аггрегации и подтверждение того, удовлетворяет ли список включения функции оценки, которая должна быть завершена на CL. Проверка условий IL (можно ли их пропустить из-за конфликтов или нет) будет выполнена на EL.
Дополнительные обязанности для заявителя, по-видимому, не являются значительной проблемой. Новые этапы верификации для узлов - проверка того, что список включений соответствует удовлетворительным условиям - могут ввести дополнительную нагрузку на ЦП, но это, кажется, не является серьезной проблемой.
Аттестатор голосует за блок бэйкон с использованием правила выбора вилки LMD GHOST. Аттестаторы будут голосовать только за блок бэйкон, который удовлетворяет функции оценки списка включений на основе наблюдений из интервала 1.
Сегодня нет разницы.
Как видно из вышесказанного, самые значительные проблемы, связанные с ресурсами, касаются загрузки, скачивания списка включений и потенциального спама с точки зрения узла. Еще одной ключевой проблемой является нагрузка на узлы при проверке и импорте списка включений, а также необходимость обновления процесса создания блоков предлагающего узла для удовлетворения списка включений. Эти аспекты требуют тщательного рассмотрения и разработки для обеспечения эффективности и безопасности.
Исходя из вышеизложенного, мы выделяем несколько открытых вопросов, которые повлияют на то, как будет написана спецификация: