Skip to content

SKALE Nodes

The SKALE Network consists of a large pool of validator nodes, all running concurrently and independently, validating transactions within the SKALE Chains they oversee. These nodes coordinate with a set of smart contracts that run on the Ethereum mainnet called SKALE Manager.

Each SKALE Chain comprises a collective of randomly appointed virtualized subnodes that run a containerized SKALE EVM-client daemon (skaled) and SKALE ABBA-based consensus algorithm. Nodes in the SKALE Network aren’t restricted to operating a single chain but instead can support multiple chains via virtualized subnodes. This multiplex capability is made possible via a containerized subnode architecture deployed on each node in the network. Each node is virtualized and can participate as a validator via this subnode architecture for an independent number of SKALE Chains.

The subnode virtualization is enabled via an innovative containerized architecture that provides industrial-grade performance and optionality for decentralized application developers – performance and flexibility that’s similar to traditional centralized cloud and microservice systems. Containers are divided into several main components encapsulated via a dockerized Linux OS, allowing each node to be hosted in an OS-agnostic manner.

Run a Node

The SKALE Network has a pool of validators that run the network. Validators provide computation power to the network through nodes (computers running the network software). The collection of validators and the node(s) they spin up represent the entire validator network that performs core computing for the network as a whole such as validation and consensus.

Individual SKALE Chains in the network are operated by a group of virtualized sub-nodes selected from a subset of nodes (the pool) in the network and are run on all or a subset (multi-tenancy) of each node’s computation and storage resources.

As each node in the network continues to participate in their assigned SKALE Chains, they’re awarded bounties based upon their performance at the end of each network epoch. Each node will be monitored by their peer nodes. ‍ When a SKALE Chain has reached the end of its lifetime, the resources (computation, storage) of its virtualized sub-nodes will be freed so that validator nodes may participate in newly created SKALE Chains.

Expectations

  • Reliable connection to SKALE Network (low latency, high uptime)
  • Robust security practices and network architecture
  • Running latest SKALE Node software releases
  • Participation in governance (when applicable)

To encourage proper behavior amongst network participants, SKALE follows a Proof of Stake (POS) system whereby each node must stake a predetermined amount of SKALE tokens to be slashed at the citation of any activity not condoned by the network.

Activities not approved by the network include those which denote a failure to properly participate in each assigned SKALE Chain’s consensus, and maintain uptime and latency standards enforced by the Service Level Agreement (SLA).

Network SLAs are enforced through an algorithmic peer review system whereby each node is appointed 24 node peers to monitor and log their network participation, uptime, and latency. These metrics will be collected and averaged on the Ethereum mainnet to reward or slash nodes according to their respective performance.

Requirements

To be added as a node to the SKALE Network, a prospective node must run the SKALE Admin, which manages all operations in the node and is installed with the skale-node-cli.

SKALE Admin evaluates the prospective node to ensure that it’s upholding network hardware requirements. If the prospective node passes this verification step, the SKALE Admin permits the node to submit a request to SKALE Manager to join the network.

This request contains both the required network deposit as well as node metadata collected by the SKALE Daemon (for example IP address, port, public key, etc.).

Once the request has been submitted to SKALE Manager on Ethereum, SKALE Manager randomly defines the prospective node as a ‘full node’ or a ‘fractional node’ by assigning different sizes of SKALE Chains to the prospective node. Full nodes have all their resources utilized for a single SKALE Chain, while fractional nodes participate in multiple SKALE Chains (multi-tenancy).

General Hardware Requirements