Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap: Hot Importer #2

Closed
5 tasks
ghost opened this issue Aug 21, 2017 · 2 comments
Closed
5 tasks

Roadmap: Hot Importer #2

ghost opened this issue Aug 21, 2017 · 2 comments

Comments

@ghost
Copy link

ghost commented Aug 21, 2017

What is this

The Hot Importer, in contrast to the "Cold" Importer, which gets data from a disconnected (hence cold) LevelDB, is designed to be able to bring current Ethereum data to be consumed by the IPFS network.

Vision

Initially thought as a hack to an Ethereum Client. This importer is a client on its own. The vision it represents is to become the Modular Blockchain Client for Storage and Networking, making possible to multiple blockchains, or any other application that relies heavily on content-addressed data, to just plug into the IPFS network to fulfill backend roles, allowing the clients of these blockchains to focus on their core competencies, namely state change computations and consensus. An ambitious goal that is implied as a possible logical step to the solution of several scalability problems.

As of 2017.10.17, the devp2p network consists on 24k nodes (Ethernodes see below), the bitcoin network has 9k nodes (Bitnodes see below), while it is reported that libp2p is made of 9k nodes. Once the way is made for multiple blockchains to enter the field and interoperation becomes common place, the concept of "pluggable networking" will reach relevance, and it will be positive to be prepared in advance by offering an easy to plug library or API for such effect.

Features

The Hot Importer aims to provide the following core features

  • Connect to devp2p as another node of the mesh. Identifying itself as mustekala with its version.
  • Send messages to its connected neighbors inquiring for
    • State Trie Data
    • Storage Trie Data
    • Block Headers
    • Transactions
    • Transaction Receipts.
  • Upon received data, this will be imported into IPFS as IPLD blocks, for further consumption of the libp2p network.

Additional features (nice to have)

  • Feed a floodsub subscription to inform its peer on new minted blocks.
  • Update tables such as the CHT (Canonical Hash Table), Transaction to Block and future needed tables that can improve the lookup process.
  • Provide an API for clients to be used either as a library, or as an independent program.
  • Other?

Objects Importing

Has

N/A

Wants

  • state trie nodes
  • storage trie nodes
  • block headers
  • transactions
  • transaction receipts

Sources

screen shot 2017-10-17 at 11 50 58 pm

screen shot 2017-10-17 at 11 52 12 pm

@ghost ghost changed the title "Hot" Importer Roadmap: Hot Importer Oct 18, 2017
@ghost
Copy link
Author

ghost commented Oct 23, 2017

@ghost
Copy link
Author

ghost commented Mar 20, 2018

See here

@ghost ghost closed this as completed Mar 20, 2018
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

0 participants