Czym jest przeciążenie sieci Blockchain?
Strona Główna
Artykuły
Czym jest przeciążenie sieci Blockchain?

Czym jest przeciążenie sieci Blockchain?

Średnio zaawansowany
Opublikowane May 23, 2023Zaktualizowane Dec 11, 2023
9m

TL;DR

  • Przeciążenie sieci blockchain występuje, gdy liczba transakcji przesłanych do sieci przekracza zdolność przetwarzania sieci.

  • Zwiększona aktywność transakcyjna, małe rozmiary bloków i powolny czas bloku, mogą przyczyniać się do przeciążenia sieci.

  • Konsekwencje przeciążenia sieci obejmują zwiększone opłaty transakcyjne, wolniejsze potwierdzanie transakcji i słabe wrażenia dla użytkownika. 

  • Wiosną 2023 r. sieć Bitcoina stała się przeciążona, ponieważ zwiększona aktywność transakcyjna związana z tokenami BRC-20 spowodowała gwałtowny wzrost opłat i oczekujących transakcji. 

Czym jest przeciążenie sieci?

Przeciążenie sieci występuje, gdy liczba transakcji przesłanych do sieci przekracza jej zdolność do przetwarzania tych transakcji. Zjawisko to ma kilka przyczyn, takich jak czynniki zewnętrzne, w tym zmienność rynku i wewnętrzne cechy sieci, takie jak  rozmiar bloku i czas bloku. 

Zanim zagłębimy się w szczegóły, kluczowe jest zbadanie procesu, w którym bloki są dodawane do blockchaina. 

Jak działa technologia Blockchain? 

Blockchain składa się z łańcucha bloków, z których każdy zawiera dane transakcji utworzonych przez użytkowników. Każdy nowy blok dodany do łańcucha jest trwały i niezmienny. 

Te bloki są propagowane w zdecentralizowanej sieci węzłów, z których każdy przechowuje kopię blockchaina. Zabezpieczony kryptografią i teorią gier, blockchain stanowi podstawę kryptowalut, takich jak Bitcoin i Ethereum.

Aby w pełni zrozumieć, dlaczego sieci blockchain mogą być przeciążone, musimy zbadać kluczowe koncepcje, które odgrywają rolę w zdolności sieci do przetwarzania transakcji: mempools, bloki kandydujące, ostateczność i zasada najdłuższego łańcucha.

Czym jest "mempool"? 

Mempool odnosi się do kolekcji niepotwierdzonych transakcji, oczekujących na włączenie do następnego bloku. 

Na przykład, gdy transakcja jest transmitowana w sieci Bitcoin, nie jest ona natychmiast dodawana do blockchaina. Zamiast tego, najpierw trafia do mempool (skrót od memory pool), który jest zasadniczo obszarem oczekiwania dla wszystkich oczekujących transakcji. Transakcja zostanie usunięta z mempool po jej potwierdzeniu. 

Czym są "bloki kandydujące"? 

Bloki kandydujące, znane również jako "proponowane bloki" to te, które górnicy lub zatwierdzający proponują dodać do blockchaina. Bloki te zawierają niepotwierdzone transakcje, które zostały przesłane do sieci, ale nie zostały uwzględnione w blockchainie.

Aby blok kandydujący stał się blokiem potwierdzonym, musi zostać wydobyty lub zatwierdzony, zgodnie z mechanizmem konsensusu blockchaina.. Przykładowo, mechanizm konsensusu Bitcoina Proof of Work (PoW), pozwala górnikom rywalizować w rozwiązywaniu złożonych zagadek matematycznych. Pierwszy górnik, który rozwiąże zagadkę, doda swój blok kandydujący do blockchaina i otrzyma nagrodę.

W mechanizmie konsensusu Ethereum Proof of Stake (PoS), zatwierdzający wybierani są losowo, aby zaproponować bloki kandydujące. Inni walidatorzy (zatwierdzający), potwierdzają ważność bloku. Gdy blok otrzyma wystarczającą liczbę zaświadczeń, przechodzi z bloku kandydującego do bloku potwierdzonego.

Czym jest "finalność" w blockchainie? 

