Subspace Ecosystem for Domain Operators and Developers

8kzk...TxAo
10 Jan 2024
146

Addressing the Farmer’s Dilemma, Subspace's initial whitepaper introduced a system where consensus and computation stand as separate entities. In this modular design, farmers propose transaction orders, while staked executor nodes (now termed operator nodes) handle state management and compute transitions. This strategic choice empowers farmers, allowing them to partake in the consensus process without shouldering the intensive computational burden of transaction execution. It also introduces operators as distinct network participants capable of managing heavier computational workloads.
Decoding Decoupled Execution: The Role of Domains

The linchpin of decoupled execution lies in the concept of domains. The Subspace domain system shares conceptual similarities with Ethereum's rollups but goes a step further by integrating these rollups into the core protocol. Domains, in essence, are namespaced execution environments fostering horizontal scalability.
For developers, this design offers the ability to launch their networks while leveraging the underlying consensus chain. This not only ensures robust security but also guarantees reliable data availability and settlement processes. Essentially, it harnesses blockchain strengths to provide a more flexible, secure, and efficient environment for decentralized applications.

Domain Runtime Registry and Instantiation

Domain runtimes get registered on the consensus chain, currently a permissioned operation. Future developments aim to introduce "open" domains, allowing anyone to register a conforming runtime on the Subspace network. The initial runtime registered is the Ethereum Virtual Machine (EVM), with plans to add runtimes based on WebAssembly (WASM) in subsequent phases.
Once registered, a runtime becomes available for instantiation with a domain genesis configuration, specifying domain-specific details such as the domain name, block size, and bundles per slot and block. This can be executed by any account placing a deposit, enabling Subspace users to launch their EVM domain within the Subspace Network. Although currently limited to the sudo account, this will soon open up to broader participation.

Operators and Nominators

After instantiation, anyone can participate as an operator. An operator's role involves bundling and executing transactions for a domain, achieved through registration, staking, and running a node. Operators participate in a stake-weighted VRF election process to produce bundles, where increased stake enhances the chances of being elected.
Operators may refer to the "operator node" as the software responsible for compiling and submitting bundles, and the "operator pool," which is created during registration. Pool creation occurs upon registration, with the initial stake deposited into the pool, and the registering account becoming the pool owner. Two crucial options during registration include the minimum nominator stake and nominator tax, determining the percentage of nominator earnings retained by the operator.
This introduces a new network participant: the nominator. Nominators add stake to existing operator pools, sharing in earnings after paying the specified tax. Operators leverage their hardware investments, taxing those who trust their stake to the efficient operation of an existing operator, forgoing the overhead of running a node.

Epochs and Epoch Transitions

An epoch is a timeframe where the staking distribution remains static, with transitions occurring every 100 domain blocks at present. Epoch transitions include rewards allocation, stake deposits or withdrawals, operator registrations and deregistrations, taxes earned by operator owners, and updates to the domain's staking summary.

Transaction Lifecycle

The lifecycle of a domain transaction involves multiple stages:

  1. User submission to a domain node.
  2. Transaction gossiping to other operator nodes.
  3. Bundle producer election and inclusion of the transaction in a bundle.
  4. Consensus nodes' verification of the bundle without executing the transaction.
  5. Broadcast of the block on the consensus network.
  6. Domain operators building a corresponding domain block, deduplicating and shuffling transactions.
  7. Execution of transactions by each operator, producing an execution receipt that tracks post-state roots.

When an operator creates a bundle, they include the most recent execution receipt in the bundle's header, paid for the block execution generating the receipt. Fees are distributed in the epoch transition after the challenge period, confirming the execution receipt.

Detecting Fraud

Operators run every transaction, producing deterministic execution receipts. If an honest operator observes a different receipt, they submit a fraud proof to the consensus chain. Valid proofs prune child blocks and slash related operators after a specified challenge period, ensuring confirmed transactions.

Nova EVM

All these components form the foundation of the Subspace Network's Nova domain, an Ethereum Virtual Machine (EVM) chain on the Frontier pallet. Nova extends Ethereum compatibility to Substrate-based chains like Subspace, offering a user-friendly design for seamless adaptation by developers entrenched in the EVM landscape.
Practically, this means familiar processes and tools, such as transactions through MetaMask or deploying smart contracts using tools like Foundry or Hardhat, become straightforward on Subspace. The only requisite change is a simple configuration update to connect with a Subspace Nova RPC node.

What's Next

In the short term, Subspace aims to enable cross-domain messaging for value transfer across domains and the consensus chain. Improvements to the operator user experience, such as syncing from other operator nodes, are also on the horizon. Future plans include introducing 'open domains,' allowing permissionless registration of domain runtimes.
As development progresses, Subspace continuously enhances its developer experience and explores innovative possibilities for the network. The team looks forward to showcasing more developments in the coming year and invites developers to join their mission via Discord. For in-depth information, developers can refer to the Subnomicon documentation page.

Get fast shipping, movies & more with Amazon Prime

Start free trial

Enjoy this blog? Subscribe to AbdullahCoban✅

5 Comments