> ## Documentation Index
> Fetch the complete documentation index at: https://otoyinc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Terminology

> Key terms and concepts used throughout Dispersed and this documentation.

## Network Concepts

### Dispersed Network

**Dispersed Network** is a distributed network of GPU-equipped computers (**Nodes**) that perform computational work (**Jobs**) for users. Node Operators earn RENDER tokens for contributing compute power.

### Node

A **Node** is a computer registered on the Dispersed Network that executes Jobs. Nodes must have NVIDIA GPUs and run the Dispersed client software, `disNet`.

### disNet

The Dispersed client software that Node Operators run to connect their machines to the network. It handles registration, job assignment, and container management.

### DMZ (Demilitarized Zone)

A standard network architecture feature that serves as an intermediary subnetwork with the primary purpose of separating a network's public-facing services and assets (e.g. web or mail services) from its internal private infrastructure to minimize the risk of unauthorized access and protect sensitive data.

***

## Job Concepts

### Job

A **Job** is a work request submitted by a Service Consumer. Jobs specify hardware requirements (GPU, RAM, storage) and container configuration (Docker image, parameters).

### Job Run

A **Job Run** is a single execution of a Job on a Node. One Job can have multiple Job Runs (e.g., if retried or distributed).

### Job Recipe

A **Job Recipe** is a pre-configured template for creating Jobs. Recipes define hardware requirements and container settings, allowing users to launch common workloads by filling in minimal inputs (like an SSH key).

### BATCH Job

A **BATCH Job** runs until completion or timeout. It requires a `max_timeout_run_ms` value and is billed for actual execution time. Designed for isolated, non-interactive workflows, a BATCH job operates strictly on its initial arguments without manual intervention. Use BATCH for rendering, data processing, or any finite task.

### PERSISTENT Job

A **PERSISTENT Job** runs indefinitely until explicitly stopped. It is billed hourly, and require `max_timeout_run_ms` to be set to `null`. This job type is ideal for long-running servers handling incoming queries, as well as interactive applications—like SSH access, development environments, and creative tools—where developers and artists need real-time responsiveness.

***

## Rewards and Billing

### Compute Epoch

A **Compute Epoch** is a weekly reward cycle running from Sunday 00:00 UTC to the following Sunday 00:00 UTC. Node Operators earn rewards based on their uptime and work completed during each epoch.

### Availability Reward

The **Availability Reward** is RENDER earned for keeping a Node online and ready to accept jobs. Maximum of 6 RENDER per week at 100% uptime.

### Job Reward

The **Job Reward** (or Execution Reward) is RENDER earned for completing computational work. Amount depends on hours worked and the hardware's Compound Multiplier.

### Compound Multiplier

The **Compound Multiplier** is a factor that adjusts Job Rewards based on hardware performance. An RTX 4090 has a multiplier of 1.0 (baseline). Better hardware earns proportionally more per hour worked.

***

## Authentication

### API Key

An **API Key** is a credential for authenticating API requests, consisting of:

* `public_key` (pk\_...) — included in the `X-API-Key` header
* `secret_key` (sk\_...) — used to generate HMAC signatures

API Keys require HMAC signature verification on each request. See [Authenticate Requests](/service-consumers/service-consumers-authenticate-requests) for implementation details.

***

## Roles

### Node Operator

A **Node Operator** contributes GPU compute power to the network by running `disNet` on their machines. They earn RENDER rewards for availability and completed work.

### Service Consumer

A **Service Consumer** submits Jobs to the network to run computational workloads. They pay for compute time based on job type (BATCH or PERSISTENT).

***

## Technical Terms

### Docker Container

Jobs execute inside **Docker Containers** — isolated environments that package an application with its dependencies. This ensures consistent execution across different Nodes.

### GPU (Graphics Processing Unit)

**GPUs** are specialized processors optimized for parallel computation. The Dispersed Network currently requires NVIDIA GPUs with CUDA support.

### VRAM (Video RAM)

**VRAM** is dedicated memory on a GPU. Jobs can specify minimum VRAM requirements to ensure adequate GPU memory for their workloads.
