SUI is a Layer 1 blockchain and smart contract platform designed to provide high throughput and low latency. Developed by Mysten Labs, SUI aims to address scalability issues common in traditional blockchain systems by introducing innovative consensus mechanisms and a unique object-centric approach to data management.
- Key Features
- History and Development
- Technical Architecture
- State Model
- Consensus Mechanism
- Mysticeti Consensus Mechanism
Key Features
SUI's design philosophy focuses on enabling scalable decentralized applications (dApps) and Web3 services, particularly those requiring high-performance handling of digital assets.
- Object-centric data model: Unlike account-based systems, SUI treats data as objects with unique identifiers, enabling more efficient parallel processing of transactions.
- Move programming language: SUI utilizes an enhanced version of the Move language, originally developed for the Diem blockchain, to create secure and flexible smart contracts.
- High throughput: The platform's innovative consensus mechanism, based on the Sui Lutris protocol, allows for parallel execution of independent transactions, significantly increasing transaction processing speed.
- Flexible ownership structures: SUI supports various object ownership models, including address-owned, shared, and immutable objects, providing developers with versatile options for asset management.
- Low latency finality: SUI's architecture enables rapid transaction finality, particularly for transactions involving owned objects.
- Tokenomics design: The platform incorporates a sophisticated economic model, including a native SUI token, a storage fund, and a delegated proof-of-stake system.
History and Development
SUI was conceived and developed by Mysten Labs, a company founded by former executives and senior developers from Meta's (formerly Facebook's) Novi Research and Diem blockchain project. The founding team's experience with the Diem blockchain and the Move programming language significantly influenced SUI's design and architecture.
Key milestones in SUI's history include:
- 2021: Mysten Labs was founded by Evan Cheng, Adeniyi Abiodun, Sam Blackshear, and George Danezis, all of whom had previously worked on the Diem blockchain project.
- November 2021: Mysten Labs raised $36 million in a Series A funding round led by Andreessen Horowitz, signaling strong interest in their novel blockchain architecture.
- 2022: Development of the SUI blockchain began, with a focus on creating a high-performance, scalable platform using the Move programming language.
- July 2022: SUI launched its first public testnet, allowing developers to experiment with the platform's unique features.
- September 2022: Mysten Labs secured $300 million in Series B funding, valuing the company at $2 billion and demonstrating growing confidence in SUI's potential.
- December 2022: SUI launched its second incentivized testnet wave, further expanding its developer ecosystem and stress-testing the network.
- May 2023: SUI officially launched its mainnet, marking a significant milestone in the platform's development and opening up the network for real-world applications.
Technical Architecture
State Model
SUI implements a Directed Acyclic Graph (DAG) architecture as a fundamental part of its design, which plays a crucial role in its ability to achieve high throughput and parallelism. This DAG-based structure underpins SUI's object-centric model and transaction processing approach.
Key aspects of SUI's DAG architecture include:
- Transaction-Object Relationship:
- In SUI's DAG, nodes represent transactions, and directed edges represent the flow of objects between transactions.
- Each edge is labeled with the object reference, specifying the exact version of the object created by one transaction and used by another.
- Causal History:
- The DAG structure allows SUI to maintain a clear causal history of objects and transactions.
- This enables efficient tracking of object lineage and dependencies between transactions.
- Parallel Execution:
- The DAG architecture facilitates parallel execution of transactions that operate on disjoint sets of objects.
- Transactions that don't have dependencies on each other can be processed simultaneously, enhancing overall throughput.
- Consensus Optimization:
- SUI's consensus mechanism, based on the Sui Lutris protocol, leverages the DAG structure to optimize block creation and validation.
- Validators can propose blocks in parallel, utilizing the full bandwidth of the network.
- Object Versioning:
- The DAG structure naturally supports SUI's object versioning system, where each modification to an object creates a new version with a link to its predecessor.
- State Management:
- The DAG allows for efficient management of the global state, as it clearly represents which objects are available for use in new transactions.
- Scalability:
- The DAG architecture contributes to SUI's scalability by allowing the network to process multiple streams of non-conflicting transactions concurrently.
- Checkpointing:
- While SUI uses a DAG for transaction processing, it periodically creates checkpoints that represent a consistent view of the network state.
- These checkpoints are formed by taking chunks of ordered transactions from the DAG-based consensus layer.
- Auditability:
- The DAG structure provides a complete and auditable view of the system's state and history when it contains all committed transactions.
- Flexibility:
- The DAG can be used to construct a view of the relevant history for a subset of transactions or objects, allowing for efficient partial state reconstructions.
Consensus Mechanism
SUI employs a novel consensus mechanism designed to achieve high throughput and low latency. The core of this mechanism is based on two key components:
- Delegated Proof-of-Stake (DPoS): This system allows SUI token holders to delegate their stake to validators, who are responsible for processing transactions and maintaining the network's security. The amount of stake delegated to a validator determines their voting power in the consensus process.
- Sui Lutris Protocol: This is the next-generation consensus engine developed specifically for SUI. It optimizes for both low latency and high throughput through several innovative features:
- Parallel block proposals: Multiple validators can propose blocks concurrently, maximizing network bandwidth utilization and providing censorship resistance.
- Three-round commit process: Sui Lutris requires only three rounds of messages to commit blocks from the DAGs (Directed Acyclic Graphs), matching the theoretical minimum and ensuring rapid finality.
- Parallel voting and leader certification: The commit rule allows for simultaneous voting and certifying of leaders on blocks, further reducing median and tail latencies.
The SUI consensus mechanism is designed to maintain Byzantine fault tolerance, ensuring the network's integrity even if up to one-third of validators behave maliciously or fail.
A unique aspect of SUI's consensus approach is its ability to process certain transactions without going through the full consensus process. Transactions that only involve owned objects (as opposed to shared objects) can be processed immediately by validators without waiting for consensus, providing near-instant finality for many common operations.
For transactions involving shared objects, SUI uses its DAG-based consensus protocol to order and execute these transactions. This hybrid approach allows SUI to maintain high performance for simple transactions while ensuring consistency for more complex, shared-state operations.
The economic model supporting this consensus mechanism includes stake rewards for validators and delegators, creating incentives for network participation and security. The system also includes mechanisms to penalize underperforming or malicious validators, ensuring the network's overall health and reliability.
Mysticeti Consensus Mechanism
Mysticeti is a family of Byzantine fault-tolerant (BFT) protocols designed to support high-performance distributed ledgers and blockchains. Developed by researchers from Cornell Tech, Mysten Labs, University College London, and IST Austria, Mysticeti aims to address the latency and throughput limitations of existing consensus protocols while maintaining strong security guarantees.
The Mysticeti family consists of two main protocols:
- MYSTICETI-C: A consensus protocol that achieves the theoretical lower bound of 3 message rounds for latency in Byzantine consensus.
- MYSTICETI-FPC: An extension of MYSTICETI-C that incorporates a fast commit path for certain types of transactions, further reducing latency for specific workloads.
Key innovations of Mysticeti include:
- Use of uncertified Directed Acyclic Graphs (DAGs) to improve efficiency
- Novel commit rules allowing for lower latency commits
- Integration of consensus and fast-path protocols within a single framework
- Improved resource efficiency and censorship resistance
Mysticeti has demonstrated significant performance improvements over existing protocols, achieving sub-second latency for consensus commits while maintaining high throughput. It has been successfully integrated into the Sui blockchain, resulting in substantial latency reductions in a production environment.
- Background
Byzantine consensus protocols are fundamental to the operation of distributed systems that must maintain consistency in the presence of potentially malicious or faulty nodes. These protocols are particularly crucial for blockchain systems, where they ensure the integrity and consistency of the distributed ledger.
Traditional Byzantine Fault Tolerant (BFT) consensus protocols, such as Practical Byzantine Fault Tolerance (PBFT), have faced challenges in scaling to large networks and achieving low latency. More recent approaches, including HotStuff and Narwhal-Tusk, have improved upon these earlier designs but still face limitations in terms of latency and resource efficiency.
Mysticeti addresses several key challenges in the field of Byzantine consensus:
By addressing these challenges, Mysticeti aims to provide a more efficient and flexible foundation for building high-performance distributed ledgers and blockchain systems. Its design draws inspiration from previous work on DAG-based consensus while introducing novel techniques to overcome existing limitations.
- MYSTICETI-C Consensus Protocol
MYSTICETI-C is a Byzantine consensus protocol that operates on an uncertified Directed Acyclic Graph (DAG) structure. It is designed to achieve low latency and high throughput while maintaining Byzantine fault tolerance. The protocol can achieve consensus in as few as 3 message rounds, matching the theoretical lower bound for Byzantine consensus.
2.2 DAG Structure
The MYSTICETI DAG is composed of blocks proposed by validators in each round. Each block contains:
- The author's identity and signature
- A round number
- A list of transactions
- References to at least 2f+1 blocks from the previous round (where f is the maximum number of Byzantine faults tolerated)
Unlike some other DAG-based protocols, MYSTICETI-C does not require explicit certification of blocks, which contributes to its improved efficiency.
2.3 Decision Rules
MYSTICETI-C employs two main decision rules:
- Direct Decision Rule: Applied to the most recent slots, this rule attempts to classify slots as either "to-commit" or "to-skip" based on observed DAG patterns.
- Indirect Decision Rule: Used when the direct rule fails to make a decision, this rule relies on finding an "anchor" block in a future round to determine the status of a slot.
These decision rules allow MYSTICETI-C to commit multiple blocks per round, improving overall throughput.
2.4 Commit Sequence
After applying the decision rules, validators derive an ordered sequence of slots. They iterate over this sequence, committing blocks marked as "to-commit" and skipping those marked as "to-skip" until they encounter the first undecided slot.
2.5 Performance Characteristics
MYSTICETI-C achieves sub-second latency for consensus commits while maintaining high throughput (over 200k transactions per second in some configurations). It is particularly efficient in handling crash faults, showing minimal performance degradation in such scenarios.
- MYSTICETI-FPC Fast Path Protocol
3.1 Overview
MYSTICETI-FPC extends MYSTICETI-C to support a fast commit path for certain types of transactions. This extension is designed to handle workloads that do not require full consensus, such as asset transfers or payments, with even lower latency.
3.2 Fast Path Execution