Skip to main content

Component Overview

Components
Overview of the Components of the Network
  • It consists of two internal chains, a consensus layer and an execution layer, similar to post-merge Ethereum.
    • Similar to Ethereum, Omni nodes are separated into distinct execution and consensus environments
      • The execution layer is implemented by standard Ethereum execution clients. like  getherigon, etc, to provide the Omni EVM.
      • The consensus layer is implemented by the Omni consensus client, halo, and uses CometBFT for consensus on XMsgs and Omni EVM blocks.
  • EigenLayer restaking contracts exist on Ethereum L1 and connect Omni with its restaking participants. Omni is registered with EigenLayer as an Actively Validated Service (AVS) and Omni validators serve the Operator for the AVS.
  • Portal contracts implement the on-chain logic of the Omni protocol and serve as the main interface for creating cross-network messages. They are deployed to all supported rollup VMs as well as the Omni EVM on the Omni network. They all have the same address and calls to and from are abstracted with the solidity interface.
    • Portal contracts implement Omni’s on-chain logic on external rollup networks. Portals are deployed on each connected rollup VM and the Omni EVM. Portal contracts use the same address on every rollup. Calls to and from Portals are abstracted with the solidity interface.
  • Relayer responsible for delivering attested cross-network messages from the Omni network to destination rollup VMs. Monitors the Omni Consensus Layer until ⅔ (>66%) of the validator set attested to the “next” block on each source chain, then proceeds to forwarding the respective XMsg list included in the block.
    • Relayers are responsible for delivering confirmed cross-network messages from Omni to destination rollups. When 2/3 (>66%) of Omni validators attest to a given XBlock, relayers forward the XBlock’s corresponding XMsg list to destination rollup networks.