Skip to main content

Command Palette

Search for a command to run...

Ethereum Protocol

Structure of an Ethereum Node

Updated
2 min read
Ethereum Protocol
J

Hi, I'm Jay Nalam, a seasoned Web3 Engineer committed to advancing decentralized technologies. Specializing in EVM-based blockchains, smart contracts, and web3 protocols, I've developed NFTs, DeFi protocols, and more, pushing boundaries in the crypto realm.

Hello everyone..

Welcome to another day in exploring Web3 Engineering. In today’s article, rather than focusing on dApps and ERC standards, lets focus on the node that runs our beloved Ethereum network. Let’s start with the layered architecture and different communication protocols of the Ethereum node. So without any further ado, let’s get started.

Ethereum Clients

Before the Ethereum merge and shift to Proof-of-Stake consensus, it followed monolithic architecture. Which means the entire codebase is responsible for all the features and all the components are tightly coupled with each other. After the merge, the node is divided into layers and each other is loosely coupled and it made language agnostic to support various clients written in different programming languages.

Layers of Clients

The Eth node is divided into 2 layers. Each state consists their own peer-to-peer network for their execution and also maintain a separate state depending on their needs.

  1. Execution Layer (EL)

  2. Consensus Layer (CL)

Execution Layer

  • The EL is responsible for executing all the transactions, providing the RPC methods, communication with the dApps, smart contract etc.

  • The p2p network in the EL is responsible for validating the transactions and producing the new block.

  • The client RPC calls made to the node are executed here, providing the read and write calls of the Ethereum state.

  • Management of the Mempooletc.

  • The architecture of the EL depends on it’s individual implementation.

Consensus Layer (CL)

  • The CL is responsible for maintaining the overall consensus of the blockchain network.

  • Management of the Validator nodes, slashing, staking and other validator based actions

  • Block production and proposal of new block producers

  • Block attestation and finality etc.,

Key Protocols

Ethereum node uses multiple communication protocols to maintain the decentralization and censorship resistance in the network along with the unrestricted rules for the node operators to join and leave the network whenever possible. For example

  1. Gossip Protocol - Gossip protocol is used in both the consensus and execution layers for syncing the state between the nodes in the network.

  2. LibP2P (Networking Protocol) - is used in the consensus layer for discovering the node discovery and the peer-to-peer communication between the network.

  3. DevP2P (Ethereum Wire Protocol) - is used in the execution layer for the peer-to-peer communication in order to maintain the state sync, block propagation and transaction gossiping between the network.

Apart from the communication protocols, Ethereum also uses various data serializations and cryptographic algorithms which we will discuss in our upcoming articles.

That’s all for the day. Comment down your questions

Ethereum Protocol Overview