Thanos Development Story — 7

Network upgrade: Span batch and Proto-danksharding

Theo Lee
Tokamak Network
3 min readAug 29, 2024

--

The network protocol of Thanos was initially developed on Optimism’s Canyon. To address problem of Titan’s high operational costs and adapt to Ethereum’s Dencun upgrade, we updated Thanos from Canyon to Ecotone. This upgrade introduced Span batch and EIP-4844 to Thanos. It significantly reduces the fixed costs associated with batch format and applies a new data type called ‘blob’ to drastically cut rollup costs.

Span batch

The Span batch introduced in the Thanos network upgrade is a new batch format designed to reduce chain overhead. Unlike the previous V0 format, the V1 format offers several advantages:

  • Overhead Reduction: Encodes consecutive L2 blocks into a single batch.
  • Minimized Metadata Duplication: Optimizes the format by removing repetitive metadata attributes in each L2 block.
  • Data Optimization: Reduces batch size by eliminating unnecessary data from the V0 attributes.
  • V2 Expansion Format: Re-designs to provide a scalable batch format for future distributed sequencing.
  • Reconfigured Transaction Fields: Reduces data storage space and maximizes compression efficiency.

The V1 batch format significantly reduces fixed costs for chain operators, enhancing efficiency and profitability. Particularly for less active chains, the V1 format can cut the repetitive data in L2 blocks, leading to over 90% reduction in fixed overhead.

EIP-4844

In March 2024, Optimism introduced EIP-4844 through the Ecotone upgrade, significantly reducing rollup data availability costs. This proposal introduces a new concept called ‘blob’ as an alternative to traditional calldata for transaction data rollups, along with a separate fee market distinct from general gas fees.

Applying EIP-4844 to Thanos offers significant advantages for users and chain operators. Storing rollup transaction data in blobs greatly reduces the cost of data availability. This significantly lowers L1 rollup costs included in L2 transaction fees, making transaction costs for users much lower compared to calldata.

  • Increased Transaction Throughput and Reduced Rollup Costs: Blobs allow more data to be processed at lower costs than calldata. Efficient packaging and processing of large transaction data lead to handling more data simultaneously compared to individual transactions.
  • Reduced Transaction Fees: Blobs have significantly lower gas costs compared to traditional calldata storage, reducing transaction costs on the L1 network and making the network more accessible to users at lower costs.
  • Improved Network Efficiency: Blobs temporarily store data and provide efficient validation methods, enhancing overall network performance and enabling faster, more efficient transaction processing.
  • Foundation for Long-term Scalability: EIP-4844 is the first step towards transitioning to danksharding, which divides the network into smaller units for parallel transaction processing, increasing total network throughput and scalability.
  • Economic Efficiency: Similar to EIP-1559, the introduction of a dynamic blob gas fee market adjusts fees based on network congestion, ensuring efficient resource use.

However, using blobs has drawbacks. If an L2 using Ethereum as a data availability layer experiences a surge in network usage, blob submissions may increase. This can sharply raise blob prices, increasing rollup costs and transaction fees for all L2s. In such cases, using calldata might be more advantageous. Therefore, chain operators must choose the data storage type efficiently based on network conditions.

What’s Next?

Thanos is set to launch on the mainnet in Q4 2024. It has applied Span batch and EIP-4844 to reduce rollup and transaction costs for users.

Storing data in blobs is cheaper than calldata, but selecting the appropriate data type based on network conditions is a big challenge. Tokamak Network is currently assessing rollup costs for different data types on Thanos Sepolia. Now we are evaluating whether blobs or calldata are more efficient based on transactions and activity levels. Additionally, we are considering dynamically choosing between calldata and blobs based on network congestion to optimize chain operations and minimize rollup costs.

--

--