Finalność ma miejsce, gdy transakcja lub operacja, nie może być już zmieniona lub odwrócona. Gdy transakcja zostanie ostatecznie sfinalizowana, jest ona trwale zapisywana w blockchainie i nie można jej zmienić ani usunąć.

W blockchainie Bitcoina, transakcje są przesyłane do sieci i dodawane do mempool. Górnicy wybierają i weryfikują transakcje z tej puli i włączają je do nowych bloków, dodawanych do blockchaina. Transakcje zawarte w tym bloku są uważane za potwierdzone, ale teoretycznie nadal możliwe jest wydobycie konkurencyjnego bloku przez innych górników. 

Ostateczność transakcji wzrasta wraz z liczbą potwierdzonych bloków. Transakcje Bitcoina są zazwyczaj uważane za "finalne" po dołączeniu dodatkowych sześciu bloków do bloku, zawierającego te transakcje. Ze względu na krótszy czas bloku Ethereum, zaleca się większą liczbę potwierdzeń, aby osiągnąć podobny poziom pewności co do "finalności".

Czym jest zasada "najdłuższego łańcucha"? 

Jak pokazano powyżej, wielu górników może produkować nowe ważne bloki w podobnym czasie. Może to spowodować tymczasowe forki w blockchainie.

Zasada "najdłuższego łańcucha" odnosi się do reguły, zgodnie z którą prawidłową wersją blockchaina jest ta, w którą zainwestowano najwięcej pracy obliczeniowej, czyli zazwyczaj ta z najdłuższym łańcuchem bloków. W rezultacie, "ważne" bloki w krótszych łańcuchach – często nazywane blokami osieroconymi lub nieaktualnymi – są odrzucane, a ich transakcje są zwracane do mempool.

Ethereum korzystało z zasady najdłuższego łańcucha, gdy sieć wykorzystywała Proof of Work (PoW). Po przejściu Ethereum na Proof of Stake (PoS) w 2022 roku, sieć przyjęła zaktualizowany algorytm fork-choice, który mierzy "wagę" łańcucha, czyli skumulowaną sumę głosów walidatorów, ważoną saldami stakowanego etheru walidatorów.

Co powoduje przeciążenie sieci blockchain? 

Przeciążenie sieci blockchain występuje, gdy liczba transakcji przesyłanych do sieci, przekracza zdolność sieci do ich przetwarzania.

Istnieje kilka powodów, dla których sieci blockchain mogą stać się przeciążone: 

Zwiększony popyt

Ponieważ coraz więcej osób przesyła transakcje do blockchaina, liczba niepotwierdzonych transakcji w mempool może przekroczyć to, co można uwzględnić w pojedynczym bloku. Jest to szczególnie istotne w przypadku blockchaina z nieodłącznymi ograniczeniami rozmiaru i czasu bloku. 

Wzrost liczby transakcji może być spowodowany nagłymi wahaniami cen, prowadzącymi do gwałtownego wzrostu aktywności handlowej, lub falami cykli masowej adopcji. 

Mały rozmiar bloku

Każdy blockchain ma rozmiar bloku, który określa maksymalny rozmiar, jakim blok może być. Ten rozmiar bloku ogranicza liczbę transakcji, które może zawierać blok. 

Na przykład, Bitcoin został początkowo zaprojektowany tak, aby mieć limit rozmiaru bloku wynoszący 1 megabajt. W 2017 roku Bitcoin wdrożył aktualizację o nazwie Segregated Witness, lub SegWit, aby poprawić przepustowość transakcji. Zwiększa to teoretyczny limit rozmiaru bloku do około 4 MB. 

Jeśli liczba transakcji przekroczy ten limit, spowoduje to przeciążenie sieci.

Wolne czasy bloku 

Czas bloku odnosi się do tego, jak często nowy blok jest dodawany do blockchaina. Bitcoin dodaje nowy blok mniej więcej co 10 minut. Jeśli transakcje są tworzone w znacznie szybszym tempie i wolumenie, pojawią się zaległości w transakcjach.

Czym są konsekwencje przeciążenia sieci? 

Przeciążenie sieci blockchain może skutkować kilkoma negatywnymi konsekwencjami, które utrudniają płynne funkcjonowanie sieci. 

