Efirium's overload, the misunderstood prophet and that can be made?

in #ethereum7 years ago

ETHEREUM-YOUTUBE-PROFILE-PIC.png

On Tuesday June 20 the Status project has carried out ICO which has affected all users of Efirium, including also those who not only weren't going to participate in a campaign, but even not suspecting about his existence – the smart contract of a crowdfunding campaign has overloaded network, for the first time since autumn DOS of the attacks which have ended with hardforka.

Of course, Status – not the only responsible for an overload; the number of transactions violently grows in Efirium's network since the beginning of May, however, it became "the last straw".
The Status project – a mobile messenger, the browser and Efirium's purse for mobile devices, has planned the beginning of ICO on the block No. 3903900. Organizers of ICO imagined scales of the future agiotage and have established the maximum price of gas in 50 Gwei (while the median price of gas made 20 Gwei) – so that sale of tokens was more similar to a lottery, than to the competition "who will give more gas". Besides, the ceiling had to cut the transactions from smart contracts which are automatically raising the gas price. In spite of the fact that the upper bound of the price of gas it has been announced in advance very few people have paid attention to it.

In total within June 20 about 308 000 transactions have been carried out to networks, from them only 100 000 successful transactions have taken place on the smart contract Status. Many users tried to send transactions with the gas price above threshold that became the additional reason of load of network. The leading exchanges – Poloniex, Bittrex and others have temporarily suspended air conclusion because of an overload, and ordinary users complained on social networks of hours-long delays of transactions.

Upon termination of ICO Status of a delay have declined, and the exchanges have renewed air conclusion. Nevertheless, productivity of network Efiriuma has reached a limit. For June 26 through network there have passed 316 000 transactions and it is unlikely that their quantity will decrease.
Nobody listens to prophets

Here it is necessary to remind that one of the leading developers Efiriuma - Vlad Zamfir (Vlad Zamfir) - in March has caused a barrage of criticism on social networks, having declared on Twitter that Efirium in the form in which he exists now – unreliable and badly scalable technology. Events have proved on June 20 that he was absolutely right.

The present Efirium working at a consensus of PoW is no more than the Proof of the Concept – only the pilot model of a network which V. Buterin calls "The distributed computer". Really, if during a day of about 300 000 transactions could paralyze a network, it turns out that its actual productivity (taking into account execution of "heavy" smart contracts, and not just consisting of the translations of coins; the rejected transactions aren't considered too, but they will be always) makes no more than 4 - 7 transactions per second - similar to Bitcoin where the problem of scaling costs more than two years. The contribution is entered also by a "complexity bomb": as of June 27, time of generation of the unit makes 17 seconds in comparison with 14 seconds at the beginning of a year.

In order that technologies of smart contracts started working to the full extent, it is necessary to increase network productivity considerably. Now in development there are three technologies capable to provide the required parameters: PoS Casper protocol, sharding and technology of payment offcheyn-channels Raiden. Official periods of their implementation aren't declared yet, however the founder of the Augur project, Joey Krug, gives the following estimates: POS – 1 year (3-fold increase in productivity); sharding – 3–5 years and 100kh to productivity; Raiden – 1000x, 1.5 - 3.

Apparently, the second scandalous statement of Zamfir made after the first is confirmed too: he called Efirium's mayner by "a factor of system risk", having accused them that for extraction of momentary profit they sacrifice interests of a network.
Representatives Fonda Efiriuma, including Buterin, repeatedly appealed to mayner to lift gas a limit on the unit, however the majority of mayner ignore these appeals, being afraid that if they begin to increase the size of units, at them the enclave will be raised percent. Also appeals to reduce the size of the transactional commissions in connection with growth of course of air were in the same way ignored: for June 27 the median price of transaction makes $0.1787 in this connection ill-wishers don't cease to remind Buterin his own expression of 2014 that on the Internet of Money transaction can't cost 5 cents though it it is perfect in case of anything here. Before Casper protocol implementation mayner will be guided only by the short-term profit.
What can be made to Casper

On June 22 Vitalik Buterin offered EIP 648 – modification of the protocol which will allow to increase significantly network productivity in the period of peak loadings, similar to that that happened on June 20. At the same time he made a reservation that its implementation is possible only after Metropolis release (the end of August-September) – in spite of the fact that for modification only changes of a code of primary clients (Geth and Parity) are required, now developers are completely busy with Metropolis testing.

The essence of EIP 648 consists in the following. Now Efirium's transaction can carry out a code of the smart contract located on any address. Respectively, any smart contract can cause performance of other code and so on. It means that performance of transaction can change a condition of any address of Efirium. Therefore, transactions are carried out consistently, one behind one, otherwise transaction can affect the address on which the following transaction depends.
EIP 648 defines new type of transaction in which it is told: "This transaction will interact only with addresses from the set set of addresses of Efirium". In attempt of interaction with the addresses which aren't belonging to set it abnormally comes to the end.

Advantage is that if in the block there are two transactions with non-overlapping sets of addresses, then their code can be carried out in parallel on two kernels of CPU, and at the same time they won't mention each other in any way.
In the future, when carrying out ICO similar to Status, all his transactions can be carried out in limited space of addresses. At such way even a large number of transactions won't affect passing of the main part of transactions – they will go in parallel.
Actually, it is extremely simplified sharding for which it isn't necessary hardfork.

Such modification won't solve a scaling problem completely, but can be useful as temporary solution. According to Buterin:

Most likely, we will make it after Metropolis. The matter is that it will help with the usual scenario, but won't improve productivity in the worst scenario in any way (i.e., in case of the attack).

Most likely, before Metropolis expansion the network will continue to work in the mode of the raised loading. On June 27, according to Ethgasstation, use of gas fluctuates from 40 to 80% of a gas limit for the block.