From ffd2a91264411731021af1f799394a62c423df35 Mon Sep 17 00:00:00 2001
From: bt3gl <1130416+bt3gl@users.noreply.github.com>
Date: Sat, 24 Sep 2022 00:05:09 -0700
Subject: [PATCH] =?UTF-8?q?=F0=9F=8C=AD=20add=20notes=20on=20network=20add?=
=?UTF-8?q?resses=20and=20block=20creation?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
nodes/running-a-node-advanced.md | 56 +++++++++++++++++++++++++++++++-
1 file changed, 55 insertions(+), 1 deletion(-)
diff --git a/nodes/running-a-node-advanced.md b/nodes/running-a-node-advanced.md
index 0a7d3fc..9e2ea32 100644
--- a/nodes/running-a-node-advanced.md
+++ b/nodes/running-a-node-advanced.md
@@ -10,7 +10,8 @@
-### tl;dr
+
+### tl;dr architecture
@@ -29,6 +30,22 @@
+----
+
+### tl;dr block creation
+
+
+
+1. execution clients gossip transactions over the execution-layer peer-to-peer network (encrypted communication)
+2. a validator is selected to propose a block, and transactions from the node's local transaction pool is passed to consensus clients via a local RPC connection, which will be packaged into Beacon blocks
+3. consensus clients then gossip Beacon blocks across their p2p network
+4. the process requires two separate p2p networks: one connecting execution clients for transaction gossip and one connecting consensus clients for block gossip
+
+
+
+
+---
+
### validator lifecycle
@@ -43,6 +60,41 @@ The sequence of states that a validator can exist in:
+----
+
+#### network addresses
+
+
+
+* three standardized formats that any Ethereum node can understand
+
+
+##### multiaddr
+
+* universal format designed for peer-to-peer networks
+* for example, a classic IPv4 listing to TCP port 33000 `/ip4/192.168.22.27/tcp/33000`, plus an node id (a hash of the pub key)
+
+
+
+
+##### enode
+
+* identify an Ethereum node using a URL address format
+
+
+
+##### ethereum node records (ENRs)
+
+* allow greater informational exchange between nodes
+* contains a signature, sequence number and fields detailing the identity scheme used to generate and validate signatures
+* key-value pairs contain the node's IP address and information about the sub-protocols the node is able to use
+* consensus clients use a specific ENR structure to identify boot nodes
+
+
+
+
+---
+
### the JSON-RPC interface
@@ -52,6 +104,8 @@ The sequence of states that a validator can exist in:
+----
+
### setting a dedicated hardware