Obsah

1、Firedancer
2. Klíčové body
3. Úvod
3.1 Směrem k Solaně 2.0
4. Raná fáze rozvržení
5. Aktuální stav klientů validátoru na Solaně
6. Proč potřebujete dalšího klienta validátoru?
7, Firedancer
7.1 Zásobník Firedancer
7.2 Modulární architektura
7.3 Bezpečnostní model
8. Cesta do budoucnosti
9. Závěr
10. Reference
11. Prohlášení

Firedancer

V následující zprávě se hlouběji ponoříme do Firedanceru, prozkoumáme jeho hodnotovou nabídku a roli, kterou hraje při realizaci vize nastíněné v původní bílé knize Solana. Pro mnohé bude jeho vydání znamenat první krok směrem k Solana 2.0, posune limity hardwaru a softwaru do extrému, vyřeší výzvy stávajících klientů validátorů a předefinuje škálovatelnost, spolehlivost a spolehlivost sítě.

Klíčové věci

  • Vize společnosti Solana je zaměřena na hardware a věří v lineární škálovatelnost s Moorovým zákonem za předpokladu, že optimalizace softwaru může držet krok.

  • V současném stavu se stávající validátoři potýkají s problémy s výkonem a škálovatelností, především kvůli omezením softwaru, nikoli omezením hardwaru.

  • Odolnost sítě Solana závisí na diverzifikaci klientů validátorů, aby se snížilo riziko selhání systému a zvýšila se odolnost proti chybám. Uvedení Firedancer, nového validačního klientského softwaru třetí strany, znamená krok ke zvýšení této odolnosti, podpoře rozmanitosti klientů a vyřešení závislosti společnosti Solana na omezených klientech.

  • Metodika Firedancer, kterou spustil tým Jump Crypto, je založena na vysoce výkonném globálním obchodním systému – přirozeně vhodném pro optimalizaci Solana s konečným cílem fungovat na hranici fyzických a teoretických limitů.

  • Zatímco vývoj Firedancer představuje důležitý milník, pokračující úsilí o dokumentaci, kompatibilitu a správu komunity je pro vývoj společnosti Solana v otevřený standard zásadní.

Úvod

Příběh Solany začal v roce 2017, kdy Anatolij Jakovenko vydal původní bílou knihu popisující Důkaz historie. To vytváří vizi pro vybudování blockchainu, který dokáže překonat problémy se škálovatelností stávajících řešení. Byl navržen jako vysoce výkonná platforma s nízkou latencí – blockchain, který by mohl vytvořit obchodní motor, který by mohl konkurovat Nasdaq.

Na základě původního konceptu navrženého Anatolym a zakládajícím týmem, pokud software nebrání hardwaru, celkový výkon sítě blockchainu se může lineárně zvyšovat s pokrokem hardwaru - jak popisuje Mooreův zákon, počet tranzistorů v integrovaném obvodu se přibližně každé dva zdvojnásobí každý rok s minimálním růstem nákladů. Za předpokladu, že software je optimální, metriky výkonu Solana se mohou každé dva roky zdvojnásobit bez dalších upgradů.

Zdroj: Medium

I když se však výkon může s pokrokem hardwaru zlepšovat, efektivní komunikace uzlů je zásadní, aby se zabránilo tomu, že by se šířka pásma sítě stala úzkým hrdlem, a nedocházelo ke zpoždění sítě. To je zásadní pro zabránění jakékoli formě síťové latence, a to i s pokrokem v hardwaru.

Klient Solana validátoru má v současnosti určitá omezení, která mohou ovlivnit jeho výkon a škálovatelnost, stejně jako problémy se spolehlivostí sítě kvůli nedostatečné rozmanitosti. Většina těchto omezení je spíše softwarová než hardwarová. Kevin J Bowers je vysoce výkonný systémový výzkumník ve společnosti Jump, který je zodpovědný za propagaci projektu Firedancer. Je známý svým přehnaným výrokem: "Rychlost světla je příliš pomalá." S desítkami let zkušeností s vývojem vysoce výkonných globálních obchodních systémů Jump doufá, že zvýší spolehlivost společnosti Solana vybudováním nezávislého validačního klienta Firedancer.

