Skip to content
This repository has been archived by the owner on Oct 28, 2021. It is now read-only.

Support PV63 fast sync mode #3102

Open
bobsummerwill opened this issue Aug 25, 2016 · 2 comments
Open

Support PV63 fast sync mode #3102

bobsummerwill opened this issue Aug 25, 2016 · 2 comments

Comments

@bobsummerwill
Copy link
Contributor

From @chriseth on February 8, 2016 23:48

This is implemented at the responding side but not at the asking side.
Explanation (implementation in go-ethereum): ethereum/go-ethereum#1889

Description of older issue:

PV63 fastsync mode, launched if PV63 peers available && (start || a new block is noted with height > N + currentHeight)

  1. Get last N block headers by hashes in ascending tree order. Pick block X = Latest - N
  2. In parallel:
    • Download state tree nodes for block X from PV63 peers
    • Download transaction receipts for blocks 1 to X from PV63 peers
    • Download 1..X block bodies and headers from PV62 and PV63 peers
  3. Once done
    • Insert blocks
    • Insert state

PV62 sync mode, launched if no PV62 peers available && (start || a new block is noted with height > N + currentHeight)
2. Split chain into chunks of size M
Download chunks in parallel. For each chunk:

  • Download block headers in ascending tree order until a known block hash is met
  • Download block bodies
    1. Reorder blocks and insert them into block queue

Keep up mode, launched when a new block is noted with height < N + currentHeight

  • Download headers from a single peer in ascending tree order until a known block hash is met
  • Download bodies

General:

  • Validate all attack vectors, review code audit report.

Copied from original issue: ethereum/webthree-umbrella#177

@axic
Copy link
Member

axic commented Jan 25, 2018

@gumb0 I think this must be implemented otherwise it wouldn't be able to sync with latest clients

@gumb0
Copy link
Member

gumb0 commented Jan 25, 2018

@axic No, this is fast sync description, still not implemented, we sync only through full sync (supported by all full clients)

But I haven't seen this issue, thanks.

@gumb0 gumb0 self-assigned this Jan 25, 2018
@axic axic changed the title PV63 Support PV63 fast sync mode Jan 30, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants