Gossip Protocol: Architektura, práce a její aplikace

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





Přenos dat přes velkou síť (blockchain) je náročný úkol. Přenos podobných dat do nesčetných uzlů napříč velkou sítí využívá velké množství výpočetního výkonu; jeho vytvoření trvá dlouho a často omezuje hodnotu dat, když dosáhne posledního cíle. Protokoly klepů tento problém překonávají tím, že umožňují dodávat data z jednoho uzlu do jiného uzlu podobně, jako když dva lidé pomlouvají informace o každém šálku čaje. Tento článek pojednává o přehledu a komunikační protokol jako drbní protokol – práce s aplikacemi.


Co je Gossip Protocol?

Komunikační protokol, jako je protokol Gossip, jednoduše umožňuje sdílení stavu v rámci distribuovaných systémů. Moderní systémy využívají tento protokol peer-to-peer k distribuci informací všem členům v klastru nebo síti. Tento druh protokolu se používá v rámci decentralizovaného systému, který nezahrnuje žádný centrální uzel pro sledování všech uzlů a zjištění, zda je uzel mimo provoz nebo ne.



Gossip Protocol funguje na podobném principu přenosu dat na sociálních sítích. V současné době většina moderních systémů tyto protokoly často využívá k řešení problémů, které by mohly být obtížně řešitelné jinými způsoby, buď kvůli problému ve struktuře, který je velmi rozsáhlý, nebo proto, že řešení klepů jsou nejúčinnější dostupná.

Architektura protokolu Gossip

The Implementace protokolu Gossip lze provést v rámci databáze Apache Cassandra. Zde budeme diskutovat o tomto protokolu, jak Cassandra dosáhne koordinace mezi uzly a jak tyto uzly zůstanou v synchronizaci. V databázi Cassandra jsou všechny uzly podobné a mají architekturu peer-to-peer a neexistuje žádný koncept uzlu typu master-to-slave.



  Architektura protokolu Gossip
Architektura protokolu Gossip

Gossip je systém zpráv, který uzel Cassandra a virtuální uzly využívaly k tomu, aby jejich data byla vzájemně spolehlivá. Používá se tedy k implementaci faktoru replikace v rámci klastru. Představme si tedy cluster Cassandra jako kruhový systém, kde každý uzel obsahuje určité rozdělení každé tabulky v databázi a mohou komunikovat pouze se sousedními uzly.

Podívejme se, jak Cassandra dosahuje koordinace mezi uzly. Vezměme si tedy příklad zahrnující 6 uzlů v rámci shluku od 1 do 6. Ve výše uvedeném shluku si můžeme všimnout, že uzel3 je mimo provoz. Jakmile tedy uzel selže, přestane posílat pravidelné zprávy a všichni ostatní to okamžitě zjistí.

V protokolu drby, síťové uzly pravidelně si vyměňují stavové informace o sobě a o dalších uzlech, o kterých vědí. Tento protokol běží každou sekundu pro výměnu zpráv o stavu až se 3 dalšími uzly v rámci clusteru.

Protokoly Gossip jsou v Cassandře extrémně užitečné, protože si uzly vyměňují data o sobě a zbývajících uzlech, o kterých se povídalo. V důsledku toho se všechny uzly v clusteru rychle dozvědí o zbývajících uzlech.

Jak Gossip Protocol funguje?

Obecně protokol umožňuje každému uzlu nepřetržitě sledovat stavové informace na ostatních uzlech v klastru, jako například které uzly jsou přístupné a za jaké rozsahy klíčů jsou odpovědné atd. Uzly v klastru vysílají informace o stavu na čekání v synchronizaci. Gossip protokol je peer-to-peer komunikační mechanismus, kde si uzly pravidelně vyměňují stavové informace o sobě a dalších uzlech, o kterých vědí.

Každý uzel zahájí každou sekundu kolo klepů, aby si vyměnil stavové informace o sobě a ostatních uzlech s jedním dalším náhodným uzlem. Takže každý nový výskyt se nakonec šíří celým systémem a všechny uzly se rychle dozví o všech ostatních uzlech v clusteru.

Typy protokolu Gossip

Gossip protokoly jsou dostupné ve třech typech šíření, anti-entropie a protokoly, které počítají agregáty, které jsou diskutovány níže.

Protokoly šíření

Protokoly šíření se také nazývají protokoly šíření fám, protože využívají drby k šíření informací po síti. Jedná se o nejhrubší typ protokolů klepů, které se používají pro blockchainy. Jsou-li tyto protokoly vhodné pro získávání dat do mnoha uzlů v krátkém časovém rámci, mohou být data během cesty poškozena a také snadno upravována.

