Obsługiwane przez
Learning - Insights

Co się dzieje, gdy blok bitcoina się zapełni? Każdy bajt wywołuje aukcję opłat w czasie rzeczywistym

Gdy ruch w sieci Bitcoin staje się intensywny, zapełnienie bloku nie powoduje zatrzymania sieci; zamienia ono następną dostępną przestrzeń w aukcję na żywo, w której pilność ma swoją cenę.

NAPISAŁ
UDOSTĘPNIJ
Co się dzieje, gdy blok bitcoina się zapełni? Każdy bajt wywołuje aukcję opłat w czasie rzeczywistym

Najważniejsze wnioski

  • Bloki Bitcoin mają limit 4 milionów jednostek wagi, co zmusza płatności o niższych opłatach do oczekiwania.
  • Bitcoin Core 31.0 może usuwać słabe pakiety, gdy mempool węzła o pojemności 300 MB zostanie zapełniony.
  • W przypadku utrzymującego się przeciążenia użytkownicy Bitcoina mają do dyspozycji trzy sposoby podwyższenia opłaty: RBF, CPFP oraz akceleratory wydobywcze.

Kolejka tworzy się przed blokiem

Wyobraź sobie zatłoczony peron metra w godzinach szczytu. Każdy nowy pasażer ma ważny bilet, ale przyjeżdżający pociąg ma ograniczoną liczbę miejsc. W sieci Bitcoin transakcja najpierw trafia do mempoolu węzła – tymczasowego obszaru przechowywania ważnych płatności, które nie zostały jeszcze potwierdzone. Istotnym szczegółem jest to, że nie ma jednej, uniwersalnej puli pamięci. Każdy węzeł prowadzi własną wersję, stosuje własne lokalne zasady i może widzieć nieco inny zbiór oczekujących transakcji.

mempool.space unconfirmed transfer count.
O godz. 8:00 czasu wschodnioamerykańskiego (EDT) w poniedziałek w mempoolu Bitcoina czekało około 90 617 niepotwierdzonych przelewów. Źródło zdjęcia: Mempool.space

Pełny blok i pełny mempool to również różne zdarzenia. Bloki Bitcoin są ograniczone przez konsensus do 4 milionów jednostek wagi – miary uwzględniającej strukturę danych transakcyjnych. Węzły Bitcoin Core domyślnie przeznaczają około 300 MB pamięci na swoje lokalne mempooli i mogą przechowywać transakcje nawet przez 336 godzin. Blok może się zapełnić, podczas gdy w pamięci pozostaje jeszcze wiele transakcji, oczekujących na późniejszy „pociąg”.

Pełny blok zamienia oczekiwanie w aukcję

Górnicy zazwyczaj nie wybierają transakcji na podstawie ich wieku. Tworzą szablony bloków w oparciu o opłaty, wagę transakcji oraz zależności między płatnościami. Jednostką praktyczną, którą widzą użytkownicy, są satoshi na wirtualny bajt, czyli sat/vB. Wyższa stawka zapewnia górnikom większy przychód za tę samą ograniczoną przestrzeń w bloku, więc pakiety z najwyższymi opłatami są zazwyczaj przetwarzane jako pierwsze.

Oznacza to, że płatność wysłana jako pierwsza może zostać potwierdzona po tej wysłanej kilka minut później. Transakcja z wysoką opłatą może szeroko rozprzestrzenić się w sieci i trafić do kolejnych szablonów górników. Transakcja o niskiej opłacie może pozostać poniżej progu, nawet po upływie kilku bloków. Szacunki dotyczące potwierdzenia są pomocne, ale nie stanowią obietnicy, ponieważ nowe transakcje napływają nieustannie, a same bloki pojawiają się w nieregularnych odstępach czasu.

Gdy wystarczająca liczba oczekujących transakcji konkuruje o miejsce w każdym bloku, mempool przestaje przypominać uporządkowaną kolejkę, a coraz bardziej przypomina listę oczekujących na upgrade na lotnisku. Nowi, lepiej płacący pasażerzy mogą wyprzeć słabsze oferty. Jeśli węzeł Bitcoin Core osiągnie skonfigurowany limit pamięci, usuwa ekonomicznie najsłabszą połączoną grupę transakcji i podnosi lokalny minimalny poziom opłat. Usunięta transakcja nie jest nieważna, a łańcuch bloków jej nie anulował. Węzeł ten po prostu przestał ją obsługiwać.

