Categories: General Information
What Is Gossip About Gossip? Everything You Need To Know About Gossip About Gossip
What Is Gossip About Gossip? How do nodes share information? Hashgraph employs gossip protocol for seamless data transmission and transaction consensus among network nodes.
Gossip about gossip is an incredibly powerful tool for not only the blockchain technology, but also myriads of other fields like data science or computer science. At Unicorn Ultra, gossip about gossip is among the most important catalysts fueling our Helios Consensus Algorithm, helping us achieve an outstanding performance never seen before with up to 500,000 transactions per second (TPS) and 350 millisecond transaction finality time.
In this article, we will give you a thorough introduction to gossip about gossip, thereby providing you a better understanding of our protocol, especially the Helios Consensus Algorithm.
What is the gossip protocol?
Before diving into gossip about gossip, let’s first learn about gossip protocol.
Blockchain technology is inherently a peer-to-peer (P2P) network. Essentially, a blockchain is a decentralized ledger that records transactions across a distributed network of “nodes”. Each node in the network is treated as an equal “peer”, with no central authority controlling the system. Instead, each peer is connected to another, forming a decentralized network of nodes that validate, verify, and publicize data themselves without requiring an intermediary.
In order to verify the integrity of these decentralized ledger networks, each node has to store the complete version of the ledger and constantly communicate with other nodes. This ensures that the correct version of the ledger is always available on each and every node. In case anything suddenly happens, any participant can easily verify and restore the original ledger. At the same time, the data will always be guaranteed to be trustful and up-to-date, even when some actors behave maliciously.
This is when the difficulty arises. Storing the data of the ledger is one thing, but continually transferring these data across different nodes may pose some serious problems (e.g. bandwidth). Therefore, an effective data communication method is crucial in such a system. We would want an approach that allows a rapid pace of data transmission while still maintaining a high level of security in the process.
This is when the gossip protocol comes into play. As the name suggests, a gossip protocol takes place when information is transmitted from one peer to another until it is eventually spread all across the network.
Let’s take a look at how this mechanism works via an example.
Imagine Alice wants to send data (a message in this case) to all other network participants. The arguably fastest yet secure way to do this is to spread the message to a random person. In this specific scenario, Alice sends the message to Dave.
Now, both Alice and Dave have the same message. They will both choose another random person to receive the message. Similarly, Alice sends the message to Gina while Dave sends the message to Bob. The process goes at an exponential rate, and after only 3 iterations, all 8 participants will have received the message.
This method of randomly assigning a receiver for the message is efficient in the sense that:
- It is simple yet really fast. The speed of messages being sent out is exponential.
- There is no bottleneck. The interaction between participants is divided into separate pairs, meaning there cannot exist any interceptions between any peers to form bottlenecks.
- It is still extremely safe, because in case any participants stop transferring the message, the message will still be transmitted out by other participants at an exponential velocity.
However, regardless of this approach being astonishingly speedy yet secure, there exists a problem with it: ordering.
Let’s try to change the number of messages being sent from 1 to 3.
Now, the issue becomes apparent. Even though the messages are delivered to the whole network really fast, the order of those messages is confusing. Every participant has had the same set of messages, but how can the network reach a consensus on the messages’ time of arrival for each peer? This is troublesome because ordering matters a lot for most applications (for example, trading) in a financial market like crypto.
The solution for this is an upgrade to “gossip about gossip”.
What is gossip about gossip?
Gossip about gossip takes an extra step from the original methodology. Instead of gossiping about the message to others, an individual will gossip about the whole history of all “events”. Upon completion of a gossip sync, each participating member commemorates the gossip sync with an event. An event is stored in memory as a data structure composed of a timestamp, an array of zero or more transactions, two parent hashes, and a cryptographic signature.
As a result, in the gossiping process, the sender will deliver not only a single message or piece of information, but about everything that has happened on the ledger. In this way, the latest receiver will always have the fullest information, including the order of messages or the timestamp of any particular message.
This technique is made possible by expressing the history of events via a “hashgraph” - a type of directed acyclic graph (DAG). The hashgraph is another Distributed Ledger Technology (DLT) like blockchain, which grows directionally over time as more “gossip syncs” take place and events are created (A gossip sync refers to the synchronization of information between two members through the gossip protocol). Similarly, all nodes in the network keep a local copy of the hashgraph which continues to update as the gossip goes on.
All and all, gossip about gossip is an exceptionally effective tool when it comes to data transmission/communication, arguably the fastest and safest way to.
At Unicorn Ultra, we power our U2U Chain with gossip about gossip and hashgraph to efficiently communicate data between the nodes in our system, allowing us to achieve incredible results with performance. The productivity of these incredible mechanisms help us tremendously in reaching up to 500,000 transactions per seconds and 350 millisecond transaction finality time. Follow U2U for more blockchain information.