Saltar al contenido
Explorar conocimiento

concepto · intermedio · 2 min de lectura

Gossip Protocol

El protocolo Gossip propaga información entre nodos de un sistema distribuido como un rumor: cada nodo comparte lo que sabe con unos pocos vecinos, y la información se dispersa exponencialmente.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • Gossip Protocol as a concept

No cubre

  • implementation details

Supone

  • The reader understands relevant fundamentals.

Resumen

Un protocolo gossip —o epidemic protocol— es una estrategia de comunicación descentralizada donde cada nodo periódicamente selecciona un subconjunto aleatorio de otros nodos y les envía la información que conoce. Como un rumor en una fiesta, la información se propaga rápido sin un coordinador central.

Importa porque escala a miles de nodos sin punto único de falla. Cassandra lo usa para descubrir qué nodos están vivos y dónde están los datos. Consul y Serf lo usan para membership y detección de fallas. Los CRDTs lo usan para sincronizar estado eventualmente consistente.

Alcance y supuestos

Cubre el protocolo gossip, sus variantes y aplicaciones. Asume familiaridad con sistemas distribuidos.

Modelo mental

Un rumor en una oficina. Ana le cuenta a dos compañeros. Cada uno le cuenta a otros dos. En cinco rondas, 32 personas saben el rumor. Nadie coordinó la difusión, no hubo un email masivo, y si alguien no estaba en su escritorio, se entera en la ronda siguiente.

Uso práctico

  • ✅ Service discovery, detección de fallas, sincronización de estado.
  • ❌ Información que requiere orden estricto o confirmación inmediata.

Ejemplo trabajado: gossip en Cassandra

Cada nodo Cassandra contacta 3 vecinos aleatorios por segundo y comparte qué nodos cree que están vivos. En segundos, todo el cluster sabe si un nodo falló, sin un monitor central.

Evidencia

  • El paper "Epidemic Algorithms for Replicated Database Maintenance" (1987) sentó las bases. Amazon Dynamo popularizó gossip en sistemas de producción.

Fuentes citadas