Distributed network

The term distributed is related to the infrastructure. Distributed networking is the network system over which computer program and its data are spread out across more than one computer, and communicate complex messages through their nodes, and are dependent upon each other.

The goal of a distributed network is to share resources or secure data. In the crypto-space, there is a need to distribute mutual consensus and keep a ledger in many independent nodes. We do not want to let a single node decide about the validity of transactions. Instead of that, we let a single randomly selected node to propose a new block (including transactions) and then let the rest of nodes in the network to decide whether the block will be accepted or not. The majority of nodes in the network mutually decide what is the single version of the truth in any single moment.

Decentralized network

A decentralized network is very close to the meaning of a distributed network. Still, there is a difference. Notice, that we have not talked about owners of nodes in the network. The term decentralized suggests that there is no single point of failure or no single point of decision. Every node makes a decision autonomously and independently on the decision of other nodes.

If the above statement should be true then it must be also true that each node in the network must be owned by an independent entity.

An example can help. Imagine the network where there are 100 nodes. What if all nodes are owned by a single entity? The network is definitely distributed since data and mutual agreement is made across all nodes. However, the network is not decentralized since there is only a single owner who can decide or influence how nodes will behave. The owner can change the source code of the client and thus influence the decision-making process for own benefit.

It is the worst-case scenario. What would be the best-case scenario? In our example, there would have to be 100 independent node owners. Only in this case, we could claim that a network is decentralized and there are 100 independent nodes.

Geographical location matters

In a global decentralized network, the decision process should be decentralized across geographical locations. It means, that a proportional amount of nodes should be located on each continent. It is important from the security point of view and avoiding a single point of failure. If the majority of important nodes are located in a single continent then it could be a problem. If there is some network issue then the rest of nodes in the network cannot sync with the location where the decision is made.

How distributed entities come to a consensus

PoS distributed consensus can be generally described in a few steps.

  1. Selection of a node with the right to produce the next block. The network selects a single node mostly based on a number of staked coins.
  2. The node with the right to produce the next block will create the block and distribute it to other nodes. The proof of winning the right of block creation is included in the block.
  3. All other nodes in the network verify the block and either accept it or reject it.
  4. The process continues from step 1.

It is a very similar process in PoW:

  1. Every pool can create a block to prepare for an open competition. Then, every pool competes to enforce a pool’s block.
  2. After some time one pool (or more) wins and can publish a new block including the proof of work.
  3. All other nodes in the network verify the block and either accept it or reject it.
  4. The process continues from step 1.

As you can see, PoS and PoW algorithms are not different. In step 1 or 2 a new block is created and published. In step 3 the rest of the nodes in the network decide whether the block is valid.

As you can see the decision has more steps. Some nodes can obtain the right to create a new block. Other nodes have the right to accept or reject proposed blocks. Which right is more important? Block creation is more important since nodes can censor transactions. A node can censor transactions and it can still produce a valid block. Nodes in steps 3 often just accept a block if it is valid. They do not check possible transaction censorship. Moreover, a block reward is connected only with step 1 so it makes sense that it is the most critical point of the network. Everybody wants to get the reward. If there is something wrong in step 1 then nodes in step 3 cannot quickly do anything with that. If you are interested in the level of decentralization then you should have a look at what happens in step 1. Step 3 is also very important in the sense of verifying that everything is ok with step 1. However, as we said, not everything can be verified in step 3. The most important is to create and append a new block to the blockchain. It should be a never-ending process and it happens in step 1.

You can see it as creators in step 1 and guardians in step 3. You might think that there could be only one creator if there will be plenty of guardians. It is not a good idea. What if the creator node crashes? Who will create a block? Or, what if the creator censors transactions. What if China government attacks pool operators? It is always more secure to have more creators. If one node crashes there will be another to create a block. If one node censors transactions others might not do it. China’s government can attack Chinese operators but not operators from the rest of the world.

 

 

 

 

0*leYaTQI4Lnew2-0X.jpg?q=20

0*leYaTQI4Lnew2-0X.jpg