Technical advantages: Lava's fast, modular, scalable architecture

Lava Vision and How it Works
Ethan
Jan 19, 2024

Introduction

If you'd like to use Lava as a developer, you can get started with our free Incentivized Public RPC endpoints or explore the Gateway if you need higher rate-limits.

Reach out to our
partnerships team for deeper collaboration as we approach mainnet - we're working with dapps, node providers and ecosystems.

When deciding which RPC or indexing provider to use for your web3 application, the problem is that you need to decide at all. The infrastructure landscape is deeply fragmented, APIs offerings vary wildly between providers and quality of service is never guaranteed.

Lava is a modular network of node operators that dynamically supports and scales in-demand chains and APIs, while the protocol seamlessly sends your requests to the best available node. Today, the first service module on Lava is RPC, which the network supports across 30+ chains. In the future, modules can be permissionlessly added for subgraphs, oracles, MEV-resistant APIs and more.

Our focus is on providing ecosystems with the best infrastructure to onboard developers and users. We started on Cosmos, where our partnerships with Evmos and Axelar helped stabilize their public endpoints and Lava served 500m+ relays within months of launch with 100% availability. We're also working with L2s like Starknet, aligning with their vision to scale Ethereum and decentralize their infrastructure. With L1s like NEAR, we similarly offered a scalable free service for their developers, quickly consolidating their fragmented endpoints into one Lava-powered RPC URL. Finally, we intent to double down on support for the modular ecosystem, with integrations for Celestia RPC and future rollups that build modular.

As Lava expands with web3, we aim to support newer ecosystems as well as the most popular today:

  • L2s on Ethereum such as Arbitrum, Starknet, Polygon, Base, Optimism
  • Modular projects built on Celestia such as Hyperlane, Astria
  • Appchains in Cosmos such as Osmosis, Evmos, Axelar, Berachain, Juno and more
  • Alt-L1s such as Solana, Aptos, Avalanche

If you're interested in using Lava to power your blockchain's or rollup's public RPC, please reach out to our team here.

Lava architecture

The diagram below shows an overview of the Lava protocol:

1. Consumers retrieve a Pairing List of the best available Providers from the Lava blockchain, based on parameters such as Provider stake, geolocation and quality of service.

2. Consumers send requests off-chain, peer-to-peer to Providers.

3. Providers implement specifications which define APIs as JSON-files. Specifications can be added as permissionless modules to Lava, making Lava a dynamic base layer for building and accessing any blockchain.

4. Providers request payments from the Lava blockchain by seeing cryptographically signed, aggregated transactions from the Consumers.

5. If the Lava blockchain halts, Consumers can still get service indefinitely from the Providers on the last pairing list received. Providers will be able to claim payments when Lava blockchain restarts

Technical considerations and Lava advantages

Lava introduces multiple novel mechanisms to improve performance for developers and users. Developers use solutions ranging from self-hosted nodes, individual providers and gateway-based decentralized networks such as Pokt or Ankr. Lava’s unique architecture and p2p protocol address some of the pitfalls these services have not solved yet:

Modular Flexibility

of APIs & chains

  • Specs and modularity - APIs of different architectures are easily added to Lava as modules called “specs”.  The standard format for APIs is also both modular and composable and allows for easy configuration with enabling and disabling mandatory and optional service features.
  • One subscription opens up everything - With just a subscription, a developer can consume a variety of APIs from multiple methods. Setup with multiple chains is immediate.
  • Multi-chain calls in SDK - JavaScript/TypeScript interfaces are easy for multi-chain protocol access. Return response data from any chain or API with two simple JS/TS functions.
  • Protocol-agnostic - REST, gRPC, Tendermint, JSON-RPC, websockets are all supported API interfaces. Protocols with diverse architectures are easily supported.

of toolkits

  • Gateway - Easy-access web UI for online project management and URL-based API access on all supported chains and APIs.
  • SDK with Badge Server and integrations - An SDK with an innovative badges system used to obscure and protect private keys for front-end dApps. SDK also supports native integrations with viem, web3.js, ethers.js, CosmJS and more soon.
  • Server kit - Concurrent, high-throughput binary useful for constructing gateways or servicing multiple consumers in an enterprise setting.

High Availability

  • Constant Availability mode - Lava blockchain settles payments between Consumer and Providers, and generates the pairing lists for Consumers to interact with the optimal nodes. However, a Lava chain halt does not mean a halt in API services; using Constant Availability, Lava providers can continue to service relays while the chain stops and payments are reconciled when the chain returns.
  • Automatic retries - Failed requests result in multiple attempts and recoveries. Requests which fail on a single provider have fall-over to the entire pool of providers serving a particular API, at no additional cost.
  • Scoring mechanisms for best availability - API Providers are scored per session and over aggregated sessions on their attendance to responses; both of these scores are used to incentivize the best possible service on Lava network.
  • Background health checks - Background health checks are conducted to ensure the health of the network, with no additional cost to developers. This means checking that providers are alive and answer when requested by sending probes.