Zdroj: Solana

Firedancer není navržen jako krátkodobé řešení pouhým pohledem do minulosti. Je navržen tak, aby posouval limity výpočetního výkonu, poskytoval rozsah a spolehlivost a fungoval na hranicích fyziky a teorie.

Směrem k Solana 2.0

V tradičním vývoji jsou operace obvykle nahlíženy z perspektivy datového prostoru spíše než z pohledu fyzického prostoru. Tento pohled je nevyhnutelně omezen fyzickými omezeními, jako je rychlost světla, což má za následek špatné využití hardwaru a pomalý výkon systému.

Zdroj: Revelo Intel

To má za následek špatné využití hardwaru, protože tradiční vývojové postupy často ignorují fyzická omezení. Jinými slovy, škálovatelnost systému není omezena hardwarem, ale neefektivitou softwaru. Existuje známé přísloví, které zní takto: "Rychlejší hardware je špatné primární řešení pro pomalý software."

Jump Trading těmto výzvám čelí přímočaře a vyvíjí se z tradičního obchodního systému na vysoce přizpůsobený technologický stack. Tato transformace řeší jedinečné výzvy globálního obchodování, kde je kritická fyzická blízkost k burzám, heterogenní požadavky trhu a přísné provozní standardy.

Na rozdíl od tradičních superpočítačů musí být systém Jump odolný proti chybám rychle, transparentně a musí být schopen postupných upgradů. Musí fungovat v různorodém, konkurenčním a vysoce regulovaném prostředí s přísnými standardy uchovávání dat a odpovědnosti. Pouhé přidání dalšího hardwaru do Solana nestačí. Místo toho je klíčová optimalizace softwaru a Firedancer jej posouvá blíže k dosažení těchto cílů.

Pro informaci, jeden validátor, na kterém běží Firedancer, zpracoval 1,2 milionu TPS během živé ukázky v listopadu 2022, ačkoli většina odhadů uvádí jako realističtější číslo 600 000 TPS. Toto číslo je několikanásobkem současného teoretického limitu společnosti Solana 50 000 TPS a daleko přesahuje objem transakcí, který obvykle zpracovávají přední poskytovatelé služeb, jako je Visa (přibližně 1,5 000 – 2 000 TPS).

Zdroj: Twitter

Firedancer zavádí změnu paradigmatu v architektuře a funkčnosti klienta validátoru Solana. Nejde jen o vytvoření klienta validátoru, jde o vytvoření vysoce spolehlivého a na výkon orientovaného klienta, který vylepšuje již tak rychlý a efektivní blockchain Solana.

Zdroj: Frictionless Capital

S uvedením Firedanceru Jump zahajuje novou fázi, kterou mnozí nazývají Solana 2.0. Využitím let zkušeností v prostředích vysokofrekvenčního obchodování pomůže přidání tohoto nadcházejícího klienta nezávislého validátoru do sady nástrojů Solana učinit síť spolehlivější, efektivnější a robustnější.

Zdroj: Revelo Intel

Solana vyniká svou vynikající rychlostí a nejnovějšími řešeními problémů s výpadky systému. Existuje však potenciál pro další zlepšení. Firedancer si klade za cíl být nejvýkonnějším klientem validátoru napříč blockchainy a řeší současnou přílišnou závislost na hrstce klientů zvýšením rozmanitosti klientů Solana.

Zdroj: Github

Přichystat scénu

V Solaně se validátoři podílejí na mechanismu konsensu společnosti Solana pro ověřování transakcí a navrhují nové bloky, které mají být přidány do řetězce.

Zdroj: Revelo Intel

Tímto způsobem se držitelé tokenů Solana ($SOL) mohou účastnit konsensu a získat odměny za sázky uzamčením svých tokenů $SOL v uzlech validátoru.

Zdroj: Revelo Intel

Proof of Stake (PoS) poskytuje pozitivní i negativní pobídky. Účastníci jsou povinni mít finanční zajištění jako kauci. Pokud validátor poruší pravidla, část jeho vkladu bude „ukrojena“ jako trest. V opačném případě budou kompenzováni prostřednictvím sázkových odměn.