Zwiększone opłaty transakcyjne 

Górnicy są zachęcani do priorytetowego traktowania transakcji oferujących wyższe opłaty. Kiedy więc sieć blockchain staje się przeciążona, użytkownicy często muszą płacić wyższe opłaty transakcyjne, aby zachęcić górników do priorytetowego traktowania ich transakcji. Może to sprawić, że korzystanie z blockchaina będzie droższe niż zwykle, szczególnie w przypadku mniejszych transakcji.

Opóźnione czasy potwierdzenia transakcji 

Przeciążanie sieci może prowadzić do dłuższych czasów oczekiwania na potwierdzenie i sfinalizowanie transakcji. W skrajnych przypadkach, transakcje mogą nie zostać potwierdzone przez kilka godzin, dni lub nawet dłużej. Może to powodować frustrację użytkowników. 

Słabe doznania użytkownika 

Wysokie opłaty i powolne czasy potwierdzeń, mogą skutkować słabym doświadczeniem dla użytkownika, co może potencjalnie zmniejszyć adopcję i użyteczność blockchaina.

Zmienność rynku 

Przeciążenia mogą zwiększyć niepewność i przyczynić się do niestabilności rynku. Jeśli wielu użytkowników próbuje sprzedać kryptowalutę, ale sieć jest zbyt przeciążona, aby przetworzyć te transakcje, użytkownicy mogą wpaść w panikę i próbować szybko pozbyć się swoich zasobów.

Istnieją również inne konsekwencje, w tym zagrożenia dla bezpieczeństwa i centralizacji sieci. W szczególności, dłuższe czasy potwierdzeń mogą zwiększać ryzyko ataków polegających na podwójnym wydawaniu środków, a wysokie opłaty mogą prowadzić do centralizacji mocy wydobywczej.  

Przykłady przeciążenia sieci 

Zarówno sieci Bitcoin jak i Ethereum, doświadczyły znacznego przeciążenia sieci.  

Przeciążenie sieci Bitcoin

Znaczący wzrost ceny Bitcoina między końcem 2017 r. a początkiem 2018 r. doprowadził do jednego z najbardziej znanych do tej pory przeciążeń sieci. Gwałtowny wzrost popularności Bitcoina, doprowadził do ogromnego wzrostu popytu i transakcji, powodując znaczne opóźnienia i oszałamiające wzrosty opłat transakcyjnych. W pewnym momencie, średnie opłaty transakcyjne wynosiły ponad 50 $.

Wiosną 2023 r. sieć Bitcoina stała się przeciążona, ponieważ zwiększona aktywność transakcyjna związana z tokenami BRC-20 spowodowała gwałtowny wzrost opłat i oczekujących transakcji. W pewnym momencie, zarejestrowano prawie 400 000 niepotwierdzonych transakcji, co spowodowało wąskie gardło w mempool. Opłaty transakcyjne wzrosły o ponad 300% w ciągu kilku tygodni. 

Przeciążenie sieci Ethereum

Jeden znaczący przykład przeciążenia sieci Ethereum miał miejsce w 2017 r., kiedy projekt "CryptoKitties" stał się viralem i znacznie spowolnił sieć. Doszło również do przeciążenia sieci z powodu boomu związanego z DeFi , co spowodowało wzrost cen gas.

Każda sieć blockchain może stać się przeciążona. Jednak przypadki przeciążenia sieci w sieciach Bitcoin i Ethereum przyciągnęły więcej uwagi niż w przypadku innych blockchainów, ponieważ miały one szerszy wpływ ze względu na ich popularność i znaczenie.  

Rozwiązania zmniejszające przeciążenie sieci

Rozwiązanie problemu przeciążenia sieci blockchain jest złożonym zagadnieniem. Istnieje kilka podejść, a każde z nich ma swoje wady i zalety. 

Zwiększanie rozmiaru bloku

Zwiększenie rozmiaru bloku, pozwala na przetwarzanie większej liczby transakcji przypadających na blok, skutecznie zwiększając przepustowość sieci. Większe bloki wymagają jednak dłuższego czasu na rozprzestrzenianie się w sieci, co zwiększa ryzyko tymczasowych forków. Wymagają one również większej przestrzeni magazynowej, co może prowadzić do zwiększonej centralizacji.

