opcja -fastboot --> szybka synchronizacja klienta bitcoin

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

opcja -fastboot --> szybka synchronizacja klienta bitcoin

Postautor: regis » piątek, 19 sierpnia 2011, 05:15

Hej,
aktualnie pracuje nad opcja do oficjalnego klienta bitcoina, ktora powinna umozliwic b. szybka synchronizacje "swiezego klienta" do wersji posiadajacej wszystkie aktualne bloki. (podczas moich testow w okolo 15 minut udalo mi sie zsynchronizowac swiezego klienta - normalnie zajmuje to kilka godzin)

Szczegoly dla zainteresowanych:
https://bitcointalk.org/index.php?topic=37828.0

w skrocie: sciagamy 98% historii z centralnego serwera, sprawdzamy czy nikt ich nie zmodyfikowal, a nastepnie dociagamy przez peer-to-peer brakujace najnowsze bloki.

mam tylko taki problem, ze ta opcja bedzie tym lepsza, im wiecej mirrorow bede posiadal - bo jakby wiecej osob zaczelo sciagac z jednego serwera to moze byc problem. chcialem sie zapytac, czy ktos moze bylby sklonny uzyczyc miejsca na swoim serwerze (pewnie wystarczy cos rzedu 1 - 1.5 GB) celem dobra wspolnego? :)

albo moze znacie jakies darmowe mirrory ktore mozna by wykorzystac?
wazne jest to, zeby z takiego mirrora dalo sie latwo sciagnac plik majac link - tzn. nie moze byc zadnej captchy (np. rapidshare odpada, i pewnie wiekszosc popularnych w ktorych trzeba czekac X sekund a pozniej cos klikac)

dzieki za pomoc!
-reg

Początkujący
Posty: 28
Rejestracja: 30 czerwca 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: Ankh-Morpork

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: LordWisienka » piątek, 19 sierpnia 2011, 06:29

Jak styknie Ci 260KB uploadu to ok
--
Moja portmonetka: 1KaKfWKk8busvMEzS7GXLrY8ENRMVUHt3e

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » piątek, 19 sierpnia 2011, 07:07

powinno wystarczyc - upload bedzie tylko raz na jakies 2-3 tygodnie (1 upload na kazda nowa wersje klienta).

to co, chcesz byc w pierwszym commicie z nowa opcja? ;) [ bede musial zaszyc linki do mirrorow w kodzie ]
jak moglbym uploadowac na ten serwer?

Weteran
Posty: 1488
Rejestracja: 15 czerwca 2011
Reputacja: 1215
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: qertoip » piątek, 19 sierpnia 2011, 09:44

@regis: świetna inicjatywa, gratuluję, mam nadzieję że z czasem to lub podobne rozwiązanie stanie się domyślnym ustawieniem.
We only have one shot at making digital scarcity experiment work. If Bitcoin fails within a timeframe relevant for a human, then digital scarcity claim gets falsified. Like it or not, Bitcoin must succeed for your coin to succeed.

Orator
Posty: 788
Rejestracja: 9 czerwca 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: Poland/Łódź

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: r50zyry5 » piątek, 19 sierpnia 2011, 09:49

Jak zmigruje serwer, to udostępnię Ci miejsce 3GB, tylko nie wiem jak będzie z transferem ale 0.5Tb to pewnie się znajdzie.

Pozdrawiam
Zły Troll Moderator
r50zyry5
https://bitcurex.com - Polska Giełda Bitcoin
BitMessage: BM-2cTXYRTBw6rptJ2qHqSdQe8tHztRBhYdMA
Moje komentarze na forum

Dyskutant
Awatar użytkownika
Posty: 152
Rejestracja: 2 maja 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: 3city

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: MacDada » piątek, 19 sierpnia 2011, 10:08

Tutaj koleś wrzuca swoje paczki z blockchain: http://bitcoin.bluematt.me/bitcoin-nigh ... n-nightly/

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » piątek, 19 sierpnia 2011, 10:19

@r50zyry5

