Kas yra blokų grandinės tinklo perkrova?
Pradžia
Straipsniai
Kas yra blokų grandinės tinklo perkrova?

Kas yra blokų grandinės tinklo perkrova?

Paskelbta May 23, 2023Naujinta Dec 11, 2023
9m

Trumpai

  • Blokų grandinės tinklo perkrova įvyksta, kai į tinklą pateiktų transakcijų skaičius viršija tinklo apdorojimo pajėgumus.

  • Prie tinklo perkrovos gali prisidėti suaktyvėjusi operacijų veikla, nedidelis blokų dydis ir ilgas bloko laikas.

  • Tinklo perkrovos pasekmės apima padidėjusius transakcijų mokesčius, lėtesnį transakcijos patvirtinimą ir prastą vartotojo patirtį. 

  • 2023 m. pavasarį bitkoino tinklas buvo perpildytas, nes suaktyvėjusi transakcijų veikla, susijusi su BRC-20 žetonais, sparčiai padidino laukiančių transakcijų skaičių ir mokesčius. 

Kas yra tinklo perkrova?

Tinklo perkrova įvyksta, kai į tinklą pateiktų transakcijų skaičius viršija tinklo pajėgumus apdoroti šias transakcijas. Šis reiškinys priklauso nuo keleto sudėtinių veiksnių, pvz., išorinių veiksnių, įskaitant rinkos nepastovumą ir vidines tinklo charakteristikas, tokias kaip bloko dydis ir bloko laikas. 

Prieš pasineriant į detales, labai svarbu išnagrinėti procesą, kurio metu blokai pridedami prie blokų grandinės. 

Kaip veikia blokų grandinės technologija? 

Blokų grandinė sudaryta iš grandinę sudarančių blokų, kiekviename bloke yra vartotojų sukurti transakcijų duomenys. Kiekvienas naujas blokas, pridėtas prie grandinės, yra nuolatinis ir nekintamas. 

Šie blokai išplatinami per decentralizuotą mazgų tinklą, kiekviename mazge saugoma blokų grandinės kopija. Apsaugota kriptografijos ir žaidimų teorijos, blokų grandinė sudaro kriptovaliutų, pvz., bitkoino ir eterio, pagrindą.

Norėdami visiškai suprasti, kodėl blokų grandinės tinklai gali būti perpildyti, turėsime ištirti pagrindines koncepcijas, kurios užtikrina tinklo gebėjimą apdoroti transakcijas: „mempool“, kandidatų blokus, baigtumą ir ilgiausios grandinės principą.

Kas yra „mempool“? 

„Mempool“ reiškia nepatvirtintų transakcijų, laukiančių, kol bus įtrauktos į kitą bloką, rinkinį. 

Pavyzdžiui, kai transakcija perduodama į bitkoinų tinklą, ji ne iš karto pridedama prie blokų grandinės. Vietoj to pirmiausia ji patenka į „mempool“ (sutrumpintas atminties telkinio pavadinimas), kuris iš esmės yra visų laukiančių transakcijų laukimo sritis. Kai transakcija bus patvirtinta, ji bus pašalinta iš „mempool“. 

Kas yra „kandidatų blokai“? 

Kandidatų blokai, taip pat vadinami „siūlomais blokais“, yra tie, kuriuos kasėjai arba tikrintojai siūlo įtraukti į blokų grandinę. Šiuose blokuose yra nepatvirtintų transakcijų, kurios buvo perduotos į tinklą, tačiau nebuvo įtrauktos į blokų grandinę.

Kad kandidato blokas taptų patvirtintu bloku, jį reikia iškasti arba patvirtinti pagal blokų grandinės sutarimo mechanizmą. Pavyzdžiui, bitkoinų darbo įrodymo (PoW) sutarimo mechanizmas leidžia kasėjams konkuruoti sprendžiant sudėtingą matematinį galvosūkį. Pirmasis galvosūkį išsprendęs kasėjas prideda savo kandidato bloką prie blokų grandinės ir gauna atlygį.

Ethereum statymo įrodymo (PoS) sutarimo mechanizme tikrintojai kandidatų blokams pasiūlyti atrenkami atsitiktinai. Kiti tikrintojai patvirtina bloko galiojimą. Kai blokas gauna pakankamai atestacijų, jis pereina iš kandidato bloko į patvirtintą bloką.

Kas yra „baigtumas“ blokų grandinėje? 

Baigtumas yra tada, kai transakcijos ar operacijos nebegalima pakeisti ar atšaukti. Kai transakcija baigiama, ji visam laikui įrašoma į blokų grandinę ir jos negalima pakeisti ar pašalinti.

Bitkoinų blokų grandinėje transakcijos perduodamos į tinklą ir įtraukiamos į „mempool“. Kasėjai pasirenka ir patvirtina transakcijas iš šio telkinio bei įtraukia jas į naujus blokus, kurie bus įtraukti į blokų grandinę. Transakcijos, įtrauktos į tą bloką, laikomos patvirtintomis, tačiau teoriškai kiti kasėjai vis tiek gali iškasti konkuruojantį bloką. 

Transakcijų baigtumas didėja didėjant patvirtintų blokų skaičiui. Bitkoino transakcijos paprastai laikomos „galutinėmis“, kai prie bloko, kuriame yra šios transakcijos, pridedami šeši papildomi blokai. Dėl trumpesnio Ethereum bloko laiko rekomenduojama pasiekti didesnį patvirtinimų skaičių, kad būtų pasiektas panašus „baigtumo“ pasitikėjimo lygis.

Kas yra „ilgiausios grandinės“ principas? 

Kaip parodyta aukščiau, keli kasėjai gali pagaminti naujus galiojančius blokus panašiu laiku. Dėl to blokų grandinėje gali atsirasti laikinų šakučių.

„Ilgiausios grandinės“ principas nurodo taisyklę, kad galiojanti blokų grandinės versija yra ta, į kurią įdėta daugiausiai skaičiavimo darbo, o tai paprastai yra ilgiausia blokų grandinė. Dėl to „galiojantys“ trumpesnių grandinių blokai, dažnai vadinami vienišaisiais arba pasenusiais blokais, yra atmetami, o jų transakcijos grąžinamos į „mempool“.

Ethereum naudojo ilgiausios grandinės principą, kai tinklas naudojo darbo įrodymą (PoW). 2022 m. Ethereum perėjus prie statymo įrodymo (PoS), tinklas perėmė atnaujintą šakutės pasirinkimo algoritmą, kuris matuoja grandinės „svorį“, t. y. sukauptų tikrintojų balsų sumą, įvertintą pagal tikrintojo deleguotų eterių likučius.

Kas lemia blokų grandinės tinklo perkrovą? 

Blokų grandinės tinklo perkrova įvyksta, kai į tinklą pateiktų transakcijų skaičius viršija tinklo pajėgumus juos apdoroti.

Yra keletas priežasčių, dėl kurių blokų grandinės tinklai gali būti perkrauti: 

Padidėjusi paklausa

Kadangi vis daugiau žmonių pateikia transakcijas į blokų grandinę, nepatvirtintų operacijų skaičius „mempool“ gali viršyti skaičių, kurį galima įtraukti į vieną bloką. Tai ypač aktualu blokų grandinėms, kurioms būdingi bloko dydžio ir bloko laiko apribojimai. 

Padidėjusį transakcijų skaičių gali lemti staigūs kainų svyravimai, lemiantys staigų transakcijų aktyvumo didėjimą arba masinio pritaikymo ciklų bangas. 

Mažas bloko dydis

Kiekvienoje blokų grandinėje yra bloko dydis, kuris apibrėžia maksimalų galimą bloko dydį. Šis bloko dydis riboja, kiek transakcijų gali būti bloke. 

Pavyzdžiui, bitkoinas iš pradžių buvo sukurtas taip, kad bloko dydis būtų 1 megabaitas. 2017 m. bitkoinas įdiegė atnaujinimą, pavadintą Segregated Witness, arba SegWit, kad pagerintų operacijų pralaidumą. Tai padidina teorinę bloko dydžio ribą iki maždaug 4 MB. 

Jei transakcijų skaičius viršija šią ribą, įvyksta tinklo perkrova.

Ilgi blokų laikai 

Bloko laikas nurodo, kaip dažnai į blokų grandinę įtraukiamas naujas blokas. Bitkoinas prideda naują bloką maždaug kas 10 minučių. Jei transakcijos sukuriamos daug greičiau ir didesne apimtimi, atsiranda transakcijų rezervas.

Kokios yra tinklo perkrovos pasekmės? 

Blokų grandinės tinklo perkrova gali sukelti keletą neigiamų pasekmių, trukdančių sklandžiai tinklo veiklai. 

Padidėję transakcijų mokesčiai 

Kasėjai skatinami teikti pirmenybę transakcijoms, už kurias mokami didesni mokesčiai. Taigi, kai blokų grandinės tinklas tampa perkrautas, vartotojai dažnai turi mokėti didesnius transakcijų mokesčius, kad paskatintų kasėjus teikti pirmenybę jų transakcijoms. Dėl to blokų grandinės naudojimas gali būti brangesnis nei įprastai, ypač vykdant smulkesnes transakcijas.

Ilgesnis transakcijos patvirtinimo laikas 

Dėl tinklo perkrovos gali pailgėti transakcijos patvirtinimo ir užbaigimo laukimo laikas. Ypatingais atvejais transakcijos gali būti nepatvirtintos kelias valandas, dienas ar net ilgiau. Tai gali sukelti vartotojų nusivylimą. 

Prasta vartotojo patirtis 

Dideli mokesčiai ir ilgas patvirtinimo laikas gali lemti prastą vartotojo patirtį, o tai gali sumažinti blokų grandinės pritaikymą ir naudojimą.

Rinkos nepastovumas 

Perkrovos gali padidinti netikrumą ir prisidėti prie rinkos nepastovumo. Jei daug vartotojų bando parduoti kriptovaliutą, bet tinklas yra per daug perkrautas, kad galėtų apdoroti šias transakcijas, vartotojai gali pulti į paniką ir bandyti greitai atsikratyti turimu turtu.

Yra ir kitų pasekmių, įskaitant saugumo ir tinklo centralizavimo riziką. Tiksliau – ilgesnis patvirtinimo laikas gali padidinti dvigubų išlaidų atakų riziką, o dideli mokesčiai gali lemti kasybos pajėgumų centralizavimą.  

Tinklo perkrovos pavyzdžiai 

Tiek bitkoino, tiek Ethereum tinklai yra patyrę didelę tinklo perkrovą.  

Bitkoino tinklo perkrova

Nuo 2017 m. pabaigos iki 2018 m. pradžios smarkiai išaugusi bitkoino kaina lėmė vieną ryškiausių iki šiol tinklo perkrovos įvykių. Staiga išaugus bitkoino populiarumui, labai išaugo paklausa ir padaugėjo transakcijų, todėl atsirado stiprių vėlavimų ir skausmingų transakcijų mokesčių. Vienu metu vidutiniai transakcijų mokesčiai viršijo 50 USD.

2023 m. pavasarį bitkoino tinklas buvo perpildytas, nes suaktyvėjusi transakcijų veikla, susijusi su BRC-20 žetonais, sparčiai padidino laukiančių transakcijų skaičių ir mokesčius. Vienu metu buvo užfiksuota beveik 400 000 nepatvirtintų transakcijų, dėl kurių susidarė kamštis „mempool“. Transakcijų mokesčiai per porą savaičių išaugo daugiau nei 300 %. 

Ethereum tinklo perkrova

Vienas žymus Ethereum tinklo perkrovos pavyzdys įvyko 2017 m., kai projektas „CryptoKitties“ smarkiai išplito ir stipriai sulėtino tinklą. Dėl DeFi bumo taip pat yra buvę tinklo perkrovų, tuomet padidėjo dujų kainos.

Bet koks blokų grandinės tinklas gali būti perkrautas. Tačiau bitkoino ir Ethereum tinklų tinklo perkrovos atvejai sulaukė daugiau dėmesio nei kitos blokų grandinės, nes dėl jų populiarumo ir svarbos poveikis buvo didesnis.  

Tinklo perkrovos mažinimo sprendimai

Blokų grandinės tinklo perkrovos problema yra sudėtinga. Yra keletas požiūrių, kiekvienas iš jų turi savo privalumų ir trūkumų. 

Bloko didinimas

