In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-02-26 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >
Share
Shulou(Shulou.com)05/31 Report--
It is believed that many inexperienced people are at a loss about the scalability problem and solution comparison of blockchain. Therefore, this paper summarizes the causes and solutions of the problem. Through this article, I hope you can solve this problem.
Performance problems of Block chain
VISA is a widely used credit card brand in the world. To achieve the practical level, blockchain should at least be able to compare with payment systems such as VISA in performance. According to VISA's records in 2015, a total of 92,064 million payment transactions were generated in the year, with an average 2920tps of about 512 bytes per transaction, resulting in an annual transaction data volume of about 47TB.
At present, the performance of the mainstream blockchain is that Bitcoin can only conduct about seven transactions per second, while Ethernet Fong has 10-20 transactions per second. At present, the trading performance of these blockchains can not be compared with that of VISA. What's more, at present, both Bitcoin and Ethernet Fong miners need to store full data, and the storage capacity of a single machine is limited. If this problem cannot be solved, even if the transaction performance is improved, if the annual additional data volume is 47 TB, then the data will soon exceed the capacity of a single machine, and the entire blockchain network will no longer be able to operate.
So why is the performance of blockchain systems like Bitcoin and Ethernet Fong so low with a large number of nodes? Why is the scalability of the blockchain so poor?
Cause analysis
Blockchain is a decentralized accounting technology, which needs to ensure the characteristics of openness, autonomy, untamperability and so on. Decentralization refers to the use of distributed accounting and storage, there is no centralized hardware or management organization, the rights and obligations of any node are equal, and the data blocks in the system are jointly maintained by the nodes with maintenance function in the whole system. In other words, any node in the system needs to calculate and store all the transaction data. Therefore, the blockchain is not scalable, that is, the overall performance of the system is limited by the performance upper limit of a single node, even if a large number of nodes are added, the overall performance of the system can not be improved.
Scalability is a basic feature of traditional distributed systems, but it is difficult to meet the scalability of block chains due to the requirement of decentralization. The industry has summed up a ternary paradox describing the contradiction between decentralization and scalability, which has not yet been strictly proved and can only be called conjecture, but it can feel challenged from time to time in the actual system design process:
The three attributes of Decentralization, Security and Scalability can not be satisfied by the blockchain system at the same time, so we can only choose the two at most.
The figure above shows how the blockchain chooses between these three factors and the corresponding strategy. For example, if security and decentralization are to be satisfied, all nodes are required to participate in consensus, computing and full storage. But the resulting problem is the loss of scalability, that is, the overall performance of the system cannot be improved with the number of nodes. If you want to meet scalability and security, you need centralized management, and you need to ensure that the nodes participating in the consensus are trusted; if you want to meet scalability and decentralization, adopt the strategy of decentralized storage and computing, and do not make a full consensus. The difficulty of the network is reduced, and the security is difficult to be guaranteed.
A scheme to improve the performance of block chain system
We know that the main factors that affect the transaction performance of blockchain include consensus mechanism, transaction verification, broadcast communication, information encryption and decryption and so on. Starting from these links, we can get some ways to improve performance.
Consensus mechanism
From PoW to PoS to DPoS and various BFT algorithms, the consensus mechanism has been innovated continuously, and the performance of the blockchain platform has been greatly improved.
Transaction verification
From the point of view of transaction verification mechanism, there are several optimization methods at present:
1) Lightning Network (Lightning Network) and status Channel (State Channels), these two strategies are to keep the underlying block chain protocol unchanged, put the transaction under the chain, and solve the scalability problem by changing the usage of the protocol. The part under the chain can be implemented by the traditional centralized distributed system, and the performance is scalable. Under this strategy, only coarse-grained books are recorded in the distributed books, while the truly fine-grained bilateral or limited multilateral transaction details are not recorded in the distributed books as transactions. The disadvantage is that there is a centralized system.
2) sharding, the general idea of the shard scheme being developed by the ethernet project is that each node only handles part of the transactions, such as transactions initiated by part of the account, thus reducing the computing and storage burden of the node.
3) the idea of Multi-chain Architecture (Multi-chain) is to divide the original chain into multiple chains, each of which is responsible for part of the computing and storage business, and is scalable, that is, the number of chains can increase with the increase of business and data, the overall performance of the system can be improved with the increase of the number of chains, and the storage space of the system can also be expanded with the increase of the number of chains.
Broadcast communication
P2P network is one of the core technologies of block chain, so the efficiency of P2P network communication has a very important impact on performance. In order to improve the performance of broadcast communication, it is necessary to improve the physical configuration of node machines, provide high-speed network connections, and adopt consensus algorithms to reduce broadcasts, such as DPoS.
Encryption and decryption of information
The encryption and decryption of information is the key link of the block chain, mainly hash function and asymmetric encryption algorithms. Higher performance encryption algorithms can be used in blockchain systems to improve the performance of transaction verification.
Scheme comparison
Among the above optimization methods, consensus mechanism, broadcast communication and information encryption and decryption are optimization at the algorithm level. although these schemes are also important optimizations, they do not solve the fundamental problems, and their performance improvement is still limited by the performance of a single machine. It is not scalable, so the performance improvement is limited, so this article will not elaborate on it. Several optimization schemes of transaction verification are scalable, in which lightning network and state channel are executed under the chain, and a centralized system is used to improve the performance of the block chain, which is contrary to the concept of decentralization of the block chain. And the use is complex and the user experience is poor (for example, lightning network requires that both parties and middlemen in the transaction must be online at the same time, offline system development is complex because to find available payment channels, not suitable for large transactions, etc.), can not be widely used. Therefore, high-performance block chain projects such as EOS, Ethernet Square, Cosmos and Thunderbolt chain all adopt fragmented or multi-chain schemes.
The idea of slicing or multi-chain scheme is the same, which is to let each shard or chain process and store part of the transaction data, and each shard and sub-chain can process different transaction data in parallel, so the more the number of fragments or chains, the higher the overall performance of the system, both of which are highly scalable.
1. Multi-chain implementation scheme of EOS.
EOS's technical white paper does not describe the implementation of multi-chain, but only the IBC (Inter Blockchain Communication) protocol that supports cross-chain communication. Cross-chain interaction is realized by simplifying the proof of the existence of messages and the proof of message sequences. EOSIO claims that the main chain can support more than 3000 TPS, and can reach 1 million TPS through IBC.
EOS's multi-chain architecture is actually a side-chain solution. Developers can deploy a separate EOS side chain (public chain or private chain) to run their own Dapp. These side chains can have their own committees, witnesses and computing resources, and have their own tokens. These tokens have their own additional issuance methods, and tokens can be anchored with EOS through interfaces to achieve certain operations, including locking. The biggest characteristic of the side chain is the two-way anchoring (two-way-peg) technology, which makes the Token price in the side chain always keep a certain proportion with the EOS price or adopt EOS directly.
Therefore, the multi-chain architecture of EOS is not to transform the scalability of the main chain itself, but to share the pressure of the main chain through the sub-chain.
2. The slicing technology of Ethernet Square (Sharding)
Sharding is a technology under development in Yi Tai Fang. The general design idea is to change each block in the blockchain network into a sub-block chain, and the sub-block chain can hold several (currently 100) Collation with packaged transaction data (probably called "check block", in order to distinguish it from the concept of block in the fragmentation scenario), these Collation eventually form a block on the main chain. Because the Collation exists as a whole as a block, the data must all be packaged and generated by a particular miner, which is essentially no different from the blocks in the existing protocol, so there is no need for additional network validation. In this way, the trading capacity of each block is about 100 times larger, and this design is also conducive to further expansion in the future.
Cross-shard communication: using the UTXO model, by trading on the main chain and creating a receipt (with receipt ID), the user can store the ether in a specified shard. Users on the sharding chain can create a transaction that consumes receipt (receipt-consuming) given the receipt ID to spend the receipt. However, UTXO is suitable for transactions, but not for contract status data storage.
The first chain in the Cosmos network is Hub, which can be understood as the central chain or administrator chain of Cosmos in terms of name and function. All transactions of other block chains are recorded in Hub, and the token on one block chain can be transferred to another block chain through Hub. Hub is the core of Cosmos network, which is not equal to the rest of Zone. Strictly speaking, Cosmos network is not a real distributed system. If Hub has a single point of failure (of course, Hub itself is distributed, the probability of problems is very small), many features of Cosmos network will not be available. In this regard, the white paper stressed that Hub must be strictly protected.
Each Zone can be thought of as a separate blockchain space. Each Zone keeps its status synchronized with the Hub. Hub ensures security through a decentralized group of verifiers. When Zone1 makes a cross-chain message to Zone2, Mr. Zone1 becomes a message package and publishes its proof on Hub, then Hub will generate a proof of the existence of the cross-chain message package of Zone1 on Hub and publish it to Zone2, then Zone2 receives the message packet and gives the proof to be published on Hub. Finally, Hub gives the proof of the receipt of Zone2 published on Zone2. Complete the entire cross-chain message delivery.
4. Thunderbolt chain isomorphic multi-chain architecture
Thunderbolt chain is an isomorphic multi-chain structure, that is, each chain has the same structure and equal status. That is, the system consists of a relatively independent (independent consensus) chain, each chain has multiple nodes, each node is assigned to one of the chains, and different account data are anchored on different isomorphic chains. Then the access layer routes the transaction to the sender's chain for block packaging and consensus. The number of chains in the system can be increased dynamically according to business requirements. Therefore, the isomorphic multi-chain architecture first ensures the scalability of the system.
Unlike block chain systems such as EOS, which need expensive high-performance servers as accounting nodes, Thunderbolt uses cheap and power-saving play cloud devices as accounting nodes to build its own large-scale shared computing platform. At present, the number of player cloud nodes has exceeded 1.5 million nodes. Such a large number of nodes poses a severe challenge to the scalability of the blockchain system. The challenge mainly comes from two aspects:
1) play with guest cloud devices with low power saving and low performance, which requires that consensus algorithms must use algorithms that are green and adapt to the network environment of home users. In response to this challenge, Thunderbolt chain integrates the idea of DPoS on the basis of the improved PBFT. In each chain, witness nodes are selected periodically (for example, every 5000 blocks) to participate in the consensus. Different from the traditional DPoS, Thunderbolt chain is not based on the number of tokens held by miners or the age of the currency as the voting weight, but according to the storage capacity, network stability, bandwidth, delay and other standards of the player cloud node as the measurement standard, in order to obtain better fairness and network efficiency.
2) the large number of guest cloud nodes and the complex home network environment require that the blockchain system must be designed as a framework with high scalability and strong autonomy. Thanks to the strong scalability of the isomorphic multi-chain architecture, Thunderbolt chain can make full use of the massive player cloud nodes and expand the number of chains "infinitely", thus having millions of concurrent processing capabilities.
To sum up, Thunderbolt uses multi-chain architecture to achieve scalability + strong consistency using PBFT + using greener and fairer DPoS to further improve consensus efficiency and higher availability. From the perspective of decentralization (Decentralization), security (Security) and scalability (Scalability), decentralization and security are supported by massive and widely distributed player cloud devices, and multi-chain architecture is adopted to achieve scalability.
The optimization of algorithms such as consensus mechanism, broadcast communication, information encryption and decryption can not solve the scalability problem of large-scale decentralized system, while lightning network and state channel are implemented under the chain. it is contrary to the concept of block chain decentralization, and the use is complex and the user experience is poor, so it can not be widely used. Therefore, the cutting-edge block chain projects all adopt the scalable fragmentation or multi-chain scheme.
Among them, EOS is currently a multi-threaded architecture, and its overall performance is still limited by the performance of a single machine, which requires expensive servers to run block chain nodes, which is not very scalable. The slicing technology under development in Etay Fong requires the main chain to verify the blocks of the subchain, and the number of subchains is limited because there will be performance bottlenecks in the main chain. Cosmos is the same problem. Hub must be strictly protected. The isomorphic multi-chain architecture adopted by Xunlei chain avoids the above shortcomings and is suitable for the deployment of large regular and cheap nodes. It can expand the number of chains "infinitely", so it has millions of concurrent processing capacity.
After reading the above, have you mastered the scalability problem of the blockchain and how to compare the solutions? If you want to learn more skills or want to know more about it, you are welcome to follow the industry information channel, thank you for reading!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.