super, wielkie dzieki za pomoc. kazdy mirror na wage zlota, jesli opcja ma "chwycic". czekam na nastepnych chetny do znalezienia sie w pierwszym, historycznym release opcji fastboot :-)
MacDada pisze:Tutaj koleś wrzuca swoje paczki z blockchain: http://bitcoin.bluematt.me/bitcoin-nigh ... n-nightly/
kontaktowalem sie z Mattem. problem z jego paczkami jest taki, ze robi je losowo - tzn. z losowa liczba blokow w srodku. nie wiadomo jak wtedy zweryfikowac czy nie wrzuca "lewych" plikow ze zmienionymi blokami. ja planuje zrobic jakies narzedzie do stworzenia paczki - zapewne po prostu kolejna [choc byc moze tajna zeby ludzie sie nie glowili co to] opcja do klienta, ktora umozliwi sciagniecie pierwszych N blokow i sprawdzenie sumy kontrolnej. wtedy, jesli ktos bedzie chcial dorzucic nowe sumy kontrolne do repozytorium kodu zrodlowego, bardzo latwo bedzie sprawdzic osobom odpowiedzialnym za pull, czy to nie oszustwo.

Weteran
Awatar użytkownika
Posty: 1497
Rejestracja: 7 czerwca 2011
Reputacja: 1
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: Przemo » piątek, 19 sierpnia 2011, 18:27

Jak widać im ktos mniej gada tym więcej robi :) W sumie ja sam dużo gadam a mało robię... :)

Myslalem wlasnie kilka dni temu ze taki mechanizm przyspieszylby znacznie synchronizacje swierzego klienta i pomyslalem sobie ze pewnie ktos w koncu cos takiego zrobi :) no i prosze.

Ale czy to nie moze tez sluzyc do aktualizacji nei tylko nowego klienta ale tez nieuzywanego np tydzien?

Poza tym bardzo wazne jest aby to bylo bezpieczne, to na pierwszym miejscu.

Ja mam kilka roznych serwerow, moge zrobic mirror, jednak w zaleznosci od okolicznosci bede przelaczal te mirrory.
Jakie sa wymagania co do serwera oprocz lacza i jakiegos miejsca na dysku?
To powinno byc tak zrobione, ze na serwerze dziala klient bitcoina i sam tworzy te paczki a nie zeby to robic recznie. Jak to dziala?

Poza tym jak napisal JoelKatz:
I think you're solving the wrong problem. Most of the time is not spend downloading the block chain but processing it. Take a look at your CPU usage.
Sprawdzales juz czy to w ogole cos przyspieszy? Widzialem, ze pisales cos o 10 minutach.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » piątek, 19 sierpnia 2011, 20:38

Przemo pisze:Jak widać im ktos mniej gada tym więcej robi :) W sumie ja sam dużo gadam a mało robię... :)

Myslalem wlasnie kilka dni temu ze taki mechanizm przyspieszylby znacznie synchronizacje swierzego klienta i pomyslalem sobie ze pewnie ktos w koncu cos takiego zrobi :) no i prosze.

Ale czy to nie moze tez sluzyc do aktualizacji nei tylko nowego klienta ale tez nieuzywanego np tydzien?

Poza tym bardzo wazne jest aby to bylo bezpieczne, to na pierwszym miejscu.

Ja mam kilka roznych serwerow, moge zrobic mirror, jednak w zaleznosci od okolicznosci bede przelaczal te mirrory.
Jakie sa wymagania co do serwera oprocz lacza i jakiegos miejsca na dysku?
To powinno byc tak zrobione, ze na serwerze dziala klient bitcoina i sam tworzy te paczki a nie zeby to robic recznie. Jak to dziala?

Poza tym jak napisal JoelKatz:
I think you're solving the wrong problem. Most of the time is not spend downloading the block chain but processing it. Take a look at your CPU usage.
Sprawdzales juz czy to w ogole cos przyspieszy? Widzialem, ze pisales cos o 10 minutach.
w obecnej wersji to bedzie sluzylo raczej tylko do aktualizacji nowego (a nie nieuzywanego tydzien). mozna pomyslec jak to usprawnic, ale to wtedy bardziej trikowe - bo trzeba by jakos scalac te baze danych "w locie" w kodzie programu. byc moze jest to mozliwe, ale istotnie bardziej skomplikowane, wiec pierwsza wersja bedzie po prostu sciagac od 1 bloku do N-tego :)

co do bezpieczenstwa, to sa 2 zabezpieczenia - hashsum plikow z blokami, a dodatkowo sama siec (jesli bloki zostana zmienione, to zaden nowy sie nie sciagnie z p2p - przynajmniej tak to dziala wg gosci z forum dev)

Joel nie do konca zrozumial co chcialem zrobic, gadalem z nim na prv. Myslal, ze ja chce sciagnac te bloki i je przetwarzac wszystkie. A ja chce po prostu je sciagnac, i zalozyc, ze jesli powyzsze zabezpieczenia sa ok, to znaczy ze wszystkie bloki sa ok.

