za
thinblocks

Xtreme Thinblocks – rewolucyjna propozycja zmiany sposobu przesyłania bloków w sieci

2016-03-02
Techniczne
Zondacrypto gielda kryptowalut 2650

Choć wydawało się, że Satoshi Nakamoto zostawił nam projekt doskonały, stale pojawiają się nowe propozycje zmian znacząco usprawniające jego działanie. Jedną z takich zmian są ekstremalnie cienkie bloki czyli Xtreme Thinblocks.

 

 

Choć wydawało się, że Satoshi Nakamoto zostawił nam projekt doskonały, stale pojawiają się nowe propozycje zmian znacząco usprawniające jego działanie. Jedną z takich zmian są ekstremalnie cienkie bloki czyli Xtreme Thinblocks.

 

Tym razem na genialne rozwiązanie wpadł Peter Tschipper, deweloper Bitcoin Unlimited. Tschipper, przedstawił propozycję zmian w części protokołu P2P odpowiedzialnej za transfer bloków.

 

Jest to rozwinięcie procedury „thin blocks” (cienkie bloki) umożliwiającej transfer nowego bloku nie w całości (jak dotychczas), ale za pomocą znacznie mniejszej liczby informacji. Dodatkowo propagacja ma się odbywać z mniejszą ilością wzajemnych wywołań pomiędzy węzłami.

 

Zasada przepływu informacji:

(węzeł A ma informację o nowym bloku i wysyła żądanie do węzła B)

 

  • węzeł A generuje filtr Blooma zawierający posiadane przez niego transakcje w mempoolu
  • węzeł A wysyła żądanie „getdata” uzupełnione filtrem do węzła B
  • węzeł B odsyła transakcję „thinblock” zawierającą nagłówek, hasze wszystkich transakcji zawartych w bloku oraz wszystkie transakcje nie objęte przesłanym filtrem Blooma
  • węzeł A odbiera „thinblock” i buduje blok używając posiadanych transakcji oraz transakcji otrzymanych z węzła B

 

W rzadkim przypadku, gdy węzeł A nadal nie ma wszystkich potrzebnych transakcji wysyła następujące zapytanie:

 

  • węzeł A przesyła transakcję „CthinBlockTx” zawierającą mapę wszystkich brakujących transakcji
  • węzeł B uzupełnia transakcję o dane pobrane bezpośrednio z bloku (unikamy przeszukiwania mempoola który powinien być już opróżniony z transakcji zawartych w bloku), uzupełniona transakcja odsyłana jest do węzła A

 

Wystarczy więc jedna, maksymalnie dwie wymiany informacji pomiędzy węzłami aby zrekonstruować nowy blok bez przesyłania kompletnej informacji.

 

Aby system ten mógł zadziałać, konieczne są następujące zmiany:

 

  • nowa wersja protokołu transmisji P2P
  • jeżeli wyłączymy pobieranie thinblocks na węźle to węzeł nadal będzie mógł je wysyłać
  • transakcja generacji (coinbase) zawsze będzie dołączana do thinblock ponieważ transakcja ta jest zawarta tylko w bloku w momencie jego wydobycia
  • jeżeli węzeł nie ma jeszcze wypełnionego mempoola (np. świeżo po uruchomieniu) zamiast thinblock wysyłany będzie „normalny” blok, ponieważ transmisja thinblock z wieloma brakującymi transakcjami nie będzie opłacalna
  • modyfikacje filtrów Blooma: przy większej ilości elementów w mempoolu należy zmodyfikować ilość dopuszczalnych „false positives” zwracanych przez filtr
  • przesyłanie 64 bit hasza transakcji zamiast pełnego 256 bit w celu zmniejszenia ilości przesyłanych danych, ciągle jednak unikając kolizji haszy w mempool

 

Testy wykazują, że na przesłanie Xtreme Thinblock zamiast zwykłego bloku potrzeba nawet do 100x mniej informacji (w zależności od bloku), średnio jest to około 10x.

 

4ie5HEt

 

Wyniki są imponujące. Korzyść dla sieci jest ogromna, gdyż znacząco zmniejszy się ilość wymienianej w niej informacji, umożliwiając działanie na bardzo wolnych łączach.

 

Jest to również rozwiązanie problemu “chińskiego firewalla”. Dla przypomnienia chodzi o chińskie kopalnie, które z powodu Projektu Złota Tarcza, sprzeciwiają się podniesieniu bloku powyżej 4-8MB, gdyż naraziłoby to je na straty z powodu opóźnień. Wolniejsza propagacja oznacza też większą ilość orphanów w sieci (wadliwych bloków), a więc praca kopalń idzie na marne.

 

Zaproponowana zmiana nie wymaga wprowadzenia soft ani hard forka, jest również wstecznie kompatybilna („stare” klienty nie będą wysyłały „nowych” żądań a „nowy” klient będzie po staremu pobierał od „starego”).

 

 Fotografia na licencji Creative Commons:Flickr.com

Bitcoina i inne kryptowaluty kupisz w prosty i bezpieczny sposób na giełdzie zondacrypto.

Tagi

Newsletter Bitcoin.pl

Więcej niż bitcoin i kryptowaluty. Najważniejsze newsy i insiderskie informacje prosto na Twój email.

Dbamy o ochronę Twoich danych. Przeczytaj naszą Politykę Prywatności