Zatory docierają do portfela

Dla zwykłego użytkownika pierwszą konsekwencją jest opóźnienie. Portfel może wskazywać, że płatność pozostaje w toku przez wiele godzin, podczas gdy nowsze transakcje są już potwierdzane. Dla tradera, giełdy lub działu skarbowego opóźnienie to może spowodować odłożenie wpłaty na giełdę, spowolnienie przepływu zabezpieczeń, przerwanie transferu arbitrażowego lub uniemożliwienie dostępu do środków w warunkach dynamicznego rynku.

Ponieważ opłaty są powiązane przede wszystkim z wagą transakcji, a nie z wartością przelewu, płatność w wysokości 50 dolarów i przelew o wartości 5 milionów dolarów mogą konkurować na podobnych warunkach, gdy ich struktury transakcyjne są porównywalne. Im bardziej czasowa jest transakcja, tym bardziej kosztowne może stać się niedopłacenie opłaty.

Mempool blocks via mempool.space
Zielone bloki na stronie mempool.space reprezentują grupy niepotwierdzonych transakcji Bitcoinowych oczekujących w mempoolu na wybranie przez górników. Każdy blok szacuje transakcje, które prawdopodobnie zmieszczą się w przyszłym bloku, na podstawie wysokości opłat, mierzonych w satoshi na wirtualny bajt (sat/vB). Górnicy zazwyczaj nadają priorytet transakcjom z najwyższą opłatą, ponieważ maksymalizują one przychody z bloku. Ponieważ nowe bloki są wydobywane mniej więcej co 10 minut, transakcje są usuwane z mempoola, podczas gdy nowo wysyłane transakcje nieustannie go uzupełniają, tworząc stale zmieniającą się kolejkę.

Drugą konsekwencją jest rynek charakteryzujący się wyższymi opłatami. Bitcoin nie posiada opłaty bazowej na poziomie protokołu, takiej jak w przypadku Ethereum. Zamiast tego użytkownicy konkurują o marginalną stawkę opłaty, jaką górnicy mogą zmieścić w następnym bloku, podczas gdy każdy węzeł utrzymuje również lokalny próg minimalny. Pod presją ten dynamiczny próg może wzrosnąć znacznie powyżej podstawowego ustawienia oprogramowania dotyczącego przekazywania transakcji. Opłata wyświetlana wczoraj, a nawet 20 minut temu, może już nie zapewniać tej samej szybkości potwierdzenia.

Trzecią konsekwencją jest niepewność przed rozliczeniem. Widoczność transakcji w eksploratorze bloków stanowi dowód, że niektóre węzły o niej wiedzą, a nie potwierdzenie, że wiedzą o niej wszyscy górnicy. Niepotwierdzona płatność może zostać zastąpiona, usunięta lub zniknąć z widoku węzła, pozostając jednocześnie ważną, możliwą do zrealizowania transakcją. Firmy, które wydają towary, zasilają konta lub traktują wpłatę jako ostateczną przy zerowej liczbie potwierdzeń, akceptują ryzyko, które może stać się bardziej widoczne w przypadku przeciążenia sieci.

Kilka sposobów na ratowanie zablokowanej płatności

Sam Bitcoin oferuje użytkownikom dwa główne sposoby na zmianę opłaty za opóźnioną płatność. Funkcja „Replace-by-fee”, znana jako RBF, pozwala płatnikowi zastąpić niepotwierdzoną transakcję inną, za którą płaci wyższą opłatę. Można to porównać do anulowania niskiej oferty i złożenia wyższej na to samo miejsce. Metoda „child-pays-for-parent” (CPFP) działa inaczej: wyjście nadające się do wydania z opóźnionej transakcji jest wykorzystywane w nowej, powiązanej transakcji z wysoką opłatą, co stanowi zachętę dla górników do uwzględnienia zarówno transakcji nadrzędnej, jak i podrzędnej.

