How Aleph Cloud Works
The Aleph Cloud Network
The Aleph Cloud network is composed of 2 sets of nodes:
- CCNs (Core Channel Nodes): The backbone of the P2P network. They serve as an entry point into the network through an API (similar to a blockchain node's RPC).
- CRNs (Compute Resource Nodes): Responsible for the actual compute and storage available on Aleph Cloud. CRNs must be tied manually to a single CCN, and each CCN is incentivized to tie up to 3 CRNs.
Messages
In Aleph Cloud terminology, a "message" is similar to a "transaction" for a blockchain: it is a set of data sent by an end user, propagated through the entire peer-to-peer network. A message can be generated using either the Python SDK or TypeScript SDK, or through aleph-client or the Web Console.
These messages can contain several different instructions, such as reading or writing posts, programs/functions, or indexing data created on external blockchains.
Payment
Aleph does not operate as a blockchain but utilizes its native cryptocurrency, referred to as the ALEPH token, which functions across various blockchains.
This token serves two primary purposes: support users payments for the resources they allocate on the network, and incentivize node operators to maintain the network's integrity.
The first payment implementation is achieved through a staking mechanism, where users must hold a certain amount of ALEPH tokens to use the network's resources. This mechanism is in place for file storage and for persistent virtual machines.
Example Workflow
Let's take the example of a user who wants to run a program on the Aleph Cloud network:
- The user makes sure to have an Ethereum wallet holding a sufficient number of ALEPH tokens
- The user writes and sends a message using either the aleph python client, one of the SDKs, or the web dashboard
- The message arrives at a CCN, which then broadcasts that message to all CCNs in the network
- The "program" workload scheduled by the user's message gets assigned to one of the CCNs
- The assigned CCN now assigns that workload onto one of its CRNs
- The assigned CRN starts a virtual machine executing the user's requested workload.