🇸🇰 Sieťová prevádzka a viacúrovňové ceny

Decentralizované financie budú naďalej zvyšovať dopyt po Cardano. Náš výskumný projekt hľadá spôsoby, ako zachovať spravodlivý prístup a priepustnosť pre každého používateľa

Network traffic and tiered pricing

V nedávnom blogovom príspevku boli načrtnuté niektoré spôsoby, ako by sa sieť Cardano flex a evolúcia mohla prispôsobiť globálnym požiadavkám inteligentných kontraktov a DeFi. Podobne bude potrebné modernizovať systém poplatkov za transakcie používaný pre Cardano.

Súčasný systém je jednoduchý a spravodlivý: ku každej transakcii sa pristupuje rovnako a používatelia nemajú možnosť zmeniť svoju prioritu zaplatením vyšších poplatkov. Pokiaľ je priepustnosť porovnateľná s dopytom, tento prístup funguje dobre.

Má však aj nevýhody. S nárastom používania Cardano nakoniec príde bod, keď nebude možné do blockchainu zahrnúť všetky transakcie, a to ani po úpravách parametrov. Hoci zvýšenie kapacity hlavného reťazca a/alebo presmerovanie transakcií do Hydra alebo iných riešení na druhej vrstve môže túto obavu zmierniť, hlavný systém musí stále fungovať agilne vo všetkých možných prípadoch a za každých okolností.

To je dôležité najmä v prípade útoku typu DoS (denial of service). Pri súčasnom stave systému by útočník mohol využiť spravodlivé zaobchádzanie a vydávať svoj škodlivý spam za legitímne transakcie, čím by sa predĺžil čas čakania pre všetkých ostatných. Existujú opatrenia (napr. týkajúce sa šírenia transakcií v sieti peer-to-peer), vďaka ktorým je takýto útok technicky náročný. V záujme dodatočnej ochrany by sme však chceli mať možnosť zvýšiť náklady na takéto útoky bez toho, aby bola ohrozená spravodlivosť a cenová efektívnosť celého systému.

Tejto téme sa tento rok venovali členovia výskumného tímu IO Group. Výsledný prístup navrhnutý v tomto príspevku zachováva piliere spracovania transakcií Cardano (predvídateľnosť, spravodlivosť a lacný prístup) a zároveň zmierňuje problémy, ktoré by mohli vzniknúť v dôsledku väčšieho dopytu. Náš prístup predkladá nový mechanizmus poplatkov za transakcie pre blockchainy. Kľúčom k návrhu je rozdelenie každého bloku do troch “úrovní” na základe prípadov použitia. Každá úroveň tvorí stanovené percento maximálnej veľkosti bloku a je určená pre rôzne typy transakcií (obrázok 1). Úrovne spolu s navrhovaným rozdelením, ktoré v súčasnosti analyzujeme, by boli tieto:

  • spravodlivé (50 %)
  • vyvážené (30 %)
  • okamžité (20 %)

Obrázok 1. Každý blok by bol rozdelený do troch úrovní.

O spravodlivom segmente budeme hovoriť ako o poslednom, pretože funguje inak ako ostatné dva. Vyvážené a okamžité fungujú tak, že majú “prahovú hodnotu poplatkov”, ktorá je pre každý z nich iná. Na zaradenie do bloku by emitenti transakcií určili úroveň služby, ktorú potrebujú. To sa dá urobiť stanovením maximálneho poplatku za transakciu. Potom by sa každý blok naplnil počnúc okamžitou, potom vyváženou a nakoniec spravodlivou úrovňou. Podobné transakcie v rámci rovnakej úrovne by platili rovnaký poplatok. Aby bol tento výber jednoduchý, každej transakcii by sa účtoval len najnižší poplatok, ktorý by zaručil jej vstup do bloku. Po každom bloku by sa poplatky za okamžité a vyvážené úrovne dynamicky a deterministicky aktualizovali (odrážajúc úroveň dopytu v predchádzajúcich blokoch), aby sa zabezpečilo, že každý segment využije svoje cieľové percento bloku.

Rozdiel medzi okamžitými a vyváženými úrovňami je v spôsobe aktualizácie poplatkov, konkrétne v “rýchlosti”, akou sa upravujú vzhľadom na aktuálne zaťaženie. Prahová hodnota pre okamžitú službu by bola vždy vyššia ako vyvážená a reagovala by prudšie na dopyt, čím by sa zabezpečilo, že transakcia, ktorá o ňu žiada, bude obslúžená čo najskôr. Vyvážený prah by sa prispôsoboval pomalšie a stabilnejšie: to by ho robilo nevhodným pre časovo citlivé transakcie, ale poskytoval by nižšiu a spoľahlivejšiu cenu na úkor rôznorodejšieho času čakania.

