Gossip Protocol
গসিপ প্রোটোকল
প্রতি tick-এ random peer-এর সঙ্গে state মেলানো — খবর rumor-এর মতো ছড়ায়, O(log N) round-এ সবাই জানে।
also: epidemic-protocol, anti-entropy-gossip
def tick(self):
peer = self.rng.choice(self.peers) # random — এখানেই জাদু
diff = self.state.diff_since(peer.known)
self.merge(peer.push(diff))
- Epidemic math: push/pull mix-এ সংক্রমণ S-curve — ৩ log₂N round-এ high probability dissemination, কোনো central coordinator ছাড়া
- Failure-friendly: কিছু message drop হলেও convergence টিকে — পরের round-এই অন্য path
- ব্যবহার: membership (SWIM), cluster metadata (Cassandra ring state), failure detection; probabilistic — ‘কখনো’ পৌঁছায়, deadline-এ নয়