I see Farmers and Executors mentioned everywhere, what is the difference? I am also confused on the fee structure with these two…
This is an important feature of the Subspace Network. We refer to this as decoupled execution. Effectively we split a traditional “node” into two parts, Farmers & Executors, this changes our fee and node structure compared to most networks.
Transaction Fees
The Subspace Network transaction fee is split just as our nodes are, into two portions
Cost of Storage:
The first portion of the fee is the cost of storage, how much space will be added to the history, and thus removed from available storage on the network. Even in a “simple” Alice to Bob style transaction there is still a small amount of data stored to the network, this could also be a very large file.
This cost of storage is determined in real-time by an automated market maker of used space compared to available space on the network and circulation of coins.
Cost of Execution:
The second portion of the fee is the cost of execution, how much computational power will be needed to process this transaction on the network. Once again, even in a simple transaction there is still a minor cost, or with a larger complex dApp this may be significantly higher.
This cost of execution is set in a bidding system similar to how Ethereum works, but since it is separated from consensus the bidding mechanism with be a more natural supply and demand market, and less of a forced situation as seen on other networks.
Farmers
- Farmers are the ones who are overall in control security of the network. They are the ones who are responsible for consensus on the network.
- Farmers are also the only ones who can mint new Subspace Credits.
- While participating in consensus farmers provide space to store the archival history of the Subspace Network, the amount of storage they provide is what determines their chances for winning consensus puzzle and getting block reward.
- Farmers are also rewarded the storage portion of the transaction fee.
Executors
- Executors are the ones who are responsible for liveness on the network by processing transactions (including smart contracts).
- Executors work off of a Staked election system, in which a node operator will provide Subspace Credits to stake, others will be able to stake on these nodes as well just like in PoS networks.
- Executors are rewarded for their work with the execution portion of the transaction fee.
- Its important to note that executors do not control the network (safety), no matter how many executors misbehave as long as there is a majority of honest farmer they will not be able to change the consensus of the network and as long as there is at least one honest executor invalid transaction processing will be punished too.