Aby mohli dokončit svou práci a spojit se s ostatními uzly v síti, musí validátoři používat ověřovací klienty, aplikace, které jim umožňují účastnit se konsensu. Jedná se o software, který umožňuje ověřovat a potvrzovat transakce, aby byly v souladu s pravidly sítě.

Různí klienti validátoru mohou obsahovat různý kód, ale všichni musí implementovat stejnou logiku. To je důležité, protože pokud u jednoho klienta dojde k chybě nebo selhání, uzly, na kterých běží další klienti, budou moci udržovat síť online a zabránit výpadkům sítě.

Zdroj: Revelo Intel

Větší rozmanitost klientů znamená větší odolnost a ochranu v případě možných chyb nebo zranitelností v kódu klienta validátoru. Například v roce 2016 útočníci objevili chybu v Ethereum geth klientovi a zahájili sérii DDoS (distribuované odmítnutí služby) útoků na síť. Pro ochranu proti takovým útokům je řešením, aby operátoři uzlů rychle přešli na jiného klienta, aby udrželi síť v provozu, zatímco je zranitelnost opravena.

Aktuální stav klienta validátoru Solana

S přibližně 1 649 validátory v současné době má Solana jeden z největších uzlů v síti PoS a je také jedním z nejrozšířenějších, měřeno koeficientem Satoshi Nakamoto. V současné době mezi klienty validátorů Solana patří Solana Lab Client a Jito Lab Client, které drží 68 % a 32 % aktivního kapitálu. Přestože růst klientů Jito Labs během roku 2023 hraje klíčovou roli v diverzifikaci sítě, je stále zapotřebí dalšího úsilí.

Klient Jito je větev klienta Solana Labs, kromě toho, že zavádí pseudo paměťový fond (protože Solana nemá paměťový fond) pro optimalizaci MEV. To umožňuje validátorům hledat v mempoolu nepotvrzené nebo čekající transakce, optimálně je seskupovat a poté je odeslat do blokovacího stroje Jito.

Zdroj: Revelo Intel

Nicméně skutečnost, že se jedná o fork, znamená, že oba klienti sdílejí mnoho komponent vyvinutých v původní kódové základně. Pokud se tedy v původním klientovi Solana Labs vyskytnou nějaké neobjevené zranitelnosti nebo chyby, budou postiženi oba klienti.

V budoucnu kromě dvou stávajících klientů (Solana Labs a Jito) a Firedancer existují dva nezávislé týmy, které pracují na nových klientech. To znamená celkem 5 validátorů, tři používající Rust (Solana Labs, Jito a Agave vyvinuté společností Anza), jeden používající C (Firedancer) a jeden využívající Zig (Sig vyvinutý společností Syndica).

Proč potřebuji dalšího klienta validátoru?

Pro Solana je důležité mít dalšího klienta validátoru, jako je Firedancer, protože zvyšuje odolnost a výkon sítě. Různí klienti validátoru snižují riziko selhání systému, protože různí klienti mohou na stejné problémy se sítí reagovat odlišně.

Zdroj: Solana

Rozmanitost softwarově ověřených klientů zajišťuje, že jediná chyba nebo zranitelnost v jednom klientovi neohrozí celou síť. Profesionální klienti, jako je Firedancer, mohou navíc přinést vylepšení výkonu šitá na míru jedinečným potřebám společnosti Solana, čímž dále zvýší efektivitu a spolehlivost sítě.

Zdroj: Revelo Intel

Pokud v síti běží více různých klientů, je nepravděpodobné, že sdílejí stejnou zranitelnost. Pokud jeden klient selže kvůli specifické chybě nebo útoku, ostatní klienti s různými architekturami nemusí být ovlivněni, což zajišťuje kontinuitu a stabilitu sítě.

Zdroj: Revelo Intel

Dalším problémem je, že současní klienti (Solana Labs a Jito) běží jako jeden proces, což ztěžuje provádění změn, jakmile je kód spuštěn v produkci. Například validátoři provozující tyto klienty byli nuceni vypnout, když potřebovali zavést okamžité aktualizace zabezpečení. Všechny distribuované systémy – ať už centralizované platební procesory, databáze nebo blockchainy – mají jedno společné. Jediná chyba implementace může zničit celý systém.

