Protocol Layer


A protocol layer of the blockchain is defined as the rules and processes that govern how the network will operate.

What Is a Protocol Layer?

The protocol layer of the blockchain is the foundation of the blockchain network. Developers can extend this layer to create new rules for their blockchain networks. They can design new transactions and smart contracts that conform to the rules of their blockchains.

The protocol layer is a set of rules and designs that establish:

  • The ability to transfer value from one address to another

  • The ability to record transactions in a ledger

  • The requirements for creating new blocks, or transactions, in the chain

  • A mechanism for reaching a consensus among network participants on which transactions are valid, and which order they should go in
  • The block creation process, including the types of transactions included in a block

  • The process for adding nodes to the network
  • The process for mining new blocks.

The rules for adding information to a blockchain can be simple or complex and are determined by the protocol layer.

The most basic rule for adding information to a blockchain is that all participants in the network must agree on the information that is being added and the time it is added.

The protocol layer includes a consensus mechanism that allows all participants in the network to reach an agreement on what information is added and when it is added. Consensus mechanisms are used to prevent network attacks, such as double-spending, where an attacker attempts to spend funds twice by spending a coin on two different transactions at roughly the same time.
The Bitcoin protocol uses proof of work as its consensus mechanism. Proof of work allows anyone with enough computing power to add a block of transactions to the Bitcoin blockchain. It also greatly increases the cost of attacking the network since an attacker would need to control over half of the computing power on the network in order to successfully double-spend coins.

The blockchain consists of different layers:

Application Layer: It is responsible for interacting with the user, e.g., an end-user or a developer who wants to develop dApps based on that particular blockchain. Ethereum Wallet, Metamask, etc, come under this category.
Contract Layer: This layer includes smart contracts which are responsible for executing transactions and changing the state. It includes Solidity (Ethereum), Neo Contract(Neo), etc.
Protocol Layer: It defines how transactions can be added to the public ledger, and how new nodes may join and sync with an existing blockchain network. It includes consensus protocols like PoW (Bitcoin), dBFT(NEO), etc, and P2P networking layer, like TCP/IP (Bitcoin), Devp2p (Ethereum).