background image

Scaling Filecoin

IPC is the next frontier in blockchain scalability, unlocking unmatched capacity and enabling new use cases.

Consensus poses a major scalability bottleneck in blockchain networks. This is particularly the case when all validators are required to process all transactions, as is the case for Filecoin, which renders the network unable to increase its performance by adding more participants (scale-out).

Moreover, not every application benefits from using the same consensus algorithm: different applications may have different performance and security requirements, making it difficult for a single blockchain network with a single consensus layer to accommodate any type of web3 application.

Interplanetary Consensus (IPC) is a framework to enable on-demand horizontal scalability of Filecoin by deploying subnets (self-governing chains) that spawn their own state, validate messages in parallel, and seamlessly interact with any network in the hierarchy, as well as with the Filecoin root network. Subnets can run different consensus algorithms, depending on application requirements.

IPC is complementary to the programmability introduced by FVM: it provides a framework to further program the Filecoin network, accommodating a variety of use cases while overcoming potential consensus bottlenecks, to load balance decentralised applications by spawning new blockchain substrates on-demand, and to tailor the system to better fit application needs.

Components

Interplanetary Consensus

Unlike traditional sharding designs, based on the explicit partitioning of the network’s state, our solution centres on the concept of subnets that can be spawned on-demand to manage new state. Subnets are organised in a hierarchy, in which parent subnets are firewalled from child subnets, have their own policies, and run a different consensus algorithm, increasing the network’s capacity and enabling new applications. Subnets leverage the security of parent subnets by periodically checkpointing state and include mechanisms to interact with other subnets in the system. IPC subnets can be configured to resemble different L2 platforms: from an optimistic or ZK-rollup, to a side-chain with a native communication bridge.

Fendermint

Fendermint is an effort to implement IPC with Tendermint. It combines FVM, IPLD, and CometBFT to provide a robust subnet node implementation, which retains compatibility with the Ethereum API and with the IPC actors.

Mir and Trantor

Mir is a framework for implementing, debugging, and analyzing distributed protocols. We use Mir to implement Trantor, a state machine replication system that establishes a total order of client requests with typical liveness and safety properties. Trantor achieves scalability without requiring a primary node to periodically decide on the protocol configuration. It multiplexes multiple instances of a leader-driven consensus protocol which operate concurrently and almost independently.

Applications

Computation

Computation

Spawn ephemeral subnets to run distributed computation jobs.

Coordination

Coordination

Assemble into smaller subnets for decentralised orchestration. Coordinate resources with high throughput and low fees.

Localisation

Localisation

Leverage proximity to improve performance. Operate at very low latency in geographically constrained settings.

Partition tolerance

Partition tolerance

Deploy blockchain substrates in mobile settings or environments with limited connectivity.

M3 performance targets

1 s

Subnet latency

5000

Subnet TPS

100

Subnets

background image

Launch sequence

  • M0: Spacenet launches with Mir and Trantor

    Spacenet launches as a long-running testnet with Mir and Trantor as its beating heart. Users can issue transactions and leverage the higher-frequency BFT consensus.

  • M1: IPC deployed onto Spacenet

    Subnets support is added to Spacenet. Developers can now use Spacenet to test applications with custom requirements or with high transaction volume.

  • M2: Functional demonstrator on Filecoin calibration

    Solidity actors enable alpha subnet support on Filecoin, with basic wallet support, smart contract deployment, and tooling for subnet operations. Mind the dragons, though: the protocol and code haven't been audited and shouldn't be used with any significant value.

  • M3: General availability on Filecoin mainnet

    IPC switches over to the Fendermint node implementation. The IPC actors are audited and safe. The base cryptoeconomic model is designed and implemented, alongside slashing and fraud proofs. Experienced users can confidently deploy and use IPC subnets in production but the UX will not support mass adoption.

  • M4: User, developer, and operator tooling

    Improved tooling and convenience services provided by ecosystem partners allow for easy deployment and interaction with subnets. SDKs are provided for builders wanting to deploy applications and manage subnets.

  • M5: Continuous improvement

    Continued improvements will include support for custom consensus mechanisms, cross-network atomic transactions, and IPC-native wallets. Tooling continues to be improved, and new features are implemented based on user feedback.