I am reading the Mastering Ethereum book and came across this piece:

On average, each Ethereum node maintains connections to at least 13 other nodes, called its neighbors. Each neighbor node validates the transaction as soon as they receive it. If they agree that it is valid, they store a copy and propagate it to all their neighbors (except the one it came from)

What sort of validation is going on here? I assume this is not the POW validation and this is the validation that checks the digital signature? Am I correct? or is there more to it?

Also it says a copy of the transaction is being stored. Again I assume this is some internal storage and not the actual storage on the blockchain. The question then is, why is the transaction being stored on the node? Especially given the fact that the transaction might not end up making it into the blockchain?

Last question...how does this propagation of transactions make it to the miners, who then put it to the blockchain, and how does the updated blockchain get propagated back to every node?


A typical kind of validation P2P layer can do is

  • Ignore transactions with an invalid signature

  • Ignore transactions with a ridiculous gas fee structure

These kinds of transactions do not end up in the node mempool, but nodes tend to silently drop them. For the actual behaviour, you need to read the source code of a particular node software.

A ready, mined, blocks travel P2P similarly as the transactions.

  • Thanks for the clarification. Do you by chance know why the node need to store the transaction also? especially since it is not guaranteed to make it to the blockchain? Sep 27 at 14:03
  • Nodes only store unmined transactions in a mempool that is not persistent storage. Unless the transaction is mined in certain time threshold, it will disappear from the mempool (Etherscan would show pending, until is shows dropped). Sep 27 at 16:17
  • What is the utility in storing unmined transaction in mempool? Sep 27 at 16:33
  • Other nodes can fetch the transactions and it is needed for the P2P network to function in the first place. Sep 27 at 17:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.