Giter Site home page Giter Site logo

celestia-networks's Introduction

Celestia Devnet

Note: This guideline is only relevant for the current devnet. As we approach to testnet, there will be a new guide

Quickstart

Devnet participants have the option of running:

  1. Light Nodes (low CPU, 5GB+ disk): get started
  2. Bridge Nodes (low CPU, 100GB+ disk): get started
  3. Bridge Validator Nodes (same node as 2): get started
  4. Full DA Nodes are under development

You can view chain activity at the current devnet-2 explorer: https://celestia.observer/

Overview

Devnet demonstrates Celestia’s data availability capabilities by running two individual but connected networks:

Network Overview

  1. A libp2p DA network with Bridge Nodes which relay and process blocks from the celestia-core network and Light Nodes, which do data availability sampling those blocks.
  2. A p2p Consensus network ("celestia-core network) with Validator Nodes that handles the underlying consensus and block production.

Note that mainnet may look very different from this devnet implementation, as the architecture continues to be improved. You can read more about devnet decisions here (see ADR).

Celestia (Validator) Bridge Nodes

Bridge Nodes Specifically, Bridge Nodes:

  1. Import and process “raw” headers & blocks from a trusted Core process (meaning a trusted RPC connection to a celestia-core node) in the Consensus network. Bridge Nodes can run this Core process internally (embedded) or simply connect to a remote endpoint. Bridge Nodes also have the option of being an active validator in the Consensus network.
  2. Validate and erasure code the "raw" blocks
  3. Supply block shares with data availability headers to Light Nodes in the DA network.

From an implementation perspective, Bridge Nodes run two separate processes:

  1. Celestia App with Celestia Core (see repo)
    • Celestia App is the state machine where the application and the proof-of-stake logic is run. Celestia App is built on Cosmos SDK and also encompasses Celestia Core.
    • Celestia Core is the state interaction, consensus and block production layer. Celestia Core is built on Tendermint Core, modified to store data roots of erasure coded blocks among other changes (see ADRs).
  2. Celestia Node (see repo)
    • Celestia Node augments the above with a separate libp2p network that serves data availability sampling requests. The team sometimes refer to this as the "halo" network.

Celestia Light Nodes

Light Nodes

In the Devnet, Light Nodes:

  1. Connect to a Celestia Bridge Node in the DA network. Note: Light Nodes do not communicate with each other, but only with Bridge Nodes.
  2. Listen for ExtendedHeaders, i.e. wrapped “raw” headers, that notify Celestia Nodes of new block headers and relevant DA metadata.
  3. Perform data availability sampling (DAS) on the received headers

Run a Light Node

Light nodes (CLN) ensure data availability. This is the most common way to interact with the Celestia network.

Note: In future implementations, Light Nodes can also publish transactions (see ADR), though in Devnet, transactions are left to Bridge Nodes.

Installation

Run a Bridge Node

Bridge Nodes connect the aforementioned Consensus and DA networks.

Installation

Run a Validator Bridge Node

Bridge Nodes have the option of validating the P2P network using its Celestia App component. However, running validator nodes is not a requirement to learn about Celestia’s main value proposition.

Only the top 100 validators make it into the active validator set. The team is not looking for additional validators at the moment and recommend running light or bridge nodes instead.

Installation

Troubleshoot

Please navigate to this link to find more details

celestia-networks's People

Contributors

bidon15 avatar jbowen93 avatar liamsi avatar mindstyle85 avatar qubelabsio avatar rach-id avatar tzdybal avatar yelllowsin avatar renaynay avatar musalbas avatar adlerjohn avatar wondertan avatar evan-forbes avatar 0xsage avatar aditya-manit avatar nimavaziri avatar rajivpo avatar yazzyyaz avatar maxzonder avatar nwhite1 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.