Better formatting and lots of terminology links
This commit is contained in:
parent
8d1ac37734
commit
3de63570f6
|
@ -1,51 +1,209 @@
|
|||
## Terminology
|
||||
# Terminology
|
||||
|
||||
### Teminology Currently in Use
|
||||
## Teminology Currently in Use
|
||||
|
||||
The following list contains words commonly used throughout the Solana architecture.
|
||||
The following list contains words commonly used throughout the Solana
|
||||
architecture.
|
||||
|
||||
* account - a persistent file addressed by pubkey and with tokens tracking its lifetime
|
||||
* block - the entries generated within a slot
|
||||
* bootstrap leader - the first fullnode to take the leader role
|
||||
* client - a node that utilizes the cluster
|
||||
* cluster - a set of fullnodes maintaining a single ledger
|
||||
* control plane - a gossip network connecting all nodes of a cluster
|
||||
* data plane - a multicast network used to efficiently validate entries and gain consensus
|
||||
* entry - an entry on the ledger - either a tick or a transactions entry
|
||||
* finality - the wallclock duration between a leader creating a tick entry and recognizing
|
||||
a supermajority of validator votes with a ledger interpretation that matches the leader's
|
||||
* fork - a ledger derived from common entries but then diverged
|
||||
* fullnode - a full participant in the cluster - either a leader or validator node
|
||||
* genesis block - the first entries of the ledger
|
||||
* instruction - the smallest unit of a program that a client can include in a transaction
|
||||
* keypair - a public and secret key
|
||||
* leader - the role of a fullnode when it is appending entries to the ledger
|
||||
* ledger - a list of entries containing transactions signed by clients
|
||||
* ledger vote - a hash of the fullnode's state at a given tick height
|
||||
* lockout - the duration of time in which a fullnode is unable to vote on another fork
|
||||
* node count - the number of fullnodes participating in a cluster
|
||||
* program - the code that interprets instructions
|
||||
* pubkey - a shorthand for public key
|
||||
* public key - the public key of a keypair
|
||||
* replicator - a type of client that stores copies of segments of the ledger
|
||||
* secret key - the private key of a keypair
|
||||
* slot - the time in which a single leader may produce entries
|
||||
* stake - tokens forfeit to the cluster if malicious fullnode behavior can be proven
|
||||
* tick - a ledger entry that estimates wallclock duration
|
||||
* tick height - the Nth tick in the ledger
|
||||
* tps - transactions per second
|
||||
* transaction - one or more instructions signed by the client and executed atomically
|
||||
* transactions entry - a set of transactions that may be executed in parallel
|
||||
* validator - the role of a fullnode when it is validating the leader's latest entries
|
||||
#### account
|
||||
|
||||
A persistent file addressed by [public key](#public-key) and with tokens
|
||||
tracking its lifetime.
|
||||
|
||||
#### block
|
||||
|
||||
The [entries](#entry) generated within a [slot](#slot).
|
||||
|
||||
#### bootstrap leader
|
||||
|
||||
The first [fullnode](#fullnode) to take the [leader](#leader) role.
|
||||
|
||||
#### client
|
||||
|
||||
A [node](#node) that utilizes the [cluster](#cluster).
|
||||
|
||||
#### cluster
|
||||
|
||||
A set of [fullnodes](#fullnode) maintaining a single [ledger](#ledger).
|
||||
|
||||
#### control plane
|
||||
|
||||
A gossip network connecting all [nodes](#node) of a [cluster](#cluster).
|
||||
|
||||
#### data plane
|
||||
|
||||
A multicast network used to efficiently validate [entries](#entry) and gain
|
||||
consensus.
|
||||
|
||||
#### entry
|
||||
|
||||
An entry on the [ledger](#ledger) either a [tick](#tick) or a [transactions
|
||||
entry](#transactions-entry).
|
||||
|
||||
#### finality
|
||||
|
||||
The wallclock duration between a [leader](#leader) creating a [tick
|
||||
entry](#tick) and recognizing a supermajority of [ledger votes](#ledger-vote)
|
||||
with a ledger interpretation that matches the leader's.
|
||||
|
||||
#### fork
|
||||
|
||||
A [ledger](#ledger) derived from common entries but then diverged.
|
||||
|
||||
#### fullnode
|
||||
|
||||
A full participant in the [cluster](#cluster) either a [leader](#leader) or
|
||||
[validator](#validator) node.
|
||||
|
||||
#### fullnode state
|
||||
|
||||
The result of interpreting all programs on the ledger a given [tick
|
||||
height](#tick-height). It includes at least the set of all [accounts](#account)
|
||||
holding nonzero [native tokens](#native-tokens).
|
||||
|
||||
#### genesis block
|
||||
|
||||
The first [block](#block) of the [ledger](#ledger).
|
||||
|
||||
#### hash
|
||||
|
||||
A digital fingerprint of a sequence of bytes.
|
||||
|
||||
#### instruction
|
||||
|
||||
The smallest unit of a [program](#program) that a [client](#client) can include
|
||||
in a [transaction](#instruction).
|
||||
|
||||
#### keypair
|
||||
|
||||
A [public key](#public-key) and coesponding [secret key](#secret-key).
|
||||
|
||||
#### lamport
|
||||
|
||||
A fractional [native token](#native-token) with the value of approximately
|
||||
0.0000000000582 [sol](#sol) (2^-34).
|
||||
|
||||
#### leader
|
||||
|
||||
The role of a [fullnode](#fullnode) when it is appending [entries](#entry) to
|
||||
the [ledger](#ledger).
|
||||
|
||||
#### leader schedule
|
||||
|
||||
A sequence of [fullnode](#fullnode) [public keys](#public-key). The cluster
|
||||
uses the leader schedule to determine which fullnode is in the [leader](#leader)
|
||||
at any moment in time.
|
||||
|
||||
#### ledger
|
||||
|
||||
A list of [entries](#entry) containing [transactions](#transaction) signed by
|
||||
[clients](#client).
|
||||
|
||||
#### ledger vote
|
||||
|
||||
A [hash](#hash) of the [fullnode's state](#fullnode-state) at a given [tick
|
||||
height](#tick-height).
|
||||
|
||||
#### lockout
|
||||
|
||||
The duration of time in which a [fullnode](#fullnode) is unable to [vote](#vote) on
|
||||
another [fork](#fork).
|
||||
|
||||
#### native token
|
||||
|
||||
The [token](#token) used to track work done by [nodes](#node) in a cluster.
|
||||
|
||||
#### node
|
||||
|
||||
A computer particpating in a [cluster](#cluster).
|
||||
|
||||
#### node count
|
||||
|
||||
The number of [fullnodes](#fullnode) participating in a [cluster](#cluster).
|
||||
|
||||
#### program
|
||||
|
||||
The code that interprets [instructions](#instruction).
|
||||
|
||||
#### public key
|
||||
|
||||
The public key of a [keypair](#keypair).
|
||||
|
||||
#### replicator
|
||||
|
||||
A type of [client](#client) that stores copies of segments of the [ledger](#ledger).
|
||||
|
||||
#### secret key
|
||||
|
||||
The private key of a [keypair](#keypair).
|
||||
|
||||
#### slot
|
||||
|
||||
The time in which a single [leader](#leader) may produce [entries](#entry).
|
||||
|
||||
#### sol
|
||||
|
||||
The [native token](#native-token) tracked by a [cluster](#cluster) recognized
|
||||
by the company Solana.
|
||||
|
||||
#### stake
|
||||
|
||||
Tokens forfeit to the [cluster](#cluster] if malicious [fullnode](#fullnode) behavior can be proven.
|
||||
|
||||
#### tick
|
||||
|
||||
A ledger [entry](#entry) that estimates wallclock duration.
|
||||
|
||||
#### tick height
|
||||
|
||||
The Nth [tick](#tick) in the [ledger](#ledger).
|
||||
|
||||
#### token
|
||||
|
||||
A scarce, fungible member of a set of tokens.
|
||||
|
||||
#### tps
|
||||
|
||||
[Transactions](#transaction) per second.
|
||||
|
||||
#### transaction
|
||||
|
||||
One or more [instructions](#instruction) signed by the [client](#client) and executed atomically.
|
||||
|
||||
#### transactions entry
|
||||
|
||||
A set of [transactions](#transaction) that may be executed in parallel.
|
||||
|
||||
#### validator
|
||||
|
||||
The role of a [fullnode](#fullnode) when it is validating the [leader's](#leader) latest [entries](#entry).
|
||||
|
||||
|
||||
### Terminology Reserved for Future Use
|
||||
## Terminology Reserved for Future Use
|
||||
|
||||
The following keywords do not have any functionality but are reserved by Solana
|
||||
for potential future use.
|
||||
|
||||
* blob - a fraction of a block; the smallest unit sent between validators
|
||||
* epoch - the time in which a leader schedule is valid
|
||||
* light client - a type of client that can verify it's pointing to a valid cluster
|
||||
* mips - millions of instructions per second
|
||||
* thin client - a type of client that trusts it is communicating with a valid cluster
|
||||
#### blob
|
||||
|
||||
A fraction of a [block](#block); the smallest unit sent between [fullnodes](#fullnode).
|
||||
|
||||
#### curio
|
||||
|
||||
A scarce, non-fungible member of a set of curios.
|
||||
|
||||
#### epoch
|
||||
|
||||
The time in which a [leader schedule](#leader-schedule) is valid.
|
||||
|
||||
#### light client
|
||||
|
||||
A type of [client](#client) that can verify it's pointing to a valid [cluster](#cluster).
|
||||
|
||||
#### mips
|
||||
|
||||
Millions of [instructions](#instruction) per second.
|
||||
|
||||
#### thin client
|
||||
|
||||
A type of [client](#client) that trusts it is communicating with a valid [cluster](#cluster).
|
||||
|
|
Loading…
Reference in New Issue