> For the complete documentation index, see [llms.txt](https://docs.volt.ai/volt/8EnMblOhYy6VQJFNi0Vz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.volt.ai/volt/8EnMblOhYy6VQJFNi0Vz/deployment/device-network-requirements.md).

# Device/Network Requirements

## Quick Links

1. [Cloud Solution](#cloud-solution)
2. [On-Prem Solution](#on-prem-solution)
3. [Install](#install)
4. [Firewall Exceptions](#firewall-exceptions)

## Cloud Solution

<figure><img src="/files/Z77BOdEa4sP1Qzm2oRMs" alt=""><figcaption><p>Cloud Flow Diagram</p></figcaption></figure>

Our cloud solution entails the installation of a NUC device, which will continuously stream your encrypted camera feeds to the cloud for processing. This solution consumes about 1 mbps/stream of upload bandwidth - depending on camera configuration.

{% hint style="info" %}
*To ensure reliability of VOLT services and performance of other activities on your network, your maximum bandwidth should be > 1 mbps \* stream count.*
{% endhint %}

<figure><img src="/files/j6gsgpXbiR1msJlwiCnB" alt=""><figcaption><p>NUC — ‎7.32" x 7.32" x 4.21"</p></figcaption></figure>

```
CPU: AMD Ryzen 7 5700U
RAM: 32GB DDR4
Storage: 1 TB
NICs: 2 x 2.5Gbps
```

## On-Prem Solution

<figure><img src="/files/dBzkwQLB4bvibkRKhVGu" alt=""><figcaption></figcaption></figure>

Our on-prem devices reduce average bandwidth consumption (when idle using under .1 Mbps), but constrains processing power, resulting in limited detection capabilities. By processing streams locally, data and video are only uploaded when - incidents are detected or if you monitor the live streams. During incidents you can expect an average spike of \~.7 Mbps per camera stream that caught the incident.

{% hint style="info" %}
For on-prem deployments, we recommend at least **50 Mbps** of available download bandwidth to ensure the device can promptly retrieve essential software updates.
{% endhint %}

<figure><img src="/files/ynk0XhXMkQ3toeHtnhSl" alt=""><figcaption><p>1U Server — 19” x 23.19”  x 1.68” </p></figcaption></figure>

```
CPU: Intel i7-9700K
RAM: 32GB DDR4
GPU: Nvidia 4000 ADA Lovelace
Storage: 40TB
NICs: 1 x 10Gbps, 1 x 1Gbps
Maximum # of Streams: 80
```

<figure><img src="/files/dl1aJyvFakrgtm8jX18k" alt=""><figcaption><p>2U Server — 17.48" x 31.50" x 3.46"</p></figcaption></figure>

```
CPU: AMD EPYC 7543
RAM: 128 GB DDR4
GPU: 3 x Nvidia 4000 ADA Lovelace
Storage: 128 TB (RAID 5)
NICs: 3 x 1Gbps
Maximum # of Streams: 220
```

<figure><img src="/files/4RTq95B8hAcM9lOEQEvC" alt=""><figcaption><p>Workstation - 6.69″ x 11.97″ x 14.80″</p></figcaption></figure>

```
CPU: Intel i5-14400F
RAM: 16 GB DDR5
GPU: 1 x Nvidia RTX 4060
Storage: 20 TB
NICs: 1 x 1Gbps
Maximum # of Streams: 40
```

## Install

**Power**: Connect to any standard 100–240 V AC wall outlet or power strip.

**Network**: The VOLT edge device (NUC or server) requires ethernet access to both your internet and camera networks.

* Separate camera network (no internet): connect the device to both networks, each ≥1 Gbps.
* Internet-accessible camera network: only one ≥1 Gbps connection is needed.

## Firewall Exceptions&#x20;

The following exceptions need to be added to your firewall to allow the VOLT edge device to communicate with our core services.&#x20;

<table><thead><tr><th width="237">Service</th><th width="115.00000000000003">TCP</th><th width="154">UDP</th><th>Outbound Domain</th></tr></thead><tbody><tr><td>Camera RTSP Endpoint</td><td>554</td><td>554</td><td>Local network</td></tr><tr><td>Nmap</td><td>554</td><td>554</td><td>Local network ping and nmap</td></tr><tr><td>Domains to whitelist</td><td><p>443</p><p>80</p></td><td>N/A</td><td><p>*.ubuntu.com</p><p>*.archive.ubuntu.com</p><p>*.security.ubuntu.com</p><p>*.extras.ubuntu.com </p><p>*.nvidia.com</p><p>*.docker.com</p></td></tr><tr><td>NTP</td><td></td><td>123</td><td>ntp.volt.ai</td></tr><tr><td>VOLT in AWS</td><td>50005<br>443</td><td>443</td><td><p>*.volt.ai</p><p>*.amazonaws.com<br>public.ecr.aws</p></td></tr><tr><td>Outbound UDP</td><td>N/A</td><td>8888-9388</td><td></td></tr><tr><td>Hardware Monitoring</td><td>10051</td><td>N/A</td><td>monitoring.volt.ai</td></tr></tbody></table>

{% hint style="info" %}

## If public DNS' are blocked (8.8.8.8,9.9.9.9,1.1.1.1) they will need to be added to the whitelist unless an internal DNS server is provided

{% endhint %}

\
Here are the functions of each service:

* **Camera RTSP Endpoint** - Real-time risk detection, time & space. It is required for VOLT's core services
* **Nmap** - Camera discovery. [Should not block the ping probes](https://nmap.org/book/nmap-defenses-firewalls.html)
* **Domains to whitelist** - Software and security patches
* **Volt in AWS** - VOLT services
* **Outbound UDP** - Our cloud devices push encrypted video streams over UDP to AWS using SRT
  * [SRT Documentation](https://doc.haivision.com/SRT/1.5.3/Haivision/srt-and-firewalls)
  * [AWS' Rotating IP Ranges](https://ip-ranges.amazonaws.com/ip-ranges.json)
* **Hardware Monitoring** - Hardware metrics

For further information or any technical inquiries, feel free to email at *<help@volt.ai>* or contact your designated Volt AI point-of-contact.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.volt.ai/volt/8EnMblOhYy6VQJFNi0Vz/deployment/device-network-requirements.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