Navíc žádné množství testování nemůže zabránit všem možným chybám. Proto je důležité podporovat více klientů v produkčním prostředí, zejména pro blockchain navržený tak, aby dosahoval nulových prostojů a zůstal antifragilní na limitu.

V ideálním případě by mohli existovat 4 klienti vyvinutí nezávislými týmy používajícími různé programovací jazyky, z nichž každý ovládá 25 % aktivních akcií. Tímto způsobem nebude žádná jednotlivá implementace řídit více než 33 % aktivních podílů, což pomůže předejít jednotlivým bodům selhání.

Zdroj: Revelo Intel

Kromě zlepšení výkonu Jump staví nového klienta validátoru pro Solana, aby zvýšil spolehlivost sítě. Například společnost Solana měla v minulosti čtyři incidenty, kdy byla bloková výroba zastavena kvůli problémům se softwarovými moduly, které ovlivnily shodu. Tyto problémy jsou obvykle vyřešeny koordinací validátorů na Discord a vyžadují ruční opravy.

Jakmile bude Firedancer ve výrobě, bude jednodušší aplikovat stejné optimalizace na všechny ostatní klienty. Jito například vyvíjí JitoDancer, který bude implementovat potřebné optimalizace pro práci s Firedancerem.

Firedancer

Firedancer je přepsáním aktuálního klienta validátoru Solana v jazyce C, který zajišťuje, že z původní kódové základny nebudou přeneseny žádné chyby.

Byl vyvinut od nuly společností Jump. Díky využití svých odborných znalostí v oblasti vysokofrekvenčního obchodování je Jump jedním z nejschopnějších týmů, kteří vytvářejí tak vysoce výkonný systém s nízkou latencí a odolností proti chybám.

Zdroj: Revelo Intel

Kód je open source, což umožňuje komukoli zkontrolovat a porozumět vyvíjeným optimalizacím. Kevin Bowers v současnosti vede tým, který nadále posouvá limity technologií ve vysoce výkonných prostředích. Jejich odborné znalosti v oblasti optimalizované orchestrace dat, vlastních technologických zásobníků a globálního škálování systému nemají obdoby.

Stejně jako Jump, Solana vyžaduje robustní, flexibilní a efektivní infrastrukturu pro podporu svého rostoucího ekosystému. Zavedení Firedancer, nezávislého druhého validátoru, je krokem k tomuto cíli. Firedancer je navržen tak, aby byl globálně škálovatelný, vyvíjel se postupně, byl odolný vůči chybám a byl otevřený široké komunitě. Jeho vývoj je otevřený, vyzývá ke spolupráci a zpětné vazbě od komunity Solana.

Zdroj: Revelo Intel

Jinak je klient stále kompatibilní s klienty od Solana Labs a Jito Labs, i když jsou napsány v Rustu. Klient Firedancer bude také kompatibilní se stávajícím hardwarem používaným validátory Solana a nebude je nutit upgradovat na nové stroje. S Firedancer se Solana přizpůsobí šířce pásma a hardwaru.

Vize Firedanceru je jednoduchá: každá komponenta musí být optimalizována pro maximální výkon, takže schopnost klienta běžet je omezena pouze hardwarem validátoru. Porovnejte to se současným stavem, kdy je výkon validátoru omezen neefektivitou softwaru.

Zásobník technologií Firedancer

Firedancer byl vytvořen přepsáním tří hlavních funkčních komponent klienta Solana Labs od základů v C, optimalizací každé jednotlivé části, aby klient posunul hranice svého hardwaru.

Zdroj: Revelo Intel

Firedancer je ve svém jádru víc než jen validátor; je to důkaz víry společnosti Jump v posouvání hranic a inovaci na rozhraní technologie a financí – s cílem optimalizovat propustnost transakcí a snižovat náklady.

Zdroj: Revelo Intel

