O pior tamanho de bloco do Ethereum continua surgindo como um problema, normalmente por meio de construções adversárias, em vez de uso honesto. Os blocos médios são pequenos; os piores casos não são.

Fundo

Antes do Pectra, o tamanho do bloco de pior caso era impulsionado por ineficiências de compactação do Snappy e dados de chamada baratos (gás 4/16 para bytes zero/diferentes de zero).

EIP-7623 (Pectra) resolveu esta questão aumentando os custos de calldata para 10/40 gás para transações com muitos dados de chamada. Isso introduziu uma nova construção de pior caso:

  • ~3/5 do gás de bloco gasto nas listas de acesso EIP-2930
  • ~2/5 gastos em calldata
  • Estruturado para evitar o acionamento do piso EIP-7623 → “gás de execução suficiente para continuar pagando o preço mais baixo

O problema: os dados da lista de acesso são essencialmente gratuitos. Isso contorna o EIP-7623 e aumenta novamente o tamanho do bloco do pior caso.

Por que isso é importante agora

O aumento dos limites de gás de bloco e da contagem de blob irá enfatizar ainda mais a propagação. Enquanto ePBS (envio com Glamsterdam) estende o tempo de propagação, BALs aumentam os dados brutos do bloco: contraproducente nesta frente.

Reprecificação proposta (ambos os EIPs são CFI para Glamsterdam)

EIP-7981: Aumente o custo da lista de acesso

Aplica custos de calldata a listas de acesso de transação. Isto fecha o caminho de evasão: o pagamento do gás agora rastreia os dados reais como se fossem calldata.

EIP-7976: Aumentar o custo mínimo de dados de chamada

Duas opções em discussão:

  1. Conforme especificado: aumentar os preços a partir de 40/10 → 15/60 gás para transações com muitos dados de chamada; simples aumento de preço de 50%
  2. Alternativa: plano 64/64 gás por byteeliminando a distinção zero/diferente de zero

Interação com ePBS

ePBS pode vir com um prazo de carga dinâmica: o PTC impõe prazos mais apertados para cargas úteis menores.

O CL não deseja consagrar uma codificação Snappy específica. O preço fixo por byte (opção 2) é melhor aqui: o tamanho do pior caso torna-se mais previsível ao usar o tamanho da carga útil não compactada.

Um possível caminho a seguir

Com o EIP-7976, no estado em que se encontra (15/60 para bytes zero e diferentes de zero), podemos chegar a um limite de gás de bloco de 150 milhões sem exceder o tamanho de bloco do pior caso de 4 MiB. A alternativa, sem dúvida, a reavaliação mais agressiva (64/64; sem distinção entre bytes zero e diferentes de zero), nos levaria a um tamanho de bloco de pior caso de 2,25 MiB, deixando espaço para novos aumentos no limite de gás para 300 milhões no futuro.

Feedback bem-vindo!



1 Curtir

Fontesethresear

By victor

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *