711 / 736ERL

Erlay

Úspornější oznamování transakcí

Bitcoinové uzly si často oznamují transakce, o kterých už vědí. Erlay omezuje tuto opakovanou komunikaci: rychlé oznámení pošle jen části sousedů a s ostatními průběžně zjišťuje, co komu chybí.

Erlay je návrh způsobu šíření nepotvrzených transakcí v bitcoinové P2P síti. Kombinuje běžné oznamování s porovnáváním množin identifikátorů, označovaným jako set reconciliation. Šetří přenesená data, ale nemění konsenzus ani povinnost každou získanou transakci ověřit.

Při běžném šíření posílají propojené uzly zprávy INV s 32bajtovými identifikátory transakcí. Často tak oznamují něco, co soused už zná. Více spojení zvyšuje datové náklady, přestože různorodá spojení pomáhají odolávat izolaci uzlu i rozdělení sítě. [1]

Erlay zachovává rychlé rozesílání oznámení na malé části spojení. Na ostatních si dvojice uzlů pravidelně porovnávají množiny dosud neoznámených transakcí. Nemusí přenášet celý seznam: z kompaktního matematického souhrnu, nazývaného sketch, mohou zjistit rozdíl. BIP 330 popisuje potřebné rozšíření P2P protokolu. [1]

Pro každé spojení vzniká samostatná množina a pro jednotlivé kolo její neměnný snímek. Obě strany přispějí hodnotou salt: pomocným vstupem pro odvození krátkých 32bitových identifikátorů z wtxid. PinSketch umožňuje porovnat množiny těchto identifikátorů. Zprávy sendtxrcncl, reqrecon, sketch, reqsketchext a reconcildiff zajišťují vyjednání podpory, výměnu souhrnů a zjištění chybějících oznámení. [1]

Po nalezení rozdílu si uzel stále vyžádá celou transakci a ověří ji vlastními pravidly. Salt omezuje možnost předem připravovat kolize krátkých identifikátorů; není to heslo ani šifrování transakce. Nestačí-li kapacita souhrnu, lze vyžádat jeho rozšíření. Při neúspěchu se protokol vrací k běžným oznámením. Implementace musí omezovat výpočetní práci a paměť, aby ji sousední uzel nemohl snadno zahltit. [1]

Při kontrole v říjnu 2026 měl BIP 330 stav Draft a popisoval upravený postup oproti původní studii. Diskuse Bitcoin Core č. 34542 znovu hodnotila úsporu dat, zpoždění a složitost kódu. To samo nedokládá, že konkrétní vydání Bitcoin Core Erlay používá. Rozhodují jeho poznámky k vydání, implementace a vyjednání podpory mezi oběma uzly. [4]

Studie z roku 2019 uvádí za svých podmínek přibližně 40 % úspory celkového datového provozu a 84 % úspory při oznamování transakcí. Jde o výsledky simulací a prototypu, nikoli příslib pro každou dnešní síť. Čekání na další kolo může zvýšit zpoždění; uzel, který transakce přijímá, ale nepředává, je může dále zdržet. Úsporu a rychlost je nutné měřit společně. [2]

Erlay omezuje opakovaná oznámení nepotvrzených transakcí. Compact Blocks naproti tomu zmenšují množství dat potřebných k sestavení nového bloku z transakcí, které uzel většinou už zná. Tyto mechanismy se doplňují, ale ani jeden sám neskrývá síťovou identitu uzlu. Každý potřebuje vlastní postup při selhání a ochranu před zahlcením. [3]

Začněte verzí BIP 330 a kódem, který uzel skutečně provozuje. Ověřte vyjednání podpory, odvození krátkých identifikátorů a salt, načasování kol, limity souhrnů i chování zprávy reqsketchext. Zkontrolujte také návrat k běžnému oznamování a následnou validaci celé transakce. Samotný název Erlay nevypovídá o dosažené úspoře ani zpoždění. [1]

Pro nejúplnější obraz čtěte toto heslo společně s Mempool, Bitcoin Core, Compact Blocks, Full Node, Sybil Attack, Eclipse Attack. Opačným směrem na něj odkazují také Block Propagation.

01Znamená BIP 330, že můj Bitcoin Core už používá Erlay?

Ne. Samotná specifikace takovou záruku nedává. Ověřte konkrétní vydání, jeho implementaci a to, zda si oba uzly podporu vyjednaly. Experimentální kód ani výzkumná studie nejsou totéž jako funkce zapnutá ve vašem uzlu.

02Nahrazuje Erlay ověřování transakcí?

Ne. Pomáhá zjistit, která oznámení druhé straně chybějí. Úplnou transakci si uzel stále vyžádá a podle vlastních pravidel rozhodne, zda ji přijme do mempoolu a předá dál.

DOC · 001BIP 330 — Transaction Announcements ReconciliationSpecifikace DOC · 002Erlay — Bandwidth-Efficient Transaction Relay for BitcoinDokumentace DOC · 003ACM CCS 2019 — Erlay: Efficient Transaction Relay for BitcoinDokumentace DOC · 004Bitcoin Core issue 34542 — Erlay Conceptual DiscussionPrimární zdroj
Revidováno: Primární zdroje · Nejde o investiční doporučení