What is the problem now with scalability of Ethereum network and how to cope with it?

Wonabru
5 min readOct 6, 2017

--

Maybe you noticed that average time between blocks in Ethereum network increased much last time. Three months ago was around 17 secs, now it is 30 secs (see Fig 1). The increase of time intervals between blocks was introduced by Ethereum founders in September 2015 in order to force fluent switch to Proof-Of-Stake (PoS) protocol. The protocol switch is important just for gaining scalability of network. In Fig. 2) is presented increase of number of Ethereum addresses, what can be understood as the increase of network size itself. Figures are generated by etherscan.io.

Fig 1)

Fig 2)

The problem which appears with this blockchain, is not only the Ethereum one, but on each existing nowadays blockchain. The problem is seen more often in the networks with high block generation in time interval (in Ethereum it is 17 secs compared to bitcoin and it’s 10 minutes). One can assume that every blockchain based network is truly scalable not per some valid time, but per valid number of blocks. It is seen that the amount of blocks that can be handle by separate node is like 4 million (Ethereum is now like 4 million 330 thousands). For example full sync of Ethereum for one node is about 300 GB space on hard drive (see Fig 3).

Fig 3)

How to handle such a problem?

We can wait for faster internet or hardware, but suppose have no time for that. Maybe just assume that each node can handle no more that 4 million blocks 😊.
One can imagine such a network, let’s call it Q-network, that is not fully repeatable by each node, but there is some uncertainty inbuild, like in our Universe it is inbuild Heisenberg uncertainty by principle. I understand such a blockchain as the computer implementation of human behavior in human social network. Such a realizations of nature solution to the problems in our Universe, was previously done as genetic algorithms, or stochastic evolution and last largely applied neural networks. Genetic programing or stochastic evolution is the computer simulation of our understanding of processes in Evolution theory of species discovered by Darvin. Neural networks are computer implementation of behavior of human brain.
Now the Q-network is not trustless anymore, we have to trust a little to other party. Now each node would not have full control on what happen in the network.
The Q-network is built on Sparse Connected Small World Network, so we do not have connection to each other node, but rather we choose with whom we would like to be connected. By connection we rather understand, which node’s transactions we would like to write in our blockchain. As opposite to current blockchains, which try to be objective and save all transactions of whole network, we propose subjective blockchains, means blockchains from perspective of given node. Subjective blockchains are parts of whole Q-network.
Subjective blockchains are rather seen as random generated projections of whole network on node, this is subjective view on Q-network. The consistency of whole Q-network is given by non-deterministic way of such a view generation, so each node has the possibility to replicate random part of whole blockchain, no one knows which one, so validation of Q-network is by average correlations between subjective blockchains.
The question is what level of error we can accept (how much we can trust other party of transaction). Let’s assume we can accept 1% of error, means 1% of paid transaction will fail and we lose money sent in this transaction. In such a case Q-network can be larger by 100 times than subjective blockchain each. Also this suggest, that such a hybrid Q-network can survive 100 times longer than standard blockchain. Bitcoin is working 8 years, Ethereum like 2 years, and Q-network than 100 times longer 😊. The last is not really true, thus growth of blockchains is rather exponentially, but maybe not in this time. In the case of subjective blockchains, we do not need to perfectly proof to other nodes that we are correct, but up to 1% error. Proof-Of-Work (PoW), Proof-Of-Stake (PoS) is rather replaced by negotiations with nodes, which we would like our transactions, to be accepted in their blockchain. PoW, PoS would be no more needed, but Proof-Of-Correctness or Proof-Of-Reputation (PoR) that we are trusty. Now it is likely that each node has to Proof of its Reputation by asking other nodes in Q-network the correctness of his transactions. All the time asking, negotiate with random chosen nodes that he is not “lying”. This is some more general view on the problem.
Now we do not guarantee fully correctness of transaction, nor that we do not double spend the same money, but if someone catch us on “lie”, we lose our reputation. Nodes can rejected after all to put our transactions in their blockchains.
It is rather understandable that value of transaction depends on reputation of node which propagate transaction. We have bear in mind that each node has limit of 4 million blocks being accepted by this node and in other case this node will have less power to scale his own transactions. After 4 million per node the subjective network is no more truly scalable.
In this case the quite new node in Q-network may be better visible than older one thus has more space to accept other transactions. But also such a new node have to gather some blocks ad-hoc in order to generate some initial view on network, so it is not perfect blank. Also such a new node possesses low Proof-Of-Reputation, so money send in transactions bears small value for the network.
The limit of 4 million blocks is like human limit of lifetime, so older nodes would not dominate whole network, because they have no more capability to accept new transactions.
In conclusion we provide some new kind of blockchain, based on Proof-Of-Reputation of nodes, which have higher level of scalability than nowadays solutions.

--

--