PlatON Tech Column | P2P Connection Scheme under Group Consensus
This article illustrates a P2P connection scheme under the group consensus. This design aims at the current evolution of the Giskard protocol into a group consensus. This issue is the first part.
Driven by scaling, a new consensus mechanism called “group consensus” is introduced. Under this mechanism, all consensus nodes are divided into multiple groups, and then reach a consensus between groups after interaction within the group. Due to the huge number of consensus nodes after scaling, the original direct connection of all consensus nodes is no longer applicable. The limited resources and the surge in the number of messages cause excessive resource consumption and low efficiency, so a new interconnection scheme is needed for support.
The P2P (Peer-to-Peer) network is a distributed peer-to-peer network. The nodes in the network are peer-to-peer. They are both resource providers and resource searchers and belong to an overlay network built on the public Internet.
The entire network can be regarded as a graph, G=(V,E), where V is called the set of peer nodes, and E is the set of edges connected between peer nodes. All peer connections in the network form a graph. Ideally, there is only one connected component, that is, each node has a reachable path, with connectivity, and the message can eventually reach the destination.
Therefore, the connection mechanism requires a good overlay network to maintain the adjacency relationship between nodes and the connectivity of the entire network.
- Quickly form a connected graph between and within groups: to ensure the dissemination efficiency of consensus messages
- The communication between nodes does not cause message flooding, increase network pressure or reduce the transmission efficiency
- Changes in the role in the group during the consensus process do not affect the structure of the connection
- When switching the consensus round, the new consensus node normally joins the network topology structure
- The network topology of consensus nodes supports dynamic scaling of the number of consensus nodes
- A small number of connection anomalies do not affect the overall consensus process
Group network topology
First, the nodes in the network are divided into two categories, respectively consensus nodes and ordinary nodes. The consensus nodes are responsible for the generation and verification of blocks. Therefore, priority is given to ensuring that an efficient network topology is formed between consensus nodes. In order to ensure fast communication between each group member (GM) and reach a consensus with other groups, after all consensus nodes are grouped, which is equivalent to splitting the topology into multiple small networks. The establishment of connections between nodes is subject to the principles below:
- Preferably select some nodes in the group to establish connections, and form a connected graph in the group
- Choose some from all groups, establish connections between some of the nodes in the group, and each group forms a connected graph
- Consensus nodes retain the qualification for a certain number of connections for ordinary nodes to establish connections, and finally the entire network forms a complete large connected graph
According to the rules of group consensus, reaching a consensus in group communication is the primary guarantee, followed by the intergroup consensus. Obviously, in such a large group of consensus nodes, it is not advisable to directly connect all nodes, so a rule is needed for the adjacency between nodes.
Then the problem can be split and refined into two steps, with two levels of guarantee:
The nodes in the group are connected, and under abnormal conditions, the nodes still have reachable paths when part of the connection fails. Communication messages can be quickly disseminated between groups, thereby ensuring the reliability of message dissemination within the group.
The guarantee between groups is jointly maintained by all members in the group. When at least one member in the group is connected to other groups, the message can be disseminated, and similarly, the message can go into the group from outside. In that case, intergroup connectivity becomes simple: with just a message to be passed into the group. The intragroup guarantee ensures the message can be transmitted to all members.
It is clear that intragroup communication has become a key issue, and the number of node connections needs to strike a balance between reliability and efficiency. And some connections need to be reserved for pre-built connections (which will be explained later). As a result, the actual number of connections available is very limited.
PlatON, initiated and driven by the LatticeX Foundation, is a next-generation Internet infrastructure protocol based on the fundamental properties of blockchain and supported by the privacy-preserving computation network. “Computing interoperability” is its core feature. By building a computing system assembled by Verifiable Computation, Secure Multi-Party Computation, Zero-Knowledge Proof, Homomorphic Encryption and other cryptographic algorithms and blockchain technology, PlatON provides a public infrastructure in open source architecture for global artificial intelligence, distributed application developers, data providers and various organizations, communities and individuals with computing needs.