Comment on page
CESS Network has two node types that node miners could participate: Consensus Nodes and Storage Nodes.
Consensus nodes are essential in validator elections and authoring blocks in the CESS blockchain. All consensus nodes have the following features:
- Record and store the transaction results and state changes
- Communicate among nodes that form a peer-to-peer network in a decentralized fashion
- Execute consensus algorithm to ensure on-chain data's security and sustained growth
- Contain cryptographic algorithm for signatures and transaction verifications
CESS Node is a core component in the CESS network. It is a blockchain node program developed based on the Substrate framework.
If running TEE worker simultaneously, a CESS node running in full-node is eligible to be elected as a validator, responsible for producing and verifying blocks.
The main task of the TEE worker is to mark data (generate file tags) for user's files that are used in PoDR2 (Proof of Data Reduplication and Recovery) proofs and to generate space-holder files for the space provided by the storage miners in PoIS (Proof of Idle Space) proofs. Every job completed in the TEE worker is tamper-proof and verifiable, which can effectively ensure data authenticity.
A TEE worker is bound to a consensus node and can only work after registering a transaction with the account signature of the consensus node. It requires a relatively high hardware requirement and needs the support of TEE functions. To balance out the higher cost, miners also earn a higher reward.
Storage nodes play a crucial role in the distributed storage system. All nodes are peers and form a globally distributed storage network using P2P communication technology based on libp2p implementation.
Storage nodes are responsible for providing storage space, storing data, providing downloads, and calculating data proof. They also control which disk to use and the maximum storage capacity to serve the CESS network. The larger the storage provided, the higher the rewards obtained.
The CESS network incentivizes storage nodes to offer disk capacities of 4GB and above, preferably utilizing SSDs with a network bandwidth of no less than 2Mbps. Storage nodes satisfying this requirement can yield higher rewards at an accelerated pace.
The chain client component is based on the open-source go-substrate-rpc-client implementation, which specifies how storage nodes interact with blockchain nodes and provides functions such as viewing chain status, transactions, and listening for events.