Anti-entropické protokoly

Tyto druhy protokolů klepů se používají hlavně k opravě duplicitních dat jejich vyhodnocením a také změnou srovnání. Hlavním cílem těchto protokolů je snížit změny dat, když se pohybují mezi uzly, jejich vyhodnocením a změnou dat, aby se zajistilo, že jsou správná.

Protokoly, které počítají agregáty

Tyto protokoly jsou také známé jako agregační protokoly, které pracují nebo počítají agregaci sítě prostřednictvím vzorkování dat v uzlech a sjednocují hodnoty, aby získali hodnotu pro celý systém. Tyto typy protokolů souvisejí s antientropickými protokoly, i když jsou postaveny na myšlence přenášet každý uzel samostatný prvek přenášených dat, poté jsou data sdílena mezi uzly, aby se vytvořil úplný obrázek.

Gossip Protocol Algorithm

Gossip algoritmy jsou asynchronní protokoly pro výměnu dat, které jsou založeny na drby, jinak je styl pověstí nespolehlivý. Vzhledem k jejich obrovské jednoduchosti a široké použitelnosti se tento algoritmus objevil jako kanonické architektonické řešení, zejména pro sítě nadcházející generace.

V algoritmu gossip protokolu si každý uzel v síti pravidelně vyměňuje informace s podmnožinou uzlů. Obvykle je tato podmnožina množinou sousedů každého uzlu. Každý uzel má pouze zobrazení místní sítě. Každý uzel dostane nějaká požadovaná univerzální data v určitém ne. periodických aktualizací uzlů.

Výhody a nevýhody

The výhody gossip protokolu zahrnout následující.

  • Tyto protokoly jsou extrémně škálovatelné.
  • Všechny uzly v tomto protokolu fungují stejně a nemají vzájemně odlišné nebo speciální funkce. Jakmile dojde k selhání v rámci jednoho nebo více uzlů, nepřeruší ani neovlivní ostatní uzly v síti pro distribuci dat. Podobně mohou uzly procházet nebo opouštět síť mezi páry bez omezení a bez ovlivnění její funkce.
  • Tyto protokoly distribuují data zcela autonomním a decentralizovaným způsobem.
  • Tyto typy protokolů mají kapacitu pro správné fungování, protože uzly mají kapacitu pro sdílení a distribuci dat s mnoha uzly v rámci peer sítě,

The nevýhody gossip protokolu zahrnout následující.

  • Tyto protokoly nabízejí systému sílu tím, že umožňují uzlům v síti pracovat nepřetržitě, aniž by došlo k poruchám.
  • Vysoká redundance může vést k požadavku na maximální šířku pásma, takže může způsobit rušení sítě.

Aplikace

The aplikace gossip protokolu Zahrnuji následující.

  • Gossip protokol se používá hlavně k opravě problémů, které se vyskytly při multicastingu.
  • Jedná se o druh komunikace, kde se část klepů nebo informací v tomto stavu přenáší z jednoho uzlu nebo více uzlů do sady dalších uzlů v rámci sítě.
  • Tyto protokoly používají různé distribuční sítě pro rychlou a spolehlivou distribuci dat.
  • Ty používá bitcoin k šíření nestálých hodnot napříč svými těžebními uzly.
  • Používají se hlavně k vytvoření komunikačního kanálu, jehož prostřednictvím mohou všechny uzly sítě získávat informace a objevovat páry, které napomáhají distribuci metadat.
  • Protokoly Gossip používá databáze Ripples k přenosu informací o stavu a vlastnostech svých prstenů.
  • Dynamo používá ke sledování členství protokol Gossip. Umožňuje vám objevit nové účastníky programu a také pozorovat jakoukoli poruchu.
  • Tyto protokoly se používají v servisní síti Consul jak pro detekci, tak pro identifikaci nových členů v případě výpadků sítě, jinak potenciálních poruch.
  • Síť Consul používá tyto protokoly k bezpečnému a rychlému přenosu informací o nových službách a událostech v síti.

Tak, to je všechno o přehled drbního protokolu – práce s aplikacemi. Gossip protokoly jsou efektivní, takže detekce selhání gossip protokolu je možná jednoduše v distribuovaných a velkých systémech asynchronním způsobem. Zde je otázka pro vás, jaké jsou příklady protokolu Gossip?