Communication structure of blockchain
From the perspective of technology and architecture, I will tell you my understanding of blockchain in common language
what is blockchain? In a word, blockchain is a storage system. To be more specific, blockchain is a distributed storage system without an administrator and each node has all the data
What are the common storage systems like
first, how to ensure high availability
the common storage system usually uses "rendancy" to solve the problem of high availability. As shown in the figure above, if the data can be copied into several copies and rendant to multiple places, high availability can be guaranteed. The data in one place is hung, and there is data in other places. For example, the master-slave cluster of MySQL is the same principle, and the raid of disk is also the same principle
two points need to be emphasized in this place are: data rendancy often leads to consistency problems
1. For example, in the master-slave cluster of MySQL, there is actually a delay in reading and writing, which means there is a inconsistency in reading and writing in a short period of time. This is a side effect of data rendancy
The second point is that data rendancy often reces the efficiency of writing, because data synchronization also consumes resources. If you add two slave libraries, the write efficiency will be affected. The common storage system is to use rendancy to ensure the high availability of dataso the second question, ordinary storage system, can write more
the answer is yes, for example, take this graph as an example:
in fact, MySQL can do a master-slave synchronization of al masters, master-slave synchronization of al masters, two nodes can be written at the same time. If you want to do a multi room multi live data center, in fact, multi room multi live data synchronization. What we should emphasize here is that multi-point writing often leads to the consistency problem of writing conflicts. Take MySQL as an example, suppose that the attribute of a table is self incrementing ID, then the data in the database is 1234 now. If one of the nodes writes and inserts a piece of data, it may become 5, and then these 5 pieces of data are synchronized to another master node, Before synchronization, if another write node inserts a piece of data, a piece of data with self incrementing ID of 5 will be generated. Then, after the generation, synchronize to another node, and the synchronized data will conflict with the two local 5's after it arrives, which will lead to synchronization failure and write consistency conflict. This problem will occur in the case of multi-point writing
how to ensure consistency in multi-point writing
the reform "Swan class" gives you more technical work
distributed structure means that the blockchain system adopts open source and decentralized protocol to ensure complete data recording and storage
each transaction information in the blockchain is sent to all nodes in the whole network by the current node. Therefore, the information interceptor cannot successfully intercept the information through a certain information propagation path, because each node receives the information.
1, data layer / data layer
the data layer mainly describes the physical form of blockchain, which is a chain structure starting from Genesis block on blockchain, including block data, chain structure, random number, time stamp, public and private key data on blockchain, and is the lowest level data structure in the whole blockchain technology
2. Network layer / network layer
the network layer mainly realizes the mechanism of distributed network through P2P technology, and the network layer includes P2P networking mechanism, data dissemination mechanism and data verification mechanism. Therefore, blockchain is essentially a P2P network with automatic networking mechanism, and the communication between nodes is maintained by maintaining a common blockchain structure
3. Consensus layer / consensus layer
consensus layer mainly includes consensus algorithm and consensus mechanism, which enables highly dispersed nodes to reach consensus on the effectiveness of block data efficiently in the decentralized blockchain network. It is one of the core technologies of blockchain and also the governance mechanism of blockchain community. At present, there are at least dozens of consensus mechanism algorithms, including workload proof, rights and interests proof, rights and interests authorization proof, burning proof, importance proof and so on
data layer, network layer and consensus layer are the necessary elements of building blockchain technology. Without any layer, it can not be called a real blockchain technology
4. Incentive layer / activator layer
the incentive layer mainly includes the issuing system and distribution system of economic incentive. Its function is to provide certain incentive measures, encourage nodes to participate in the security verification work in the blockchain, incorporate economic factors into the blockchain technology system, encourage nodes that comply with rules to participate in bookkeeping, and punish nodes that do not comply with rules
5. Contract layer / contract layer
the contract layer mainly includes various scripts, codes, algorithm mechanisms and smart contracts, which is the basis of block chain programming. Embedding the code into the blockchain or token, realizing the smart contract that can be customized, and automatically executing without a third party when certain constraints are met, is the foundation of the blockchain's distrust
6. Application layer / application layer
the application layer of blockchain encapsulates various application scenarios and cases, which are similar to applications on computer operating system, portals on Internet browsers, search engines, e-malls or apps on mobile phones. The blockchain technology applications are deployed on Ethereum, EOS and qtum, and are implemented in real life scenarios. The future programmable finance and programmable society will also be built on the application layer
incentive layer, contract layer and application layer are not necessary factors for each blockchain application, and some blockchain applications do not completely include the three-tier structure.
to practice guitar: most of them are basswood panels, some even basswood back panels, which are less than 300 yuan, also known as firesticks (because they are made of the same material as firewood, and the intonation is poor)
entry guitar: most of them are spruce panels, rosewood finger boards, and the back panels are not necessarily. The price is about 1000 yuan, and most of them are 500 yuan or 600 yuan, About 1000 yuan, there are also some elementary Miandan Qin
medium Guitar: most of them are spruce panel, rosewood fingerboard, back side panel, mahogany and fire rosewood. Generally, they are middle end single piano of various series, and some of them are full single (very few), with the price around 3000
high end: all single guitars and spruce veneers are the most popular. The price is four or five thousand or more. There is no upper limit. There are tens of thousands of them, but most people don't need them
tips on guitar selection: http://www.jitatang.com/guitar It is recommended to refer to
no matter where you buy it, you should know some experience to avoid being trapped. Generally, you will be trapped when you go to a piano shop for the first time. The most important two points (you can't hear the timbre and so on):
1. Look at the appearance and choose the log color or black directly Sunset color (the classic three color system), never white, Pink Guitar, that is the above said practice piano grade
2. Check the handle. When the guitar is tuned to the standard pitch, the distance between the string and the fingerboard should be about 3mm (that is, the thickness of a coin) at the 12th point. If you press the string too high, you will feel tired, otherwise it will cause the phenomenon of playing. A good hand feeling is that you can easily press any tone with your left finger without any proct or noise, and you don't feel any effort when you press it horizontally
3. Performance (in fact, you can't see it. You can get what you pay for. It's right to choose the most expensive one in your budget.)
protocol layer
the so-called protocol layer refers to the lowest level technology. This level is usually a complete blockchain proct, similar to the operating system of our computer. It maintains network nodes and only provides API for calling. Usually, the government will provide a simple client (commonly known as wallet). The function of this client wallet is also very simple. It can only establish address, verify signature, transfer payment, check balance, etc
extension layer
this layer is similar to the computer driver, which is to make blockchain procts more practical
application layer
this layer is similar to all kinds of software programs in computers. It is a proct that ordinary people can really use directly, and it can also be understood as the browser of B / S architecture procts. The application of this level is almost blank at present.
secondly, in most cases, once a new block is added to the end of the blockchain, the data records of the block can no longer be changed or deleted. This feature ensures the rigor of the database, that is, it cannot be tampered with.
1. Data layer: encapsulates the underlying data block and related data encryption and timestamp technologies
2. Network layer: includes distributed networking mechanism, data propagation mechanism and data verification mechanism
3. Consensus layer: it mainly encapsulates various consensus algorithms of network nodes; The incentive layer integrates economic factors into the blockchain technology system, mainly including the issuance mechanism and distribution mechanism of economic incentives
4. Contract layer: it mainly encapsulates all kinds of scripts, algorithms and smart contracts, which is the basis of the programmable characteristics of blockchain; At present, jinwowo in Southwest China has taken the lead in big data research with blockchain as the underlying technology, and also provides big data services with blockchain as the underlying technology
5. Application layer: encapsulates various application scenarios and cases of blockchain. In this model, chain block structure based on timestamp, consensus mechanism of distributed nodes, economic incentive based on consensus computing power and flexible and programmable smart contract are the most representative innovations of blockchain technology
through the blockchain, communication services can organize the operation of communication services without the mode of central enterprise. In the future, blockchain should have a real impact on real life, not just by concept and hype, but by real landing procts. What is really landing procts is procts that can meet the needs of users. If the existing centralized procts can well meet the needs of users, then the decentralized procts will not have enough substitution effect, and can not be truly implemented
the protocol layer of blockchain mainly includes four aspects: network programming, distributed algorithm, encrypted signature and data storage technology
the ability of network programming is the main factor for us to choose a programming language, because distributed algorithm is basically the implementation of business logic and can be achieved in any language. The encryption signature technology is directly and simply used, and the database technology is mainly used. Only the implementation of point-to-point network and concurrent processing is the difficulty of development. Therefore, for those languages with strong network programming ability and simple concurrency processing, people especially prefer them
users get the initial number of tokens for free. Some of its practical use scenarios:
1. Encrypted video chat: multinational users want to have video chat, only when both sides hold a certain number of SKM can they achieve encrypted video chat
2. Large capacity file encrypted transmission: the file transmitted by one user to another user exceeds the size limit, and the sender must hold a certain token to realize encrypted transmission
3. Conversation information saving: conversation records can be saved as long as both parties agree, and both parties need to hold a certain amount of tokens
4. Retransmission reminder: if a user sends a file to another user, but he doesn't want the other user to share it, the user can use a certain token to be notified when the file is retransmitted
5. Secret key unlock file: one user transfers the secret key file to another, and only the other party is allowed to view it. The sending user can use the token to let the other party receive the fragmented file. Only by getting the secret key from the sender can the file be unlocked<
the Xueshuo innovation blockchain Technology Workstation of Lianqiao ecation online is the only approved "blockchain Technology Specialty" pilot workstation of "smart learning workshop 2020 Xueshuo innovation workstation" launched by the school planning, construction and development center of the Ministry of ecation of China. Based on providing diversified growth paths for students, the professional station promotes the reform of the training mode of the combination of professional degree research, proction, learning and research, and constructs the applied and compound talent training system.