Żadne z tych narzędzi nie jest magiczne. Zastąpienie metodą RBF musi spełniać zasady węzła i wiązać się z opłatą wystarczającą, by przewyższyć zarówno transakcję, którą zastępuje, jak i aktualny poziom rynkowy. Transakcja potomna w modelu CPFP musi podnieść łączną stawkę opłat całego pakietu, a nie tylko sama w sobie wydawać się kosztowna. Na gwałtownie rosnącym rynku nawet niewielki wzrost może sprawić, że opłata nadal pozostanie poniżej ruchomego progu. Prawdziwym celem nie jest minimalna opłata za przekazanie. Jest nią stawka opłaty zbliżona do dolnej granicy kolejnego prawdopodobnego bloku.

ViaBTC's transfer accelerator
Akcelerator transferów ViaBTC oferuje 20 bezpłatnych wysłań na godzinę.

Poza tymi dwiema opcjami istnieją akceleratory wydobywcze – usługi oferowane przez niektóre pule wydobywcze bitcoina, które pozwalają użytkownikom zgłaszać transakcje do priorytetowego rozpatrzenia, gdy utknęły one w mempoolu z powodu niskiej opłaty. Zamiast zmieniać zasady konsensusu Bitcoina, akcelerator po prostu prosi uczestniczących górników o uwzględnienie tej transakcji w jednym z kolejnych bloków, które wydobędą. Niektóre akceleratory są bezpłatne, ale mają wymagania kwalifikacyjne, podczas gdy inne pobierają opłatę lub wymagają, aby transakcja spełniała minimalną stawkę opłaty.

Core 31.0 zmienia mechanizm, a nie limit

Bitcoin Core 31.0 zmienia niektóre mechanizmy leżące u podstaw tego procesu. Jego klastrowa puli pamięci (mempool) grupuje połączone, niepotwierdzone transakcje i porządkuje je według wysokości opłaty, przy której oczekuje się, że dana grupa zostanie wydobyta. Domyślne limity klastra wynoszą 64 transakcje i 101 kB wirtualnego rozmiaru. Projekt ma na celu usprawnienie tworzenia bloków, usuwania transakcji, przekazywania transakcji oraz podejmowania decyzji o zastępowaniu transakcji bez zmiany pułapu konsensusu Bitcoina wynoszącego 4 miliony jednostek wagi.

Wizualizacja koncepcji klastrowego mempoola w Bitcoin Core.

Inne prace inżynieryjne mają na celu zmniejszenie kosztów przesyłania pełnych bloków przez sieć. Kompaktowe przekazywanie bloków pozwala węzłowi odtworzyć znaczną część nowego bloku na podstawie transakcji, które już posiada, zmniejszając ilość danych i czas potrzebny do jego propagacji. Ma to znaczenie, ponieważ wolniejsza propagacja może zwiększyć ryzyko, że dwóch górników przez krótki czas będzie budować na różnych końcach łańcucha. Większa pojemność bloków może zmniejszyć krótkoterminową presję na opłaty, ale może również zwiększyć zapotrzebowanie na przepustowość, walidację i propagację.

Praktyczna lekcja jest prosta. Gdy blok Bitcoin jest pełny, nic się nie psuje, a żadna transakcja nie zyskuje pierwszeństwa za samo oczekiwanie. Górnicy potwierdzają najbardziej atrakcyjne ekonomicznie, prawidłowe pakiety, które się zmieszczą, podczas gdy tańsze płatności pozostają w toku, są wyceniane na nowo lub tracą zasięg przekazywania. Dla inwestorów i przedsiębiorstw opłata nie jest zwykłym znaczkiem pocztowym. Jest to oferta na ograniczoną przestrzeń rozliczeniową. Traktuj czas potwierdzenia jako prawdopodobieństwo i obserwuj aktualne warunki opłat, zanim rutynowe opóźnienie stanie się kosztownym problemem operacyjnym.

Źródło zdjęcia głównego/ilustracyjnego: mempool.space

Ten artykuł został przetłumaczony z języka angielskiego przy użyciu sztucznej inteligencji. Oryginalna wersja angielska jest źródłem autorytatywnym; tłumaczenia automatyczne mogą zawierać nieścisłości, zwłaszcza w terminologii prawnej i regulacyjnej.

Tagi w tym artykule