Phase0 - Networking Flashcards
The Phase0 Networking specification encompasses 4 main sections. What are these sections?
- Specification for Network fundamentals
- Specification for the 3 Network interaction domains
- the gossip domain
- the discovery domain
- the Req/Resp domain - Rationale
- Lib2p maturity discussion
The six topics in /eth2/ForkDigestValue/TopicName/Encoding defined in the gossip domains are:
Name/Message
- beacon_block/SignedBeaconBlock - beacon
- beacon_aggregate_and_proof/SignedAggregateAndProof - aggregated attestation
- beacon_attestation_{subnet_id}/Attestation - attestation
- voluntary_exit/SignedVoluntaryExit - Validator messages
- proposer_slashing/ProposerSlashing - Validator messages
- attester_slashing/AttesterSlashing - Validator messages
What are the two primary global topics used to propagate beacon blocks and aggregate attestations to the network?
There are two primary global topics used to propagate beacon blocks (beacon_block) and aggregate attestations (beacon_aggregate_and_proof) to all nodes on the network.
What is the beacon_block
used to transmit?
beacon_block
The beacon_block topic is used solely for propagating new signed beacon blocks to all nodes on the networks. Signed blocks are sent in their entirety.
What is the beacon_aggregate_and_proof used to transmit?
The beacon_aggregate_and_proof topic is used to propagate aggregated attestations (as SignedAggregateAndProofs) to subscribing nodes (typically validators) to be included in future blocks.
what is the voluntary_exit used to propagate?
The voluntary_exit topic is used solely for propagating signed voluntary validator exits to proposers on the network. Signed voluntary exits are sent in their entirety
What is proposer_slashing used to propagate?
The proposer_slashing topic is used solely for propagating proposer slashings to proposers on the network. Proposer slashings are sent in their entirety
What is the attester_slashing used to propagate?
The attester_slashing topic is used solely for propagating attester slashings to proposers on the network. Attester slashings are sent in their entirety
What is beacon_attestation_{subnet_id} used for?
The beacon_attestation_{subnet_id} topics are used to propagate unaggregated attestations to the subnet subnet_id (typically beacon and persistent committees) to be aggregated before being gossiped to beacon_aggregate_and_proof