Close resemblance to how epidemics spread. But in our case it is a communication protocol.
– Involves pair wise inter process interaction
– After interaction, state of one of two interacting agent changes.
– It may so happen that the interaction fails between the processes.
– Cost of interaction is deemed negligible.
– Peers for inter process communication are selected randomly.
– There may be duplication in the message being gossiped, i.e. Both the agents were already aware of the messages being gossiped.
Type of Gossips
– Information dissemination
The piece of information needs to diseminated and the above protocol is used for the same. Gossips can either be periodic (no event based trigger) or on the basis of event based trigger.
– Anti-entropy Protocol :
The gossip happens and is used to make sure that there is no diff between the set of information two agents have.
– Aggregate computation –
The protocol can also be used to compute aggregates w.r.t to agent statistics. e.g. which agent have lowest health, best health, total of some resources. The nodes can be arranged in tree like structure for gossip.
The gossip protocol is widely used to check liveliness and heartbeat monitoring e.g. Cassandra, Dynamo db uses some variant of gossip protocol for the same.