Low Latency

  • Decoupling relays and settlement: Settlement is on-chain, relays are peer-to-peer and off-chain, with no added latency through a proxy or load balancer. All data exchanges are conducted in cryptographically secure means from provider to consumer.
  • Dual-caching - Lava offers an open-source caching library. Responses are cached on both provider and consumer processes to enhance the latency of the network several-fold. Dual-caching increases the speed of commonly-requested APIs significantly.
  • Provider Optimization - Provider selection is optimized based upon multiple facets, including geolocation, provider reputation, and the reputational quality of service of providers. Optimization results in better latency than could be achieved otherwise.

Consensus-based Data accuracy, freshness

  • Conflict detection and resolution - Consumers algorithmically determine conflicts without electing a single fisherman; because there is no single fisherman, people cannot be spearfished with accountability
  • Consistency & stickiness - The protocol solves issues of both block and mempool inconsistency by implementing a smart consistency paradigm. Smart consistency optimizes provider selection and propagates data without employing stickiness.

Hyper-scalability

  • Lazy blockchain design - Larger block sizes are favored while requests for payment are performed retroactively. Backdated rewards claims and large blocks means more transaction throughput is accomplished and more services rendered.
  • Server Kit Concurrency - Consumers can have multiple concurrent Sessions with different API providers from the protocol’s provider pairing lists.  High throughput API requests from multiple sources are easily handled for enterprise-level usage.
  • Aggregated sessions for succinct proofs - Sessions are conducted off-chain and then uploaded on chain in aggregate for improved throughput and reduced fees. Transactions are aggregated, signed, and settled on-chain within a completely configurable claims period.

Economics/cost-efficiency/pricing

  • Customisable Subscriptions - Consumers pay for RPC & APIs via refillable subscription plans tailored to individual usage patterns;  subscriptions create a seamless predictable, experience with no unexpected spikes in payment and flexibility for extension.
  • Stake-weighted pairings - Providers can increase their stake, instead of creating a new account leading to more efficient vertical scaling. Providers do not need to add a new node or address to the network to serve more relays.
  • Dual-staking

Provider accountability

  • Provider stake & Delegations - Providers are crypto-economically accountable, staking tokens to yield higher chances of pairing with consumers. Providers have the ability to delegate, giving them the ability to affect governance and block creation.
  • QoS-driven accountability - Providers are scored on-chain for the services they provide to ensure Quality of Service
  • Scoring - Scoring is conducted algorithmically by consumers and submitted by providers on-chain to receive payments. Scores are deterministic; they approximate latency, availability, and sync and affect rewards and pairing.
  • Rewards adjustment -  The rewards for API Providers are adjusted according to scores in a given service session. Providers who do well receive full rewards; while providers who do less well are rewarded less. Good behaviour and quality service is incentivized.
  • Punishments e.g. Jailing, Slashing - Providers are jailed or slashed for periods of undeclared unavailability and downtime. The protocol enacts punitive measures against providers who are underperforming to prevent them from taking relays from well-behaved and efficient providers.
  • QoS-based Pairings -  QoS scoring affects the possibility of future pairings. The protocol rewards the best and most highly-rated providers with the most opportunities to serve relays.
  • Providers send the latest block on chain - Data served is always fresh with providers syncing to the latest block of each supported chain or protocol. Consumers can verify responses across multiple providers.

Provider optimization

  • Service routing optimization - Archive calls get routed to archive nodes

Privacy & MEV-resistance

  • Adaptive pairing - Pairing is pseudorandom and private. All data exchanges are conducted off-chain and in a peer-to-peer cryptographically secure exchange.

Collaborate ahead of Mainnet in Q1 2024

Lava is a single network for fast, reliable and cost-efficient access to any blockchain. Its first service is to provide a performant RPC solution for developers and users, and it will later expand to any type of data infrastructure e.g. indexing and oracles.

If you’re looking to grow with us as we move towards Mainnet, we are already working with:

  • Ecosystems - on supporting their public RPC needs
  • Dapps - on serving them fast and reliable multi-chain responses

You can get in touch with the Lava team here: lavanet.xyz/partnerships

Alternatively, join our Discord to speak directly with our community and ask questions: discord.gg/bKkEtU6AMQ

Keep up with the latest on Lava Network

Mainnet is coming in early 2024, bringing us closer to Lava's vision of a scalable, modular data layer for web3. We welcome all feedback and participation to help battle-test the network.

Thank you for taking part in the Lava journey.

Visit the website: lavanet.xyz
Create and manage RPC endpoints: accounts.lavanet.xyz/register
Read the docs: docs.lavanet.xyz
Meet the community: discord.gg/bKkEtU6AMQ
Follow our Twitter: twitter.com/lavanetxyz
Read our research papers: community.lavanet.xyz