Optimalizací těchto klíčových komponent Firedancer zajišťuje, že škálování Solana je primárně omezeno klientským hardwarem, nikoli samotným softwarem. To je v souladu s původní vizí Solana, kterou navrhl Anatoly před mnoha lety: navrhnout způsob, jak efektivně komunikovat mezi uzly, aby šířka pásma již nebyla překážkou.

Ve světě vysoce výkonných počítačů musí být nakonec vše optimalizováno. Tento přístup je v souladu s Moorovým zákonem, který říká, že počet tranzistorů na mikročipu se zdvojnásobí přibližně každé dva roky, což vede ke zvýšení výpočetního výkonu a nižším nákladům na tranzistor.

Škálovatelnost Firedancer je úzce svázána s počtem tranzistorů v mikročipu, protože více tranzistorů znamená více fyzického prostoru na povrchu čipu. Výsledkem je, že návrháři čipů mohou přidat více jader, čímž Solana získá vyšší datovou propustnost. To umožňuje škálování sítě podle toho, jak se zlepšuje šířka pásma a hardware, při zachování dostatečné úrovně decentralizace.

Zdroj: Revelo Intel

V kontextu Solana znamená mít více procesorových jader možnost provádět více transakcí paralelně. To má za následek výrazné zvýšení datové propustnosti, protože lze zpracovávat více transakcí současně bez čekání na sebe.

Dřívější simulace ukazují, že šířka pásma roste téměř lineárně s rostoucím počtem jader. Jinými slovy, zdvojnásobení počtu jader v hardwaru validátoru povede k téměř zdvojnásobení počtu transakcí, které validátor obdrží za stejnou dobu.

Modulární architektura

Modulární architektura Firedancer jej odlišuje od stávajících klientů. Tato modularita odkazuje na jeho vnitřní strukturu a je navržena tak, aby zvýšila efektivitu a spolehlivost procesu ověřování sítě. To by se nemělo zaměňovat s širší debatou o blockchainové architektuře, která se zaměřuje na to, jak je samotná blockchainová síť strukturována a funguje.

Ten zahrnuje diskusi o dělbě práce v rámci blockchain ekosystému, jako je oddělení vrstev konsenzu, provádění a dostupnosti dat, což je koncept, který přímo nesouvisí s principy nebo funkčností Firedancer.

Zdroj: Revelo Intel

Firedancer používá architekturu založenou na dlaždicích, kde každá dlaždice je nezávislý proces Linux C s určitou pamětí. Naproti tomu současní Rust klienti běží jako jeden proces.

V tomto kontextu proces odkazuje na instanci běžícího programu. Například moderní operační systémy fungují tak, že přidělují paměť a zdroje různým procesům, z nichž každý zpracovává specifické úkoly.

Zdroj: Revelo Intel

Dlaždice jako nezávislé procesy mají oproti jednoprocesovým systémům několik výhod. Izolují selhání správou stavu validátoru v různých pracovních prostorech a zajišťují, že problémy s jednou dlaždicí neovlivní celý systém.

Tato izolace také zjednodušuje údržbu a upgrady, protože jednotlivé dlaždice lze individuálně upravovat nebo vyměňovat bez zastavení celého systému. Například během restartu nebo upgradu může každá destička pokračovat ve zpracování od místa, kde skončila.

Kromě toho dlaždice lépe využívají zdroje, protože každá dlaždice může běžet na samostatném jádře CPU, čímž se zabrání sporům o zdroje a optimalizuje se výkon. Díky těmto faktorům jsou dlaždice robustnější, flexibilnější a efektivnější než jednoprocesní přístupy.

První testování ukazuje 10-100násobné zlepšení výkonu ve srovnání s klientem Solana Labs, přičemž každé jádro GPU zpracuje v testování více než 1 milion transakcí.

Zdroj: Revelo Intel

bezpečnostní model

Jedním z kompromisů mezi jazykem C a Rustem je, že jazyk C nemá záruku bezpečnosti paměti poskytovanou Rustem. K ochraně před těmito situacemi používá Jump praktiku zvanou „sandboxing operačního systému“, což v podstatě znamená izolovat různé procesy (dlaždice) od operačního systému.