Skrócenie czasu bloku 

Skrócenie czasu bloku, może pozwolić sieci na szybsze przetwarzanie transakcji. Krótsze czasy bloków, mogą jednak zwiększyć liczbę osieroconych bloków i potencjalnie zagrozić bezpieczeństwu.

Rozwiązania warstwy 2 

Te rozwiązania off-chain, przetwarzają transakcje poza głównym blockchainem i rejestrują ostateczny stan on-chain. Przykładami takich rozwiązań są Lightning Network Bitcoina i Plasma Ethereum. Rozwiązania te mogą zwiększyć skalowalność, ale są skomplikowane we wdrażaniu i mogą wprowadzać dodatkowe kwestie bezpieczeństwa.

Sharding 

Sharding to technika, w której blockchain jest podzielony na kilka mniejszych fragmentów, z których każdy może przetwarzać transakcje i smart kontrakty. Może to znacznie zwiększyć przepustowość sieci. Jednak podobnie jak w przypadku rozwiązań warstwy 2, sharding zwiększa złożoność i może również wprowadzać dodatkowe zagrożenia bezpieczeństwa.

Inne potencjalne rozwiązania dotyczące przeciążenia sieci, obejmują dostosowanie opłat i rozwiązania skalowania, w tym optymistyczne i zerowej wiedzy rollupy. Mechanizm konsensusu Proof of Stake (PoS) jest generalnie szybszy, niż Proof of Work (PoW).  

Przemyślenia Końcowe 

Ponieważ oczekuje się, że technologia blockchain zostanie przyjęta przez większą liczbę użytkowników w nadchodzących latach, kwestie przeciążenia sieci zyskują na znaczeniu. Zdolność sieci do wydajnego przetwarzania dużej liczby transakcji ma kluczowe znaczenie dla powszechnej adopcji i użyteczności. Jest to szczególnie istotne w przypadku systemów blockchain, które mają ułatwiać codzienne transakcje w czasie rzeczywistym.

Podczas gdy przeciążenie sieci blockchain stanowi poważne wyzwanie, społeczność nadal opracowuje rozwiązania, które pomogą złagodzić te problemy. Właśnie dlatego badania nad zwiększeniem skalowalności blockchaina, są jedną z najważniejszych kwestii tej branży. 

Dalsza Lektura 

Czym jest blockchain i jak działa?

Czym Są Blockchain'owe Opłaty Transakcyjne?

Jak Wydobywać Bitcoiny

Czym jest stosunek opłaty do nagrody w Bitcoinie?

Wyłączenie Odpowiedzialności i Ostrzeżenie o Ryzyku: Niniejsza treść jest prezentowana w stanie, w jakim się znajduje, wyłącznie w celach informacyjnych i edukacyjnych, bez jakichkolwiek gwarancji. Nie należy jej interpretować jako porady finansowej, prawnej lub innej porady profesjonalnej, ani też nie ma ona na celu zalecania zakupu jakiegokolwiek konkretnego produktu lub usługi. Powinieneś(-aś) zasięgnąć własnej porady u odpowiednich profesjonalnych doradców. W przypadku, gdy artykuł został napisany przez stronę zewnętrzną, należy pamiętać, że wyrażone poglądy należą do strony zewnętrznej i nie muszą odzwierciedlać poglądów Akademii Binance. Proszę przeczytać nasze pełne zastrzeżenie tutaj w celu uzyskania dalszych szczegółów. Ceny aktywów cyfrowych mogą być zmienne. Wartość Twojej inwestycji może spaść lub wzrosnąć i możesz nie odzyskać zainwestowanej kwoty. Jesteś wyłącznie odpowiedzialny(-a) za swoje decyzje inwestycyjne, a Akademia Binance nie ponosi odpowiedzialności za jakiekolwiek straty, które możesz ponieść. Ten materiał nie powinien być interpretowany jako doradztwo finansowe, prawne lub inne profesjonalne doradztwo. Więcej informacji można znaleźć w naszych Warunkach Użytkowania oraz Ostrzeżeniu o Ryzyku.