What is Saturn

Run a Node

Use Saturn Network

# Saturn Rewards

This page provides a high level explanation into how reward calculation work for Saturn L1 Nodes. The Reward Calculation model for Saturn is documented in detail here.

There are currently no reliable cryptographic protocols for proving retrievals that we can use for Saturn. This is predominantly due to either efficiency issues (Saturn processes billions of logs weekly) or the non-existence of proof systems with desirable properties (e.g. a proof of bandwidth exchange). Therefore, Saturn currently relies on the logs generated by Retrieval Clients and L1 Nodes to compute rewards. The process for computing rewards using the logs can be described in three steps:

**Measure**: We ingest logs that are generated and use them to measure key performance metrics regarding each L1 Node. The metrics that we extract from logs that are used for payouts are:- Time to First Byte (TTFB)
- Bandwidth Served
- Download Speed
- Node Uptime

Except for uptime, all these metrics are measured for every request served. The performance of a node in those metrics is what determines their rewards.

**Evaluate**: Using the performance metrics we gather from our logs for each node, we aggregate those metrics and combine them to get a score for each node. That score represents how well that node is performing**relative**to other nodes in the network. To state again, nodes are scored**relative**to the rest of the networkβs performance.**Reward:**Using the scores we extract for each node, we assign a reward based on the available Reward Pool.

As the network grows and more is understood about the network dynamics, the measurement, evaluation and reward steps will be progressively decentralised.

## Reward Pool

The Reward Pool represents how much total rewards Saturn will distribute every month. There a few things that factor into what the Reward Pool is each month:

**Customers**: As Saturn onboards customers onto the network, the Reward Pool is expected to grow, unlocking more funds for node operators.**Forfeited Earnings**: Any earnings that are forfeited from Nodes that commit fraud on the network are added to the Reward Pool for the following month.

## Fraud Detection

We implement a layer of fraud detection to discover and prevent malicious behaviour on the Saturn Network.

## Payout Schedule

The payout schedule for Saturn is currently monthly. Estimated earnings are aggregated every 30 minutes and the final earnings are computed at the end of the month.

## Examples and Scenarios

It might be helpful to highlight a few examples of how rewards are distributed. The goal of this section is to bring intuition to the idea that the rewards for a node are computed based on its performance **relative** to the rest of the network.

**Setting the stage:**

Let us assume we have the following setup for a given month:

- Two Nodes: A and B. These nodes represent the whole network.
- A Reward Pool of 100 FIL.
- $S$ represents the score of a node.
- $R$ represents the reward of a node.

**Base Example:**

Node A and B have identical performance:

- Each serve 1 TB of bandwidth. Let $B$ represent the bandwidth score.
- Have 200ms TTFB and a download speed on the requests is 500 Mbps. Let $D$ represent download speed score.
- Have 99% Uptime. Let $U$ represent uptime score.
- We multiply all the scores we get from those metrics to get a total representative performance score $S = B * D * U$ for each node.

Let $S_A$ and $S_B$ be the scores of Node A and Node B. Since these nodes have identical performance, their scores are the same, so $S_A = S_B$. To compute rewards, we extract the score of each node relative to the **entire** network:

- Node A:

The reward for Node A is its relative score multiplied by the total reward pool (100 FIL) $R_A = 1/2 * 100 = 50$ FIL

- Node B: $\frac{S_B}{S_A + S_B} = 1/2$

The reward for Node A is $R_A = 1/2 * 100 = 50$ FIL

In this example, because the nodes have identical performance, at the end of the month Node A and Node B will earn 50 FIL each.

**Scenario: Node A doubles the bandwidth it serves.**

The goal here is to understand that earnings are directly proportional to your node performance relative to the network.

Letβs assume that Node A now serves 2 TB every month while Node B serves only 1 TB. Assume that all the other performance metrics are identical. How does this impact rewards?

Recall that the total score of a node is derived by multiplying its individual metric scores. Therefore, we can deduce that if Node A doubles its bandwidth and everything else remains the same, then its score will be double the score of Node B and $S_A = 1/2 * S_B$.

The rewards will then be:

- Node A:

The reward for Node A is its relative score multiplied by the total reward pool (100 FIL) $R_A = 2/3 * 100 = 66.6$ FIL

- Node B: $\frac{S_B}{S_A + S_B} = 1/3$

The reward for Node B is $R_B = 1/3 * 100 = 33.3$ FIL

**Scenario: Two Identical Nodes join the network. **

Let us say two more nodes, Node B and Node C join the network. These nodes are identical to Node A and Node B in terms of performance. Assuming the reward pool remains the same at 100 FIL, the rewards will then be divided evenly across each node.

There are 4 nodes so, every node will earn 100 / 4 = 25 FIL.

**Scenario: Saturn Onboards a Customer**

Assume Saturn onboards a new customer that pays 50 FIL a month, bringing the total reward pool to 150 FIL. Assuming the node count remains the same (2 nodes) and they have identical performance.

Node A and Node B will then earn 75 FIL each.

## FAQ

### Can I compute my own earnings?

At the current network state, it is highly unlikely for a node operator to be able to precisely predict how much they will earn. Events such as:

- Nodes joining / leaving the network.
- Reward Pool changing.
- Performance of other nodes in the network changing.

are all events that directly impact payout for a node, but are currently difficult to predict. As the network stabilizes, there is potential for making more precise estimations of earnings.

β Previous

Next β