Zatiaľ čo vyvážená a okamžitá úroveň sa zameriavajú na spracovanie transakcií s rôznou úrovňou naliehavosti, spravodlivá úroveň spracováva bežné transakcie. Férový segment má slúžiť ako zdokonalenie súčasného systému v Cardane, udržiavať poplatky na nízkej úrovni (alebo v budúcnosti dokonca stabilné a to naviazaním na kôš komodít/fiat, ako je vysvetlené v príspevku o stablefees) a odstrániť akúkoľvek nepredvídateľnosť z pohľadu používateľa. Pokiaľ je dopyt nízky (a transakcie sa zmestia do polovice bloku), tento segment by fungoval rovnako ako Cardano teraz.

Akonáhle by však dopyt vzrástol, spustil by sa špeciálny mechanizmus pre transakcie fair tier. Tento mechanizmus by filtroval transakcie spôsobom nezávislým od poplatkov a bol by založený na funkcii prioritizácie. Jedným z príkladov by bolo uprednostňovanie transakcií v závislosti od veku a výšky ich UTXO. Konkrétne by sa priorita danej transakcie rovnala súčtu sumy každého vstupu vynásobenej jej vekom a potom vydelenej celkovou veľkosťou transakcií v bajtoch. Táto priorita by sa mohla použiť v spojení s prahom (dynamicky aktualizovaným po každom bloku), ktorý by filtroval transakcie, ktorých priorita je príliš nízka. Takýto prístup zaručuje živosť každej transakcie pri nízkej a predvídateľnej cene a obmedzuje vplyv, ktorý by mohol mať na ceny zlomyseľný útočník (alebo nárast dopytu) tým, že vždy poskytuje lacnú cestu do každého bloku.

Tu prezentovaná myšlienka viacúrovňového oceňovania tiež rozširuje a objasňuje koncept multiplikátora, ktorý sme predstavili v príspevku stablefees. Pri takomto pohľade je každá z troch úrovní spojená s deterministicky vypočítaným multiplikátorom (pričom spravodlivá úroveň má vždy multiplikátor 1), ktorého hodnota závisí od preťaženia príslušnej úrovne v predchádzajúcich blokoch.

Tento mechanizmus sa líši od súčasných prístupov k stanovovaniu cien, ktoré používa Bitcoin alebo Ethereum (dokonca aj s návrhom na zlepšenie Etherea 1559), kde existuje variabilný poplatok, ktorý musí každá transakcia prekročiť, aby sa dostala do bloku. Nevýhodou tohto prístupu je, že poplatok, ktorý musí zaplatiť každý, diktujú “najbohatší” spotrebitelia. Ešte horšie je, že tento poplatok platia najbohatší spotrebitelia, aby sa dostali do bloku “okamžite”. Okrem toho, aj keď sú poplatky väčšinou funkciou ponuky a dopytu, tieto konkrétne typy mechanizmu transakčných poplatkov môžu neúmyselne “formovať” dopyt alebo neúmyselne zvyšovať ceny, pretože používateľom nie je jasná optimálna stratégia ponuky. Predstavte si, že by sa transakčné poplatky Bitcoinu zrazu znížili na polovicu a všetci by zabudli, aké boli predtým, stále by rástli na súčasnú úroveň? Odpoveď “nie” na túto otázku ilustruje nevýhody takýchto mechanizmov a je ťažkou situáciou, ktorú viazané ceny vylučujú už svojou koncepciou.

Viacúrovňový prístup je rafinovanejší. Chápe, že nie každá transakcia má rovnaké potreby, čím zabezpečuje, že rôzne prípady použitia môžu prebiehať súčasne, a uľahčuje používateľom výber požadovaného typu služby. Týmto spôsobom umožňuje viacúrovňová cenotvorba predvídateľné a spravodlivé poplatky pri súčasnom zvládaní období preťaženia hlavného reťazca. V kombinácii s vylepšeniami dizajnu, ktoré budú odhalené v neskorších príspevkoch a ktoré sa zameriavajú na zvýšenie hrubej priepustnosti a výpočtového výkonu hlavného reťazca, viacúrovňové oceňovanie ukazuje, ako bude Cardano schopné prispôsobiť sa akýmkoľvek okolnostiam dopytu po spracovaní transakcií.

Rád by som vyjadril vďaku za príspevok Giorgosa Panagiotakosa, Aggelosa Kiayiasa a Eliasa Koutsoupiasa k tomuto príspevku. Spoločne tvoríme výskumnú skupinu, ktorá pracuje na návrhu tohto mechanizmu. Technický dokument bude čoskoro k dispozícii.


Pôvodný článok: Network traffic and tiered pricing
(Napísal Philip Lazos z IOHK) - preklad @Martin.M