Protocollo Gossip: architettura, funzionamento e sue applicazioni

Prova Il Nostro Strumento Per Eliminare I Problemi





La trasmissione di dati su una grande rete (blockchain) è un compito impegnativo. La trasmissione di dati simili a una miriade di nodi attraverso la grande rete utilizza una grande quantità di potenza di elaborazione; ci vuole molto tempo per farlo e spesso limita il valore dei dati quando raggiunge l'ultima destinazione. Quindi, i protocolli di gossip risolvono questo problema consentendo ai dati di fornire da un nodo a un altro nodo simile a due persone che spettegolano su un'informazione su ogni tazza di tè. Questo articolo discute una panoramica di a protocollo di comunicazione piace protocollo di gossip – lavorare con le applicazioni.


Cos'è il protocollo Gossip?

Un protocollo di comunicazione come il protocollo Gossip consente semplicemente la condivisione dello stato all'interno di sistemi distribuiti. I sistemi moderni utilizzano questo protocollo peer-to-peer per distribuire le informazioni a tutti i membri all'interno di un cluster o di una rete. Questo tipo di protocollo viene utilizzato all'interno di un sistema decentralizzato che non include alcun nodo centrale per tenere traccia di tutti i nodi e sapere se un nodo è inattivo o meno.



Gossip Protocol funziona secondo un principio simile di come i dati vengono trasmessi sui social network. Attualmente, la maggior parte dei sistemi moderni utilizza frequentemente questi protocolli per risolvere problemi che potrebbero essere difficili da risolvere in altri modi, sia a causa di un problema all'interno della struttura, che è molto grande, sia perché le soluzioni di gossip sono le più efficienti disponibili.

Architettura del protocollo Gossip

Il Implementazione del protocollo di gossip può essere fatto all'interno del database Apache Cassandra. Qui, discuteremo di questo protocollo, di come Cassandra raggiunge il coordinamento tra i nodi e di come questi nodi rimarranno sincronizzati. Nel database Cassandra, tutti i nodi sono simili e hanno un'architettura peer-to-peer e non esiste un concetto di nodo da master a slave.



  Architettura del protocollo Gossip
Architettura del protocollo Gossip

Gossip è il sistema di messaggistica utilizzato dal nodo Cassandra e dai nodi virtuali per rendere i propri dati affidabili l'uno con l'altro. Quindi viene utilizzato per implementare il fattore di replica all'interno di un cluster. Immaginiamo quindi il cluster Cassandra come un sistema ad anello in cui ogni nodo include una certa divisione di ogni tabella all'interno del database e possono comunicare solo con nodi contigui.

Vediamo come Cassandra raggiunge il coordinamento tra i nodi. Quindi prendiamo un esempio che include 6 nodi all'interno di un cluster da 1 a 6. Nel cluster sopra, possiamo notare che node3 è inattivo. Quindi, una volta che un nodo si interrompe, smette di inviare messaggi periodici e tutti gli altri lo scoprono all'istante.

Nel protocollo del gossip, nodi di rete scambiare periodicamente informazioni sullo stato su se stessi e sui nodi aggiuntivi di cui sono a conoscenza. Questo protocollo viene eseguito ogni secondo per scambiare messaggi di stato con un massimo di altri 3 nodi all'interno del cluster.

I protocolli Gossip sono estremamente utili all'interno di Cassandra, poiché i nodi si scambiano dati su se stessi e sui nodi rimanenti di cui hanno parlato. Di conseguenza, tutti i nodi all'interno del cluster apprendono rapidamente i nodi rimanenti.

Come funziona il protocollo Gossip?

In genere, il protocollo consente a ogni nodo di tracciare continuamente le informazioni sullo stato sugli altri nodi all'interno del cluster, ad esempio quali nodi sono accessibili e di quali intervalli di chiavi sono responsabili, ecc. I nodi all'interno del cluster trasmettono informazioni sullo stato in attesa della sincronizzazione. Il protocollo Gossip è un meccanismo di comunicazione peer-to-peer in cui i nodi si scambiano periodicamente informazioni sullo stato su se stessi e su altri nodi di cui sono a conoscenza.

Ogni nodo inizia un giro di pettegolezzi per ogni secondo per scambiare le informazioni sullo stato su se stesso e sugli altri nodi con un altro nodo accidentale. In modo che qualsiasi nuova occorrenza alla fine si propaghi nel sistema e tutti i nodi apprendano rapidamente tutti gli altri nodi all'interno di un cluster.

Tipi di protocollo di gossip

I protocolli di gossip sono disponibili in tre tipi di disseminazione, anti-entropia e protocolli che calcolano gli aggregati discussi di seguito.

Protocolli di Diffusione

I protocolli di divulgazione sono anche chiamati protocolli di pettegolezzi in quanto utilizzano i pettegolezzi per diffondere informazioni attraverso la rete. Questi sono il tipo più approssimativo di protocolli di gossip utilizzati per le blockchain. Quando questi protocolli sono appropriati per ottenere dati da molti nodi in un breve lasso di tempo, i dati possono essere danneggiati e modificati facilmente lungo il percorso.

Protocolli Anti-Entropia

Questi tipi di protocolli di gossip vengono utilizzati principalmente per correggere i dati duplicati valutandoli e modificando i confronti. L'obiettivo principale di questi protocolli è ridurre le modifiche ai dati quando viaggia tra i nodi valutandoli e modificando i dati per assicurarsi che siano corretti.

Protocolli che calcolano gli aggregati

Questi protocolli sono anche noti come protocolli di aggregazione che funzionano o calcolano un aggregato della rete attraverso il campionamento dei dati ai nodi e uniscono i valori per ottenere un valore a livello di sistema. Questi tipi di protocolli sono correlati ai protocolli anti-entropia, sebbene siano costruiti attorno all'idea di trasmettere a ciascun nodo un elemento separato dei dati trasmessi, dopodiché i dati vengono condivisi tra i nodi per creare un quadro completo.

Algoritmo del protocollo Gossip

Gli algoritmi di gossip sono protocolli di scambio di dati asincroni basati sul gossip, altrimenti lo stile delle voci è inaffidabile. A causa della loro enorme semplicità e ampia applicabilità, questo algoritmo è apparso come una soluzione architettonica canonica, specialmente per le reti di prossima generazione.

In un algoritmo di protocollo gossip, ogni nodo all'interno della rete scambia periodicamente informazioni con un sottoinsieme di nodi. Di solito, questo sottoinsieme è l'insieme dei vicini di ogni nodo. Ogni nodo ha solo una vista di rete locale. Ogni nodo ottiene alcuni dati universali desiderati durante un determinato no. di aggiornamenti periodici dei nodi.

Vantaggi e svantaggi

Il vantaggi del protocollo di gossip include il seguente.

  • Questi protocolli sono estremamente scalabili.
  • Tutti i nodi in questo protocollo funzionano allo stesso modo e non hanno una funzione diversa o speciale l'uno dall'altro. Una volta che si verifica un errore all'interno di uno o più nodi, non interromperà né influirà sugli altri nodi all'interno della rete per la distribuzione dei dati. Allo stesso modo, i nodi possono attraversare o allontanarsi dalla rete tra coppie senza limiti e senza influire sulla sua funzione.
  • Questi protocolli distribuiscono i dati in modo totalmente autonomo e decentralizzato.
  • Questi tipi di protocolli hanno la capacità di funzionare correttamente poiché i nodi hanno la capacità di condividere e distribuire dati con molti nodi all'interno della rete peer,

Il svantaggi del protocollo di gossip include il seguente.

  • Questi protocolli offrono forza al sistema consentendo ai nodi della rete di funzionare continuamente senza interrompere il verificarsi di guasti.
  • Un'elevata ridondanza può portare alla massima richiesta di larghezza di banda, quindi può causare inceppamenti della rete.

Applicazioni

Il applicazioni del protocollo gossip Includo quanto segue.

  • Il protocollo gossip viene utilizzato principalmente per risolvere i problemi che si sono verificati con il multicasting.
  • È un tipo di comunicazione in cui una parte di pettegolezzi o informazioni in questo stato viene trasmessa da uno o più nodi a un insieme di altri nodi all'interno di una rete.
  • Questi protocolli sono utilizzati da varie reti di distribuzione per distribuire i dati in modo rapido e affidabile.
  • Questi sono usati da bitcoin per diffondere valori incostanti attraverso i suoi nodi di mining.
  • Questi sono utilizzati principalmente per creare un canale di comunicazione attraverso il quale tutti i nodi della rete possono ottenere informazioni e scoprire accoppiamenti che aiutano la distribuzione dei metadati.
  • I protocolli Gossip vengono utilizzati dal database Ripples per trasmettere informazioni sulle condizioni e sulle caratteristiche dei suoi anelli.
  • Dynamo utilizza il protocollo Gossip per tenere traccia degli abbonamenti. Ti consente di scoprire nuovi partecipanti al programma e di osservare eventuali malfunzionamenti.
  • Questi protocolli sono utilizzati nella rete di servizio Consul sia per il rilevamento che per l'identificazione di nuovi membri di guasti di rete altrimenti potenziali guasti.
  • La rete Consul utilizza questi protocolli per trasmettere in modo sicuro e rapido informazioni su nuovi servizi ed eventi nella rete.

Quindi, questo è tutto una panoramica di un protocollo di gossip – lavorare con le applicazioni. I protocolli gossip sono efficaci in modo che il rilevamento degli errori del protocollo gossip sia possibile semplicemente in sistemi distribuiti e di grandi dimensioni in modo asincrono. Ecco una domanda per te, quali sono gli esempi di protocollo Gossip?