Pienimmän vastarinnan tiet: WFR-juorujen esittely tldr: WFR-Gossip soveltaa optimaalisia kuljetusperiaatteita Ethereumin juorukerrokseen. Se säilyttää Gossipsubin joustavuuden, samalla kun se vähentää kaistanleveyttä 50 % ja vähentää 90. prosenttipisteen latenssia 40 % simulaatioissa.
Ethereumin Gossipsub on vankka, mutta tehoton. Solmut saavat usein saman viestin monta kertaa. Hyvä joustavuudelle, kallis kaistanleveydelle/latenssille. WFR-Gossip käyttää erilaista lähestymistapaa: Optimaalisen liikenneteorian innoittamana se välittää viestejä nopeampia reittejä pitkin. 👇
Klassinen juoruilu käsittelee leviämistä satunnaisena prosessina. WFR-Gossip muotoilee sen uudelleen massaliikenteeksi: viesti on kuin kasa hiekkaa, ja latenssi on sen siirtämisen hinta. Tämä liittyy luonnollisesti optimaalisen liikenteen teoriaan.
Juoruverkostossa: • liikkuva massa = viestin välittäminen • massan luominen = viestin monistaminen • massan tuhoaminen = kaksoiskappaleen pudottaminen Wasserstein-Fisher-Rao (WFR) -mittari kuvaa tätä, jolloin voimme mallintaa viestivirtaa fyysisellä intuitiolla.
Jokainen solmu käyttää yksinkertaista sääntöä: • Välitä muutamalle matalan viiveen kumppanille (D₍robust₎ ≈ 3) • Muille lähetä eteenpäin vain, jos RTT_out < RTT_in Tämä "alamäkeen" heuristiikka ei vaadi globaalia koordinaatiota. Vain paikalliset edestakaiset ajat (RTT), jotka ovat jo libp2p:ssä.
Kun D_robust = 3, WFR-Gossip saavuttaa: • ~98 % verkon kattavuus • 50 % vähemmän kaistanleveyttä • 40 % pienempi 90. prosenttipisteen latenssi IHAVE/IWANT-varatoiminto käsittelee loput 2 % puuttuvista solmuista.
WFR-Gossip ei ole vain välittämistä nopeimmalle vertaiselle. Siinä yhdistyvät redundanssi ja suodatus: vankka satunnainen eteneminen + hitaiden polkujen valikoiva karsiminen. Näin vältytään pullonkauloilta ja on vähemmän altis manipuloinnille.
Se on myös minimaalisesti invasiivinen: • Ei uusia topologioita • Yhteensopiva vertaispisteytyksen kanssa • Pelaa hyvin CHOKEn, IDONTWANTin jne. • Käyttää vain paikallisia sääntöjä ja tietoja (RTT)
Mitä seuraavaksi? • Toteutus libp2p-simulaattoreissa • Testaus realistisemmissa/vastakkaisissa olosuhteissa @open_sourcery varhaiset teokset täällä:
Linkki julkaisuun: Linkki simulaatiokoodin githup-säilöön: Kiitos Leo Monsaingeonille, @casparschwa, @_julianma:lle, @weboftrees:lle, @raulvk:lle, @yannvon:lle, @cskiraly:lle ja @open_sourcery:lle palautteesta ja arvosteluista!
12,08K