# Architecture

### The Goal of XYOL1

XYO Layer One is a lightweight, scalable blockchain built for data. It uses a variety of [features](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features) such as [Lookback Windows](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features/lookback-window), [Step Hashes](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features/step-hash), and [Bound Witness Trees](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features/rollups/bound-witness-trees) to significantly decrease modern blockchain issues, namely blockchain bloat. Blockchain Bloat is due to modern chains requiring each node to maintain a full historical list of the chain & its transactions, even as it grows. This means each new block, transaction, and data-heavy trends (NFTs or massive DeFi trading, for example) causes the chain to get "bloated" — slowed down by the chain's size. Worst of all, as it continues to grow, the issue gets significantly worse. Only new, redesigned blockchains have the chance to start from scratch with a blank slate, but ultimately, if the nodes require the same level of historical tracking, the new chain will head towards the same fate.

**XYO aims to completely redesign blockchain for data, and most importantly,&#x20;*****eradicate*****, bloat.**

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-type="content-ref"></th><th data-type="content-ref"></th><th data-type="content-ref"></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td>Node Structure</td><td><a href="node-structure#block-producer-nodes">#block-producer-nodes</a></td><td><a href="node-structure#validator-nodes">#validator-nodes</a></td><td><a href="node-structure#efficiency-nodes">#efficiency-nodes</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FbbMA8rBVGaQRHCsQFxi2%2FNode%20Structure%20With%20Title%20(1).webp?alt=media&#x26;token=073bd570-38f1-4fbe-9510-52957ac71c81">Node Structure With Title (1).webp</a></td></tr><tr><td>Block Structure</td><td><a href="block-structure#payloads">#payloads</a></td><td><a href="block-structure#transactions">#transactions</a></td><td><a href="block-structure#signatures">#signatures</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FuZ7bBfWR0tCSLQc4lmaA%2FBlock%20Structure%20With%20Title.webp?alt=media&#x26;token=7b62f703-027c-4f20-bafc-ba5e417c607e">Block Structure With Title.webp</a></td></tr><tr><td>Transaction Fees</td><td><a href="transaction-fees#base-fee">#base-fee</a></td><td><a href="transaction-fees#gas-fee">#gas-fee</a></td><td><a href="transaction-fees#priority-fee">#priority-fee</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FQCFFvQxoadjqUca6sOLv%2FTransaction%20Fees%20With%20Title.webp?alt=media&#x26;token=65835824-fb4b-4eaf-897a-142cbce336cd">Transaction Fees With Title.webp</a></td></tr><tr><td>Rewards</td><td><a href="rewards/block-rewards">block-rewards</a></td><td><a href="rewards/step-rewards">step-rewards</a></td><td><a href="rewards/comparison-table">comparison-table</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FGWNCTDSPLa3Rw3EiFGP3%2FRewards%20With%20Title%20(1).webp?alt=media&#x26;token=a673d307-746b-45c2-9dd7-7fd2d1e91453">Rewards With Title (1).webp</a></td></tr></tbody></table>

### Node Structure

XYO Layer One is powered by a decentralized network of nodes. All nodes building and running the XYO Layer One Blockchain must comply with the XYO Protocol to achieve the desired functionality.

**Block Producer Nodes** are responsible for producing blocks, **Validator Nodes** check for block compliance, and **Efficiency Nodes** are exactly what they're named: nodes designed to improve efficiency for other nodes and the blockchain overall.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-type="image">Cover image (dark)</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Block Producer Node</strong></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2F0yPkoqGO0F8876H50gWt%2FBlock%20Producer%20Nodes%20With%20Title.webp?alt=media&#x26;token=fcdab719-4768-4cb5-80a2-459d60dada3a">Block Producer Nodes With Title.webp</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2Faek4LoTOXi2hUgWYizFE%2Fblock-producer-dark.webp?alt=media&#x26;token=e2caf893-f3d7-470b-9e43-15096f24c206">block-producer-dark.webp</a></td><td><a href="node-structure#block-producer-nodes">#block-producer-nodes</a></td></tr><tr><td><strong>Validator Node</strong></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2F0Ain7buk2imSJTR822YY%2FValidator%20Nodes%20With%20Title.webp?alt=media&#x26;token=a7a35286-c657-4708-a1d1-6da2acb1602c">Validator Nodes With Title.webp</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FSzBuoKvMqGe4xDrwgGWo%2Fvalidator-dark.webp?alt=media&#x26;token=91d146ca-a0a9-4831-96a1-0a531908ad2b">validator-dark.webp</a></td><td><a href="node-structure#validator-nodes">#validator-nodes</a></td></tr><tr><td><strong>Efficiency Node</strong></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FVJQaD7k9LWBOGI8MFH6W%2FEfficiency%20Nodes%20With%20Title.webp?alt=media&#x26;token=bc0ab92a-bfb5-4310-9b99-e93d86664f2e">Efficiency Nodes With Title.webp</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FHeZuSmrkzvo6viBkLCzv%2Fefficiency-dark.webp?alt=media&#x26;token=722ef733-25e5-45e0-908a-bf9b8263a163">efficiency-dark.webp</a></td><td><a href="node-structure#efficiency-nodes">#efficiency-nodes</a></td></tr></tbody></table>

### Block Structure

In XYO Layer One, blocks are a special type of [Bound Witness](https://docs.xyo.network/xyo-layer-one/xyo-layer-one-features/bound-witness) that include the block number, the hash of the chain they belong to, and a list of core elements:

* [Payloads](https://docs.xyo.network/xyo-layer-one/block-structure#payloads): Data hashes permanently stored on the blockchain, usually representing transactions, transaction hashes, or schema-compliant producer payloads.
* [Transactions](https://docs.xyo.network/xyo-layer-one/block-structure#transactions): A type of Bound Witness with fields for chain, fees, expiration (exp), not-before (nbf), and a script field for standardized contract-like actions such as the elevate script.
* [Signatures](https://docs.xyo.network/xyo-layer-one/block-structure#signatures): Cryptographic proofs from addresses that confirm the block’s existence.

<a href="rewards/block-rewards" class="button primary">Learn More</a>

### Transaction Fees

Transaction Fees are any funds provided by the client when submitting a transaction to be included in a block.

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Base Fee</strong></td><td>The Base Fee is XL1 required for a transaction to enter the pending transaction pool. <strong>This fee is normally burned.</strong> However, if the transaction was invalid, it can be claimed by the entity who received the invalid transaction.</td><td><a href="transaction-fees#base-fee">#base-fee</a></td></tr><tr><td><strong>Gas Fee</strong></td><td>The Gas Fee is XL1 provided to cover the cost of processing and including the transaction by the block producer.  If gas is insufficient, the transaction will not be included on the blockchain.</td><td><a href="transaction-fees#gas-fee">#gas-fee</a></td></tr><tr><td><strong>Priority Fee</strong></td><td>The Priority Fee is XL1 offered to a block producer to raise the priority of the transaction. When the transaction is included in a block, <strong>this fee may be transferred to the producer's address of choice</strong>.</td><td><a href="transaction-fees#priority-fee">#priority-fee</a></td></tr></tbody></table>

### Staking

Staking with $XYO in the XYO Layer One Blockchain is integral to securing the blockchain, and users have more than one option for participating in the staking ecosystem.

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="image">Cover image</th><th data-hidden data-card-cover-dark data-type="image">Cover image (dark)</th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Node Staking</strong></td><td>There are two types of Node Staking: Block Producer Node and Validator Node Staking. Staking a Node should only ever be done by the Node owner, and not a multitude of parties. Node Staking includes risk of slashing, but gives returns higher rewards than System, or "Nodeless", Staking. </td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FtjEjOxEhVVYQJ4Kc2rNT%2Fnode-staking-light.webp?alt=media&#x26;token=727790d3-c1c3-48c3-b550-14ef9dba7892">node-staking-light.webp</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FsGCEwjOdDTGZzXsoQX1Y%2Fnode-staking-dark.webp?alt=media&#x26;token=41e7dfa9-d691-4973-8edb-38a1b2854380">node-staking-dark.webp</a></td><td><a href="../staking#node-staking">#node-staking</a></td></tr><tr><td><strong>System Staking</strong></td><td>Sometimes referred to as "Nodeless" Staking, this version allows a user to stake the system itself, rather than an individual node. System Stakers earn rewards from the <a href="rewards/step-rewards">Step Reward Pool</a>. By locking up XYO to System Stake, the "risk" a user incurs stems from the inability to quickly move the stake, but <strong>this stake cannot be slashed inside the network itself.</strong></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FrEKuVwjOKWv62CtAVa1H%2Fsystem-staking-light.webp?alt=media&#x26;token=d0dee528-55c8-474e-bcce-a9da3d035537">system-staking-light.webp</a></td><td><a href="https://2772193239-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FksLB8OMIe18LYmW7pYCd%2Fuploads%2FNTxvi7G3np4987acoTc1%2Fsystem-staking-dark.webp?alt=media&#x26;token=1b864cbe-42e0-4b18-a0b9-9bd46eadb66e">system-staking-dark.webp</a></td><td><a href="../staking#system-staking">#system-staking</a></td></tr></tbody></table>

<a href="staking" class="button primary">Learn More</a>

### Rewards

XYO Layer One implements two primary reward mechanisms to incentivize participation: [**Block Rewards**](https://docs.xyo.network/xyo-layer-one/rewards/block-rewards) and [**Step Rewards**](https://docs.xyo.network/xyo-layer-one/rewards/step-rewards). While both reward systems serve complementary roles, they differ in distribution timing, frequency, and intent.

<a href="rewards" class="button primary">Learn More</a>
