Network Patterns
Since the adveniment of Bitcoin in 2008, web3 infrastructure has been a hotspot for venture capital to invest. As a consequencem blockchain networks have evolved in almost any direction and with different protocols and patterns. Over the time, some protocols have consolidates making up ecosystems around the an initial based blockchain.
Network Ecosystems
| Currency | Layer | From | Lang | Ledger | Consensus | Execution Environment | |
|---|---|---|---|---|---|---|---|
| VM | Smart Contracts | ||||||
| Bitcoin | L1 | 2008 | C++ | UTXO | PoW | Script | BitcoinScript |
| Ripple | L1 | 2012 | C++ | account | XRP Ledger | Yes | |
| Ethereum | L1 | 2013 | Go | account | PoS | EVM | Solidity |
| Radix | L1 | 2013 | Cerberus | Scrypto | |||
| Monero | L1 | 2014 | C++ | UTXO | PoW | - | - |
| Tezos | L1 | 2014 | account | PoS | TezosVM | Michelson | |
| Cosmos | L0 | 2014 | Go | account | BFT PoS | CosmWasm | Rust |
| Cardano | L1 | 2015 | Haskell | UTXO | PoS | Ouroboros | Plutus, Marlowe, Glow |
| IOTA (DAG) | L1 | 2015 | Rust, TinyGo, Solidity | ||||
| WAVES | L1 | 2016 | Scala | LPoS | Ride | ||
| Substrate, Polkadot | L0 | 2016 | Rust | account | NPoS | PEE | Rust |
| NEAR | L1 | 2017 | Rust | account | PoS | Rust, Javascript | |
| Algorand | L1 | 2017 | Python | account | PoS | AlgorandVM | TEAL |
| Chia Network | L1 | 2017 | Python | UTXO | PoST | CLVM | Chialisp |
| Fantom (DAG) | L1 | 2018 | Go | account | Lachesis | FVM | Solidity |
| TON | L1 | 2018 | C++ | account | PoS | TVM | FunC |
| Avalanche (DAG) | L0 | 2018 | Go | UTXO | AVM | Solidity | |
| Aptos (Diem, Libra) | L1 | 2019 | Rust | account | AptosBFT | MoveVM | Move |
DLT Trilemma
The Layered Stack Ecosystem
An ecosystem is started by a base blockchan that provides some new ideas to the market. These ideas come in some of the 4 main moddules that compose a blockchain: execution, settlement, consensus and data availability.
Scaled Infrastructure Patterns
Most of existing blockchains have evolved as part of already existing ecosystem, and only a few base chains can define its own infrastructure ecosystem.
A Fork happens whenever a community makes a change to the blockchain’s protocol, or basic set of rules. When this happens, the chain splits — producing a second blockchain that shares all of its history with the original, but is headed off in a new direction.
A Sidechain is a separate, independent blockchain linked to the main blockchain (mainchain) using a two-way bridge. It enables tokens or other digital assets to be transferred between the mainchain and the sidechain.
The Layer 2 provides scalabilty to Layer 1. Layer 2 typically processes operations out of Layer 1 to improve throughput and reduce fees.
Channels are peer-to-peer protocols that allow two parties to make an unlimited number of transactions amongst themselves and then only post the final results to the blockchain. Afterward, cryptography is used to demonstrate how the summarized data results from the earlier set of transactions. A multisig smart contract ensures the correct parties sign the transactions.
A Plasma blockchain is a network of independent child chains. These child chains function as distinct blockchains, each with its own block validation mechanisms. Yet, each of the child chains remains anchored to the underlying blockchain. A Plasma chain executes transactions off-chain with its own mechanism for block validation.
A Rollup is a layer two (L2) blockchain that processes transactions away from the main blockchain to reduce transaction costs and increase throughput on the main chain. Batches of transactions are verified and settled back to the main chain.
The Layer 3 sits on top of Layer 2 and is mainly dedicated to hosts dApps for real-world applications and executes specific functions.
The table below compares the different scalibility patterns, showing their features and where State and TX are persisted for each case. All patterns integrate an execution environment to alleviate the burden of transaction execution from their parent chain by performing their own computation. Plasma is the only one with not ability to run smart contracts. All L1 provide their own consensus layer but L2 rely on mainchain consensus. They can commit the data to the maintchain or to an external DA layer.
| Year | Consensus | Execution | Settlement | DA / Merkel Commits | ||||
|---|---|---|---|---|---|---|---|---|
| Loc | Loc | SC | Proofs | To | TX | State | ||
| L0 | ||||||||
| Interop | - | - | - | - | - | - | - | - |
| L1 | ||||||||
| Mainchain | 2009 | mainchain | own | N/Y | - | mainchain | tree | tree |
| Fork | 2011 | own | own | Y | - | own | tree | tree |
| Sidechain | 2011 | own | own | Y | - | own | tree | tree |
| Commitchain | 2017 | own | own | Y | fraud | mainchain | - | tree |
| L2 | ||||||||
| Channel | 2016 | mainchain | own | Y | fraud | mainchain | tree | tree |
| Plasma | 2017 | mainchain | own | N | fraud | mainchain | root | - |
| Op Rollup | 2014 | mainchain | own | Y | fraud | mainchain | tree | root |
| Optimium | 2020 | mainchain | own | Y | fraud | custom | tree | root |
| zk Rollup | 2018 | mainchain | own | Y | validity | mainchain | tree | root |
| Validium | 2020 | mainchain | own | Y | validity | custom | tree | root |
| Volition | 2023 | mainchain | own | Y | validity | both | tree | root |
| L3 | ||||||||
| Rollup | 2024 | L2 | own | Y | any | L2 | tree | root |