Padidinus bloko dydį, viename bloke galima apdoroti daugiau transakcijų, o tai efektyviai padidina tinklo pralaidumą. Tačiau didesni blokai ilgiau platinami tinkle, todėl padidėja laikinų šakučių rizika. Jiems taip pat reikia daugiau vietos saugykloje, todėl gali padidėti centralizavimas.

Bloko laiko trumpinimas 

Sutrumpinus bloko laiką, tinklas gali greičiau apdoroti transakcijas. Tačiau trumpesnis bloko laikas gali padidinti vienišų blokų skaičių ir potencialiai pakenkti saugumui.

2 sluoksnio sprendimai 

Šie užgrandininiai sprendimai apdoroja transakcijas už pagrindinės grandinės ribų ir įrašo galutinę būseną grandinėje. Bitkoino Lightning Network ir Ethereum Plasma yra šių sprendimų pavyzdžiai. Šie sprendimai gali padidinti išplečiamumą, tačiau juos sudėtinga realizuoti ir gali kilti papildomų saugumo problemų.

Skaidymas 

Skaidymas yra metodas, kai blokų grandinė padalijama į keletą mažesnių dalių, kurių kiekviena gali apdoroti transakcijas ir išmaniuosius sandorius. Tai gali žymiai padidinti tinklo pajėgumą. Tačiau, kaip ir 2 sluoksnio sprendimuose, dėl skaidymo padidėja sudėtingumas ir gali kelti papildomų saugumo pavojų.

Kiti galimi tinklo perkrovos sprendimai apima mokesčių koregavimą ir išplečiamumo sprendimus, įskaitant optimistinį ir informacijos neatskleidimo paketus. Statymo įrodymo (PoS) sutarimo mechanizmas paprastai yra spartesnis nei darbo įrodymo (PoW).  

Baigiamosios mintys 

Kadangi tikimasi, kad per ateinančius metus blokų grandinės technologija pradės naudotis daugiau vartotojų, tinklo perkrovos problemos tampa vis svarbesnės. Tinklo gebėjimas efektyviai apdoroti didelius transakcijų kiekius yra labai svarbus norint plačiai pritaikyti ir naudoti. Tai ypač aktualu blokų grandinės sistemoms, kuriose siekiama palengvinti kasdienes transakcijas realiuoju laiku.

Nors blokų grandinės tinklo perkrova kelia didelių iššūkių, bendruomenė ir toliau kuria sprendimus, padedančius sušvelninti šias problemas. Štai kodėl tyrimai, susiję su blokų grandinės išplečiamumu, yra pramonės priešakyje. 

Papildoma literatūra 

Kas yra blokų grandinė ir kaip ji veikia?

Kas yra blokų grandinės transakcijų mokesčiai?

Kaip kasti bitkoiną?

Koks yra bitkoino mokesčio ir atlyginimo santykis?

Atsakomybės atsisakymas ir įspėjimas apie riziką: šis turinys jums pateikiamas „toks, koks yra“ tik bendro informavimo ir švietimo tikslais, jis nesuteikia jokios garantijos ir nieko neteigia. Šis tekstas neturėtų būti suprantamas kaip finansinis, teisinis ar kitoks patarimas, taip pat nesiekiama rekomenduoti įsigyti kokį nors konkretų produktą ar paslaugą. Turėtumėte patys kreiptis patarimo į atitinkamus profesionalius patarėjus. Jei straipsnį pateikė trečiosios šalies bendraautoris, atkreipkite dėmesį, kad išsakytos nuomonės priklauso trečiosios šalies bendraautoriui ir nebūtinai atspindi Binance Academy nuomonę. Daugiau informacijos rasite perskaitę visą atsakomybės atsisakymą čia. Skaitmeninių išteklių kainos gali būti nepastovios. Jūsų investicijos vertė gali sumažėti arba padidėti, o investuotos sumos galite ir neatgauti. Tik jūs esate atsakingi už savo investicinius sprendimus, o Binance Academy nėra atsakinga už jokius jūsų patirtus nuostolius. Ši medžiaga neturėtų būti suprantama kaip finansinis, teisinis ar profesionalo patarimas. Jei reikia daugiau informacijos, žr. mūsų naudojimo sąlygas ir įspėjimą dėl rizikos.