Podle zásady nejmenšího oprávnění mohou dlaždice přistupovat pouze k systémovým prostředkům a provádět systémová volání, která nezbytně potřebují k výkonu své práce. Ve skutečnosti hloubkový výzkum v oblasti zabezpečení paměti v jazyce C přiměl tým, aby přijal nepřátelské myšlení a co nejvíce omezil plochu útoku. Pokud dlaždice nejsou izolované, útok by mohl způsobit poškození celé sítě, pokud úspěšně zneužijí zranitelnost k ovlivnění více validátorů.

Tento přístup uznává, že neexistuje nic jako „dokonalý kód“ a že nevyhnutelně budou zavedeny některé zranitelnosti nebo bezpečnostní díry. K ochraně před těmito scénáři však Jump používá strategii hloubkové obrany, takže i když se útočníkovi podaří kompromitovat část kódu, rozsah dopadu je omezený a neovlivní ostatní části technologického zásobníku.

cesta vpřed

Není pochyb o tom, že vstup Firedanceru do výroby je pro Solana významným milníkem a mnozí ho nazývají Solana 2.0. Z bezpečnostního hlediska nás však čekají výzvy.

Navzdory výhodám, které Firedancer přináší, stále potřebuje úzce kopírovat chování stávajících klientů. V opačném případě mohou být v důsledku nekompatibility zavedeny konsensuální chyby.

Jedním ze způsobů, jak tyto problémy vyřešit, je nechat procento podílu běžet napříč oběma klienty s cílem udržet celkový podíl Firedancer pod 33 % v dlouhodobém horizontu.

Nejdůležitější věcí, kterou je třeba zvážit, je, že kódovou základnu nelze vyvíjet izolovaně. Proto Jump pokračuje ve vyhodnocování výkonu na základě možností stávajících klientů Labs.

Dalším problémem, kterému Jump v současnosti čelí, je nedostatek specifikací a standardizované dokumentace. Pozitivní je, že se to změní.

Nové implementace musí být opatrné, aby nezavedly nové chyby a zároveň udržely krok s rychlostí vývoje. Výsledkem je, že Jump učinil zlepšení dokumentace Solana jednou ze svých priorit.

Jakmile Jump poskytne skutečné soubory specifikací, které definují protokol Solana, každý by měl být schopen vytvořit validátor Solana jednoduše nahlédnutím do dokumentace, nikoli s kódem validátoru.

Nejen, že to pomůže Firedanceru zůstat v průběhu času kompatibilní, ale tato komplexní dokumentace bude také zásadní pro další nezávislé týmy, které budují své vlastní klienty. V konečném důsledku, i když je síť schopna využít desítky let zkušeností společnosti Jump, konečným cílem Solana je stát se otevřeným standardem řízeným různorodou komunitou přispěvatelů.

na závěr

Stručně řečeno, i když je Firedancer pouze samostatným klientem validátoru pro Solana, jeho zavedení představuje důležitý milník pro síť.

Firedancer je navržen tak, aby zlepšil spolehlivost, výkon a rozmanitost klientů společnosti Solana a řešil současnou přílišnou závislost na několika málo klientech.

Tento krok je v souladu s vizí společnosti Solana navrhnout efektivní způsob komunikace uzlů, který se bude škálovat s vylepšeními hardwaru a nebude omezen neefektivitou softwaru.

Reference

 

Bílá kniha Solana

Validátory Solana

Klient Solana Labs

Klient Jito Labs

Klient Firedancer

Tinydancer – Solanův první lehký klient

Skok vs rychlost světla

Helius: Co je Firedancer?

Firedancer Docs

Předvést se

Nikdy jsme neměli komerční vztah se Solana nebo Jump Crypto a tato zpráva nebyla žádným způsobem financována ani zadána.

Členové našeho týmu, včetně těch, kteří se přímo podílejí na výše popsané analýze, mohou zastávat pozice v diskutovaných mincích.

Tento obsah slouží pouze pro vzdělávací účely a nepředstavuje finanční nebo investiční poradenství. Měli byste si udělat vlastní průzkum a investovat jen to, co si můžete dovolit ztratit. Jsme výzkumná platforma, nikoli investiční nebo finanční poradce.

Zdroj informací pro tento článek: revelointel