Odnosnie mirrorow: nie jestem jeszcze na 100% pewny jak bedzie najlepiej z tworzeniem paczek, musze zobaczyc jak trudno jest zmienic klienta zeby np. sciagnal tylko N pierwszych blokow i sie zatrzymal.

a w ogole to dzieki za mirrora ;)

pzdr
-reg

Dyskutant
Posty: 161
Rejestracja: 2 czerwca 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: washuu » sobota, 20 sierpnia 2011, 08:49

Ja mogę dać dobry mirror, spory upload (5M) i sporo miejsca, tylko problem w tym że na ok. pol roku. Potem - nie wiem czy serwer nie będzie użyty w innych celach.

Mam nadzieje ze to nie wymaga udostepniania komus konta, bo bede musial mocno okroic jego uprawnienia (nie moj pomysl, serwer stoi w firmie). Ale sam jestem rootem, wiec jak bedzie trzeba cos zrobic, to sie da.

W razie zainteresowania, PW.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » sobota, 20 sierpnia 2011, 09:21

z rozmowy na forum dev wyniknal bardzo ciekawy pomysl - zeby zamiast trzymac hash blokow, trzymac sygnatury kilku zaufanych deweloperow. dzieki temu mozna by uaktualniac takie paczki nawet codziennie, bez koniecznosci zmieniania kodu (duza zaleta, bo wtedy zostaje bardzo malo do dociagniecia przez p2p).

jesli takie rozwiazanie bedzie zaimplementowane, to zapewne po prostu ustawie skrypt ktory codziennie tworzy nowa paczke i podpisuje ja moim podpisem, a nastepnie publikuje na jakims serwerze. teraz kazdy kto bedzie mial mirrora ustawia skrypt, ktory raz dziennie sciaga z mojego serwera paczke. i juz, tyle. nie trzeba by zadnych praw roota, kont, etc :-)

nawet zakladajac, ze jakis z "zaufanych" deweloperow stworzy paczke ze zlymi blokami, system sie nie wysypie - bo wtedy te sciagane z p2p nie beda sie zgadzac. a taki deweloper oczywiscie szybko przestanie byc "zaufany"

co sadzicie o takim rozwiazaniu?
btw. jak komus sie podoba pomysl z -fastboot to moze zaglosowac na "tak" na tym forum dla developerow :-) dzieki temu zawsze latwiej mi bedzie przekonac wlascicieli repozytorium do zaakceptowania pull requesta ;-)

Weteran
Posty: 1361
Rejestracja: 19 grudnia 2010
Reputacja: 4
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: Prze_koles » sobota, 20 sierpnia 2011, 11:53

Świetna inicjatywa. To powinno rozwiązać jeden z ważniejszych dzisiejszych problemów Bitcoina. To mnie napawa optymizmem.

Początkujący
Posty: 32
Rejestracja: 20 lipca 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: icefresz » niedziela, 21 sierpnia 2011, 22:11

krzyknij kolego a udostępnie ci 3gb bez limitu transferu
Czarter Jachtu Jeziorak
http://www.czarter-jeziorak.pl

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » wtorek, 23 sierpnia 2011, 19:21

Czesc wszystkim,

mam juz dzialajacy proof-of-concept. ;-)

regis@lap:~/bit/bitcoin/src$ time ./bitcoin -fastboot
real 28m28.067s
user 0m57.484s
sys 1m1.632s

jak widac 28 minut zajmuje sciagniecie wszystkich blokow i rozpakowanie (czyli de facto praktycznie cala synchronizacja klienta)... nie porywa, ale dlatego ze mam troche wolnego mirrora (jak robilem moje wczesniejsze testy to sciagalem ze strony Matt'a, ktora miala istotnie lepszy transfer)

zaimplementowalem rozwiazanie z podpisem cyfrowym - na razie kazda paczka podpisana przeze mnie jest "dobra", tak wiec moge je uaktualniac nawet raz dziennie. docelowo beda tam wpisani wlasciciele projektu bitcoin z github'a.

schemat dzialania dla ludzi z mirrorami:

1. ustawic skrypt, ktory codziennie o jakiejs godzinie sciaga te 4 pliki na twoj serwer:
http://students.mimuw.edu.pl/~kk236085/bitcoin/
2. nie zapomniec ustawic dobrych praw dostepu do katalgu i plikow
3. wyslac do mnie na prv adres pod ktorym sa pliki, i godzine o ktorej odpalacie skrypt (ten czas niby mi nie jest potrzebny, ale chce sie upewnic, ze wasze skrypty dzialaja :))
4. [opcjonalne] wyslac do mnie jakis lepszy sposob na komunikacje z wlascicielem mirrora (mail? komunikator?). nie kazdy czyta forum codziennie ;)

