Detailed Explanation of Celestia's "Brother" Fuel: What Are the Differences Between Modular Execution Layers and L2?
Author: Nianqing, Chain Catcher
At the beginning of September, modular blockchain developer Fuel Labs announced the completion of an $80 million financing round led by Blockchain Capital and Stratos Technologies. Shortly thereafter, Fuel launched its developer testnet beta-1, allowing developers to deploy contracts without permission or whitelisting, and users can interact with the deployed contracts.
Fuel has become another protocol emphasizing the concept of modular blockchain after Celestia. In fact, Fuel and Celestia can be considered "brothers," as both projects share the same co-founder, John Adler, who is also one of the earliest proponents of the Optimistic Rollup solution.
Although the two development teams are relatively independent, there are overlapping core members, making the two modular blockchains complementary in their technical approaches. Fuel is positioned as a modular execution layer, while Celestia is optimized for data availability and ordering; it does not execute but only handles data availability and consensus.
Fuel v1 was initially used as a Layer 2 scaling solution for Ethereum and was the first Optimistic Rollup deployed on the Ethereum mainnet at the end of 2020. However, pure Layer 2 solutions are severely constrained by the performance of the mainnet. Even if the execution layer is separated, it still cannot achieve complete scalability, as evidenced by the gas fees of Layer 2 protocols like Optimism and Arbitrum.
Fuel is not satisfied with this and attempts to optimize the base layer through a modular execution layer, improving the execution state of Layer 2 to truly achieve scalability. Its founder positions Fuel as a "decentralized coordination link," exploring stronger composability.
1. What is the difference between a modular execution layer and Layer 2?
We all know that blockchains generally perform three main functions: execution, consensus, and data availability:
- Execution: Executing transactions to update the state.
- Consensus: Defining the state and verifying that all nodes on the blockchain have the same state.
- Data Availability: Ensuring that block data has been published to the network.
In a monolithic blockchain, these three layers—data, consensus, and execution—are all mixed in one network, requiring nodes to operate for both data validation and transaction execution. Therefore, to maintain a globally replicated state, nodes cannot guarantee the efficiency of network operations.
For example, Ethereum requires that the hardware running full nodes must allow consumer-grade hardware to ensure decentralization, enabling anyone to become a node. By running a full node, users achieve trustlessness by validating themselves. While security is guaranteed, network scalability is sacrificed.
Currently, Rollup solutions in Layer 2 scaling primarily address some issues by separating the execution layer. Computation is moved off-chain for processing and execution, while transaction data remains on the main chain. However, Rollup does not improve data availability, meaning that gas fees on Rollup will still rise due to congestion on the mainnet.
Additionally, Optimistic Rollup must pay mainnet fees to publish data and also incur costs for maintaining state (storage) and execution on Layer 2. However, currently, Rollup does not focus much on optimizing state.
In the modular era, block space will no longer be a scarce resource, as the base layer begins to provide larger storage space, making data availability less of an issue. Instead, state and execution will soon become the new bottlenecks of concern.
Therefore, based on the above issues, Fuel proposed the concept of a modular execution layer.
First, scalability issues are addressed through light clients and fraud proofs. Fuel's approach is similar to Optimistic Rollup, assuming that most nodes are honest. Thus, when publishing assertions, it does not require accompanying proof of validity but uses a fraud proof mechanism to ensure correct consensus in the Layer 2 network. Under the assumption that the blockchain is valid, light clients only need to download block headers and check their proof of work (PoW) to verify transactions without downloading all blocks.
Because light clients do not need to run 24/7 and do not directly interact with the chain, the computational requirements are much lower, with the computational resources and storage needed to run a light client being several orders of magnitude less than those for a full node.
Second, the new virtual machine FuelVM improves the inefficient and resource-wasting execution environment of EVM. FuelVM considers scalability from the perspective of a modular execution layer rather than focusing on scaling a specific base layer (e.g., Ethereum) as Rollup does. It emphasizes computation rather than data and minimizes state usage.
Fuel focuses on being the execution layer in a modular blockchain, meaning that Fuel does not implement consensus or store blockchain data on the Fuel chain. For functional blockchains, Fuel interacts with other chains to achieve consensus and data availability, such as Ethereum or Celestia.
In other words, Fuel is not satisfied with being the Layer 2 of any single blockchain, merely reducing costs in a "pain-free" manner. Instead, it aims to be more flexible and thorough, capable of serving as Layer 2, Layer 1, sidechains, or even state channels. This aligns with Celestia's emphasis on having "pluggable" composability.
Specific use cases for Fuel are as follows:
1. As Rollup or Layer 2
Fuel's modular execution layer configuration is similar to Layer 2 based on Rollup deployed on Ethereum, but Fuel's technical solutions differ from those of Zk and OP Rollups, and can be used as validity or fraud proof systems. Additionally, current Rollups are designed for monolithic blockchain stacks, which imposes certain limitations, while Fuel can optimize the bandwidth potential of a Layer 1 mainnet.
2. As Layer 1
Fuel's technology includes running all components as a complete Layer 1. These components include consensus, data availability, settlement, and transaction execution. A common configuration for this mode of operation is permissioned proof and proof of stake through a Tendermint-BFT style. However, the team states that even though it is theoretically feasible to operate as Layer 1, it is limited to the testnet, as Fuel is more focused on enhancing existing blockchains as a high-performance execution layer.
3. As a state channel
FuelVM is a pricing virtual machine architecture with a deterministic state system, making it very suitable for multi-party channel designs, where all parties must clearly understand the exact state of the system at each communication step or window. However, there is currently no out-of-the-box channel configuration based on Fuel technology.
4. As a sidechain
Fuel's technology also supports running as a sidechain to an existing Layer 1. This means there is a messaging bridge between Layer 1 and Fuel. In this configuration, data availability will be handled by the sidechain, while settlement will be managed by Layer 1. It can also be run in a semi-proven configuration, allowing fraud proofs to ensure better validity using Layer 1 as an arbitrator.
2. Technical Highlights
The advantages of Fuel's technology can be summarized in three keywords: the ability to execute parallel transactions; the improved virtual machine FuelVM; and a more developer-friendly dedicated programming language, Sway.
In terms of technical direction, Fuel is quite similar to Starkware, both of which have developed their own dedicated programming languages and created new, more efficient virtual machines. Previously, when Starkware announced the Cairo 1.0 launch plan, Fuel co-founder John Adler also complained that many features and functions of Cairo had already been implemented in Sway.
1. Parallel execution of transactions
Currently, parallel execution is an increasingly popular concept in Layer 1, with some new public chains like Aptos, Sui, and Linera using parallel execution in their Move language systems. In contrast, Ethereum's EVM primarily adopts sequential execution.
In sequential execution, the EVM executes only one transaction at a time, while other transactions are put on hold until the transaction is completed, at which point the block state is updated, even if the two transactions are independent. Although this execution model supports special use cases like flash loans, it is generally inefficient and lacks scalability.
Parallel execution allows transactions to be divided among multiple processor cores, improving hardware utilization. In high-throughput chains, increasing hardware resources is directly related to the number of executable transactions. During periods of high activity, validator nodes can delegate more cores to handle additional transaction loads. The dynamic scaling of computational resources allows the network to achieve higher throughput during high-demand periods. Furthermore, parallel execution improves transaction confirmation latency, as transactions do not need to wait for dozens or hundreds of blocks, nor do they incur excessive fees for priority confirmation.
Fuel focuses on being the execution layer in a modular blockchain, meaning that Fuel does not implement consensus or store blockchain data on the Fuel chain. For functional blockchains, Fuel interacts with other chains to achieve consensus and data availability, such as Ethereum or Celestia.
Fuel uses the UTXO model to create a mandatory access list, controlling access to the same state with a single list. The model is based on the concept of regulating transaction ordering. In this scheme, the ordering of transactions in a block significantly simplifies the detection of relationships between transactions. To implement this architecture, Fuel has established a new virtual machine, FuelVM, and a new language, Sway.
Related Reading: 《** Detailed Explanation of Layer 1 Parallel Execution: How Aptos, Sui, Linera, and Fuel Achieve It?**》
2. The new programming language Sway
Fuel has developed a unique programming language called Sway, which retains the advantages of smart contract languages like Solidity in the development environment while adopting paradigms introduced in the Rust tool ecosystem. In short: Rust + Solidity = Sway.
Sway prioritizes compile-time analysis and safety, similar to Rust's borrow checker and safety-first semantics. Additionally, it has Rust's syntax, thus also offering high performance. Of course, Sway is not general-purpose; its goal is to better serve the VM environment.
3. Improved virtual machine FuelVM
FuelVM aims to reduce the wasteful processing of traditional blockchain VM architectures while increasing the potential design space for developers.
FuelVM is an improvement over EVM, with the main differences as follows:
- FuelVM has a globally shared memory architecture instead of context-local memory.
- FuelVM is designed specifically for fraud proofs.
- FuelVM has multiple native assets (in Ethereum, the only native asset is ETH. In Fuel, any contract can mint its UTXO-based native assets using simple asset opcodes and gain native-level calls and optimizations).
3. Team and Financing Situation
John Adler serves as a co-founder of both Fuel and Celestia. Previously, John worked as an L2 scalability researcher at ConsenSys, focusing on the second phase of Ethereum 2.0, and is one of the earliest proponents of the Optimistic Rollup solution.
The co-founder and CEO of Fuel is Nick Dodson, who also previously worked as a researcher at ConsenSys.
As early as mid-2019, John and Nick Dodson launched Fuel v1 as the first Optimistic Rollup solution, initially focusing on stablecoin payments, as stablecoins consumed the most gas at that time. However, Fuel v1 had limited use cases and could not build Turing-complete smart contracts. Therefore, shortly after the launch of the Fuel v1 mainnet, the team began work on Fuel v2 (i.e., Fuel).
Ekram Ahmed, the communications director of Celestia Labs, is also a strategic advisor to Fuel. Although Celestia and Fuel are two different teams, there are many overlaps in their management, and their future development plans will complement each other.
In terms of financing, Fuel developer Fuel Labs announced the completion of an $80 million financing round at the beginning of September, led by Blockchain Capital and Stratos Technologies, with participation from Alameda Research, CoinFund, Bain Capital Crypto, TRGC, Maven 11 Capital, Blockwall, Spartan, Dialectic, and ZMT. Previously, in September 2021, Fuel Labs raised $1.5 million, led by CoinFund, with participation from Fenbushi Capital and Origin Capital.
4. Conclusion
Currently, Fuel has announced the launch of a grant program, the online testnet, and the announcement of ecosystem projects like SwaySwap, but it has not yet disclosed the mainnet launch date, which is expected to be as early as the beginning of 2023.
In addition to the concept of "modular execution layer" proposed by Fuel, more and more Layer 2 scaling solutions are beginning to propose more flexible execution layer solutions. For example, Boba Network recently proposed the concept of a "multi-chain execution layer," building a multi-chain environment alongside Layer 1 EVM-compatible blockchains, and announced collaborations with L1s like Moonbeam, Fantom, and Avalanche.
There is also AltLayer, a Rollup temporary execution layer solution that recently completed a $7.2 million seed round of financing. It proposes the concept of "Rollup as a Service" from the perspective of building dApps, creating a transient execution layer system driven by optimistic Rollup. For example, developers can launch a temporary execution layer before a consumable event like an NFT drop, and once the minting is complete, the assets will settle on Layer 1, and the execution layer will dissolve.
Modularity is becoming one of the cutting-edge trends in the industry, with many new projects emerging around execution layers and data availability, which may lead the user experience of blockchain to a new level.
(Feel free to add WeChat ID gnu0101 to join the Chain Catcher group chat)