Everything is in the title.
What is the difference between broadcast and gossip in the context of message-passing distributed systems?
According to Wikipedia, gossip and epidemic protocols/epidemics are synonym.
Thank you for your help.
Everything is in the title.
What is the difference between broadcast and gossip in the context of message-passing distributed systems?
According to Wikipedia, gossip and epidemic protocols/epidemics are synonym.
Thank you for your help.
While sometimes used as synonyms, to me, gossiping protocols are certain flavor of broadcast algorithms, where the message is flooded in a non-structural (commonly, random) way and spreads to the network.
In contrast, a non-gossiping broadcast algorithm may, for instance, deliver the message via a (predetermined) spanning tree, rather than let the message spread arbitrarily.
See, e.g., https://www.gsd.inesc-id.pt/~ler/reports/joaoleitaomsc.pdf
With some generalization (and subjectiveness), gossip is set of one-to-one communications and broadcast is one-to-many communication. From this definition, gossip is a subset of broadcast.
Or, broadcast is the goal, and gossip is one of tools.
Or (and?):
In gossip, after a node decided to spread a message, they rely on others to get that done and the original node has no info on progress.
In broadcast case, there is a dedicated node, whose job is to push message to other nodes, maybe even to other broadcasters.