a wiec ustawienie mirrora jest trywialne. wazne dla mnie jest, aby ustawiali go ludzie
a) ktorzy nie beda musieli NAGLE wylaczac swojego mirrora. chodzi o to, ze jesli mamy przekonac ludzi do tego, to musi byc stabilne. trzeba sie liczyc wiec z tym, ze na pewien okres czasu zajmie to 600 MB na dysku i pewnie troche transferu.

b) z szybkim transferem. jesli sciaganie 500 MB z tego serwera ma zajmowac wiecej niz 0.5h, to chyba troche wolno (chociaz nie wiem... porownujac do aktualnej szybkosci sieci bitcoin to i tak by przyspieszylo)

uff...to chyba tyle na razie. kod udostepnie jakos niedlugo na githubie, tylko chcialem do niego wczesniej dodac te Wasze mirrory :)

dzieki za pomoc!
-reg
Ostatnio zmieniony środa, 24 sierpnia 2011, 09:09 przez regis, łącznie zmieniany 1 raz.

Weteran
Awatar użytkownika
Posty: 1497
Rejestracja: 7 czerwca 2011
Reputacja: 1
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: Przemo » wtorek, 23 sierpnia 2011, 19:53

Nie no bez sensu tak na sztywno te mirrory. Trzeba to zrobic tak ze na jakims szybkim serwerze stawia sie skrypt, ktory ma liste aktualnych mirrorow i on robi redirect klienta lub klient najpierw odpytuje ten serwer o mirrory.
Tylko, ze to znowu powoduje problem centralizacji... Ma ktos pomysl jak to zorganizowac tak aby nie bylo na sztywno a jednoczesnie bez centralizacji? Z drugiej strony lista kilku mirrorow na sztywno to tez centralizacja, wiec jak juz wybierac gorsze zlo to lepiej skrypt z uaktualniana lista mirrorow.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » wtorek, 23 sierpnia 2011, 20:01

korzystajac z mirrora r50zyry5 --> 8.5 minuty
Ostatnio zmieniony środa, 24 sierpnia 2011, 09:09 przez regis, łącznie zmieniany 1 raz.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » wtorek, 23 sierpnia 2011, 20:06

hmm...a moze taka architektura.

core mirrory = mirrory zawierajace liste wszystkich mirrorow (jako podpisany plik txt)
teraz program sciaga liste z losowego core mirrora (ktorego adres jest w kodzie), sprawdza czy podpis jest ok. nastepnie laczy sie z jakims mirrorem z listy. i sprawdza czy podpis sciagnietego pliku jest ok.

brzmi ok? jedyny problem taki, ze listy moga w roznych wersjach bo np. nie kazdy zaktualizuje w tym samym czasie.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » środa, 24 sierpnia 2011, 09:12

update: to co opisane powyzej juz jest zaimplementowane i wlasnie testuje. wydaje sie dzialac w porzadku ;) czekam na zgloszenia z mirrorami - teraz bede mogl je juz latwo dodawac/usuwac nawet jak kod juz pojdzie "w swiat" ;)

SHV
Gaduła
Awatar użytkownika
Posty: 352
Rejestracja: 16 maja 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: SHV » czwartek, 25 sierpnia 2011, 10:57

Mogę dać Ci dostęp do katalogu na serwerze. To tylko wirtualny serwer ale przyłączony do 1Gbps a po 5TB transferu/mies 10Mbps.
Ostatnio zmieniony czwartek, 25 sierpnia 2011, 11:36 przez SHV, łącznie zmieniany 1 raz.

Początkujący
Posty: 14
Rejestracja: 19 sierpnia 2011
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

Re: opcja -fastboot --> szybka synchronizacja klienta bitco

Postautor: regis » czwartek, 25 sierpnia 2011, 11:20

dzialajaca wersja beta dla linuxa dostepna tutaj:

https://github.com/kkurach/bitcoin/tree/fastboot

co do mirrorow, to bardzo by sie przydalo kilka szybkich. jak tylko ustawisz skrypt zeby sciagal (wg instrukcji powyzej), to wyslij mi linka. z gory dzieki!

Wróć do „Bitcoin”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 53 gości